Article / 文章中心

花了半个小时将 ChatGPT 接入了钉钉机器人

发布时间:2023-02-13 点击数:1109

前面的文章给大家介绍了如何在个人微信中使用 ChatGPT,但是大家都知道这种操作是有风险的,所以都让大家使用小号,今天再给大家介绍一下如何在钉钉中使用机器人来调戏 AI。

流程

  1. 注册钉钉开发者平台账号,并创建一个内部组织;

  2. 在内部组织中创建机器人;

  3. 注册 OpenAi 账号并获取 Api Key;

  4. 在服务器中部署程序;

  5. 在内部群中调戏 AI;

创建机器人

上面的前两步主要是为了创建一个内部组织的机器人,登录钉钉开发者后台 https://open-dev.dingtalk.com/?spm=ding_open_doc.document.0.0.7f49263crfKgSY,依次选择应用开发 > 企业内部开发 > 机器人,点击创建应用。

编辑搜图

在这之前需要确保自己的钉钉账号已经加入了一个组织,如果没有的可以,可以自行创建一个组织。点击创建应用过后,填入相关信息

编辑搜图

然后在开发管理菜单里面配置机器人的回调地址,也就是后面要部署代码的服务器的地址和端口,如下图所示。

编辑搜图

这里除了直接使用服务器的 IP 之外,还可以配置具体的域名,不过这就需要有域名了,还可以配置 HTTPS,这个根据大家的情况自行使用,当时直接使用 IP 是最简单的一种方式。

不过配置域名的话也比较简单,就是申请一个域名,然后在配置一个 nginx 的反向代理,如果需要 HPPTS 的话再配置一个证书就好了。

接着在版本管理与发布菜单中发布机器人,此时会自动创建一个调试的群,后续可以直接在调试群里面进行调试机器人,在调试没有问题的情况就可以在其他内部群中添加该机器人了。

注册 OpenAi

OpenAi 由于某些原因,在国内是无法正常注册账号的,并且连网站都是无法正常访问的,详细的注册流程不在本文的讨论范围之内。

这里给大家演示一下注册成功后,如何获取一个 API key,当我们注册成功并且登录以后,可以在链接 https://platform.openai.com/account/api-keys,在页面上点击 Create new Secret key 即可生成一个 API key,复制 API key存放起来,后续备用。


编辑搜图


部署服务

部署服务还是跟之前一样简单,我们还是通过 docker 来进行部署,一行命令就可以搞定,这里可以配置自定义的端口和上面获取到的 API Key,以及相应的超时时间和 Session 情况指令。

复制
docker run -itd --name chatgpt -p 9999:9999 \
  -e APIKEY=你的 API key \
  -e SESSIONTIMEOUT=60s \
  -e MODEL=text-davinci-003 \
  -e MAX_TOKENS=512 \
  -e TEMPREATURE=0.9 \
  -e SESSION_CLEAR_TOKEN=清空会话 \
  --rm \
  docker.mirrors.sjtug.sjtu.edu.cn/eryajf/chatgpt-dingtalk:latest1.2.3.4.5.6.7.8.9.

命令执行成功过后,我们通过 docker ps 可以看到服务已经正常起来了。

服务部署成功了以后,我们可以本地测试一个端口是否能通,通过 telnet ip port 命令来测试,如果出现 Escape character is '^]'. 字符则表示是通的,如果链接不上,可能是服务器的端口没放行或者防火墙没开,可以依次检查一下。

调戏 AI

搭建好了机器人过后,我们就可以愉快的调戏了,阿粉这边就进行了如下的调戏,效果还是杠杠的。


最近在网上也有一些文章说这个 AI 通过了谷歌的面试,说是可以替代工程师,这一点阿粉倒是不太担心,至少短期还不会,虽然通过面试但并不代表能做好业务,赶超工程师的部分也只是在一些理论和八股文上面而已。

通过对 AI 的调戏可以发现,他每次回答问题,都会将上下文带过去一起训练的,这也是为什么他能比其他的机器人更能理解上下文的原因。

所以这种模式答案往往不是最关键的,最关键的是如何提一个好问题,并且顺着这个问题继续延伸下去。体现在日常生活中就像是两个人在进行对话一下,而不是简单的一问一答,毫无关联。

如果上下文中充斥着一些毫无关联的内容,就会给 AI 无形增加了很多垃圾内容,导致后续的回答可能更加毫无意义,往往看上去就显得牛头不对马嘴。

思考

对于如此强大的 AI 的出现,我们程序员要怎么避免自己被淘汰呢?让我们用魔法来打败魔法,不得不说,AI 给出来的建议还是很中肯的。

编辑搜图

阿粉:你如何看待 ChatGPT 的出现,是否会对程序员的行业有影响?同时作为程序员我们应该如何避免被 AI 淘汰?

AI:ChatGPT 的出现可以帮助程序员更高效地开发程序,但也将给程序员带来挑战,因为许多重复的编码工作可能会被 ChatGPT 替代。

要避免被 AI 淘汰,程序员需要更加重视技术的深度,不断学习新的技术和方法,实现价值驱动的软件开发,并与 AI 合作以实现更高效的开发。

此外,程序员也可以考虑拓展自己的技能,比如学习一门新的编程语言,了解新的软件开发工具等等,以期能最大化地合理利用 AI 来提高自身的能力和竞争力