2023 年 ChatGPT API 教程:用 Python 构建命名应用

原标题A 2023 Walkthrough of the ChatGPT API and a Python Naming App

Matthew Berman 介绍 GPT-3.5 Turbo 的发布、token 和温度参数,然后运行一个基于旧版 DaVinci 的 Flask 示例。

MBMatthew Berman主持 · Forward Future
频道
Matthew Berman
发布
2023年3月11日
视频
17:06
阅读
6 分钟
幻灯片
5
原文
英语
在 YouTube 打开
往下滚动阅读时,视频会缩到右下角继续播放。字幕跟随阅读语言。
阅读语言共 2 种语言可读
由 AI 从英语原文翻译。打开“对照原文”可以逐段核对。
摘要

30 秒看懂

在这段 2023 年 3 月的教程中,Matthew Berman 介绍新发布的 ChatGPT 和 Whisper API,浏览文档和 Playground,并构建一个本地动物命名工具。视频标题写着“4.0 Turbo”,但当时发布的是 GPT-3.5 Turbo;代码演示使用的是更早的 DaVinci 补全模型。录制以来,模型可用性、API、价格和政策都发生了变化。

  1. 1实际使用的模型2023 年发布的是 GPT-3.5 Turbo,而非 GPT-4 Turbo;当时公布的价格为每 1000 个 token 0.002 美元。
  2. 2输入和输出都计算 token输入和生成的输出都会消耗 token;限制和价格因模型及版本而异。
  3. 3温度参数改变采样较低温度通常让输出更容易预测,较高温度则允许更多变化。
  4. 4示例使用 DaVinci本地 Flask 演示调用的是旧版补全模型,而非新推出的 Turbo 聊天端点。

要点建议

  1. 2023 年 3 月发布的 ChatGPT API 引入了 GPT-3.5 Turbo,当时的价格为每 1000 个 token 0.002 美元。
  2. token 预算包括输入和输出,限制取决于模型及其版本。
  3. 温度参数影响采样的多样性,不能保证准确性或结果可重复。
  4. Python Flask 示例使用 DaVinci 补全模型,而非 Turbo 聊天端点。
  5. 阅读这篇历史教程时,应对照当前模型可用性、文档和政策。
全文

按章节阅读整理后的全文

只看原始文稿
01

2023 年的 API 发布

Berman 介绍 GPT-3.5 Turbo 和 Whisper,并解释当时的价格。他还回顾了早期应用示例。

OpenAI 刚刚开放 ChatGPT 和 Whisper API,我很期待开发者在此基础上构建应用。这段 2023 年 3 月的视频讨论的是 GPT-3.5 Turbo,尽管视频后来使用了“4.0 Turbo”的标题。OpenAI 宣布新模型的价格为每 1000 个 token 0.002 美元,相较其已有的 GPT-3.5 模型便宜十倍;这并不能证明 Turbo 和 DaVinci 是同一个模型。

我会先浏览文档,再运行一个小型 Python 应用。ChatGPT API 接收消息并生成模型回复;Whisper API 负责音频转写。Whisper 转写的示例给我留下了深刻印象,不过这些观察并不是与其他服务的受控比较。

OpenAI 介绍了 Snap、Quizlet、Instacart 和 Shopify 的早期应用:可定制聊天机器人、语言辅导、杂货建议和购物推荐。这些例子展示了不同产品如何将模型输出融入自己的使用体验。

GPT-3.5 Turbo 发布定价
幻灯片 1 / 5GPT-3.5 Turbo 发布定价原始公告显示当时的价格为每 1000 个 token 0.002 美元。

发布时的价格是每 1000 个 token 0.002 美元,OpenAI 称其比已有的 GPT-3.5 模型便宜十倍。这是历史价格,并非当前报价。新的 gpt-3.5-turbo 模型使用接收结构化消息的 chat-completions 端点;我稍后运行的旧版 text-completions 示例使用的是不同的模型和端点。

02

提示词、token 与模型

他讲解文本补全示例、token 计数和文档中列出的模型。模型限制和可用性取决于具体版本。

一个语言模型 API 可以通过提示词支持差异很大的任务,无须为每一种翻译或聊天机器人用途分别设计端点。文档用一个请求冰淇淋店广告语的提示词来说明这一点。请求的措辞会影响回复。

token 既关系到计费,也关系到模型能处理的文本量。一个 token 通常约等于四个英文字母或四分之三个英文单词,但这只是粗略估计。输入和生成的输出都会计入模型的上下文预算和费用。

我正在阅读的文档提到提示词和回复合计不能超过 2048 个 token。这个数字并非通用限制:上限取决于具体模型和版本,应查阅相应文档。规划请求长度时,要记得为回复留出空间。

token 可以是完整的常用单词,也可以是较长单词的片段。我用“Tell me something cool.”试用了分词工具,展示文本如何被拆分和计数,包括空格。分词工具有助于估算请求大小和费用,但实际用量取决于模型和输出。

我查看的模型目录包括 GPT-3.5、用于图像生成的 DALL·E、用于转写的 Whisper、衡量相关性的嵌入模型、用于代码的 Codex 和内容审核模型。嵌入向量可以帮助搜索查询找出相关结果。这份 2023 年教程中的目录和模型可用性属于历史情况。

03

温度参数与政策

示例展示了提示词的具体程度和温度参数如何影响生成文本。Berman 还回顾了当时的使用规则。

快速入门示例展示了更具体的提示词如何改变答案:请求一个马的名字会得到一个建议,而请求一匹黑马的名字会得到另一个建议。接着,教程介绍了温度参数,这是一个可选的采样设置,会影响输出可能出现的变化程度。

在教程展示的零到一区间内,较低温度更倾向于选取可预测的结果,较高温度则允许更广泛的候选 token。它不能保证准确性或创造性,而设为零也不能普遍保证每次回复完全相同。

少样本提示词与温度参数
幻灯片 2 / 5少样本提示词与温度参数教程展示了动物名字的示例和温度设置。

动物超级英雄提示词先给出几个例子,再要求生成更多名字。在这个演示中,温度为零时会重复相同建议;把温度调到 0.5 再调到 1,结果便出现更多变化。少样本示例有助于传达所需模式,而温度影响采样。

一幅交互图将“Horses are my favorite”拆成 token,并展示候选的下一个词及其概率。在这个例子中,“animal”的概率最高,“animals”紧随其后。较高温度会提高低概率选项相对于首选项出现的可能性。

下一个 token 的概率
幻灯片 3 / 5下一个 token 的概率图示展示候选的下一个 token 以及采样温度的作用。

当我知道希望回复呈现什么样子时,我倾向于使用较低温度;如果要写诗或俳句,我可能会尝试较高温度。这只是实验的起点,不能代替对输出的检查。

我还阅读了当时有效的使用政策,包括对有害活动、经济损害和政治竞选相关用途的限制。我特别提到与人互动的自动化系统需要披露身份的规则,以及当时政策中列出的一些例外。政策会变化,开发者必须查阅当前条款,不能依赖这份 2023 年的概述。

04

Playground 与 Python 应用

主持人在 Playground 中尝试聊天,并运行本地 Flask 命名应用。示例使用的是旧版 DaVinci 模型,而非 Turbo。

在 Playground 的聊天界面中,我设置系统指令“你是一名私人购物助手”,然后询问自己应该穿什么。模型回复时询问天气、活动和个人偏好;我说天气晴朗、计划长时间散步之后,它建议穿舒适的衣服。界面提供温度和最大长度等设置。

Chat Playground 设置
幻灯片 4 / 5Chat Playground 设置当时的 Playground 展示了系统消息、用户提示词和模型控制项。

在动手示例中,我使用 Python,克隆教程代码仓库,进入项目目录并复制环境变量示例文件。我创建 API 密钥,并配置本地环境使用它。凭据应保密且不要纳入版本控制;教程中的旧软件包和 API 调用可能需要修改,才能适用于当前服务。

示例应用导入 OpenAI 库和 Flask。它读取 API 密钥、定义路由,并从表单接收一种动物。提示词提供几个动物超级英雄名字作为示例,再让模型为提交的动物生成三个名字。

我安装项目依赖并启动 Flask。正如我在视频中指出的,文档示例使用的是旧版 DaVinci 补全模型,而非新发布的 GPT-3.5 Turbo 聊天端点。因此,运行这个示例展示的是旧版补全流程,而不是实际接入 Turbo。

本地服务器运行后,我在 localhost 的 5000 端口打开页面,输入“bunny”。应用返回三个建议:Super Hopper、Thumperman 和 Carrot Crusader。这个例子展示了从表单输入、调用模型到显示文本的基本流程。

本地宠物命名应用
幻灯片 5 / 5本地宠物命名应用Flask 示例为兔子显示了三个超级英雄名字建议。

现在,我们已经有了一个连接 OpenAI API 的本地 Python 环境。我计划之后用 Turbo 端点构建更完整的应用,并考虑使用 Ruby on Rails 还是无代码方案。这段视频记录的是早期教程,因此读者动手实现之前,应查看当前的 API 文档、受支持模型、价格和政策。

同频道的其他文章

12 张幻灯片34:21EN → 简体中文
Matthew Berman· 2026年10月27日Matthew Berman 解读 Anthropic 的上市文件、AI 增长与治理Matthew Berman, Sam Altman · Forward Future主持人审视 S-1 中的财务指标、算力战略和投票结构,并质疑 AI 快速发展与安全之间的张力。AnthropicAI Safety企业 AI+2
0:26EN → 简体中文
Matthew Berman· 2026年10月25日Sam Altman 谈 AI 世界中的人类价值与问题解决Sam Altman · OpenAI在一段简短的访谈摘录中,Altman 思考解决难题的乐趣,以及人在解读结果时的作用。Human-AI CollaborationFuture of WorkAI Strategy
2 张幻灯片0:36EN → 简体中文
Matthew Berman· 2026年10月25日Kimi K3.1 与魔方求解演示Matthew Berman · Forward FutureMatthew Berman 展示一个被打乱的虚拟魔方如何复原,并对 Kimi K3.1 的测试给予积极评价。评估编程智能体Open-weight models
2 张幻灯片0:21EN → 简体中文
Matthew Berman· 2026年10月24日AI 生成的 Kimi 基准图表使用了虚构分数Matthew Berman · Forward FutureMatthew Berman 要求生成一张 Kimi K3.1 Pro 基准图表,随后发现图中的数字只是示意性占位值。Benchmarks评估Generative media
6 张幻灯片25:50EN → 简体中文
Matthew Berman· 2026年10月24日Kimi K3.1 Pro 实测:3D 演示出色,表现不一,价格有竞争力Matthew Berman · Forward FutureMatthew Berman 测试这款开放权重模型的编程、3D 渲染和视觉讲解能力,并比较基准成绩与价格。Open-weight modelsBenchmarksAI cost & performance+1
2 张幻灯片32:20EN → 简体中文
Matthew Berman· 2026年10月23日本地 AI 究竟适合谁?成本、取舍与混合模式的未来Matthew Berman · Forward FutureMatthew Berman 权衡数据控制和自主权,与硬件成本、设置复杂度及推理速度之间的关系。Local inferenceOpen-weight modelsAI cost & performance+1