GPTSwarm
以可优化图构建并自组织语言智能体群。
按维度查看评分与理由
证据显示仓库未提供权限管理、用户确认、数据流透明性、敏感数据处理、依赖安全、外部影响、回滚或来源归属的机制。README仅提及API密钥配置,但未说明权限最小化或用户确认。因此所有信任标准得分为0。
自一致性:README和pyproject.toml中的描述一致,但代码中未提供错误处理或失败消息。依赖可用性:pyproject.toml列出了依赖,但未提供锁定文件或版本范围,可能不稳定。失败消息:未找到任何错误处理或用户友好的失败消息。
受众和场景:README提供了多个示例和场景,但未明确目标受众。能力边界:未明确说明框架的限制。触发精度:未提供触发机制。环境适配:提供了本地LLM支持,但未说明其他环境要求。
信息架构:README结构清晰,但缺少详细文档。安装说明:提供了安装步骤,但未提供故障排除。命名稳定性:未提供版本历史。示例和FAQ:提供了示例,但无FAQ。已知限制:未提及。许可证:MIT许可证明确。版本和变更日志:未提供。维护责任:列出了贡献者,但未明确维护者。
输出可用性:示例展示了输出,但未说明输出格式。边际价值:提供了自改进功能,但未量化。成本效益:未提供成本分析。
声明可追溯性:README中的声明未提供证据。跨来源佐证:未提供。事实与推断分离:未区分。
- 仓库未提供任何安全机制,如权限最小化或用户确认,使用时应谨慎。
- 依赖未锁定版本,可能导致环境不一致。
- 未提供错误处理或失败消息,可能影响用户体验。
这个 Agent 能做什么,适合哪些场景?
GPTSwarm 是一个用于构建基于 LLM 的智能体图与智能体群的 Python 框架。它将领域操作、智能体、工具和任务放在 swarm.environment 中,并用 swarm.graph 创建和执行智能体图及复合群体图。swarm.llm 负责选择 LLM 后端并计算运行成本,swarm.memory 提供基于索引的记忆,swarm.optimizer 则用于提升智能体表现和群体效率。示例通过 Swarm 类接收智能体类型与环境名,再用 run 或 arun 执行任务并返回结果。它以本地 Python 库形式运行,可配置 OpenAI 与搜索 API,也文档化了通过 LM Studio 使用本地语言模型的路径。
调用方从 swarm.graph.swarm 导入 Swarm,以例如 Swarm(["IO", "IO", "IO"], "gaia") 创建预定义群体,将任务放入 {"task": task} 后调用 await swarm.arun(inputs)。框架根据图执行群体,并返回该调用的结果。需要文件分析时,示例使用 Swarm(["IO", "TOT"], "gaia"),把图像路径列表放入 {"task": task, "files": files},再调用 swarm.run(inputs)。如配置 BING_API_KEY、SEARCHAPI_API_KEY 或 GOOGLE_API_KEY,系统会依次选择 Bing API、SearchAPI 或 Google API 作为搜索引擎;swarm.llm 还承担后端选择和运行成本计算。
- Python 开发者需要把多个预定义智能体组织成图,并用 gaia 环境回答单个知识问答任务。
- 研究人员要试验群体中跨智能体连接的边优化,观察边概率向剪枝或创建方向变化。
- 需要为含本地图像路径的任务调用文件分析能力,并要求三句摘要的应用开发者。
- 希望比较或优化提示与强化学习驱动的智能体群性能的多智能体研究团队。
- 已运行 LM Studio 服务器、希望以 model_name='lmstudio' 接入本地语言模型的开发者。
这个 Agent 有哪些优点和局限?
- 以图为核心表示智能体和复合群体图,并明确提供图的创建与执行组件。
- 将环境、图、LLM 后端、索引记忆和优化算法分成独立模块,适合按组件开展实验。
- 文档展示了跨智能体连接的边优化,以及面向性能和群体效率的优化器。
- 除 OpenAI 凭据外,还文档化了 Bing、SearchAPI、Google 搜索选择顺序和 LM Studio 本地推理路径。
- 安装流程指定 Python 3.10、Conda 和 Poetry,现有项目可能需要调整运行环境。
- 示例中的在线 LLM 与搜索能力依赖 API 密钥;README 未提供价格、配额或离线替代方案。
- README 只展示 gaia 环境及 IO、TOT 配置的少量调用,未说明自定义环境和智能体的完整接口契约。
- 本地推理仅明确文档化 LM Studio 的 Mac 或 Windows 桌面应用路径,其他本地服务的支持情况没有证据。
如何安装或部署这个 Agent?
克隆并安装:
git clone https://github.com/metauto-ai/GPTSwarm.git
cd GPTSwarm/
conda create -n swarm python=3.10
conda activate swarm
pip install poetry
poetry install将 .env.template 改名为 .env,并按所用后端填写 OPENAI_API_KEY;如需搜索,再填写 BING_API_KEY、SEARCHAPI_API_KEY 或 GOOGLE_API_KEY。README 未给出不使用这些服务时的完整凭据配置说明。
如何使用这个 Agent?
最小调用:
from swarm.graph.swarm import Swarm
swarm = Swarm(["IO", "IO", "IO"], "gaia")
inputs = {"task": "What is the capital of Jordan?"}
answer = await swarm.arun(inputs)要使用本地模型,先在 LM Studio 中选择模型并启动服务器,然后在 GPTSwarm 代码中使用 model_name='lmstudio'。
这个 Agent 与同类方案有什么区别?
README 将 OpenAI Swarm 作为相关替代方案提及,并把 GPTSwarm 定位为侧重“Swarm Intelligence”的选择;其中未提供可复核的功能矩阵或基准对比。
常见问题
运行 GPTSwarm 需要哪些凭据?
.env 中配置 OPENAI_API_KEY 以使用 OpenAI LLM 后端。搜索功能分别需要 BING_API_KEY、SEARCHAPI_API_KEY 或 GOOGLE_API_KEY。搜索引擎如何选择?
能否使用本地语言模型?
model_name='lmstudio'。它是否适合文件或图像任务?
files,再用 swarm.run(inputs) 执行任务。运行成本是否可见?
swarm.llm 可计算 LLM 的运行成本,但未说明支持的计费模型、价格来源或成本输出格式。