构建能够访问所有ChatGPT插件的代理的最佳方法是什么?


将最近在@LangChainAI中引入的两种技术相结合即可达到最佳效果

🔧工具检索
🗣️自然语言API

在下面的线程中提供了解释和示例笔记本

如果您尝试构建具有访问所有ChatGPT插件功能的代理,会有哪些挑战或问题?

首先,会(有望)有太多的插件 - 太多以至于无法适应上下文

其次,LLM必须知道如何正确使用基础OpenAPI规范

🔧工具检索

为了解决太多插件的问题,我们可以进行检索步骤以选择给定查询的相关插件

这是我们最近分享的想法,这要归功于最近的CustomAgent refactor https://twitter.com/LangChainAI/status/1644406182772195328?s=20

🗣️自然语言API

一旦检索到了插件,我们需要确保LLM实际上能够使用底层API

我们发现最好的方法是将每个API包装在自然语言API中,这是一个典型示例https://twitter.com/LangChainAI/status/1645159697690025984?s=20

为什么会这样?

我们发现大多数模型在直接输入提示时很难学习/记住如何可靠地使用多个API端点。

现在代理只需“路由”请求到正确的API,并将翻译转换为实际的API参数更低

将所有这些放在一起:

代理程序获取相关插件,然后为端点创建自然语言API

请参阅下面的示例笔记本!

https://python.langchain.com/en/latest/use_cases/agents/custom_agent_with_plugin_retrieval.html