Coder Social home page Coder Social logo

wecom-chatgpt-bot's Introduction

企业微信 ChatGPT 聊天机器人

为什么使用企业微信接入 ChatGPT 聊天机器人?

  • 企业微信相比其他平台,聊天功能与微信更接近,使用更习惯
  • 可把服务部署在海外机房,相比于网页版更为安全稳定
  • 可以自行增加频次限制、聊天内容留存等功能,方便团队/企业内部多人同时使用

本项目适配 gpt-3.5/4 接口,使用的均为 OpenAI 及企业微信提供的官方 API,保证安全性。

如果你有新功能需求,可以在 issues 里提出;如果你希望为项目做贡献,可以直接提交 pull request。

  1. 前置准备:
  • OPENAI API 账号申请
  • 企业认证的企业微信账号
  • 企业名下备案的域名
  • 部署所在机器的系统内安装gitdockerdocker-compose

如果你不是在企业/单位内进行配置,并且未来有长期使用 ChatGPT 的打算,建议自己或联合朋友们注册一个公司并进行企业微信认证,以及注册个域名并在企业名下进行域名备案,这样长期来看是最安全的。如果来不及,可以借用朋友的企业进行开发。非常不建议用非官方的方式配置企业微信机器人,存在被封号的风险。

未来本项目考虑实现独立 web 页面功能,敬请期待。

  1. 修改配置:

首先修改nginx/default.conf中的server_name为你准备好的域名。

并在settings.py中填入对应的信息,具体如下表所示:

字段 含义 是否必须修改
WEWORK_TOKEN 企业微信创建应用内随机生成的Token
WEWORK_AES_KEY 企业微信创建应用内随机生成的EncodingAESKey
WEWORK_CORP_ID 企业微信后台显示的企业 ID
WEWORK_CORP_SECRET 企业微信创建应用内获取的Secret
OPENAI_API_KEY OpenAI 后台获取的 API_KEY
OPENAI_GPT_ENGINE 使用的 OpenAI 模型,可选列表详见settings.py文件
OPENAI_SYSTEM_PROMPT 发送的 system prompt 信息,可用来定制企业专属的 chatbot
CHAT_RESET_MESSAGE 触发重置对话的消息内容,全文匹配
CHAT_RESET_MESSAGE_RESULT 重置对话后返回的结果
CHAT_ERROR_MESSAGE 请求错误(如超出频率限制、欠费等)后返回的结果
CHAT_GOOGLE_ERROR_MESSAGE 谷歌搜索过程异常后返回的结果
GOOGLE_API_KEY 如何设置请参考 文档
CUSTOM_SEARCH_ENGINE_ID 如何设置请参考 文档
SEARCH_OPTIONS_COUNT 每次搜索结果的数量,默认为 $3$
SEARCH_PROMPT 在搜索模式下的首句提示信息
SEARCH_CONCLUTION_PROMPT 在搜索模式下的末句提示信息
SEARCH_TOKEN 触发搜索模式的单词,包含则触发
  1. 启动服务:
docker-compose up -d
  1. 修改你的域名 DNS 解析,到部署机器所在 IP。
  2. 进入企业微信应用后台的「API 接收消息」设置,填入对应信息,点击保存。注:如果 nginx 中配置的域名是 a.yourdomain.com,则接收消息中设置的 url 为 a.yourdomain.com/wechat/
  3. 进入企业微信应用后台的「企业可信 IP」设置,填入部署机器所在 IP。
  4. 在企业微信中找到对应的应用,发送消息,测试部署效果。

wecom-chatgpt-bot's People

Contributors

buaabarty avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

wecom-chatgpt-bot's Issues

实现第一版功能

  • 实现企业微信机器人的基本接入
  • 实现对话状态保持功能,对话上文默认保持 30 分钟
  • 实现基于 system prompt 的对话机器人的个性化定制
  • 实现重置会话功能,可自定义重置会话命令

大佬功能非常好使,能否实现这个

自定义关键词和回复的内容,因为有些内部文件知识GPT也不知道,

比如用户想问:我今年年假还剩于多少天?

这时,设置 关键词 “年假” ,继续判断 “剩”

自动回复:年假计算公式为 本年度在职天数*365/5

更多自定义的关键词,,

请大佬看看能弄不,可以的话,等我们拿到奖金后酬谢,哈哈

服务号问题

能不能接入客户在服务号中对话,微信客服来回答

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.