ChatGPT
ChatGPT (Chat Generative Pre-trained Transformer) 是一种基于人工神经网络的自然语言处理模型,是由OpenAI开发的一种大型语言模型,于2022年11月推出。它是一个预训练模型,使用了大量的文本数据进行训练,以便能够理解并生成自然语言。ChatGPT是一种强大的工具,可以用于各种任务,包括文本生成、机器翻译、语音识别和对话系统等。
ChatGPT是一个生成型预训练变换模型(GPT),使用基于人类反馈的监督学习和强化学习在GPT-3.5之上进行了微调。这两种方法都使用了人类训练员来提高模型的性能,通过人类干预以增强机器学习的效果,从而获得更为逼真的结果。在监督学习的情况下,模型被提供了这样一些对话,在对话中训练师充当用户和AI助理两种角色。在强化步骤中,人类训练员首先对模型在先前对话中创建的响应进行评级。这些级别用于创建“奖励模型”,使用近端策略优化(PPO)的多次迭代进一步微调。这种策略优化算法比信任域策略优化(trust region policy optimization)算法更为高效。此外,OpenAI继续从ChatGPT用户那里收集数据,这些数据可用于进一步训练和微调ChatGPT。用户可对他们从ChatGPT收到的回复投赞成票或反对票;在投赞成票或反对票时,他们还可以填写一个带有额外反馈的文本字段。
使用方法
请访问 https://chat.openai.com/ 以使用ChatGPT。
API 访问
注册并登录 https://platform.openai.com/account/api-keys 获取 API Key 之后,即可使用 API 访问 ChatGPT。
比如下面就是一个通过 Python 来访问 ChatGPT 的简单示例:
import os
import openai
import tiktoken
MODEL = "gpt-3.5-turbo"
openai.api_key = os.getenv("OPENAI_API_KEY")
ENCODER = tiktoken.get_encoding("gpt2")
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Who won the world series in 2020?"},
{"role": "assistant", "content": "The Los Angeles Dodgers won the World Series in 2020."},
{"role": "user", "content": "Where was it played?"}
]
response = openai.ChatCompletion.create(
model=MODEL,
messages=messages,
temperature=0.2,
frequency_penalty=0,
presence_penalty=0,
max_tokens=4095 - len(ENCODER.encode(prompt)),
stream=True)
completion_text = ''
for event in response:
if event["choices"] is not None and len(event["choices"]) > 0:
choice = event["choices"][0]
if choice.get("delta", None) is not None and choice["delta"].get("content", None) is not None:
completion_text += choice["delta"]["content"]
if choice.get("message", None) is not None and choice["message"].get("content", None) is not None:
completion_text += choice["message"]["content"]
print(completion_text)
详细的 API 使用方法请参考官方 API 文档。
ChatGPT 应用
- Visual ChatGPT 连接了ChatGPT和一系列视觉基础模型,使得在聊天过程中可以发送和接收图片。
- Text generation web UI 是一个支持诸如 GPT-J 6B, OPT, GALACTICA, LLaMA 和 Pygmalion 等各种 LLM 模型的网络界面。
- writeout.ai 使用OpenAI的Whisper API转录和翻译音频文件。