您现在的位置是:首页 >技术交流 >ChatGPT为企业应用赋能网站首页技术交流

ChatGPT为企业应用赋能

vision_wang 2024-06-17 10:43:29
简介ChatGPT为企业应用赋能

chatgpt-on-wechat和bot-on-anything两个项目都支持企业微信部署,其中前者功能比较丰富,推荐! 如需帮助,可以搜索wx:Youngerer 找到我!

功能展示:


在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/a85ff6bbfe8a48048acb400e0892f008.png#pic_center
在这里插入图片描述
在这里插入图片描述

一、前置要求和介绍

项目地址:

作者:zhayujie。bot-on-anything:https://github.com/zhayujie/bot-on-anything

前置要求:

一台国外服务器(国内配置代理也可),注册一个企业微信!(如果是认证的企业微信,需要准备一个认证主体和企业认证主体一致的域名)

该项目是通过创建企业应用使用chatgpt,接入企业微信客服正在开发当中,如果有帮助到你,欢迎分享!请到bot-on-anythingchatgpt-on-wechat点个小星星!

二、下载企业微信

自己搜索下载企业微信app,pc端,然后创建公司,不需要认证即可使用。

三、创建应用

点击这里登录企业微信后台。然后点击我的企业,最下方有企业id:wwxxxxxx,记录下来。

然后点击应用管理,创建应用,设置应用的一些基本信息,下一步。

记录下Agentld、secret,点击下面接收消息里面的设置api接收。设置下面的参数,现在还保存不了,进行下一步:服务器运行应用

url:http://ip:8888/wechat    #如果是已认证的企业微信,这里需要吧ip换成和企业主体相关的域名
EncodingAESKey                #随机获取并记录下来。
Token                         #随机获取并记录下来。

四、服务器运行应用

克隆代码及运行

按照GitHub作者的步骤,克隆代码到服务器运行,步骤参考这里,运行需要用到的指令如下(仅供参考,需根据自己情况修改):可能有帮助的服务器使用教程点这里

git clone https://github.com/zhayujie/bot-on-anything   #从GitHub克隆代码
cd bot-on-anything/                                   #切换到项目目录
pip3 install -r requirements.txt                        #安装必须依赖,这里请注意是否有报错   
cp config-template.json config.json                     #复制配置文件,下面参数配置在这文件里面修改后再运行应用
touch nohup.out                                         #首次运行需要新建日志文件                     
nohup python3 app.py & tail -f nohup.out                #在后台运行并输出日志,注意切换到项目所在目录运行,成功后可以ctrl+c关闭会话

#以下是其他可以使用的指令
pgrep -f app.py | xargs -I{} sh -c 'echo -n "Name: app.py, "; echo -n "ID: {}, "; readlink -f /proc/{}/cwd; '         #执行该指令输出所有名字为app.py的进程ID和该进程所在的目录,服务器运行多个该项目的时候方便查找对应的进程id
kill pid                                            #杀死进程pid,然后重新运行应用                                      
git pull                                               #后续项目代码有更新,执行该命令拉取最新代码,重新运行应用

修改配置

配置config.json文件:设置openaiapi_keychannel type选择wechat_com,设置wechat_com的参数,参数配置如下,请复制模板配置文件后修改,不要粘贴复制!

  "model": {
    "type" : "chatgpt",
    "openai": {
      "api_key": "YOUR API KEY",                       #这里设置你的openai的api_key
      "model": "gpt-3.5-turbo",                        # 模型名称,这里选择了gpt
      "proxy": "",                                     # 代理地址,如果是国外的可以访问openai的服务器不需要配置,
      ....                                             #其他参数参考项目的readme
}

"channel": {
    "type": "wechat_com",                              #务必注意不要选错
    "wechat_com": {                                    #注意这里是在 wechat_com 里配置参数
      "wechat_token": "MIllLa9",                       #刚刚随机生成的         
      "port": "8888"                                   #默认端口,服务器需要放行该端口
      "app_id": "YOUR APP ID",                         #上一步记录的Agentld
      "app_secret": "t7ddkqL1111111111111nOFM-0m-OtU", #上一步获得的,会发送到企业微信对话框
      "wechat_corp_id": "ww61111111403",               #第一步里面的企业id,ww开头
      "wechat_encoding_aes_key": "rrRnhf1zad11pwuw22", #刚刚随机生成的
    }
}

上边的参数配置好之后,服务器运行该应用,然后在刚刚的企业微信管理后台设置api界面点击保存,成功之后会如下图所示!

然后在创建应用界面的开发者接口里,配置企业可信IP,为你的服务器IP!

到目前为止,如果没什么报错的话,那就是见证奇迹的时刻了,在企业微信搜你刚刚创建应用所有的名字,打开对话框,和他聊天吧!

五、微信插件:接入个人为微信使用

对于不怎么使用企业微信的人来说,只能在企业微信app使用难免太鸡肋了,那么我们可以通过企业微信的微信插件接入到个人微信。

在企业微信管理后台,点击我的企业,左侧的微信插件,有一个邀请关注二维码,用个人微信扫码点击关注,然后验证手机号后就加入到该公司,即可找到刚刚创建的应用,点击即可使用,也可将该应用添加到桌面或者将该公司置顶来方便使用!

六、2023.4.26更新(chatgpt-on-wechat支持企业微信):

chatgpt-on-wechat项目已支持接入企业微信,该项目支持插件,可以实现基于chatgpt的更多功能,包括角色扮演、语音交流、天气日期查询、AI作图、图片修复、联网搜索等功能。实现效果可以参考这里的视频演示

部署步骤和上边基于bot-on-anything的部署一致,只需稍作更改!可参考项目的帮助文档

这里记下该项目config.json中有关企业微信配置的参数,方便自己查阅:

    "channel_type": "wechatcom_app",
    "wechatcom_corp_id": "",  # 企业微信公司的corpID
    "wechatcomapp_token": "",  # 企业微信app的token
    "wechatcomapp_port": 9898,  # 企业微信app的服务端口, 不需要端口转发
    "wechatcomapp_secret": "",  # 企业微信app的secret
    "wechatcomapp_agent_id": "",  # 企业微信app的agent_id
    "wechatcomapp_aes_key": "",  # 企业微信app的aes_key

企业微信后台URL填写格式改为http://url:port/wxcomapp

七、插件功能解析

以下内容在项目各个插件的readme文件都可以找到,为方便不熟悉项目的人有个大概认知,稍作整理,所有配置文件模板都可在/plugin/PLUGIN_NAME下面找到,请复制xxxx.json.templatexxxx.json后添加相应的配置项,不要粘贴复制这里的示例代码!

插件安装

项目已经预置一些插件可在/plugin目录下查看,如需安装其他插件参考以下两种方法

  • 第一种方法是在将下载的插件文件都解压到"plugins"文件夹的一个单独的文件夹,最终插件的代码都位于"plugins/PLUGIN_NAME/*"中。启动程序后,如果插件的目录结构正确,插件会自动被扫描加载。除此以外,注意你还需要安装文件夹中requirements.txt中的依赖。
  • 第二种方法是Godcmd插件,它是预置的管理员插件,能够让程序在运行时就能安装插件,它能够自动安装依赖。安装插件的命令是"#installp 仓库源记录的插件名/仓库地址"。这是管理员命令,认证方法在这里在安装之后,需要执行"#scanp"命令来扫描加载新安装的插件(或者重新启动程序)并#enablep plugin_name启用插件!
  • 目前chatgpt项目已支持的插件有以下几个:

    godcmd(管理员插件)

    复制config.json文件,并修改其中password的值为口令。在私聊中输入#auth 口令进行管理员认证,#help可以打印出管理员相关指令,进行配置重载、插件安装以及启禁用等:

    #resume : 恢复服务
    #stop : 暂停服务
    #reconf : 重载配置(不包含插件配置)
    #resetall : 重置所有会话
    #scanp : 扫描插件目录是否有新插件
    #plist : 打印当前插件列表
    #setpri 插件名 优先级: 设置指定插件的优先级,越大越优先
    #reloadp 插件名: 重载指定插件配置
    #enablep 插件名: 启用指定插件
    #disablep 插件名: 禁用指定插件
    #installp 仓库地址或插件名: 安装指定插件
    #uninstallp 插件名: 卸载指定插件
    #updatep 插件名: 更新指定插件
    #debug : 开启机器调试日志

    banwords(敏感词检测)

    自行导入词库到插件文件夹中的banwords.txt,复制config.json.template复为config.json,并自行配置,示例如下:

    {
      "action": "replace",       #replace:提问有敏感词,将以***代替并返回信息给用户,提示违规;ignor:为无视这条消息
      "reply_filter": true,      #是否对ChatGPT的回复也进行敏感词过滤,true为过滤
      "reply_action": "replace"  #如果开启了回复过滤,对回复的默认处理行为
    }
    

    bdunit:利用百度UNIT实现智能对话

    能够处理chtgpt不能解决的几个问题:日期,天气,数学计算!

    申请机器人:https://ai.baidu.com/unit/home#/home

    申请api:https://console.bce.baidu.com/ai

    {
        "service_id": "S87005",   #注意是你创建的机器人的id 
        "api_key": "xgASVQGwKLG2K",
        "secret_key": "Gh8bICOkBCoq"
    }

    replicate(绘画插件)

    本插件用于将画图请求转发给replicate api。

    api申请:https://replicate.com/

    安装:https://github.com/zhayujie/chatgpt-on-wechat/issues/770

    使用:https://github.com/lanvent/plugin_replicate

    调用格式示例:

    <画图触发词><关键词1> <关键词2> ... <关键词n>:<prompt> 
    画 open:a beautiful girl,long hair,skirt #画是画图触发词,open是关键词,冒号后是prompt,使用英文

    关键词去config.json文件里面看,有open、sd、横板、竖版、二次元、修复等

    summary(总结插件)

    支持以自然语言实现对聊天记录的总结,认证管理员后执行#installp summary安装

    $ 总结最近20条消息
    $ 总结3小时内的消息

    tool(强大工具集):

    一个能让chatgpt联网,搜索,数字运算的插件,将赋予强大且丰富的扩展能力。使用该插件需在机器人回复你的前提下,在对话内容前加$tool;仅输入$tool将返回tool插件帮助信息,用于测试插件是否加载成功

    使用说明:https://github.com/goldfishh/chatgpt-on-wechat/blob/master/plugins/tool/README.md

    api申请:https://github.com/goldfishh/chatgpt-tool-hub/blob/master/docs/apply_optional_tool.md

    config.json配置示例(后续如有改动,请参考最新代码的配置模板):

    {
      "tools": ["python", "url-get", "terminal", "meteo-weather", "wikipedia", "bing-search", "wolfram-alpha", "morning-news"],    #这里加入工具的名称
      "kwargs": {
          "top_k_results": 2,
          "no_default": false,
          "model_name": "gpt-3.5-turbo",
          "news_api_key": "538c9027bd650fd28281",
          "bing_subscription_key": "4871f4395dacb71321b26ec",
          "wolfram_alpha_appid": "QPU8LH",
          "morning_news_api_key": "5w1kjNh9VugBQlUc"
      }                              #这里加入工具对应的api_key
    }

    keywords(关键词插件)

    主要用来匹配关键词进行回复,主要用于公众号配置当中,在config.json中配置关键词和关键词匹配到后回复的内容:

    {
        "keyword": {
            "cursor": "https://www.cursor.so/",
            "桌面日历": "http://download3.desktopcal.com/desktopcal_rcmd_166894.exe"
        }
    }

    dungeon(大冒险)

    玩地牢游戏的聊天插件,无需配置,直接使用即可

    role(角色扮演)

    角色扮演插件,会话窗口使用帮助指令即可查看相关功能,无需配置,可自定义角色!

    hello

    新人入群自动欢迎和拍一拍响应!

    八、railway部署企业微信(公众号:Youngerer)

    前置准备:

    基于chatgpt-on-WeChat项目:https://github.com/zhayujie/chatgpt-on-wechat

    通过railway我们不需要购买服务器或者配置代理,准备以下东西即可以部署chatgpt到我们的企业微信:

    • 注册一个企业微信(无需认证)
  • 准备一个GitHub账号,注册railway,会有每月免费5刀/500小时的额度一个openai账号,生成api key
  • 准备相关参数:可参考前边的部分来获取相关参数

        "openai-api-key":""       #openai账号生成api-key
        "wechatcom_corp_id": "",  # 企业微信公司的corpID
        "wechatcomapp_token": "",  # 企业微信app的token
        "wechatcomapp_secret": "",  # 企业微信app的secret
        "wechatcomapp_agent_id": "",  # 企业微信app的agent_id
        "wechatcomapp_aes_key": "",  # 企业微信app的aes_key

    获取后停留在api设置界面,待下面填入url后再点击保存!

    部署:

    点击这里进入railway(前提已登录railway):

    点击页面的deplay now;

    然后在下图中相应的位置填入准备工作中记录的对应的参数值,默认的参数值不用修改;

    等待部署成功,然后在settings里面复制域名链接:

    根据上一步复制的链接,在企业微信后台应用api设置界面填入下边格式的url(根据自己情况修改xxx.railway.app这部分内容):

    https://chatgpt-on-wechat-production-549d.up.railway.app/wxcomapp

    然后点击保存,如果没有问题会显示保存成功,如显示回调不通过,请自行检查相关参数是否正确。

    最后我们给该企业应用发送一条消息,这时候还不能正常回复,我们点击Deployments,再点击view logs,最后点击Deploy Logs。

    我们会发现有错误信息,在错误信息里面找到ip信息,然后在企业微信后台把这个ip加入到可信ip设置里面:

    最后我们就可以使用该企业应用啦!

    教程更新查看请点击这里:https://www.wangpc.cc/aigc/wechat_com-chatgpt/,未经允许,禁止转载!

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。