文章目录
- 1. 解读ChatGPT
- 1.1 词语解释
- 1.2 功能解读
- 2. GitHub上ChatGPT的应用源码
- 3. 调用ChatGPT的API
- 4. 官方例子说明
- 5. 集成ChatGPT
自ChatGPT
出来到如今,始终走在火热的道路上,如今日活用户破亿,他为何有如此大的魅力,深受广大用户或资本的追捧,下面我便详细揭开他奇妙的面纱。
1. 解读ChatGPT
1.1 词语解释
ChatGPT
分开解
-
chat
是闲聊,聊天
的意思 -
GPT
是Generative Pretrained Transformer
(生成预训练变换器)的缩写
chatGPT
它就是智能的对话聊天工具,由美国“开放人工智能研究中心”研发 - OpenAI
ChatGPT
自己回答如下图所示:
1.2 功能解读
他自己的回复有点抽象,简而言之,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码等任务。
它的核心功能和特点如下:
-
它由人工智能技术驱动
-
一款自然语言处理工具
-
学习人类语言、理解人类语言
-
通过大量训练能够与人类对话
-
还能根据聊天上下文进行互动
-
像人类一样完成如下任务:
- 邮件撰写
- 视频脚本编写
- 写文案、写文章
- 语言翻译
- 甚至是代码编写编程
- …
2. GitHub上ChatGPT的应用源码
如今很多应用都集成了ChatGPT
的插件,很多这样的应用已经在GitHub
开源了。
因而,我之前整理了GitHub
上ChatGPT
的应用源码,可以点击我的这篇博文访问:全网推荐8款github上有趣的ChatGPT的应用源码
3. 调用ChatGPT的API
官方提供了很多种开发语言的调用,本篇主要以java
开发语言进行调用,首先要引入jar
包:
<dependency>
<groupId>com.theokanning.openai-gpt3-java</groupId>
<artifactId>api</artifactId>
<version>version</version>
</dependency>
或者
<dependency>
<groupId>com.theokanning.openai-gpt3-java</groupId>
<artifactId>client</artifactId>
<version>version</version>
</dependency>
调用代码非常简单,只需要填写相关api-key
即可,如下代码所示:
package example;
import com.theokanning.openai.OpenAiService;
import com.theokanning.openai.completion.CompletionRequest;
class OpenAiApiExample {
public static void main(String... args) {
String token = System.getenv("OPENAI_TOKEN");
OpenAiService service = new OpenAiService(token);
System.out.println("\nCreating completion...");
CompletionRequest completionRequest = CompletionRequest.builder()
.model("ada")
.prompt("Somebody once told me the world is gonna roll me")
.echo(true)
.user("testing")
.build();
service.createCompletion(completionRequest).getChoices().forEach(System.out::println);
}
}
如果你是其他语言,可以点击官网文档链接,https://platform.openai.com/docs/libraries,找到你所需要的语言。
其提供了各种语言的示例,点击每种语言的示例链接,如下图所示:
即可跳转到其对应的GitHub
上,比如我点击的是java
,如下图所示:
4. 官方例子说明
官方示例说明的链接地址:https://platform.openai.com/examples。点击此链接,你会看到一个搜索框,一个下拉框,如下图所示:
下拉框是类别,其分为如下类别:
-
问答(
Answers
) -
分类(
Classification
) -
代码(
Code
) -
会话(
Conversation
) -
生成(
Generation
) -
翻译(
Translation
) -
转换(
Transformation
)
据我猜测,将来ChatGPT
绝不止这些类别,后期肯定会有更多的类别出现,我们静静地等待即可。
那么,我以问答类(Answers)
为例子,来解读示例中类别,其他类别大家可自行学习了解。实在不行,可以使用谷歌翻译成中文看。
当下拉框选择为问答类(Answers)
时,其出现的界面如下图所示:
-
Q&A
:基于现有知识回答问题 -
Factual answering
:通过向模型展示如何回答超出其知识库的问题,引导模型走向事实答案。使用?
表示对它不知道的单词和短语的反应提供了一种自然的反应,似乎比更抽象的回答更有效 -
JavaScript helper chatbot
:这是一个消息风格的聊天机器人,可以回答有关使用JavaScript
的问题。 -
ML/AI language model tutor
:这是一个QA
风格的聊天机器人,回答有关语言模型的问题。
在此(问答类(Answers)
)类别下出现多个列表,你单击每个列表都会出现一个示例弹框,比如单击JavaScript helper chatbot
,如下图所示:
当然,每个类别下都会有多个列表,你单击每个列表都会出现一个示例弹框。
5. 集成ChatGPT
目前,很多APP
或者公众号都集成了ChatGPT
,那么,我以csdn
为例子来演示。
csdn网站ChatGPT
的PC
端地址:https://so.csdn.net/so/chat,点击链接如下图所示:
csdn客户端在我的 - 更多服务
中找到: