如何添加自定义工具
ConsoleX AI提供了丰富的选项,方便用户从头开始实现一个工具函数来扩展大模型的能力边界。
通过JSON Schema定义工具的参数结构
首先,第一步是创建描述您的工具的 JSON Schema。格式与 OpenAI Function Calling 格式一致。您也可以使用 AI 从自然语言生成 JSON Schema。
设定工具调用方式和端点
接下来,可以选择是否启用工具调用。
- 未开始时,大模型将会根据工具的Json Schema生成调用参数,但不会发起调用,可以在尚未实现工具函数时用来检验模型生成调用参数的效果。
- 开启时,大模型将会向Webhook URL发起调用,或者使用Mock data模拟调用。
下一步是设定调用方式,可以选择GET或POST请求来调用工具函数,并设定工具函数的来源类型和工具函数的Webhook URL。
- 可以自己实现并发布函数,然后通过Webhook URL来添加为工具。可以为Wehook URL指定调用所需的API-Key,将在调用的request header的Authorization中,以Bearer的方式携带,类似:
Authorization: Bearer <your-api-key>
- 利用一些工作流编排工具,比如n8n、Dify、Make.com。我们可以在这些平台上编排工作流,然后将这些工作流添加为工具。详见具体的帮助。
- 还可以使用Mock data模拟调用,这适合于在尚未实现工具函数的情况下,测试大模型二次生成的结果质量。
指定结果生成的方式
最后,可以指定合成结果的方式,这里有三种选择:
- 直接输出内容。在这种方式下,将直接返回工具输出的结果并结束对话。
- 通过大模型进行二次生成,在这种方式下,工具调用返回的结果将被提供给模型二次生成结果。
- 使用模板合成,在这种方式下,将使用模版结合工具返回的参数合成结果并结束对话。模版中可以通过{....}插入键名,如果变量名与工具返回的JSON对象中的属性名相匹配,则变量名将会被替换为属性值。例如,模版的内容为
The following is the image generated by Flux.1:
工具返回的结果为:
{ "image_url":<the image url>, "prompt":"......" .....}
经过替换后的输出内容为:
The following is the image generated by Flux.1:
创建工具的限制
新手套餐的用户可以创建最多三个自定义工具,构建者套餐和大师套餐的用户可以创建无限数量的工具。 用户在使用自自定义工具时,ConsoleX AI不收取任何费用。