一、chatGPT 与 OpenAI
ChatGPT 是 OpenAI 公司的一个技术产品,chatGPT 使用了 GPT(Generative Pre-trained Transformer)技术,是一个用于对话生成的预训练语言模型,OpenAI 还有很多其他模型。
(来自:chatGPT 的解释)
OpenAI 是一家人工智能研究公司,它开发并提供了一系列人工智能技术和产品,包括 SDK 开发包。
(来自:chatGPT 的解释)
可以理解为:
OpenAI 提供的 SDK 能力更加丰富,而 chatGPT 是使用 OpenAI 的 GPT 技术实现的一款自然语言处理模型产品。
所以要接入 chatGPT 的能力,还是要看 OpenAI 所能提供的开放接口能力如何。
二、OpenAI 目前公开的几款产品
2.1 chatGPT
我们可以通过 chat.openai.com/chat 来打开 chatGPT 的在线聊天界面_(需要先注册,目前不支持国内注册)_。
具体的 chatGPT 聊天的情况,这里不赘述了,chatGPT 的实力目前在网络上已经被证实。
就目前个人使用的情况来看。目前在搜索知识相关的内容,用 chatGPT 之后,很少会再打开 Baidu 和 Google。除非一些系统性的知识,或者极个别业务类知识搜索。但是对于科普类、以及常见类知识,chatGPT 的答复明显要比搜索引擎更精准,且十分清楚你意图搜索的内容是什么。
2.2 DALL·E
DALL·E 是 OpenAI 研发的一种新型的生成式预训练语言模型,它能够从文字描述中生成全新的图片。它可以生成各种各样的图片,从卡通形象到复杂的科技图像,它是一种非常先进且有趣的人工智能技术。
(来自:chatGPT 的解释)
我们打开网址:labs.openai.com 可以更直观看见这款产品。
2.3 GPT-3
GPT-3(Generative Pretrained Transformer 3):这是 OpenAI 最强大的 NLP 模型,拥有出色的语言生成能力。
(来自 chatGPT 的解释)
网上流传可以写出论文的就是 GPT- 3 这款产品,chatGPT 实际也是应用 GPT- 3 的 "text-davinci-003" 模型。
网址为:https://platform.openai.com/playground 右侧 Model 选择 "text-davinci-003"。
2.4 CLIP
CLIP(Contrastive Language-Image Pretraining):这是一种跨语言和图像的模型,可以在图像和文本间进行对比。
这里不再介绍。官方网站是 clip.openai.com 但是我没有打开。
三、基于 OpenAI 的 Demo 开发
OpenAI 接口文档
platform.openai.com/doc
从目前官方的接口文档来看:OpenAI 的原生接口支持 Python 和 Node.js 语言,但也同时支持 RESTFul 的 API 接口形式。所以目前其他语言可以通过 Http 的 API 请求形式,来调用 OpenAI 的接口。
这里先以 Python 为例,尝试调通一个接口。
3.1 Model
在开始之前,我们需要理解的最关键的一个概念,就是 OpenAI 的训练模型 Model。
对于我们从来没有接触过人工智能技术的人来说,始终认为人工智能开发一定是要自己训练的,但是 OpenAI 完全降低了人工智能的业务开发门槛,我们完全不需要神经网络、NLP、深度学习等人工智能领域工程师及算法工程师,就可以直接使用 OpenAI 训练好的强大模型为我们进行业务赋能。
我们可以理解为 OpenAI 现在已经有很多基础能力相当成熟的“AI 大秘书”为我们进行服务。
他们的名字分别是:davinci(达芬奇)、curie(居里)、babbage(巴贝奇) 和 ada(艾达) 等。
Model 擅长 Davinci 复杂的意图,因果关系,面向特定受众的概括 Curie 语言翻译,复杂分类,文本情感,概括 Babbage 中等分类,语义搜索分类 Ada 文本解析,简单分类,地址校正,关键词
注意:任何由更快的模型(如 Ada)执行的任务都可以由更强大的模型(如 Curie 或 Davinci)执行,所以只需要记住“达芬奇最强”即可。
综上,在我们进行使用 OpenAI 进行业务接口开发时,应该尝试不同的场景,选择最适合的 Model 为我们提供分析能力。
当然,OpenAI 不仅仅只有这些模型,在 OpenAI 的官方文档上有说明可以给开发者提供的开发能力,如下:
这五大能力,各自提供了接口让开发者进行接入和使用。其中“Fine-tuning" 将是定制化的 model 训练接口,当然是你不希望使用 OpenAI 现有的 " 大秘书 "。
全部 Model 模型 List 可见 OpenAI 官方文档:platform.openai.com/doc
在 GPT- 3 模型中,各个“AI 大秘书”的最新版本和情况如下:
3.2 基于 "text-davinci-003" 的 text 文本处理 Demo(Python)
代码很简单,如下:
-
openai 的 sdk
对于 python 来讲,安装 openai 环境十分的简单,如下指令即可:
pip install openai
如果你用的 Golang 语言或其他语言,不需要安装环境,直接调用官方的 RESTFul 接口即可。
-
API_KEY
这里面需要一个 api_key,api_key 的获取办法是,首先要注册 OpenAI 账号,如果您之前已经可以使用 OpenAI 产品,说明你已经有了账号,然后在 platform.openai.com/acc 网页中,生成 API_KEY 即可。
-
propmt 提示信息
prompt = " 用 Golang 写一个 API-Server, 且有一个路由 /tal, 给客户端返回 ' 你好 TAL' 的能力 "
在文本 Model 中,就是我们的输入问题文本。
接下来,我们来执行上述的 python 代码,得到如下结果:
这样就已经基于 "text-davinci-003" 的能力得到了我们想要的答案,也证明我们 Demo 的调度是通过的。
四、OpenAI 的基于 Golang 接口开发及微信 GPT 案例
4.1 基础结构体定义
4.2 Golang 的 OpenAI 请求 RESTful 接口封装
我们依然可以通过上述封装的 Golang 接口去请求 OpenAI 的 Model 模型,获得我们得到的结果。这里的 Demo 运行就不再展示。
然后,基于 Golang 的 API 能力再加上微信小程序的代理程序模块_(__由于涉及到微信代理作弊程序,这里代码省略)_,可以代理本地微信程序的消息转发,最终可以实现的效果如下:
目前也有第三方实现的 Golang 的 GPT 接口封装,项目名称为 go-gpt3。
开源代码在 github.com/sashabaranov,实现基本代码如下:
是的,这很令人惊奇,你现在已经具备使用人工能力开发业务了,且接口竟然如此的简单。至于 model 的选择和参数和接口的选择,详细看 OpenAI 文档就可以了,本文是快速入门,这里就不再赘述了。
五、有关接入 OpenAI 的功能假设模型
5.1 智能 ToB 运营售前、售后、技术支持系统
整体思路为,应用 OpenAI 提供的 Files 大文件训练和 Fine-tune 自定义业务 Model 能力。尝试基于已有的成熟 Model 再叠加业务内容,进行简单的知识补充即可。
5.2 智能家庭助理
方案和上述方案类似,只不过需要将详细的操作手册换成常见的 QA 汇总文本。
六、方案可行性评估
注: 解决方案为基于 OpenAI 模型的初探方案,商业模式和产品可行请问你们的产品经理。
先说下我这里的想到的几个问题,进行抛转:
1、chatGPT 如果在短时间内在中国出现一个普及类的大众产品问世,所以现在普通业务企业接入可能将毫无意义,因为大家都会在那个普及的产品上去提问知识,就好比当搜索引擎刚出来的时候,我们在自己的产品植入搜索引擎能力,短期有点效果,长期是无意义的。最后大家都会到一个地方去搜索。
2、对于 OpenAI 能力的性能问题以及回答问题的准确性,目前还没有商业应用落地的真实数据,第一口吃螃蟹还需要谨慎一些。
3、chatGPT 就国内来说,在几个月之前就已经有一小波热提峰值,但是很快就下去了,但近期突然引起大家热议,或有资本运作及推动,学习知识没错,在没有掌握充足的相关知识和应用领域客观调研下,要小心自己不要成为 " 韭菜 " 哦 ^_^。
4、科学很重要,科学的普及更重要,而普及才是最难的,引用 AI 来创造价值才是最难的。目前 chatGPT 只是展示了潜力,但潜力不能当饭吃,只有实力才能当饭吃。目前 chatGPT 还是“流行话题”占比高一些,聊这个话题会显得高级,所以才喜欢聊,但又有多少人真的懂,多少人真的了解且认真思考过,甚至又有多少人去试用一下。
原文链接:https://www.bilibili.com/read/cv21857204/