引言
在年前,DeepSeek-R1 模型以强劲之势震撼发布,其 API 价格低至令人惊叹的程度,而且几乎能与 OpenAI SDK 完美兼容。在此之后,DeepSeek 一路高歌猛进,迅速登顶多地应用市场榜首。
那么,如何才能将 DeepSeek 成功接入微信公众号呢?而今天这篇文章,将为大家带来详尽的教程,手把手教你如何把 DeepSeek 接入个人微信公众号。即使你是技术小白,也能轻松上手。
前期准备
在开始接入操作之前,我们需要完成一些关键的前期准备工作,为后续的顺利接入奠定基础。这些准备工作涉及到 DeepSeek、微信公众平台以及服务器三个方面。
DeepSeek 相关准备
1、首先,访问 DeepSeek开发者平台->点击跳转,如果你还没有账号,点击注册按钮,按照提示填写注册信息,完成账号注册。
2、注册成功后,登录账号,进入开发者平台控制台。在控制台中,找到 “API Keys” 选项,点击进入后,选择 “创建 API key”。为你的密钥取一个便于识别的名称,然后点击创建。此时,系统会生成一个唯一的 API key,它是一串类似 sk-xxxxxxxxxxxxxxxxxxxxxxxx
的字符串 。请务必将这个 API key 复制下来,并妥善保存,它将是我们后续接入过程中不可或缺的凭证。
微信公众平台准备
接下来,我们要在微信公众平台进行一系列准备操作。如果你还没有微信公众号,建议先注册一个测试号,这样可以在不影响正式公众号运营的情况下进行测试。
-
登录微信公众平台后台(没注册的话自行注册并实名)->点击跳转
-
申请成功后,进入公众号管理首页->设置与开发->开发接口管理这里成为开发者身份,然后分别复制 AppID 和AppSecret 并保存好。
-
然后,点击上图中的修改配置按钮, 进入服务器配置,首先我们需要定义一个 Token 并记住,然后点击 EncodingAESKey 栏目右边的“随机生成”,复制、保存并注备注好! 这个页面不要关闭,最后一步还要用。
服务器准备
我们部署 DeepSeek 需要有台服务器,如果没有服务器可以自己网上搜一搜购买或是领取免费服务器。
配置安全组
申请成功后,在云服务器控制台中,找到你申请的服务器实例,点击进入实例详情页面。在实例详情页面中,找到 “安全组” 选项,点击进入安全组管理页面。在安全组管理页面中,点击 “管理规则”,然后点击入方向的 “快速添加”。在添加安全组规则页面中,配置如下信息:授权对象填写 0.0.0.0/0,再勾选上HTTP协议(80号端口)。配置完成后,点击 “确定” 按钮,保存安全组规则。这样,我们就放行 HTTP 80 端口,确保微信服务器可以访问我们的服务器。如下图以阿里云服务器为例:
最后,在实例详情页面中,找到服务器的公网 IP 地址,将其复制下来,记录好。这个公网 IP 地址将用于微信公众平台的配置,让微信服务器能够找到我们的服务器。
接入流程
项目代码获取与环境搭建
我们的接入工作基于 GitHub 上的开源项目 COW (chatgpt-on-wechat),它为我们实现 DeepSeek 与微信公众号的对接提供了便利的框架。
- 首先,确保你已经成功登录到之前准备好的云服务器。在服务器的终端中,输入以下 git 命令,将 COW 项目的代码克隆到服务器中:
git clone https://github.com/zhayujie/chatgpt-on-wechat.git
这个过程就像是从 GitHub 这个巨大的代码仓库中,搬运一份 COW 项目的代码到我们的服务器上。耐心等待,直到命令执行完成,你会看到终端输出一些提示信息,表明代码克隆成功。
- 接下来,我们需要安装项目运行所依赖的各种包。在服务器终端中,依次执行以下两条 pip3 命令:
pip3 install -r./chatgpt-on-wechat/requirements.txt
pip3 install -r./chatgpt-on-wechat/requirements-optional.txt
- 这两条命令会自动从 Python 的包管理仓库中下载并安装项目所需的各种依赖包,就像为即将开始的旅程准备好各种工具和物资一样。安装过程可能需要一些时间,具体取决于你的网络速度,请耐心等待。安装完成后,你可以再次执行这两条命令,检查依赖包是否已经齐全。如果输出的第一句均为 “Requirement already satisfied:”,则表示一切正常,依赖包已经安装成功。
编辑配置信息
编辑配置文件 config.json
是整个接入过程中的关键步骤,它就像是为我们的接入系统设置各种参数和规则,确保其能够准确无误地运行。在这一步,我们需要用到之前收集的 DeepSeek 和微信公众号的相关信息。
首先,在你的本地电脑上打开一个文本编辑器,比如 Windows 自带的记事本、VS Code、Notepad++ 或者 Sublime Text 等。将以下文本复制到编辑器中:
{
"channel_type": "wechatmp",
"model": "deepseek-chat",
"open_ai_api_key": "你获取的DeepSeek的APIkey",
"open_ai_api_base": "https://api.deepseek.com/v1",
"single_chat_prefix": [""],
"single_chat_reply_prefix": "",
"wechatmp_app_id": "你的微信开发者ID,即APPID",
"wechatmp_app_secret": "你的微信开发者密钥,即APP Secret",
"wechatmp_aes_key": "前面随机生成的43位AESKey",
"wechatmp_token": "前面生成的Token",
"wechatmp_port": 80,
"conversation_max_tokens": 3000,
"expires_in_seconds": 3600,
"character_desc": "你是基于大语言模型的AI智能助手,旨在回答并解决人们的任何问题,并且可以使用多种语言与人交流。",
"temperature": 0.8,
"subscribe_msg": "感谢您的关注!\n公众号已接入DeepSeek-V3,可以自由对话。\n受微信限制,较长的输出会先回复一句【正在思考中】,等待片刻后发送任意文字即可获取输出。",
"use_linkai": false
}
然后,将其中的
- “你获取的 DeepSeek 的 API key” 替换为你在 DeepSeek 开发者平台获取的 API key;
- “你的微信开发者 ID,即 APPID” 替换为你在微信公众平台获取的 AppID;
- “你的微信开发者密钥,即 APP Secret” 替换为 AppSecret;
- “前面随机生成的 43 位 AESKey” 替换为你在微信公众平台随机生成的 AESKey;
- “前面生成的Token” 替换为你在微信公众平台随机生成的 EncodingAESKey。
在进行替换时,请务必小心谨慎,不要增删任何符号,保持整个 JSON 格式的完整性。建议将输入法切换到英文状态下进行操作,以避免因输入中文符号而导致的错误。
创建配置文件
在服务器中创建并写入项目配置文件,我们将使用 Vim 编辑器来完成这一操作。Vim 编辑器是 Linux 系统中常用的文本编辑器,功能强大,但对于新手来说可能不太容易上手,所以请严格按照以下步骤进行操作:
进入项目文件夹:在服务器终端中输入以下命令,然后回车:
cd chatgpt-on-wechat
使用 Vim 编辑器创建配置文件并打开编辑:在终端中输入以下命令,然后回车:
vi config.json
此时,会打开 Vim 编辑器,进入命令模式,你会看到一个空白的界面。
-
按下字母 I 键,进入 Vim 的插入模式。此时,你可以在编辑器中输入内容。
-
将之前在本地文本编辑器中编辑好的配置信息,复制并粘贴到 Vim 编辑器中。粘贴完成后,你可以使用光标键进行检查,确保内容完整无误。
-
依次按下 “Esc” 键、英文冒号 “:”、字母 “w”、字母 “q” 和 “Enter” 键,保存编辑并退出 Vim 编辑器。这里的 “Esc” 键用于退出插入模式,回到命令模式;
:wq
是 Vim 的保存并退出命令。 -
如果一切操作正确,你将返回到服务器终端界面。为了确保配置文件创建成功,你可以在终端中输入以下命令,查看配置文件的内容:
cat config.json
执行该命令后,终端会输出配置文件的信息,即你之前粘贴进去的文本。仔细检查这些信息,确保没有错误。如果发现错误,可以重新进入 Vim 编辑器进行修改。
7. 在云服务器运行项目,使用以下指令运行项目:
sudo python3 app.py
微信公众平台配置
完成了服务器端的配置后,我们还需要在微信公众平台进行一些配置,将公众号与我们的服务器连接起来。回到微信公众平台的管理界面,进入 “设置与开发 -> 开发接口管理” 页面,在服务器配置卡片点击 “修改配置”。在弹出的配置页面中,按照以下规则填写信息:
进入如下的页面:
URL:输入 “http:// 你的服务器公网 IP/wx”,其中 “你的服务器公网 IP” 替换为你之前在阿里云服务器控制台获取的公网 IP 地址。这个 URL 就像是一个地址标签,告诉微信服务器应该将用户的消息发送到哪里。
Token:填写你在编辑配置文件时自定义的 wechatmp_token。这个 Token 是微信服务器与我们的服务器进行通信时的验证凭证,必须保持一致。
AESKey:填写你在微信公众平台随机生成的 43 位 AESKey。它用于对消息进行加密和解密,确保通信的安全性。
加密方式:选择 “兼容模式”。这种模式可以同时支持明文和密文的消息传输,更加灵活。
填写完成后,点击 “提交” 按钮。此时,微信服务器会向你的服务器发送一个验证请求,如果服务器能够正确响应,就会提示 “提交成功”。最后,点击 “启用” 按钮,启用服务器配置。
至此,微信公众平台的配置就完成了。现在,你的公众号已经成功接入了 DeepSeek,用户在公众号中发送的消息将被转发到服务器,由 DeepSeek 进行处理,并将结果返回给用户。你可以在公众号中进行测试,与 DeepSeek 进行互动,体验它带来的智能服务。
使用过程遇到的问题
在成功接入 DeepSeek 后,使用过程中也可能会出现一些问题,影响用户体验。以下是一些常见问题及解决方法:
关闭终端后进程终止:前面我们为了便于测试,所执行的指令会使服务器响应终端的关闭信号,即终端关闭后项目进程便会终止。在测试成功后若想让程序无值守运行在云服务器,可以先到阿里云ECS控制台重启云服务器后重新连接,进入终端后执行下面的指令运行程序,这样本地电脑关机也不会影响服务器程序的运行啦。
(cd chatgpt-on-wechat && nohup python3 app.py &); tail -f ./chatgpt-on-wechat/nohup.out
回复异常:有时,用户在公众号中提问,可能会得到异常的回复,如回复内容不符合问题、回复格式错误或出现乱码等。这可能是由于配置文件中的参数设置不当、DeepSeek 模型的问题或网络传输过程中的数据丢失等原因导致的。首先,检查配置文件中的参数设置,特别是 character_desc
(角色描述)temperature
(温度系数,影响回复的随机性)等参数,确保它们符合你的需求。如果参数设置正确,可以尝试重新启动服务器上的接入程序,看是否能够解决问题。如果问题仍然存在,可能是 DeepSeek 模型本身的问题,可以网上找找答案,反馈问题并寻求解决方案。
大家有有遇到其他问题欢迎来评论区讨论,我都会逐一解答。
延伸阅读