OpenAI已经公布了新的更新,已经以GPT-3.5 Turbo的微调功能的形式推出其服务,并承诺在秋季进行GPT-4微调。这一重大更新将彻底改变开发人员自定义模型的方式,将性能和可扩展性提高到前所未有的水平。本指南将提供有关如何微调 ChatGPT-3.5 以满足您的需求的更多信息。
早期的测试很有希望,表明微调的GPT-3.5 Turbo可以在某些任务上匹配甚至超过基本的GPT-4能力。这证明了微调的力量,这是开发人员和企业都热切期待的功能。目标?为用户创造独特的定制体验,突破 AI 可以实现的界限。
ChatGPT-3.5 涡轮微调更新
此更新的主要优点之一是能够运行监督微调。这允许开发人员针对其特定用例磨练模型的性能,从而产生更高效和有效的 AI。私人测试版已经在常见用例中显示出重大改进,包括增强的可操纵性、可靠的输出格式和自定义音调。
此外,企业现在可以在保持性能的同时缩短提示。微调后的型号可以处理多达 4k 个代币,是以前型号容量的两倍。这使得早期测试人员通过将微调指令直接集成到模型中,将提示大小减少多达 90%。结果呢?更快的 API 调用和更低的成本。
但微调的好处并不止于此。当与其他技术(如提示工程、信息检索和函数调用)结合使用时,它最有效。这种多方面的方法确保人工智能尽可能强大和通用。
在数据安全性方面,OpenAI明确表示,进出微调API的数据归客户所有。OpenAI或任何其他组织不会使用它来训练其他模型,从而确保用户数据的隐私和完整性。
展望未来,OpenAI计划在今年秋天晚些时候通过函数调用和gpt-3.5-turbo-16k支持微调。这是使人工智能更易于访问、高效和强大的又一步。人工智能的未来就在这里,它被微调到完美。
如何微调 ChatGPT-3.5
OpenAI 提供了一个微调 API,允许用户自定义模型以更好地适应他们的特定应用程序。本文深入探讨了如何充分利用此功能,特别关注 gpt-3.5-turbo 模型。
为什么要微调?
虽然 GPT 模型是在大量数据上预先训练的,但它们通常需要提示形式的指令或示例才能有效地执行任务。这种提供示例的方法被称为“少镜头学习”。但是,微调可以通过以下方式增强此方法:
从本质上讲,微调使模型能够更加精通特定任务,从而减少对冗长提示的需求并节省成本。
微调过程
微调可以概括为三个主要步骤:
型号可用性
目前,OpenAI 支持对 gpt-3.5-turbo-0613(推荐)、babbage-002 和 davinci-002 等模型进行微调。但是,对 GPT-4 的支持正在筹备中。
何时考虑微调
微调功能强大,但需要仔细投入时间。在进行微调之前:
- 尝试通过提示工程和其他策略(如提示链接)获得最佳结果。
- 请记住,即使您决定稍后进行微调,最初的快速工程工作也不会浪费。它可以集成到微调过程中。
微调的理想用例
微调在以下情况下表现出色:
- 需要特定的样式或色调。
- 需要一致的所需输出。
- 该模型在复杂的提示中挣扎。
- Edge情况需要以特定的方式解决。
- 一项新技能或任务很难在提示中解释。
准备数据集
为了有效地进行微调,您需要一个准备充分的数据集。这应包括:
- 会话格式:每个示例都应类似于对话,包含角色(如“用户”或“系统”)、内容,有时还包括名称。
- 关联:数据集应与模型在实际使用过程中遇到的对话或提示类型紧密匹配。
制作提示
为了获得最佳结果,尤其是有限的训练示例,请将先前使用的最佳说明和提示合并到每个训练示例中。
训练数据集大小
虽然微调模型至少需要 10 个示例,但 50 到 100 个示例通常是使用 gpt-3.5-turbo 进行明显改进的理想选择。但是,理想的数字可能因特定用例而异。
培训和测试
获得数据集后,将其拆分为训练和测试部分。这允许您在训练期间监视模型的性能,并在训练后评估其功能。
代币限制和成本
每个训练示例最多可以有 4096 个令牌。微调的成本取决于数据集中的令牌数量和训练周期的数量。
启动微调
数据集准备就绪并上传后,您可以使用 OpenAI SDK 开始微调过程。这涉及将数据集提交到微调 API、选择模型以及指定其他参数。
使用微调模型
微调过程完成后,可以通过在 API 中引用模型的名称来将模型用于特定任务。
分析性能
训练损失、令牌准确性、测试丢失和测试令牌准确性等训练指标提供了对模型性能的见解。但是,衡量微调模型质量的最佳方法是生成样本并将它们与基本模型并排比较。