from a api key to a agent notebook 从 LLM API 调用开始,到实现一个最简单的 Agent。
1llmapi.py:调用 LLM API2chatmemory.py:加入对话历史3tool.py:加入单个计算工具4loop.py:ReAct 风格的工具调用循环5multitool.py:多个工具和工具注册表6planner.py:分离计划与执行7multiagent.py:多角色协作
简化默认取首个tool
假设绝对命中tool
没有对tool做任何校验
推荐测试问题:
正例:
使用tool进行下面多次的数学计算:2+2等于?然后结果+3等于?然后结果+4等于?然后结果乘以2等于?
反例:
使用tool进行下面多次的数学计算:2+2等于?然后结果+3等于?然后结果+4等于?然后结果乘以2等于?然后结果减去1等于,然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?
只是实现了tool的loop
响应返回多个 tool_calls没有处理机制,仅取了第一个,可能会400
没有tool的注册表
推荐测试问题:
my name is Rudy,hello!
使用tool完成下面多个的任务:刚才我的上条消息全部转大写、计数一下它的总字数、它的总字数乘以2等于?
再乘以2等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?然后结果减去1等于?
my name is Rudy,hello!使用tool完成下面多个的任务:刚才我的消息全部转大写、计数一下它的总字数、它的总字数乘以2等于?
再乘以2等于?