- 处理临时故障
- 通过重试提高输出质量
- 实现人工干预验证
代码
retry_functions.py
使用方法
1
创建虚拟环境
打开
Terminal
并创建一个 python 虚拟环境。2
安装库文件
3
运行代理
from typing import Iterator
from agno.agent import Agent
from agno.exceptions import RetryAgentRun
from agno.tools import FunctionCall, tool
num_calls = 0
def pre_hook(fc: FunctionCall):
global num_calls
print(f"Pre-hook: {fc.function.name}")
print(f"Arguments: {fc.arguments}")
num_calls += 1
if num_calls < 2:
raise RetryAgentRun(
"This wasn't interesting enough, please retry with a different argument"
)
@tool(pre_hook=pre_hook)
def print_something(something: str) -> Iterator[str]:
print(something)
yield f"I have printed {something}"
agent = Agent(tools=[print_something], markdown=True)
agent.print_response("Print something interesting", stream=True)
创建虚拟环境
Terminal
并创建一个 python 虚拟环境。python3 -m venv .venv
source .venv/bin/activate
安装库文件
pip install openai agno
运行代理
python retry_functions.py