WOC!满血Deepseek装进微信、公众号、钉钉,绿联NAS部署本地AI
大家好,这里是Cherry,喜爱折腾、玩数码,热衷于分享自己的数码玩耍经验~
前言
最近deepseek等AI再次火出了圈,几乎可以说是全民下载使用了,不过虽然APP和网页版使用很方便,但是它们的使用载体局限住了,导致没办法再更多的场合下使用对接。
今天,cherry手把手教大家如何在微信、钉钉、公众号上对接deepseek等AI大数据模型,并且实现对话场景。
本文内容较多,超4000字,建议大家根据目录自行选择篇幅阅读。
一、本地部署DeepSeek
1、申请API
2、本地部署ollama
二、绿联部署ChatGpt-on-Wechat(简称COW)
1、compose.yaml基础配置
2、个人微信配置
3、公众号配置
4、钉钉配置
5、部署COW项目
6、项目成效
三、COW的插件使用方法
1、Link.ai
2、alapi
本次使用的NAS设备为绿联NAS私有云DXP 4800 Plus,该型号拥有4个机械硬盘位+2个M.2 固态硬盘位,采用Intel Gold 8505处理器,最大支持64GB DDR5-4800MHz内存,性能强劲,可以满足家庭与极客用户的大部分使用需求。

✅ 多端部署: 有多种部署方式可选择且功能完备,目前已支持微信公众号、企业微信应用、飞书、钉钉等部署方式
✅ 基础对话: 私聊及群聊的消息智能回复,支持多轮会话上下文记忆,支持 GPT-3.5, GPT-4o-mini, GPT-4o, GPT-4, Claude-3.5, Gemini, 文心一言, 讯飞星火, 通义千问,ChatGLM-4,Kimi(月之暗面), MiniMax, GiteeAI
✅ 语音能力: 可识别语音消息,通过文字或语音回复,支持 azure, baidu, google, openai(whisper/tts) 等多种语音模型
✅ 图像能力: 支持图片生成、图片识别、图生图(如照片修复),可选择 Dall-E-3, stable diffusion, replicate, midjourney, CogView-3, vision模型
✅ 丰富插件: 支持个性化插件扩展,已实现多角色切换、文字冒险、敏感词过滤、聊天记录总结、文档总结和对话、联网搜索等插件
✅ 知识库: 通过上传知识库文件自定义专属机器人,可作为数字分身、智能客服、私域助手使用,基于LinkAI实现
一、申请Deepseek API
1、申请方法
前段时间,由于海外的攻击,deepseek团队关闭了账号注册以及开发平台申请。但截至目前,开发平台已经重新开放了,我们只需要登录官方,选择API开放平台注册即可。

首次注册的用户,官方赠送了10元的余额,按照目前百万tokens 8元输出计算,可以输出133万左右中文,足够我们用很久了。

接着,点击左侧的API Keys,选择创建API keys,然后输入一个自定义名称来指定api使用的场景。

记得复制保存在这里的token,关闭后将无法再次获取,只能删除重新创建。

2、本地部署Deepseek-R1
首先我们本地部署ollama,将下面的compose代码复制到绿联NAS的docker界面部署
services:
ollama:
volumes:
- ./data:/root/.ollama
ports:
- 11434:11434
container_name: ollama
image: ollama/ollama

部署完成后,选择ollama容器,在终端新增一个/bin/bash
命令行,在控制台输入ollama run deepsekk-r1:8b
下载模型。
deepsekk-r1:8b模型大小为4.9G容量,我这边下载需要1个小时左右,我们需要使用8 GB内存来运行 7B 模型,16 GB内存来运行 13B 的模型。下载完成后,我们就可以使用http://localhost:11434/api/
来作为本地deepseek的api接口了。

二、绿联部署Chatgpt-on-wechat
接着我们来部署chatgpt-on-wechat项目,该项目支持在微信(目前不行)、企业微信、钉钉、飞书、微信公众号等平台对接部署,其中钉钉不需要有公网ip或域名,其它类型都需要有80/443端口的域名或公网IP。
这里,我们分别介绍如何使用钉钉、微信公众号。
1、修改yaml文件
下面的代码是本项目的docker-compose.yaml代码,我们主要修改AI API信息,这里一步步拆解来讲。
version: '2.0'
services:
chatgpt-on-wechat:
image: zhayujie/chatgpt-on-wechat
container_name: chatgpt-on-wechat
security_opt:
- seccomp:unconfined
volumes:
# 插件配置文件,详见第三章插件配置
- ./config.json:/app/plugins/config.json
environment:
TZ: 'Asia/Shanghai'
# 深度求索API
OPEN_AI_API_BASE: 'https://api.deepseek.com/v1'
OPEN_AI_API_KEY: 'sk-xxxxxxxxxxx'
# 'deepseek-chat' 即可调用 DeepSeek-V3。'deepseek-reasoner'即可调用 DeepSeek-R1。
MODEL: 'deepseek-reasoner'
# OpenAI代理,为空即可
PROXY: ''
# 私聊时,唤醒Bot的前缀
SINGLE_CHAT_PREFIX: '["cherry", "@cherry"]'
# 私聊时,Bot回复的前缀
SINGLE_CHAT_REPLY_PREFIX: '"[cherry] "'
# 群聊时,唤醒Bot的前缀
GROUP_CHAT_PREFIX: '["@bot"]'
# 开启自动回复的群名称列表
GROUP_NAME_WHITE_LIST: '["test", "test2"]'
# 开启图片回复的前缀
IMAGE_CREATE_PREFIX: '["画", "看", "找"]'
# 支持上下文记忆的最多字符数
CONVERSATION_MAX_TOKENS: 1000
# 是否开启语音识别
SPEECH_RECOGNITION: 'False'
# 提示词
CHARACTER_DESC: '你叫cherry,是一个擅长NAS和数码领域的科技工程师'
EXPIRES_IN_SECONDS: 3600
USE_GLOBAL_PLUGIN_CONFIG: 'True'
# 以下为Link_AI收费模块
USE_LINKAI: 'False'
LINKAI_API_KEY: ''
LINKAI_APP_CODE: ''
# 以下为对接钉钉,和公众号2选1
# CHANNEL_TYPE: "dingtalk"
# DINGTALK_CLIENT_ID: "dixxxxxxdo"
# DINGTALK_CLIENT_SECRET: "bvg3xxxxxxxxxxxxxxxzc4K8
# 以下为对接微信公众号,和公众号2选1
# CHANNEL_TYPE: "wechatmp"
# SINGLE_CHAT_PREFIX: '[""] '
# WECHATMP_APP_ID: "wx73f9******d1e48"
# WECHATMP_APP_SECRET: "weca******est"
# WECHATMP_AES_KEY: ""
# WECHATMP_TOKEN: "tok**est"
# WECHATMP_PIORT: 80
2、修改 AI 接口和模型
# API标准接口,根据选择的不同而不同。如果使用deepseek的话,则不需要修改。
OPEN_AI_API_BASE: 'https://api.deepseek.com/v1'
# DeepSeek的api key,按照第一步申请后填写
OPEN_AI_API_KEY: 'sk-XXXXXX'
# 模型,'deepseek-chat' 即可调用 DeepSeek-V3。'deepseek-reasoner'即可调用 DeepSeek-R1。
MODEL: 'deepseek-reasoner'
3、配置参数并接入个人微信(不建议)
在不配置CHANNEL_TYPE
环境变量的时候,默认接入个人微信,不过现在个人微信封号严重,登录2次必被警告或封号,因此不建议使用,建议等后续新的方案出来。(我的维系号现在还被封着,难受!)

🔴如果对个人微信接入很有需要的,可以尝试另外两个项目【lss233/chatgpt-mirai-qq-bot】或者【Soulter/AstrBot】

4、配置参数并接入公众号
CHANNEL_TYPE: "wechatmp"
SINGLE_CHAT_PREFIX: '[""] '
WECHATMP_APP_ID: "wx73f9******d1e48"
WECHATMP_APP_SECRET: "weca******est"
WECHATMP_AES_KEY: ""
WECHATMP_TOKEN: "alaalayoyo"
WECHATMP_PIORT: 80 如果使用HTTPS则修改为443
打开微信公众号后台,依次点击设置与开发-开发接口管理-基本配置-应用开发者打开配置。

首先是上面的账号开发信息,按要求填入yaml文件对应的参数中,然后配置域名或固定IP到白名单里。

接着,点开下方的服务器配置,配置所有的自定义参数。

同样将对应的内容配置到yaml文件中,然后等待启动容器后提交应用。

5、配置参数并接入钉钉
CHANNEL_TYPE: "dingtalk"
DINGTALK_CLIENT_ID: "dingxxxxxxxxxxx2vdo"
DINGTALK_CLIENT_SECRET: "bvg3pxxxxxxxxxxxxxxxxxiKzc4K8"
登录钉钉开放后台,扫码登录,选择左侧的钉钉应用-创建应用。

在右侧填入应用名称、描述、图标后提交保存。

接着,点击左侧的应用能力,添加应用能力,选择机器人。

依旧填写描述、名字信息。

在内部添加细节,然后点击发布。

返回凭证与基础信息,Client ID和Client Secret分别填入yaml的两行代码中。

接着部署容器,等完成部署以后,回到钉钉开发平台,选择事件订阅,这里可以看到蓝字已完成接入,验证连接通道。

最后一步,返回应用首页,在版本详情处点击编辑按钮。

在里面填写版本号、版本描述后发布,之后就可以在钉钉里看到并且加入了。

5、绿联私有云部署方法
如果网络没有优化的,可以先从我准备的网盘里下载镜像文件,双击exe解压并导入绿联私有云中。

打开docker-项目,录入项目名称,然后把上面配置好的docker-compose.yaml内容复制到compose配置中提交。

如果后续想接入微信的,可以点开项目-容器进入到单个容器页面,查看日志进行扫码登录。

6、使用效果展示
这我展示了钉钉端的效果,把AI机器人拉入群以后,直接@机器人就可以提问。如果私聊的话,则直接对话即可。

三、配置Chatgpt-on-wechat插件
新建一个config.json文件,内容包括如下,之后上传到绿联NAS的容器目录下(忘记的回看yaml文件,里面有备注)。
{
"godcmd": {
"password": "",
"admin_users": []
},
"banwords": {
"action": "replace",
"reply_filter": true,
"reply_action": "ignore"
},
"tool": {
"tools": [
"url-get",
"meteo-weather"
],
"kwargs": {
"top_k_results": 2,
"no_default": false,
"model_name": "gpt-3.5-turbo"
}
},
"linkai": {
"group_app_map": {
"测试群1": "default",
"测试群2": "Kv2fXJcH"
},
"midjourney": {
"enabled": true,
"auto_translate": true,
"img_proxy": true,
"max_tasks": 3,
"max_tasks_per_user": 1,
"use_image_create_prefix": true
},
"summary": {
"enabled": true,
"group_enabled": true,
"max_file_size": 5000,
"type": ["FILE", "SHARING"]
}
},
"hello": {
"group_welc_fixed_msg": {
"群聊1": "群聊1的固定欢迎语",
"群聊2": "群聊2的固定欢迎语"
},
"group_welc_prompt": "请你随机使用一种风格说一句问候语来欢迎新用户"{nickname}"加入。",
"group_exit_prompt": "请你随机使用一种风格跟其他群用户说他违反规则"{nickname}"退出。",
"patpat_prompt": "请你随机使用一种风格介绍你自己,并告诉用户输入#help可以查看帮助信息。",
"use_character_desc": false
},
"Apilot": {
"alapi_token": "xxx",
"morning_news_text_enabled": false
}
}
接着,重启容器,然后在日志里查看打印出来的临时口令。

在跟AI机器人私聊的时候,输入#auth 口令
来激活管理员模式,然后输入#help
可以查看插件相关指令,根据指令去下载使用即可。

除了管理员模式外,还涉及到两个插件API。
一个是Link.AI。在官网(link-ai.tech/
)注册,之后可以调用官方插件或者创建自定义插件。点击左侧的渠道接入,创建一个API备用。

接着点击左侧的应用,创建一个APP,复制应用Code备用。APP使用的是Link.AI内置的大模型算法,不过使用插件需要消耗积分,可以通过每日签到来获取积分。

对应到docker-compose.yaml里的代码如下
# 从Flase改为True
USE_LINKAI: 'True'
# 填入注册的API
LINKAI_API_KEY: 'Link_xxxxxxxxxxxxxxxxxxxxIyyL'
# 填入创建的APP代码
LINKAI_APP_CODE: ''
第二个是alapi。同样在官网注册www.alapi.cn/explore
,之后去前面的config.json
的倒数第二alapi_token去做添加,修改完以后即可重启容器。
"Apilot": {
"alapi_token": "xxx",
"morning_news_text_enabled": false
}

总结
随着 AI 水平的不断提升,NAS+AI的组合也开始逐步发力,一方面是硬件侧的处理器、显卡算力加持,另一方面则是软件侧的AI赋能。
比如绿联UGOS Pro,就将AI能力加入到相册中,实现了人物识别、重复照片查找、文字识别、场景/物体识别、画面识别等应用场景,还支持模型自定义学习等,大大方便了绿联NAS私有云的用户使用。

作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

阳光灿漫
校验提示文案
我的曾曾曾曾祖父
校验提示文案
猫眠月下
校验提示文案
mige
校验提示文案
丽水情深
校验提示文案
笔点酷玩
校验提示文案
云云云云云云云云云一
校验提示文案
猫仔仔
校验提示文案
甜甜圈好吃
校验提示文案
布兰迪霍克莱姆
校验提示文案
网络咖啡吧
校验提示文案
卷卷毛de夏天
校验提示文案
wgsgyes
校验提示文案
岁月稠
校验提示文案
Gooki叔大锅
校验提示文案
dusttop1
校验提示文案
爱吃火龙的火龙果
校验提示文案
jueze
校验提示文案
今生缘起
校验提示文案
记录生活点滴
校验提示文案
笔点酷玩
校验提示文案
科技力量大
校验提示文案
布兰迪霍克莱姆
校验提示文案
彬彬有礼呀
校验提示文案
张大妈首席平章
校验提示文案
jueze
校验提示文案
握不住的沙漏
校验提示文案
阳光灿漫
校验提示文案
立马昆仑
校验提示文案
爱吃火龙的火龙果
校验提示文案
爽哥爽哥
校验提示文案
都快忘了怎样恋一个爱
校验提示文案
思念成殇
校验提示文案
我的曾曾曾曾祖父
校验提示文案
甜甜圈好吃
校验提示文案
猫仔仔
校验提示文案
记录生活点滴
校验提示文案
云云云云云云云云云一
校验提示文案
dusttop1
校验提示文案
Gooki叔大锅
校验提示文案