跳到内容
跨境Ai视界 跨境Ai视界
Go back

如何在微信或飞书群部署跨境Ai机器人

文章目录共 5 节
  1. Coze制作机器人
  2. 需求
  3. 创建
  4. 测试
  5. 发布
  6. Coze部署飞书
  7. 微信Ai机器人
  8. 购买服务器
  9. 登录服务器
  10. 云服务器部署COW
  11. Docker部署COW
  12. Coze部署微信
  13. 修改代码
  14. 修改配置
  15. 未来计划

最近有很多新手朋友来问我一些基础的入门问题,确实有点回复不过来了,我就想着做一个coze Ai机器人来帮我回复一些简单的问题。

同时,这两天我把Coze专业版开通了,大致功能和普通版是一样的,只是调用api的次数不再限制到100次,而是无限次调用。现在有1元资源包可以购买,够玩一年了。既然调用次数不受限制了,我就可以把coze机器人接入到微信群或者其他平台,不再限于飞书APP。

摸索了一波之后,终于做出了第一版的跨境电商领域的问答机器人Ai小星。这次,我会把所有的流程都梳理清楚,做出教程。有能力的朋友可以自行部署,想体验的朋友,可以在文章末尾找到二维码进群体验,目前暂时免费。如果不想看教程的朋友,请直接滑到文章最后。

Coze制作机器人

需求

我已经做过了几个agent机器人,深刻体会到了技术并不是最关键的,而是在于对行业、对业务的理解,不断的去完善整个流程,优化提示词。其中,最耗时间的是调试环节。所以,我对第一版跨境小星的要求是先具有基础功能,后续功能可以持续迭代。

第一版的需求是:

  1. 联网搜索回答用户问题
  2. 引用知识库
  3. 每天定时推送跨境热点新闻 目前,coze的知识库功能不是很好用,对于知识文档的识别分段能力相对弱一点。但是我先把功能做好,说不定后面有更新。联网搜索功能可以借助一些扣子官方的插件实现。每天推送新闻就是一个定时触发的功能。不同的能力通过不同的工作流来编排,减少响应时间。

创建

目前第一版是两个功能,联网搜索回答和新闻推送,分别用了两个工作流去实现。

Image

工作流 qa_search_rag

联网搜索回复是类似于秘塔搜索或者Perplexity这种搜索引擎。工作流中我使用扣子官方的bing search插件去实现联网搜索。国内版本中用必应搜索引擎,效果已经够用了。

知识库共用的是之前做过的几个机器人的资料。说实话,知识库效果不好,应该说差的远。因为制作知识库是两个过程,一个是整理资料,一个是分段embedding

资料收集本身就是一件很费时间的工作,而且有可能收效甚微,高质量的信息源很可贵,文件的格式也是五花八门的。而文件的分段对纯文本资料比较友好,图片,pdf类型的效果不好。所以就需要一些专门做知识库RAG的平台,如fastGPT,MaxKB等。

还是先埋下一颗种子,等到技术成熟,或者我掌握了更多技能再去测试。在这里,你需要知道的是,目前这版机器人的知识库能力很弱

Image

Image

工作流 get_news

第二个工作流是利用字节的微头条产品,获取跨境电商相关的新闻。普通类的新闻不用太纠结媒体渠道,对于热点新闻,各大媒体都会有所报道。

Image

测试

由于专业版目前只能选择豆包pro的大模型,所以我在工作流内和外层的bot中都使用了doubao-pro-32k/functioncall版本。图中看到已经可以正常调用两个工作流,回复问题和新闻推送。

调试是个体力活,要不断的根据输出结果去调整提示词或者功能,慢慢靠近自己想要的效果。我觉得不断去迭代这个机器人才会在长期的工作中帮得上忙。如果做完一次就不更新了,那其实用处并不大。因为大模型在变,agent的能力在变,业务环境逻辑都在变,但机器人不变,能用就奇怪了。

所以说调试或制作agent,技术并不是最关键的。**关键的是足够深的业务理解和恰到好处的技术能力,再加上一些灵光乍现的创意。**不深耕业务的话,提示词很难优化到生产级别,因为你不知道什么样的输出是一个好的效果。

Image

发布

发布需要勾选扣子商店(可选)、飞书和Bot as API。

Image

发布到飞书需要先在飞书创建一个团队,授权扣子,用管理员权限,然后去通过这个APP。

Image

用API发布需要创建一个token,这个是接入微信或者其他平台用的。先保存token,暂时不用,接着往下进行。

Image

同时在这里获取机器人的bot id,也是先保存,等下再用。

Image

Coze部署飞书

由于是字节自家产品,部署飞书比较方便。可以在应用管理界面打开免审权限,这样不用每次审核。应用权限可以根据实际情况去开关。

Image

部署飞书会比微信有一个额外的好处,就是可以不限制的私聊。微信机器人私聊需要加好友,而好友加的多了就会触发风控。但是飞书可以直接私聊,完全不用担心风控。下图演示的就是私聊的界面。

Image

微信Ai机器人

购买服务器

Coze机器人部署微信需要在云服务器上运行,也可以在本地电脑运行。如果有nas的话,也可以部署在docker。我实际测试了云服务器和nas docker的部署。

大多数朋友应该还是会部署在云服务器上。阿里云和腾讯云或者其他什么云都可以,选最低配置就行。这里以腾讯云为例,购买第一年服务器只需99元

Image

在腾讯云优惠界面选择云服务器,地址可以选择离自己的实际位置较近的地方。系统选择Linux Ubuntu带docker版本。购买完成会发送ip地址,账号密码。

Image

登录服务器

可以直接在腾讯云后台登录,也可以在本地电脑用系统自带的功能或者第三方软件实现登录,方法略有差异。我是MacOS系统,加上颜值党在线,就选择了Termius第三方登录。这是Termius和腾讯云的登录界面,大家根据自己的情况来选择。

Image

Image

登录服务器后用命令检查下系统是否配置了Python,如果返回了python版本的号就是正常的。

python3 --version

Image

云服务器部署COW

部署微信Ai机器人用到的githup代码库是chatgpt-on-wechat,简称COW,下面放的代码都是来自于原作者。

源码:https://github.com/zhayujie/chatgpt-on-wechat

1 下载源码

首先从githup下载代码。由于云服务器ip选择的是国内的,代码经常下载不下来,需要多试几次。实在下载不来,可以提前在自己电脑存一份,上传到云服务器。

git clone https://github.com/zhayujie/chatgpt-on-wechat
cd chatgpt-on-wechat/

2 安装依赖

安装依赖还是会用到网速,下载不下来,继续多下载几次,至少确保必选依赖全部安装成功。

pip3 install -r requirements.txt                # 必选依赖
pip3 install -r requirements-optional.txt       # 可选依赖,语音、tool插件等功能需要

Image

3 配置

复制config template模板文件,需要自定义大模型api的可以参考config.py文件里的配置,把需要用到的api和地址更换到config.json即可。

cp config-template.json config.json

Image

4 运行程序

先创建nohup.out的日志,再执行程序。nohup命令可以让程序持续运行。

touch nohup.out                                   # 首次运行需要新建日志文件  
nohup python3 app.py & tail -f nohup.out          # 在后台运行程序并通过日志输出二维码

5 停止程序

如果需要停止程序,先找到pid,再kill掉。

ps -ef | grep app.py | grep -v grep              # 查看当前进程的pid
kill -9 <pid>                                    # 关闭程序

如果你只需要让微信Ai机器人接入大模型,原作者的教程到这里就结束了。实际使用中会有一个问题,重复部署不会关闭之前扫码登录过的微信小号,这样会导致占用进程,耗费服务器资源,拖慢机器人回复的速度。所以有技术大佬多写了几行代码解决了这个问题,由于教程没有公开,我就不放代码了,相信原作者也会在后面优化的。

Docker部署COW

互联网时代,中年油腻的三大特征,路由器,充电头和nas。我竟然都集齐了。。。好吧,既然都有nas了,还要什么云服务器,有道理,说干就干。

Image

我入的是极空间的Z4Pro,买的时候就想到了自己肯定会折腾docker,就买了16g内存版本。Nas中拉取COW镜像还是挺方便的,拉取完成后直接启动,安装依赖,简直就是一气呵成。安装代码和上文列出的一致,有nas的朋友可以自行测试。

Image

因为nas的docker相当原生,我又安装了nano编辑器。主打一个缺什么,装什么。安装完成后,实测跑微信机器人还是挺丝滑的。

Image

Coze部署微信

好了,现在进入重头戏。Coze部署微信的原理是改动几个核心的配置,在代码中添加coze的模型和api。教程来自于WaytoAGI梦飞的飞书公开文档,下面我按自己的理解说明。

原教程:https://waytoagi.feishu.cn/wiki/NB3nwtUC0iDLYxkIkSYc0WRznGg

修改代码

1.在chatgpt-on-wechat根目录中,修改config.py,在available setting字典末尾增加coze api接口地址。

    # Coze
    "model": "coze",
    "coze_api_base": "https://api.coze.cn/open_api/v2",
    "coze_api_key": "",
    "coze_bot_id": "",

2.在chatgpt-on-wechat/bot目录中,创建文件夹,命名为“bytedance”。然后在文件夹中上传bytedance_coze_bot.py文件。

3.在chatgpt-on-wechat/bot目录中,修改bot_factory.py,在create_bot函数末尾引用coze机器人程序。

elif bot_type == const.COZE:
    from bot.bytedance.bytedance_coze_bot import ByteDanceCozeBot
    return ByteDanceCozeBot()

4.在chatgpt-on-wechat/common目录中,修改const.py,在bot_type末尾添加bot。

COZE = "coze"

5.在chatgpt-on-wechat/bridge目录中,修改bridge.py,在model_type中添加模型。

if model_type in [const.COZE]:
    self.btype["chat"] = const.COZE

修改配置

最后在config.json中填写coze api的接口地址和自制机器人的bot id。还记得刚刚在发布飞书机器人时候保存的bot id和token吗,这里派上了用场。

  "model": "coze",
  "coze_api_base": "https://api.coze.cn/open_api/v2",
  "coze_api_key": "填写coze token",
  "coze_bot_id": "填写bot id",

好了,微信机器人的步骤到此结束。我们运行代码,看下实际效果。

大家想体验的可以进入微信群,或者飞书群。微信小号怕麻烦,就取消了私聊。如果你想私聊机器人,可以进飞书团队,找到机器人私聊。想在微信群体验,就扫微信二维码。想进飞书私聊,就扫飞书二维码。

Image

未来计划

抛开Agent的制作过程和部署微信的繁琐,我希望给机器人加上更多可以实现业务需求的功能,做一款跨境Ai版的瑞士军刀。在不重复造轮子的前提下,实现用Ai重塑实际工作中的SOP。

也许今天你玩了一下,说这不就是个垃圾吗。但我希望在不断的优化下,让他能够成为一个真正可以达到生产级别的Ai机器人,真正的用Ai提升工作效率,不只是拿来当玩具。这是我目前发布的几款机器人,都深度结合了工作,不只是给个提示词那么简单。

国内扣子:https://www.coze.cn/user/3283617400501600

国外coze:https://www.coze.com/user/7329456968954135553

未来我会从这些方面优化:

  1. 小功能的增加:对待玩具,我的思路是先广再精。如果一开始我不断的优化一个功能,那肯定是出不来了。我计划增加一些实用的小功能,增加可玩性,如第一版的新闻功能。
  2. 主要能力的增加:新鲜感很快会过去,冷静下来,我们会思考这个机器人会给我们带来什么帮助。我计划增加一些主力的功能,让机器人能够往生产级别靠近。
  3. 知识库的完善:该啃的骨头还是要啃的。我会着重对文档分段做进一步的了解。我知道一些可以更好分段的工具,但是没有时间去尝试。
  4. 平台迁移:考虑到coze知识库功能不够完善,有可能迁移到FastGPT、MaxKB这类知识库更强的平台。也会考虑用dify进行私有化部署尝试,根据实际工作需求定制。 扣子这类的Ai Agent平台给了我们这些非程序员实现自己想法的一个途径。Ai时代的来临已经是大势所趋,Ai并不会取代人的工作,取代的是不会用Ai的人。

参考资料

LinkAI教程:https://docs.link-ai.tech/cow/quick-start

梦飞教程:https://waytoagi.feishu.cn/wiki/NB3nwtUC0iDLYxkIkSYc0WRznGg


Share this post on:

上一篇
美亚复古产品-唱片机市场分析
下一篇
重要升级-最强亚马逊Ai listing