ChatGPT 与 OpenAI:智能自然语言交互的最新发展

释放双眼,带上耳机,听听看~!
本文介绍了ChatGPT与OpenAI之间的关系,以及它们在智能化自然语言交互领域的最新发展。同时也提及了OpenAI API接口的丰富功能和使用方法。

本文正在参加 ✍🏻 技术视角深入 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)。需要注意的是,由于一些原因,目前该文档在中国网络中无法访问。

ChatGPT 与 OpenAI:智能自然语言交互的最新发展

然而,需要明确的是,OpenAI API 接口中真正智能的模型是 gpt-3.5-turbo。该模型具有非常高的自然语言处理能力,可以实现多种不同的应用,比如对话补全、文本自动摘要、文本翻译等。近年来,众多应用和产品已经开始将 gpt-3.5-turbo 应用到实际生产中,包括各类智能客服、智能问答、智能写作等应用场景。

需要说明的是,除了 gpt-3.5-turbo 之外,OpenAI API 还提供了其他的接口和模型,如语音识别和图片生成。这些接口和模型也可以应用到不同的场景中,满足用户的不同需求。但是相对于 gpt-3.5-turbo,这些模型的智能化程度可能要稍低一些,因此在选择接口和模型时需要根据具体需求进行选择。

总的来说,OpenAI API 接口提供了丰富的应用功能,可以帮助用户在不同场景下实现自然语言处理、语音识别、图片生成等多种应用需求。相信随着技术的不断进步和完善,OpenAI API 将会在未来得到更好的发展和应用。

ChatGPT 与 OpenAI:智能自然语言交互的最新发展

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 是非常必要的。

其他参数

接口的其他参数可以看官方文档,访问不了的同学可以看我做的截图。

ChatGPT 与 OpenAI:智能自然语言交互的最新发展

ChatGPT 与 OpenAI:智能自然语言交互的最新发展

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-…

ChatGPT 与 OpenAI:智能自然语言交互的最新发展

在加上对话记录后,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. 不支持微信充值,价格比官方略高
本网站的内容主要来自互联网上的各种资源,仅供参考和信息分享之用,不代表本网站拥有相关版权或知识产权。如您认为内容侵犯您的权益,请联系我们,我们将尽快采取行动,包括删除或更正。
AI教程

机器学习的文本图像关联分析及应用

2023-12-19 14:46:00

AI教程

深度学习在药物分子结构生成与预测中的应用

2023-12-19 14:48:00

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索