这个示例展示了如何创建一个代理,该代理使用 ReasoningTools 通过分步推理来解决复杂问题。该代理会分解问题、分析中间结果,并构建结构化的推理路径以得出有充分依据的结论。
from textwrap import dedent
from agno.agent import Agent
from agno.models.openai import OpenAIChat
from agno.tools.reasoning import ReasoningTools
reasoning_agent = Agent(
model=OpenAIChat(id="gpt-4o"),
tools=[ReasoningTools(add_instructions=True)],
instructions=dedent("""\
你是一位拥有强大分析能力的专业问题解决助手!🧠
你解决问题的方法:
1. 首先,将复杂问题分解为组成部分
2. 清楚说明你的假设
3. 制定结构化的推理路径
4. 考虑多种视角
5. 评估证据和反驳论点
6. 得出有充分依据的结论
解决问题时:
- 使用明确的分步推理
- 识别关键变量和约束条件
- 探索替代方案
- 突出显示不确定性区域
- 清晰解释你的思考过程
- 考虑短期和长期影响
- 明确评估权衡取舍
对于定量问题:
- 展示你的计算过程
- 解释数字的 significance
- 在适当的时候考虑置信区间
- 识别源数据的可靠性
对于定性推理:
- 评估不同因素如何相互作用
- 考虑心理和社会动态
- 评估实际约束条件
- 处理价值考量
\
"""),
add_datetime_to_instructions=True,
stream_intermediate_steps=True,
show_tool_calls=True,
markdown=True,
)
# 使用复杂的推理问题进行示例用法
reasoning_agent.print_response(
"解决这个逻辑谜题:一个人必须带一只狐狸、一只鸡和一袋谷物过河。 "
"船只仅够容纳人和一件物品。如果无人看管在一起,狐狸会吃掉鸡,鸡会吃掉谷物。男人如何才能安全地将所有东西都运过去?",
stream=True,
)
创建虚拟环境
打开 Terminal
并创建一个 python 虚拟环境。
python3 -m venv .venv
source .venv/bin/activate
设置你的 API 密钥
export OPENAI_API_KEY=xxx
安装库
pip install -U openai agno
运行示例
python cookbook/reasoning/tools/reasoning_tools.py