本系列文章记录“智能提醒助理”wx公众号 建设历程。
一、需求出发点
在公众号中对接上大模型。
二、实现路径分析
上次使用直接调用火山引擎大模型的方案:智能提醒助理系列-AIGC模型如何对接公众号
近期 跟朋友跟朋友交流的过程中发现,通过扣子制作了一个智能体,通过配置即可打通公众号、小程序。于是对接体验了一把,过程如下:
1、创建bot
登录:扣子
创建Bot
2、发布平台
发布的时候选择 微信平台,配置APPID即可。
3、效果体验
然后我的服务号里面就同时有两个大模型了。
原本担心 这个会对接会覆盖 我原本对接的服务号事件接口。
结果 这俩可以同时 回答,效果如下:
4、扣子是否支持API
支持。API接口文档如下:
扣子 - 开发指南
这里介绍下使用思路:
火山引擎的豆包大模型的接口 是同步掉用返回,而 扣子的API是异步的。
接口调用逻辑:
第一步:调用 发起会话接口,返回给你处理中。
curl --location --request POST 'https://api.coze.cn/v3/chat' \
--header 'Authorization: Bearer pat_ridq0okq4uuKDNJ6D0LzUFIkx7gCbcH1FrgbaHSn6qEJRhRbKU4wuoIxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"bot_id": "738072363209747xx",
"user_id": "123456789",
"stream": true,
"auto_save_history":true,
"additional_messages":[
{
"role":"user",
"content":"早上好",
"content_type":"text"
}
]
}'
第二步:轮询 查看对话详情 接口,获取结果。
curl --location --request GET 'https://api.coze.cn/v3/chat/retrieve?chat_id=74106181319468xxx&conversation_id=7410618131946xxx' \
--header 'Authorization: Bearer pat_ridq0okq4uuKDNJ6D0LzUFIkx7gCbcH1FrgbaHSn6qEJRhRbKU4wxx' \
--header 'Content-Type: application/json'
第三步:查询 查看对话消息详情 接口,获取问题答案。
curl --location --request POST 'https://api.coze.cn/v3/chat/message/list?chat_id=741068474536717xx&conversation_id=7410684745367158xx' \
--header 'Authorization: Bearer pat_ridq0okq4uuKDNJ6D0LzUFIkx7gCbcH1FrgbaHSn6qEJRhRbKU4wuoIoxxx' \
--header 'Content-Type: application/json'
接口响应结果中 除了答案 还包括 延伸问题。
5、方案对比
对比之前先说 调用扣子API 与 调用火山引擎的豆包大模型接口 的关系与区别:
扣子 是应用层,底层是调用的火山引擎大模型接口。
所以 他俩不在一个层面上,扣子是依赖火山引擎,在此基础上 还增加了 各种插件,提升回答能力。
扣子 具备 会话保持能力,可区分用户,知道上下文,每个用户是隔离的,这样回答的问题更具体,而 当前 直连火山引擎大模型接口 是无状态的。
扣子 具备 获取实时信息的能力,比如 今天日期、今天天气。这部分借助的是 联网搜索的插件能力。
扣子 具备 多模态信息处理能力,比如,发送文字、图片、语音 均支持。直连火山引擎大模型接口的话,需要在应用层 自己集成,调用不同的模型进行处理。
以上这些能力正是 我所需要的,解决了我 直连大模型 缺失的部分。