大模型如何使用tools
langchain中使用工具其实比较简单的,一个api调用就行,如下图所示,那么具体的原理是什么呢?
我们先看下agent执行的原理,后面在介绍agent;
AgentExecutor原理
Agent初始化:
构建prompt和parser:
parser主要解析中间过程大模型输出的action对应的输入,用来执行工具;
- 如果大模型输出的内容提取不到,就循环执行,默认执行15遍;
解析最后结果输出:
Agent核心流程
agent的核心流程如下,就是构建prompt,让大模型输出中间需要调用的工具,然后解析参数,调用输出,回到大模型进行处理;
- 这里面涉及初始态,需要大模型分析要调用哪些工具
- 中间态,大模型需要推理输出中间步骤,需要给出对应参数
- 结果态,判断是否找到合适的答案