ChatGPT/Midjourney 微信机器人 部署教程 自己的AI助手

news/2025/3/6 2:47:55/

三分钟,创建一个 ChatGPT/Midjourney AI 微信(企业微信)小助手。


负载均衡:多个 OpenAI Token 增强其稳定性
场景模式:可通过 PROMPT 配置机器人为专业的翻译、面试官、医生等
群聊控制:可控制在那些群开启群聊,或关闭群聊
私聊控制:可控制在那些好友开启私聊,或关闭私聊
词语触发:支持通过关键字触发私聊、群聊的 AI 机器人
支持日志:可查看每天多少条记录
反向代理:为不同地区提供更快的 OpenAI 的代理 API 地址
企业微信:支持企业微信登录
自动重启:当发生异常,机器人自动退出后,支持自动重启
错误重试:当 chatgpt 未回复时,尝试三次,减少 chatgpt 罢工几率
命名模式:支持为你的机器人命名
连续对话:支持上下文消息
MidJourney:支持 MidJourney 绘制
次数限制:支持每天限制 N 条消息,超出次数通过红包解锁
自动通过:配置关键词可自动通过好友
客服模式:配置文档作为文档库,作为客户消息来源
邀请入群:将机器人邀请入群则可以获得更多免费消息
管理后台:可通过管理后台自动配置机器人
管理模式:内置管理员模式,可查看每个用户的对话次数
查看余额:可查看该 key 还有多少余额,仅供管理员查看
PDF阅读:可阅读 PDF 等文件,并根据 PDF 内容进行回答
URL阅读:可阅读 URL 等内容,并根据 URL 内容进行回答
自动总结:转发公众号文章链接至机器人,自动总结内容

环境要求

node.js >= 18
基于 Web 协议的机器人最近有可能被封禁,可采用 iPad 其它协议的机器人,可在 index.ts 中更换其他 Puppet。

配置与环境变量

编辑 ./config.ts 配置文件。

export default {
// 自动同意添加好友的口令
acceptText: /ChatGPT/,// 如果微信机器人跑在国内,必须配置该项,其为官方 API 在国内的代理
baseURL: process.env.BASE_URL || 'https://api.openai.com/v1',
apiKey: process.env.OPEN_API_KEY.split(','),
model: process.env.GPT_MODEL || 'gpt-3.5-turbo',
// 通过 prompt 可以配置为各种各样的机器人,如翻译、面试、SQL 生成器等。
prompt: process.env.PROMPT || '',// 判断在哪里开启机器人,默认是私聊以及艾特机器人的群聊
// 是否开启群聊模式,可使用正则以及 boolen,如果是正则用以决定在那些群开启群聊
enableGroup: /^(技术交流群|面试直通车|学习)$/,
// enableGroup: true,// 是否开启私聊模式,可使用正则以及 boolen,如果是正则用以决定与谁私聊
// enablePrivate: true,
enablePrivate: /(山月)/,// 私聊模式时,配置关键词触发
groupPrefix: '',// 私聊模式时,配置关键词触发
privatePrefix: '山月',// 开启异常报错上传 sentry
sentryDsn: process.env.SENTRY_DSN || ''
}

对于 OpenAI 的 key 及国内代理 BaseURL 等敏感数据,可以置于环境变量中,编辑 .env 配置文件。

OPEN_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC"

其中,OPEN_API_KEY 支持多个 key 负载均衡,在环境变量中使用 , 隔开

OPEN_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC,k-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC,k-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxybnC"

每天次数限制配置

为了避免 MidJourney 及 ChatGPT 每天耗费额度过大,可通过环境变量 DEFAULT_FREE_CREDIT 可配置每用户每天限制使用次数,默认为 100 次点数。

默认消耗次数规则为:

ChatGPT 提问消耗一次点数
Midjourney 画图消耗五次点数
Midjourney 图生图消耗五次点数
Midjourney 图生文消耗三次点数

企业微信

如果需要企业微信作为机器人,请编辑环境变量,更换 PUPPET
编辑环境变量

$ cp .example.env .env

并编辑以下环境变量。注意,如果你在国内服务器部署,必须配置 BASE_URL 环境变量,其为 OpenAI 在国内的代理 API,需自行搭建。

# 如果部署在 vercel 等境外服务器,则不需要此项配置
# 如果部署在境内,可以使用山月的临时代理 API,不过强烈建议自行搭建
BASE_URL="https://ai.devtool.tech/proxy"
OPEN_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

编辑是否允许群聊以及私聊
编辑 ./config.ts,配置是否开启群聊以及私聊模式。
开启一个微信机器人,使用将要作为机器人的微信扫码进行登录

$ apt install redis
$ apt install ca-certificates fonts-liberation libasound2 libatk-bridge2.0-0 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgbm1 libgcc1 libglib2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 lsb-release wget xdg-utils$ pnpm i
$ npx prisma generate$ pnpm start

此时会出现二维码链接,通过链接链接打开二维码,扫码登录。待出现登录成功字样时,则机器人成功开启。

健康检查
向机器人发送 /ping 指定,它会默认回复 pong。以确保机器人已经正常工作。

 部署方式ChatGPT/Midjourney 微信机器人(企业微信) 部署自己的AI助手 - 柒邯


http://www.ppmy.cn/news/964700.html

相关文章

微信开发之客服消息的使用

之前的消息发送与接收都是用户给微信发一条,之后微信回复给用户,也就是API上面所说的被动回复消息,那么微信是否支持主动给关注用户发消息吗,答案是肯定的,但是却有一些限制。看下微信开发文档上怎么说就明白了&#x…

唯一客服系统源码独立部署版+前端VUE开源+客服uniapp源码+ChatGPT知识库安装配置详细教程...

唯一客服系统是一款基于Golang Gin框架开发的在线客服系统,可以提供独立部署版,程序数据全部私有安装在自己服务器。访客咨询界面自适应响应式设计,完全可以适配于PC网站、移动端、APP内嵌等场景下。客服端提供PC后台管理,实时收到…

指为服务器指定超时时限为5分钟,微信服务器连接公众号开发者服务器时发生超时,超时时间为5秒,这是什么问题引起的?...

Appid: wx10d9ea1837d670fe 昵称: 中山电信 时间: 2021-04-13 18:06:01 内容: 微信服务器连接公众号开发者服务器时发生超时,超时时间为5秒 次数: 5分钟 146次 错误样例: [OpenIDoxkLOjg--gj63O3KFV1L7ToJ5WYM][Stamp1618308361][3rdUrlhttps://xxxxxxxxx/api/compo…

股票软件数据api接口包含哪些部分?

股票软件数据api接口就是应用程序编程接口,它是一组由工作人员预先定义好的函数,工作人员和应用程序可以通过这些函数去访问一组例程。 api接口的主要用途就是能够让企业与开发人员不需要访问源代码,不需要明白内部工作机制的细节&#xff0…

基于chatGPT的问答机器人开发-qdrant向量数据库的集合功能封装

之前一直再开发基于GPT的问答知识库机器人,主要是靠qdrant的向量搜索,搜索出相关的条目,然后发送给GPT回答 qdrant向量数据库有集合的概念,相当于表,每个集合里面可以创建多个向量数据。 那么针对集合的操作就是下面这…

Datawhale-chatGPT开发应用指南:相似匹配

Embedding介绍 相关API LMAS Embedding API chatGPT Style 提prompt embedding应用 用于文本预处理,相似的人,离奇的点等。 相关文献

从零开始开发自己的chatgpt平台 之 http客户端和服务端

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、关于开发语言和使用的库二、chatgpt服务端三、chatgpt客户端总结 如果有问题可以联系我**:https://gitee.com/xiaoyuren/gpt3 前言 ChatGPT是一…

【回答问题】ChatGPT上线了!如何将Disco Diffusion 部署到GPU云服务器上?

【回答知乎用户长时间没有回答问题】ChatGPT上线了!如何将Disco Diffusion 部署到GPU云服务器上? 若要将 Disco Diffusion 部署到 GPU 云服务器上,您可以按照以下步骤进行: 准备一台 GPU 云服务器,并确保您已经安装了…