Agentic Architectures
用统一 Python 接口试用、比较并扩展 35 种智能体架构。
- Star 数
- ★ 4.5k
- 最近更新
- 3 个月前
- License
- MIT
- 主语言
- Jupyter Notebook
- FA 评分
- 54/100 · 缺口较多
30 秒速览
- 可在哪里用
- 通用 · 跨平台OpenAI API · Claude API
- 开始前需要
- 典型场景
- Python 应用团队希望以同一 .run(task) 接口比较 Reflection、Self-Consistency 与 Tree of Thoughts 等推理模式。
- 主要局限
- 多数运行依赖所选 LLM 提供商、网络访问及相应 API 密钥;本地 Ollama 虽无需 API 密钥,但工具调用能力取决于模型。
这个 Agent 能做什么,适合哪些场景?
Agentic Architectures 是一个基于 LangGraph 的 Python 库,同时也是包含已执行 Jupyter Notebook 的可运行教材。它将 35 种模式封装为统一的 Architecture 类,包括反思、搜索、RAG、记忆、工具调用、多智能体和安全路由。各架构共享 .run(task) 调用方式,并返回 ArchitectureResult;示例会读取 output 和 metadata 中的 final_score。项目支持 Nebius、OpenAI、Anthropic、Groq、Ollama、Together、Fireworks、Mistral 与 Google 九家提供商,并通过环境变量切换。仓库还提供 17 项任务的比较基准、35 个已执行 Notebook,以及面向库和 Notebook 的测试。
安装后可用 get_llm() 创建模型客户端,再实例化例如 Reflection(llm=get_llm(), max_iterations=2, target_score=8)。调用 arch.run("Write a haiku about a glacier.") 会运行所选架构,并产生 result.output 及 result.metadata 中的 final_score。不同架构可执行生成—批评—改写、采样投票、树搜索、检索与文档评分、记忆存储、工具操作或多智能体协作等流程。项目在 13 个架构中采用 deterministic-picker:LLM 先提交布尔值或枚举特征,再由 Python 组合决策信号;另有 9 个架构按其设计不受该评分问题影响。BrowserAgent 使用真实 Playwright 并带安全门,SWE-Agent 是沙盒文件系统智能体,Voyager 使用真实子进程执行可复用 Python 技能。
- Python 应用团队希望以同一 .run(task) 接口比较 Reflection、Self-Consistency 与 Tree of Thoughts 等推理模式。
- 正在构建检索问答系统的工程师,需要在 Agentic RAG、CRAG、Self-RAG、Adaptive RAG 与 GraphRAG 之间试验不同检索形态。
- 需要审查浏览器操作风险的自动化团队,可研究带安全门的 BrowserAgent,而生产 Computer-Use 需要 Anthropic。
- 希望为多智能体研究或写作流程选型的开发者,可运行 Multi-Agent、Blackboard、Debate、STORM 和 Meta-Controller。
- 要为特定任务选择架构的技术负责人,可使用项目的 17 任务基准和按任务列出的答案摘录比较结果。
如何安装或部署这个 Agent?
从新克隆安装:
python -m venv .venv
.venv\Scripts\activate # Windows
source .venv/bin/activate # macOS / Linux
pip install -e ".[dev,test,docs,nebius,faiss,tavily,networkx]"
cp .env.example .env然后在 .env 中填写 NEBIUS_API_KEY 等所选提供商的密钥。也可安装运行示例所列的额外组件:pip install "agentic-architectures[nebius,faiss,tavily]"。
如何使用这个 Agent?
配置 LLM_PROVIDER 和对应的环境变量密钥后,运行:
from agentic_architectures import get_llm
from agentic_architectures.architectures import Reflectionarch = Reflection(llm=get_llm(), max_iterations=2, target_score=8)
result = arch.run("Write a haiku about a glacier.")
print(result.output)
print("score:", result.metadata["final_score"], "/ 10")可替换 Architecture 类而保持下游 .run(task) 与 ArchitectureResult 的调用形状不变。测试命令为 pytest -q;真实 LLM 集成测试通过 RUN_INTEGRATION=1 启用。
这个 Agent 有哪些优点和局限?
- 35 个架构采用相同的 .run(task) 合同与 ArchitectureResult 返回形状,便于替换实验。
- 提供九家 LLM 提供商路径,且 README 明示 OpenAI 可运行全部架构。
- 17 任务基准提供每个架构的比较结果和答案摘录,而不只给出模式说明。
- deterministic-picker 将分类特征判断与 Python 决策组合分离,专门针对 LLM-as-Scorer 的 flat-band 问题。
- 多数运行依赖所选 LLM 提供商、网络访问及相应 API 密钥;本地 Ollama 虽无需 API 密钥,但工具调用能力取决于模型。
- 基准的最近一次运行使用 Nebius Llama-3.3-70B;结果未证明在其他模型或提供商上会复现。
- 37 项集成测试受环境变量控制,只有设置 RUN_INTEGRATION=1 才会执行每个架构的一条真实 LLM 路径。
- BrowserAgent 的生产 Computer-Use 明确需要 Anthropic,且其浏览器执行依赖真实 Playwright。
这个 Agent 与同类方案有什么区别?
项目内部提供按模式选择的比较:RAG 可在 Agentic RAG、CRAG、Self-RAG、Adaptive RAG 与 GraphRAG 之间比较;多智能体可在 Multi-Agent、Blackboard、Debate、STORM 与 Meta-Controller 之间比较;17 任务排行榜还记录了若干模式适配失败,例如 LATS 用于算术、Debate 与 Ensemble 用于 Sally trick。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|
| Agentic Architectures 当前 | 54 · 缺口较多 | ★ 4.5k | 3 个月前 | Jupyter Notebook | OpenAI API · Claude API |
| Agent Craft 智能体教程 | 49 · 缺口较多 | ★ 492 | 今天 | Python | OpenAI API |
| GenAI Agents 综合教程库 | 25 · 缺口较多 | ★ 24k | 2 天前 | Jupyter Notebook | OpenAI API |
| AI Agent Service Toolkit | 69 · 存在缺口 | ★ 4.5k | 今天 | Python | OpenAI API |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
证据显示:仓库包含SECURITY.md,明确列出安全边界(如沙箱逃逸、提示注入绕过安全门),并提供了漏洞报告流程。代码中提及安全门(如BrowserAgent的_check_safety)和沙箱路径检查(SWEAgent的_safe_path),表明有最小权限意识。但未提供用户确认机制(如Dry-Run的批准门仅提及,未展示实现细节),数据流透明度有限(未详细说明API密钥处理),依赖安全仅通过版本范围声明,未提供漏洞扫描证据。外部影响(如Voyager子进程、BrowserAgent浏览器操作)有安全门但未展示具体实现。回滚机制未提及。来源归属清晰(MIT许可证、作者信息)。扣分原因:用户确认、数据流透明度、敏感数据处理、依赖安全、外部影响均仅部分实现或未提供证据。
证据显示:README声称283个测试通过,CI配置运行测试,测试文件提供MockLLM等模拟,表明自一致性较好。依赖在pyproject.toml中声明,但未提供锁定文件,依赖可用性中等。失败消息方面,测试中有错误处理(如MockLLM耗尽响应时抛出RuntimeError),但未提供面向用户的错误消息文档。扣分原因:失败消息仅部分覆盖。
证据显示:README提供多种学习路径(初学者、RAG、多智能体、安全),覆盖不同受众和场景。能力边界通过架构分类和文档说明(如哪些架构适合哪些任务)。触发精度通过确定性选择器模式说明,但未提供详细触发条件。环境适配通过多提供商支持和本地Ollama选项体现。扣分原因:触发精度和部分能力边界描述不够详细。
证据显示:信息架构清晰(README、docs、notebooks、tests),安装说明详细(pip install、虚拟环境),命名稳定(架构类名一致),示例丰富(快速入门、notebooks),已知限制部分提及(如LATS在算术上失败),许可证明确(MIT),版本化通过CHANGELOG和release-please提及,维护责任通过CONTRIBUTING和SECURITY.md明确。扣分原因:已知限制仅部分提及,未全面列出。
证据显示:输出可用性通过统一的ArchitectureResult接口和示例展示,边际价值高(35种架构、基准测试),成本效益通过基准测试成本(约1.5美元)和提供商选择体现。扣分原因:成本效益数据仅来自README声明,未独立验证。
证据显示:声明可追溯(引用论文、基准测试结果),但跨来源验证有限(仅依赖README和代码),事实与推断分离较好(明确区分模式引用和本仓库实现)。扣分原因:跨来源验证不足。
- 源码中未见:回滚或恢复路径运行前先备份,或在 git 分支、快照上操作,确保改动可以撤销。
- 未提供用户确认机制,Dry-Run等安全门仅提及未展示实现。
- 依赖未锁定版本,存在供应链风险。
- API密钥处理细节未公开,需谨慎使用。
- 基准测试结果仅来自README声明,未独立验证。