本文正在参加技能视角深化 ChatGPT 征文活动

ChatGPT 与 OpenAI:两者的联系

ChatGPT 是 OpenAI 推出的运用,它运用的是最新的模型。OpenAI 作为一家人工智能领域的知名企业,一直在致力于推动人工智能技能的开展和运用。而 ChatGPT 作为 OpenAI 推出的一款运用,为用户供给了基于言语了解的自然言语交互服务,它的出现也标志着 OpenAI 在人工智能运用领域的又一次打破。

然而,需求留意的是,OpenAI 敞开接口的模型是 gpt-3.5-turbo,这个模型相关于 ChatGPT 运用的最新模型而言,存在一些不足之处。尽管 gpt-3.5-turbo 现已具有很高的言语了解才能,但相关于最新的模型而言还有一些提升的空间。因而,假如需求运用更为智能化、精准化的自然言语交互服务,建议挑选运用 ChatGPT 运用。

需求阐明的是,因为 ChatGPT 运用的最新模型没有敞开接口,因而它只能经过无头浏览器等办法来运用,这也导致了它的运用相对不稳定。可是,跟着技能的不断进步和完善,信任 ChatGPT 将会在未来得到更好的运用和开展。

除了 ChatGPT 运用之外,OpenAI 还在不断探索和推动人工智能技能的开展,也在持续地开发出更多的运用和产品,以满足不同用户的需求。信任在未来,咱们将会看到更多愈加智能化和便捷化的人工智能运用和服务。

OpenAI API 接口的运用范围

OpenAI API 接口供给了丰厚的运用功能,包含自然言语处理语音辨认图片生成等方面。详细的运用办法和阐明能够检查官方文档platform.openai.com/docs)。需求留意的是,因为一些原因,现在该文档在我国网络中无法拜访。

如何快速开发一个OpenAI/GPT应用

然而,需求清晰的是,OpenAI API 接口中真实智能的模型是 gpt-3.5-turbo。该模型具有十分高的自然言语处理才能,能够完成多种不同的运用,比方对话补全、文本自动摘要、文本翻译等。近年来,众多运用和产品现已开端将 gpt-3.5-turbo 运用到实际生产中,包含各类智能客服、智能问答、智能写作等运用场景。

需求阐明的是,除了 gpt-3.5-turbo 之外,OpenAI API 还供给了其他的接口和模型,如语音辨认和图片生成。这些接口和模型也能够运用到不同的场景中,满足用户的不同需求。可是相关于 gpt-3.5-turbo,这些模型的智能化程度或许要稍低一些,因而在挑选接口和模型时需求依据详细需求进行挑选。

总的来说,OpenAI API 接口供给了丰厚的运用功能,能够帮助用户在不同场景下完成自然言语处理、语音辨认、图片生成等多种运用需求。信任跟着技能的不断进步和完善,OpenAI API 将会在未来得到更好的开展和运用。

如何快速开发一个OpenAI/GPT应用

chat completions 接口怎么运用?

能够经过许多办法来运用,比方运用官方SDK,第三方项目,但其实只需求一个HTTP恳求就能够。以下是官方文档给出的例子:

curl <https://api.openai.com/v1/chat/completions> \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -d '{
  "model": "gpt-3.5-turbo",
  "messages": [{"role": "user", "content": "Hello!"}]
}'

除了根本的运用办法外,还有一些细节需求留意,以确保 GPT 的运用作用更佳。

1. model挑选

在挑选运用哪个 model 的时候,需求考虑两个因素:计费和作用。现在官方文档供给的 model 有 gpt, gpt-2, gpt-3gpt-3.5-turbo 四种。其中,gpt 是最廉价的,可是作用最差;gpt-3.5-turbo 则是最贵的,可是作用最好。在挑选时,需求依据实际需求进行权衡。

2. messages的结构

在结构 messages 的时候,需求留意以下几点:

  • messages 的长度不能超过 2048 字节。
  • 在一次恳求中,能够传递多条 message,每条 message 的 role 不能相同,即不能有两个 user 或两个 system
  • 关于 user 的 message,需求留意言语和表达办法,以便 GPT 能够更好地了解问题。

3. max_tokens的挑选

max_tokens生成回答的最大长度。在实际运用中,需求依据详细需求挑选合适的长度。假如长度过长,会导致生成的回答不行准确;假如长度过短,会导致回答内容不行完整。

4. 恳求地址的挑选

因为种种原因,OpenAI 的 API 现在在我国大部分地区现已无法拜访。处理这个问题的办法能够是运用国内的 API 中转服务,或许运用 VPN 等东西进行拜访。

Stream 参数

弥补一下关于 SSE 的信息,SSE 是一种十分有用的网络传输协议,能够答应服务器主意向客户端推送数据。这种办法能够完成实时性很高的运用,例如实时谈天、股票行情推送等。

运用 SSE 时,客户端与服务器之间建立一个持久化的衔接,服务器能够随时向客户端发送数据,客户端也能够随时向服务器发送恳求。与传统的 HTTP 恳求不同,SSE 中的恳求不会被封闭,而是保持翻开状态,直到客户端自动封闭衔接或服务器封闭衔接。

因而,当咱们需求完成实时性较高的运用时,SSE 是一个十分好的挑选。而关于 ChatGPT 这样的实时谈天运用,运用 SSE 是十分必要的。

其他参数

接口的其他参数能够看官方文档,拜访不了的同学能够看我做的截图。

如何快速开发一个OpenAI/GPT应用

Chat completions 接口怎么计费?

chat completions接口按 token 计费,有一个专门的算法来核算 token。输入和输出悉数都会计入到 token 里边,在chat completions接口的usage里边会有详细耗费的 token 数。

假如你要自己核算,能够用这个在线表单,程序核算能够看看这两个项目:

  1. github.com/dqbd/tiktok…
  2. github.com/openai/tikt…

除了gpt-3.5-turbo模型的chat completions接口,还有text-davinci-003模型的text completions接口能够用,可是价格更贵,作用更差

你能够在openai.com/pricing查询到价格,以下是3月中旬的定价

Model Usage
gpt-3.5-turbo (ChatGPT) $0.002 / 1K tokens
Davinci (InstructGPT) $0.0200 / 1K tokens
Ada (InstructGPT) $0.0004 / 1K tokens
Babbage (InstructGPT) $0.0005 / 1K tokens
Curie (InstructGPT) $0.0020 / 1K tokens

chat completions 接口能做什么

尽管chat completions看起来像是一个谈天接口,但接口设计上并没有为谈天优化,因为这个接口是记不住上下文的。

为了让对话具有连续性,咱们每次恳求需求带上上次的谈天记载。你能够运用这个第三方库,它能够自动帮你发送谈天记载(经过指定对话的parentMessageId)完成:

  1. github.com/transitive-…

如何快速开发一个OpenAI/GPT应用

在加上对话记载后,chat completions接口就能够制造一个看起来有智能的谈天运用了。

假如你要在国内运营谈天机器人之类的话,请记得将内容经过文本内容审核接口进行审核,否则很或许导致被封。

怎么处理国内用户无法注册OpenAI账号、无法拜访OpenAI接口的问题?

两个思路,一个是绕道海外去注册,经过署理运用服务;另一个是直接运用第三方署理API服务。前者能够暂时处理当前的问题;后者更方便省心。

注册OpenAI

  1. 准备一个海外的网络
  2. 准备一个海外手机号来接纳验证短信,能够用海外虚拟号码

注册完成后,进入API页面创立Key,然后就能够运用了。

这个计划现在可行,是因为OpenAI给每个新用户供给了18美金的免费额度。可是一旦不再供给,就会面对充值的问题。现在OpenAI不接受我国信用卡,因而还必须准备一个海外信用卡。也就是说,要持久稳定的运用,必须有海外信用卡。

以前有财付通的海外虚拟信用卡,后来服务下线了。最近看了下,许多500RMB起,还只支撑电商网站,感觉不太靠谱

拜访OpenAI API

3月3日开端,国内大部分网络不再能直接拜访 OpenAI 接口。

因而你需求架起署理来拜访OpenAI 接口。你能够将整个服务器署理到海外网络,或许只是简单的经过 Cloudflare 或许 腾讯云函数来布置API署理。

相对来说,我觉得腾讯云香港或许稳定点。

需求留意的是,部分API署理不支撑SSE,因而不能实时回来内容。当然,有同学说腾讯云的 ApiGateway 直接就能署理,但我测试了下没成功。

经过第三方接口拜访

假如你搞不定海外手机号和信用卡,或许自己不想架起署理,那么能够考虑用像API2D这样的第三方署理API。

主要的优点:

  1. 根本兼容原有接口,只需求改下 API endpoint 和 Key
  2. 支撑国内卡充值,开发者能够让用户自己自行购买点数并创立Forward Key
  3. 接口国内直接能够拜访,无需架起署理

缺陷:

  1. 不支撑 stream 参数,因而只能一次性回来内容
  2. 不支撑微信充值,价格比官方略高