Coder Social home page Coder Social logo

chatgpt-wecom's Introduction

chatgpt-WeCom

使用 acheong08 的 ChatGPT 接口,实现了企业微信与 ChatGPT 聊天

该版本基于ChatGPT开发,

实现的功能

  • 多用户使用隔离,虽然做了用户隔离,但是在使用的过程中发现两个用户调用一个密钥生成两个不同实例时候,最先创建的那个实例正常,后面那个实例比较呆傻,因此选择多个密钥与多个用户实例一一关联
  • 支持上下文关联
  • 支持使用代理请求 chatgpt

#####需要准备的!!!!!!!!

  • 企业微信账号
  • 自建 http 代理(服务器部署用户不需要)
  • OPEN AI 密钥

获取 OpenAI API KEY

部署

docker 部署

  • docker 端口 -p 6364:6364

  • 需要挂载的 -v /你自己创建的文件夹/config:/app/src/config

  • dokerhub 地址 在本地目录下新建一个 config 文件夹在文件夹下新建 data.yml 文件,填写以下内容:

OPENAI_API_KEY:
  userA: XXXXX
  userB: XXXXX
WEIXIN_RECEIVE:
  Token: XXXXX
  EncodingAESKey: XXXXX
  CorpID: XXXXX
WEIXIN_PUSH:
  agentid: XXXXX
  secret: XXXXX
  corpid: XXXXX
#   media_id: media_id
ChatgptModel: text-davinci-003
#ChatgptModel: text-davinci-002 可以使用gtp-2 比较稳定但是不太智能
  • 第一项OPENAI_API_KEY 其中 userA,userB,userC 改成企业微信用户账号,xxxx 填从 openai 中获取的密钥。
  • 第二项WEIXIN_RECEIVE是对应的企业微信自建机器人 api,目的是为了接收到用户发送的消息。 CorpID 为个人企业微信的企业 id,回调需要的参数先填好需要的三个参数,最后 docker 跑起来后再在企业微信下图 url 中,然后保存即可,填入 https:你的域名:端口/api ,配置企业微信 api 接收消息,所需要的数据具体获取教程
  • 第三项WEIXIN_PUSH则是用于向用户返回 chatgpt 处理用户发送消息后的回答时使用。 agentid,secret分别为为企业微信自建 bot 的 id,和 secret,corpid则依旧是企业 id, 获取填入数据教程 //////////
  • 第四项 ChatgptModel是 chatgpt 模型,泄露的模型已经撤销了,gpt-3 非常不稳定,因此使用的为 gpt-2,如果你发现了更好的模型可以更改。
  • (如果是在vps部署则,直接在企业微信可信任域名中填入对应的vps ip,不需要再配置http代理)最后一步需要一个 http 代理, 因为企业微信目前需要可信任 ip ,nas 的动态 ip 经常变更,因此需要在 docker 创建时的环境变量中填入 http 代理,微信可信任域名中填入对应的代理 ip,如图我的 http 代理为http://10.0.0.45:8888对应的服务器 ip 为54.xxx.xxx.xxx我在企业微信中加入可信任 ip``54.xxx.xxx.xxx`即可,有关代理搭建和如何在 docker run 时添加环境变量请善用搜索。 #####最后 docker 跑起来后填入可信任 ip 与完成上面的 api 接收信息就可以正常使用了。

chatgpt-wecom's People

Contributors

tuangtalk avatar

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.