跳转至

Bumblehive 如何工作

Bumblehive 把模型、工具、上下文和对话状态组合成一个可以反复运行的 Agent。

一次调用大致经过下面几步:

用户消息
  → 构建上下文
  → 请求模型
  → 模型直接回答,或请求调用工具
  → 执行工具并把结果交还模型
  → 得到最终结果

如果模型继续调用工具,这个过程会重复,直到模型给出最终回答或达到最大迭代次数。这就是 Agent 循环(Agent Loop)

五个核心对象

对象 作用 简单理解
BumblehiveRuntime 组合并管理整个 Agent Agent 的运行容器
ModelProvider 向模型发送请求 模型连接器
ToolManager 注册并执行工具 Agent 的工具箱
SkillsManager 向模型提供工作方法和资源位置 Agent 的说明书目录
MessageHistory / session_id 保存多轮对话 Agent 的记忆

Tool 和 Skill 有什么区别

工具(Tool)执行一个具体动作。

例如 get_weather(city) 会真正查询天气并返回结果。

技能(Skill)告诉 Agent 应该怎样完成一类任务。

例如 code-review 技能可以要求 Agent:先运行测试,再检查变更,最后按固定格式输出报告。

Skill 不会自动执行其中的脚本。模型需要先使用 read_file 读取 SKILL.md,再按照里面的说明工作。

一次运行返回什么

runtime.run() 返回 AgentRunResult。最常用的字段是:

字段 含义
final_content 最终回答
tools_used 成功执行过的工具名称
usage 模型返回的 token 用量
stop_reason 为什么停止
error 结构化错误;成功时为 None

不要只打印 final_content。正式项目还应检查 error

result = await runtime.run("用一句话介绍 Bumblehive")

if result.error:
    print(result.error.code, result.error.message)
else:
    print(result.final_content)

下一步:阅读选择合适的接口层