本指南提供了一套全面的最佳实践,旨在帮助您完成从原型到生产环境的过渡。无论您是经验丰富的机器学习工程师还是刚刚入门的爱好者,本指南都将为您提供在真实生产环境中高效使用本平台所需的工具:从保障 API 的安全访问,到设计能够应对高并发流量的健壮架构。请借助本指南,制定尽可能顺畅、高效地部署应用程序的计划。
如果您想进一步了解投入生产环境的最佳实践,请观看我们的 Developer Day 演讲:
设置您的组织
在您 登录 到你的 OpenAI 账户,你可以在你的 组织设置。组织名称是您组织的标签,显示在用户界面中。组织 ID 是您组织的唯一标识符,可在 API 请求中使用。
属于多个组织的用户可以 传递一个标头 以指定用于 API 请求的组织。来自这些 API 请求的用量将计入指定组织的配额。如果未提供标头,则将对 默认组织 进行计费。你可以在你的 用户设置.
你可以从组织的 团队页面。成员可以是 读取者 or 所有者.
Readers:
- 可以发起 API 请求。
- 可以查看组织的基本信息。
- 可以在组织中创建、更新和删除资源(如 Assistants),除非另有说明。
Owners:
- 拥有读取者的所有权限。
- 可以修改账单信息。
- 可以管理组织内的成员。
管理账单额度
输入账单信息后,您将获得 OpenAI 设定的每月 100 美元的已批准使用额度。随着您平台上的使用量增加并从一个 使用层级 晋升到另一个层级,您的额度限制将自动提升。您可以在账户设置的 限制进行比较 页面中查看当前的使用额度。
如果您希望在用量超过特定金额时收到通知,可以通过 使用限制 page.
API 密钥
OpenAI API 使用 API 密钥进行身份验证。请访问你的 API 密钥 页面以获取你将在请求中使用的 API 密钥。
这是一种相对直接的控制访问方式,但你必须对保护这些密钥的安全保持警惕。避免在代码或公共代码库中暴露 API 密钥;相反,请将它们存储在安全的位置。你应该使用环境变量或密钥管理服务将密钥提供给应用程序,这样就不必在代码库中对其进行硬编码。更多信息请阅读我们的 API 密钥安全最佳实践.
可以在 用量页面 上监控 API 密钥的使用情况(启用跟踪后)。如果你使用的是 2023 年 12 月 20 日之前生成的 API 密钥,则默认不会启用跟踪。你可以在 API 密钥管理仪表板。2023 年 12 月 20 日之后生成的所有 API 密钥均已启用跟踪。之前的任何未跟踪使用量将显示为 Untracked in the dashboard.
测试项目
随着规模的扩大,你可能需要为测试和生产环境创建单独的项目。你可以在仪表板中创建这些项目,从而隔离你的开发和测试工作,以免意外干扰你的线上应用。你还可以限制用户对生产项目的访问权限,并为每个项目设置自定义的速率和支出限制。
扩展你的解决方案架构
在设计使用我们 API 的生产应用或服务时,考虑如何扩展以应对流量需求非常重要。无论你选择哪种云服务提供商,都需要考虑以下几个关键领域:
- 水平扩展:您可能需要水平扩展您的应用程序,以处理来自多个来源的请求。这可能涉及部署额外的服务器或容器来分配负载。如果您选择这种扩展方式,请确保您的架构专为处理多个节点而设计,并且已部署相应的机制在这些节点之间进行负载均衡。
- 垂直扩展:另一种选择是垂直扩展您的应用程序,这意味着您可以增强单个节点的可用资源。这涉及升级服务器的处理能力以应对额外的负载。如果您选择这种扩展方式,请确保您的应用程序在设计上能够充分利用这些额外的资源。
- 缓存:通过存储频繁访问的数据,您可以缩短响应时间,而无需重复调用我们的 API。您的应用程序需要被设计为尽可能使用缓存数据,并在添加新信息时使缓存失效。有几种不同的方法可以实现这一点。例如,您可以根据应用程序的实际需求,将数据存储在数据库、文件系统或内存缓存中。
- 负载均衡:最后,请考虑使用负载均衡技术,以确保请求在可用服务器之间均匀分配。这可能涉及在服务器前端使用负载均衡器,或使用 DNS 轮询。负载均衡有助于提高性能并减少瓶颈。
管理速率限制
在使用我们的 API 时,理解并规划以下几点非常重要: 速率限制.
改善延迟
请查看我们最新的指南,了解 延迟优化.
延迟是指从处理请求到返回响应所需的时间。在本节中,我们将讨论影响文本生成模型延迟的一些因素,并提供降低延迟的建议。
补全请求的延迟主要受两个因素影响:模型和生成的 Token 数量。补全请求的生命周期如下所示:
大部分延迟通常来自 Token 生成步骤。
直觉:提示词 tokens 对补全调用增加的延迟微乎其微。生成补全 tokens 的时间要长得多,因为 tokens 是逐个生成的。由于每个 token 都需要生成时间,较长的生成长度会累积延迟。
影响延迟的常见因素及可能的缓解技术
既然我们已经了解了延迟的基础知识,接下来让我们看看影响延迟的各种因素,大致按影响程度从大到小排列。
模型
我们的 API 提供了具有不同复杂度和通用性水平的多种模型。功能最强大的模型,例如 gpt-5.5,能够生成更复杂、更多样化的补全内容,但同时处理查询所需的时间也会更长。例如, gpt-5.4-mini and gpt-5.4-nano 可以生成更快且更便宜的响应,而 gpt-5.5 是当你希望在复杂任务上有更多余量时的一个更强默认选择。你可以根据最适合你用例的模型,以及速度、成本和质量之间的权衡来进行选择。
补全 Token 数量
请求大量生成的 Token 补全可能会导致延迟增加:
- 降低 max tokens:对于生成 token 数量相近的请求,
max_tokens参数会产生更低的延迟。 - 包含停止序列:为了避免生成不必要的 tokens,可以添加一个停止序列。例如,你可以使用停止序列来生成一个包含特定数量项的列表。在这种情况下,通过使用
11.作为停止序列,你可以仅生成包含 10 个项目的列表,因为当遇到11.时补全就会停止。 阅读我们关于停止序列的帮助文章 以获取有关如何执行此操作的更多背景信息。 - 减少补全次数:降低
nandbest_of在可能的情况下,其中n表示为每个提示生成的补全数量,而best_of用于表示每个 Token 具有最高对数概率的结果。
If n and best_of 都等于 1(这是默认值),则生成的 Token 数量最多等于 max_tokens.
If n (返回的补全数量)或 best_of (为供选择而生成的补全数量)设置为 > 1的值,每次请求将会生成多个输出。在这里,你可以将生成的 token 数量视为 [ max_tokens * max (n, best_of) ]
流式传输
设置 stream: true 在请求中使得模型在 Token 可用时立即开始返回它们,而不是等待整个 Token 序列生成完毕。这不会改变获取所有 Token 的时间,但会减少对于那些我们想要显示部分进度或打算停止生成的应用程序的首个 Token 的时间。这可能带来更好的用户体验和 UX 改进,因此值得尝试流式传输。
批处理
根据你的用例,批处理 可能会有帮助。如果你要向同一端点发送多个请求,可以 将提示批量处理 以便在同一个请求中发送。这将减少你需要发出的请求数量。prompt 参数最多可容纳 20 个不同的提示。我们建议你测试此方法并查看是否有帮助。在某些情况下,你最终可能会增加生成的 Token 数量,这会减慢响应时间。
管理成本
为了监控你的成本,你可以在账户中设置 通知阈值 以便在超过特定使用量阈值后收到电子邮件警报。使用 用量跟踪仪表板 来监控你在当前和过去计费周期内的 Token 使用情况。
文本生成
将原型投入生产时面临的挑战之一是对运行应用程序相关成本进行预算。OpenAI 提供 按量付费定价模型,价格按每 1,000 个 token(约等于 750 个单词)计算。要估算你的成本,你需要预估 token 的使用量。考虑因素包括流量水平、用户与应用交互的频率,以及你将要处理的数据量。
一个有助于降低成本的实用框架是,将成本视为 Token 数量和每个 Token 成本的函数。 使用此框架降低成本有两个潜在途径。首先,你可以通过在某些任务中切换到较小的模型来努力降低每个 Token 的成本。或者,你可以尝试减少所需的 Token 数量。有几种方法可以做到这一点,例如使用更短的提示、 微调 模型,或者缓存常见的用户查询,以便它们不需要被重复处理。
你可以体验我们的交互式 分词器工具 来帮助你估算成本。API 和 Playground 也会在响应中返回 Token 计数。一旦你使用我们最强大的模型完成了各项测试,你可以看看其他模型是否能在更低延迟和成本下产生相同的结果。请在我们的 Token 用量帮助文章.
MLOps 策略
在将原型投入生产时,你可能需要考虑制定 MLOps 策略。MLOps(机器学习运维)是指管理机器学习模型端到端生命周期的过程,包括你可能使用我们的 API 进行微调的任何模型。在设计 MLOps 策略时,有许多方面需要考虑。这些包括
- 数据和模型管理:管理用于训练或微调模型的数据,并跟踪版本和变更。
- 模型监控:随着时间推移跟踪模型的性能,并检测任何潜在问题或性能下降。
- 模型重训练:确保模型随着数据变化或不断发展的需求保持最新状态,并根据需要进行重训练或微调。
- 模型部署:自动化将模型及相关构件部署到生产环境的过程。
仔细考虑应用程序的这些方面,将有助于确保你的模型随着时间的推移保持相关性并表现良好。
安全与合规
在将原型投入生产时,你需要评估并解决可能适用于你的应用程序的任何安全和合规要求。这将涉及检查你正在处理的数据,了解我们的 API 如何处理数据,以及确定你必须遵守的法规。我们的 安全实践 and 信任与合规门户 提供了我们最全面和最新的文档。供参考,这是我们的 隐私政策 and 使用条款.
你需要考虑的一些常见领域包括数据存储、数据传输和数据保留。你可能还需要实施数据隐私保护,例如在可能的情况下进行加密或匿名化。此外,你应该遵循安全编码的最佳实践,例如输入清理和适当的错误处理。
安全最佳实践
在使用我们的 API 创建应用程序时,请考虑我们的 安全最佳实践 以确保你的应用程序安全且成功。这些建议强调了广泛测试产品、主动解决潜在问题以及限制滥用机会的重要性。
商业考量
随着使用 AI 的项目从原型走向生产,重要的是要考虑如何利用 AI 构建出色的产品,以及这如何与你的核心业务联系起来。我们当然没有所有的答案,但一个很好的起点是我们开发者日的一场演讲,在演讲中我们与一些客户深入探讨了这个问题: