jjyaoao/HelloAgents

A agent framework based on the tutorial hello-agents

HelloAgents – 模块化多智能体框架

是什么 – HelloAgents 是一个 Python 库,可让你通过 函数调用 接口与大型语言模型(LLM)通信,构建 多智能体 应用程序。它提供了开箱即用的构建模块——一个发送提示、接收工具调用、执行工具、反馈结果的循环——以及可选的上下文处理、检索增强生成(RAG)、持久化记忆、子智能体、技能、流式输出和可观测性组件。

核心组件

  • 核心 – SimpleAgent、ReActAgent、ReflectionAgent、PlanSolveAgent 实现了不同的推理模式。HelloAgentsLLM 抽象了 OpenAI 兼容、Anthropic 和 Gemini 提供商,能根据 LLM_BASE_URL 自动检测正确的适配器。
  • 工具系统 – 通过 ToolRegistry 注册工具(例如计算器)。内置工具涵盖文件编辑、任务委派、开发日志、RAG、记忆、GraphRAG、权限、熔断器等。
  • 上下文引擎 – 管理对话历史、令牌预算、截断,并构建发送给模型的最终负载。
  • 检索与记忆 – 支持可插拔的向量存储(Qdrant)、BM25、混合排名、重排序,以及用于存储用户特定事实的持久化“资料库”存储。
  • 运行时 – 处理异步循环、流式 SSE 输出、跨模型预算共享、会话持久化和后台任务。

快速上手

  1. 使用 uv sync --locked 或 pip install -r requirements.txt 安装(Python 3.12–3.13)。
  2. 定义包含模型 ID、API 密钥和基础 URL 的 .env 文件。
  3. 注册所需工具,创建 HelloAgentsLLM 实例,然后实例化一个 SimpleAgent 并调用 agent.run(prompt)。
from hello_agents import SimpleAgent, HelloAgentsLLM, ToolRegistry
from hello_agents.tools import CalculatorTool

registry = ToolRegistry()
registry.register_tool(CalculatorTool())
with HelloAgentsLLM() as llm:
    agent = SimpleAgent("assistant", llm, tool_registry=registry)
    print(agent.run("计算两晚住宿每晚 320 元,加上 180 元交通费的总预算"))

可扩展性 – 可通过 AgentComponents 添加任意可选组件(例如 RAG 存储、记忆存储、子智能体)。框架还支持:

  • MCP 桥接 用于外部工具集成(stdio/HTTP)。
  • 熔断器 和 权限 策略,用于沙箱化工具执行。
  • 通过 TraceLogger 实现可观测性,用于追踪运行过程。

文档与示例 – 仓库包含完整的文档层级(安装、可靠性、工具响应协议、上下文工程、RAG、GraphRAG、记忆、子智能体、流式输出等),以及一个丰富的 examples/ 文件夹,展示了每个功能,从简单的异步智能体演示到完整的旅行助手应用。

社区与版本

  • 两个主要分支:learn_version(与 Datawhale 教程对齐)和当前的 v1.0.1 版本。
  • 提供 Go 和 TypeScript 的社区移植版本链接。
  • 采用 CC BY-NC-SA 4.0 许可(非商业用途);商业用途需获得许可。

适用人群 – 希望使用工具、检索和记忆功能构建 LLM 驱动的智能体,但又不想从零开始手动搭建所有组件的开发者。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目