SysFX 是一个基于多智能体架构的智能系统框架,专为解决复杂分析任务而设计。系统通过协调多个专业智能体的协作,实现需求分析、方案设计和报告生成等功能。SysFX 采用有向无环图(DAG)工作流模式,确保信息流的清晰性和任务执行的高效性。
- 多智能体协作: 基于自动生成的专业智能体团队,根据任务需求动态组合
- 可视化工作流: 实时展示工作流执行状态,直观呈现智能体间的协作关系
- 模块化设计: 支持多种大语言模型(LLM)后端,包括Gemini、DeepSeek和本地Ollama模型
- WebSocket实时通信: 前后端实时交互,提供流式响应体验
- 自适应智能体生成: 根据用户需求自动设计最适合的智能体团队结构
SysFX 采用前后端分离的架构设计,主要由以下几个部分组成:
- 前端界面: 基于HTML/CSS/JavaScript构建,提供用户交互和工作流可视化
- API服务: 使用FastAPI构建的后端服务,处理用户请求和WebSocket通信
- 工作流引擎: 负责构建和执行智能体工作流,管理智能体间的消息传递
- 模型客户端: 提供与各种LLM的统一接口,支持多种模型后端
sysfx/
├── api/ # API服务
│ ├── api_app.py # FastAPI应用入口
│ ├── task_processor.py # 任务处理器
│ ├── str.py # 流式文本处理
│ └── websocket_handler.py # WebSocket连接管理
│
├── models/ # 模型相关
│ ├── model_client.py # 模型客户端
│ └── prompt.py # 提示模板
│
├── workflow/ # 工作流相关
│ ├── workflow_builder.py # 工作流构建器
│ └── workflow_example.py # 工作流示例
│
├── static/ # 静态资源
│ ├── css/ # 样式文件
│ ├── js/ # JavaScript文件
│ └── img/ # 图片资源
│
└── main.py # 命令行入口
- Python 3.10+
- Node.js 14+ (用于前端开发,可选)
- 克隆仓库
git clone https://github.com/yourusername/sysfx.git
cd sysfx- 创建并激活虚拟环境
python -m venv .venv
# Windows
.venv\Scripts\activate
# Linux/macOS
source .venv/bin/activate- 安装依赖
pip install -r requirements.txt- 配置模型API密钥
编辑 models/model_client.py 文件,配置您的API密钥:
# 例如,配置Gemini API密钥
return OpenAIChatCompletionClient(
model="gemini-2.5-pro-preview-05-06",
api_key="YOUR_API_KEY_HERE",
...
)cd api
python api_app.py服务将在 http://localhost:8000 启动,您可以通过浏览器访问。
python main.py根据提示输入您的需求,系统将自动分析并生成结果。
- 需求输入: 用户提交需求描述
- 需求分析: 系统分析需求,确定所需的专业领域
- 智能体设计: 自动设计适合任务的智能体团队
- 工作流构建: 根据智能体间的依赖关系构建工作流图
- 协同执行: 智能体按照工作流顺序协作完成任务
- 结果汇总: 由报告者智能体整合各专业智能体的输出,生成最终报告
在 models/model_client.py 中添加新的模型客户端函数:
def create_new_model_client():
return OpenAIChatCompletionClient(
model="your-model-name",
api_key="your-api-key",
...
)然后在 get_model_client 函数中添加对应的条件分支。
编辑 models/prompt.py 文件,修改或添加智能体的提示模板。
欢迎贡献代码、报告问题或提出改进建议。请遵循以下步骤:
- Fork 仓库
- 创建您的特性分支 (
git checkout -b feature/amazing-feature) - 提交您的更改 (
git commit -m 'Add some amazing feature') - 推送到分支 (
git push origin feature/amazing-feature) - 创建一个 Pull Request
本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。
如有任何问题或建议,请通过以下方式联系我们:
- 项目维护者: Your Name
- 电子邮件: your.email@example.com
- GitHub Issues: https://github.com/yourusername/sysfx/issues
