by-framework-python¶
by-framework 是一个基于 Redis Streams 构建的分布式 Agent 调度框架,提供 Worker 编排、会话级运行时状态与插件化能力注册,适合构建 AI Agent 系统。
核心特性¶
- 原生异步: 基于 Python
asyncio构建,完美契合 I/O 密集型 Agent 任务 - 高度插件化: 通过插件和 AgentConfig 注册工具、提示词、技能与生命周期钩子
- 状态管控: 完善的
AgentContext支持,轻松实现流式输出、状态流转和附件处理 - 解耦架构: 采用控制流与数据流分离设计,便于 Worker 横向扩展
- Agent Type 路由: Worker 通过
get_agent_types()声明支持的 agent type,并参与路由与在线校验
快速开始¶
# 安装依赖
cd by-framework-python
uv sync
# 启动 Redis
docker run -d -p 6379:6379 redis:7-alpine
# 创建 Worker
cat > my_agent.py << 'EOF'
import asyncio
from by_framework import GatewayWorker, AgentContext, run_worker
class MyAssistant(GatewayWorker):
def get_agent_types(self):
return ["chat_agent"]
async def process_command(self, command, context: AgentContext):
await context.emit_chunk("正在处理...\n")
user_input = command.content if isinstance(command.content, str) else str(command.content)
await context.emit_chunk(f"收到: {user_input}")
return {"status": "success"}
EOF
# 启动 Worker
uv run python my_agent.py
架构概览¶
文档导航¶
| 章节 | 内容 |
|---|---|
| 快速入门 | 环境搭建与第一个 Worker |
| Worker 开发指南 | 深入理解 GatewayWorker |
| 插件系统 | 扩展框架能力 |
| 客户端开发 | 发送任务与结果获取 |
| 架构设计 | 系统架构深度剖析 |
| API 参考 | 完整的 API 文档 |