[RFC] 016 - 插件体系升级为工具体系 #551
arvinxx
started this conversation in
RFC | 特性开发
Replies: 2 comments
-
后续:
|
Beta Was this translation helpful? Give feedback.
0 replies
-
经过实测发现, OpenAI 的 tool calls 并不是我预期的给出调用链路声明。而是单纯实现同时调用多个工具。例如询问「杭州、宁波和上海」三地的天气如何,tool call 则会给出三个 fc 的调用声明。 当我询问「根据杭州的天气画一幅画」时,Tool call 中仍然只会有一个 杭州天气查询的 fc,并不会包含画画的函数调用。 因此该功能和我预想的差别有点大,原本以为的多工具调用分析可能无法做了,计划做简单些。 同时目前也存在部分 API 厂商已经不再支持 function call ,转为 tool call 模式,因此考虑简化实现方案。
只在调用层从 function_call 转变为 tool calls,然后得到的结果仍然传入 plugin 字段中。 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
背景
此外,新模型使用 tools 时会返回 tool_calls 数组, 即允许在一个AI消息中返回多个工具调用, 这对于复杂任务的处理来说具有很大的意义。因为在之前一个复杂任务要触发多个工具调用,需要进行多轮会话,每轮会话只使用一个工具。这在token上很浪费,同时交互体验也不是非常理想。
所以个人感觉工具调用的技术模型演化到这一步应该是终局了,但OpenAI现有的交互方案还不是最优解。用户无法感知每一步工具调用的结果,对于分析模型中间步骤来说不太方便。
内容
根据上述思考, LobeChat 的插件体系会整体升级为工具调用体系,将包含 LobeChat 内置工具(DallE 等)与外部工具(即现有的插件体系)。
内置工具将会率先实现图片生成能力:
同时也会考虑将 TTS 做成一个内置工具,实现功能的工具化。
围绕 Agent 智能助理这个核心概念,「助理使用工具」 这样的描述对于领域架构演进来说也会更加简洁。
实现路径
Beta Was this translation helpful? Give feedback.
All reactions