GitHub 项目与开源生态:Hermes Agent 学习地图
Agent 工程的学习曲线,一半在 Prompt 与编排,一半在 上游模型、工具协议与评测基准。本篇从 Hermes Agent 课程视角,把开源生态整理成 可执行的阅读顺序,避免「收藏 200 个 repo 却写不出一个稳定 Tool Call」。
一、模型与 Tool Use 基座
1.1 Nous Hermes 系列
| 项 | 说明 |
|---|---|
| 是什么 | Nous Research 发布的 Hermes 系列指令模型,强调 Function Calling / JSON 工具格式 与角色一致性,是本站「Hermes Agent」命名的灵感来源之一。 |
| 为什么值得学 | 开源权重可本地部署;工具调用格式与 OpenAI Tools 接近,便于迁移课表代码;社区有大量 fine-tune 与量化版本。 |
| Hermes 实践 | Day 1 用 Hermes 3 / Hermes 2 Pro 跑 快速开始 的 @tool 循环;对比同一 prompt 在 GPT-4o-mini 上的 TSA 差异。 |
| 典型链接 | NousResearch/Hermes-3-Llama-3.1-70B · Hermes-2-Pro · Nous GitHub |
阅读顺序: Model Card → Chat template → 是否支持 tools 参数 → 社区 GGUF(配合 Ollama)。
1.2 Qwen2.5(通义千问开源)
| 项 | 说明 |
|---|---|
| 是什么 | 阿里云开源的 Qwen2.5 系列,含 Instruct 与 Tool Call 优化 变体,中英文与代码能力均衡。 |
| 为什么值得学 | 国内部署友好;工具调用文档完善;长上下文适合 Day 4 记忆实验。 |
| Hermes 实践 | 用 Qwen2.5 复现 Day 3 DevOps Agent,对比 Hermes 模型在 中文 Active description 下的工具选择率。 |
| 典型链接 | QwenLM/Qwen2.5 · Hugging Face Qwen · Function calling 文档 |
1.3 Llama Tool Use(Meta)
| 项 | 说明 |
|---|---|
| 是什么 | Meta Llama 3.x 及生态中的 工具使用 训练与模板(含 JSON、自定义 tag)。 |
| 为什么值得学 | 工业界部署最广的开源基座;vLLM / Ollama 一等公民;理解官方 tool template 可减少解析 bug。 |
| Hermes 实践 | Day 1 对比 OpenAI Functions / Hermes tag / Llama 3 JSON 三种格式(见 intro);写统一 parse_tool_call() 适配层。 |
| 典型链接 | meta-llama/llama-models · Llama Recipes |
1.4 闭源参考(格式标准)
| 资源 | 学什么 |
|---|---|
| OpenAI Function Calling | JSON Schema 工具标准、parallel tool calls |
| Anthropic Tool Use | XML / structured tool 块、computer use 边界 |
这些不是 GitHub 项目,但是 BFCL / ToolBench 的判分依据,Day 6 必读。
二、编排框架:LangChain / AutoGen / CrewAI
2.1 LangChain
| 项 | 说明 |
|---|---|
| 是什么 | langchain-ai/langchain — 连接模型、工具、检索与 Agent 执行器的 Python/JS 生态;LangGraph 提供状态图编排。 |
| 为什么值得学 | 文档量大、社区示例多;bind_tools + AgentExecutor 与 Hermes 课表 Day 1 一致;LangSmith 可观测。 |
| Hermes 实践 | 实现 开发指南 §四 线性/条件/并行链;Inspector 字段对齐 LangSmith trace。 |
| 典型链接 | langchain · langgraph · langchain-community |
读 repo 技巧: 先看 libs/core 的 tool 抽象,再看 langgraph/prebuilt 的 create_react_agent,避免陷入旧版 Agent API。