关注公众号[桃李开发]体验效果
1. 首要条件:
- 公网服务器一台
- 公众号(订阅号、服务号都可)一个
- 注册LinkAI(有国外服务器的可不考虑使用)
- 开源项目chatgpt-on-wechat
2.服务器选择
建议国外服务器,使用openai 无需代理,域名也不需要备案。我当时购买时没注意,选的国内服务器,导致域名备案备案花了很长时间。后续对接gpt也只能选择其他方案。
没有国外服务器的建议使用开源项目chatgpt-on-wechat内置的插件LinkAI 官网地址
3. 开源项目
微信公众接入gpt项目开发就不重复做工了,git上有很多大佬写的很完善的项目,这里我使用的是chatgpt-on-wechat(项目地址:https://github.com/zhayujie/chatgpt-on-wechat),
项目简介:
使用大模型搭建微信聊天机器人,基于 GPT3.5/GPT4.0/Claude/文心一言/讯飞星火/通义千问/LinkAI,支持个人微信、公众号、企业微信、飞书部署,能处理文本、语音和图片,访问操作系统和互联网,支持基于知识库定制专属机器人。
目前支持:多端部署、基础对话、语音能力、图像能力、丰富插件、工具知识库等。
项目配置项说明请移步官网地址,尽可能简单的阐述配置部署流程。
chatgpt-on-wechat官网配置阅读完后继续向下看
4. 项目配置
项目根目录配置文件config.json
# config.json文件内容示例{ "open_ai_api_key": "YOUR API KEY", # 填入上面创建的 OpenAI API KEY "model": "gpt-3.5-turbo", # 模型名称, 支持 gpt-3.5-turbo, gpt-3.5-turbo-16k, gpt-4, wenxin, xunfei "proxy": "", # 代理客户端的ip和端口,国内环境开启代理的需要填写该项,如 "127.0.0.1:7890" "single_chat_prefix": ["bot", "@bot"], # 私聊时文本需要包含该前缀才能触发机器人回复 "single_chat_reply_prefix": "[bot] ", # 私聊时自动回复的前缀,用于区分真人 "group_chat_prefix": ["@bot"], # 群聊时包含该前缀则会触发机器人回复 "group_name_white_list": ["ChatGPT测试群", "ChatGPT测试群2"], # 开启自动回复的群名称列表 "group_chat_in_one_session": ["ChatGPT测试群"], # 支持会话上下文共享的群名称 "image_create_prefix": ["画", "看", "找"], # 开启图片回复的前缀 "conversation_max_tokens": 1000, # 支持上下文记忆的最多字符数 "speech_recognition": false, # 是否开启语音识别 "group_speech_recognition": false, # 是否开启群组语音识别 "use_azure_chatgpt": false, # 是否使用Azure ChatGPT service代替openai ChatGPT service. 当设置为true时需要设置 open_ai_api_base,如 https://xxx.openai.azure.com/ "azure_deployment_id": "", # 采用Azure ChatGPT时,模型部署名称 "azure_api_version": "", # 采用Azure ChatGPT时,API版本 "character_desc": "你是ChatGPT, 一个由OpenAI训练的大型语言模型, 你旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。", # 人格描述 # 订阅消息,公众号和企业微信channel中请填写,当被订阅时会自动回复,可使用特殊占位符。目前支持的占位符有{trigger_prefix},在程序中它会自动替换成bot的触发词。 "subscribe_msg": "感谢您的关注!/n这里是ChatGPT,可以自由对话。/n支持语音对话。/n支持图片输出,画字开头的消息将按要求创作图片。/n支持角色扮演和文字冒险等丰富插件。/n输入{trigger_prefix}#help 查看详细指令。",# linkAi配置 "use_linkai": false, # 是否使用LinkAI接口,默认关闭,开启后可国内访问,使用知识库和MJ "linkai_api_key": "xxx", # LinkAI Api Key "linkai_app_code": "xxx" # LinkAI 应用code# 微信一言配置 "baidu_wenxin_model": "eb-instant", "baidu_wenxin_api_key": "xxx", "baidu_wenxin_secret_key": "xxx"# 微信公众号配置: "wechatmp_app_id": "xxx", # 微信公众号appid "wechatmp_app_secret": "xxx", # 微信开发者密码 "wechatmp_aes_key": "xxx", # 微信加密串 "wechatmp_token": "xxx", # 随便填 与 微信开发放平台一致即可 "wechatmp_port": 80, 项目端口号微信只支持80 (http)和 443(https) 端口}
所有key、code值如何获取下面第五步有具体步骤
如何配置?
- 有国外服务器
有国外服务器的可直接将openAi key添加到配置项open_ai_api_key即可 - 国内服务器
使用LinkAi 将配置项use_linkai
改为true
填入linkai_api_key
和linkai_app_code
基于LinkAi使用文心一言:
将配置项use_linkai
改为false
,model
改为wenxin
,配置项加入baidu_wenxin_model
、baidu_wenxin_api_key
、baidu_wenxin_secret_key
5.如何获取配置项值?
-
获取openAI key(需要魔法)
打开官网,注册账号方面有问题的可私聊我,可解决注册短信验证问题
(1)点击左侧菜单API keys新建key,复制到项目配置文件即可使用ChatGpt
-
获取linkAi配置项
(1)打开LinkAi官网创建新应用
(2)填入应用信息后点击创建按钮
(3)进入应用后可选择应用的功能及默认的模型
(4)点击左侧菜单应用接入->创建api key 即可获得LinkAi key
-
获取文心一言配置项
(1)打开文心一言(千帆大模型)官网注册登录后点击左侧菜单应用接入
(2)填写应用基础信息后即可看到api_key
、secret_key
填入配置项即可 -
获取微信公众号配置项
(1)打开微信公众平台点击左侧菜单中设置与开发中的基本配置
(2)复制appid和appSecret到项目配置文件即可
(3)启动服务器配置在服务器地址中填入项目部署到的服务器,固定写法为服务器地址+/wx,如果是ip地址端口仅支持80,域名则默认访问443端口,token填入配置项中的wechatmp_token
,消息加解密密钥(EncodingAESKey)对应配置项wechatmp_aes_key
随机生成即可,仅在安全模式下生效。
至此 项目使用的大模型及配置项获取已全部介绍完毕,对应选择配置即可
项目部署后 打开公众号就可以体验啦!有什么问题尽情打扰我,如有帮助点个赞吧👍