速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

重磅!OpenAI 开放 GPT-3.5 Turbo 微调,网友:将 prompt 减少 90% 才实惠 

  • 2023-08-23
    北京
  • 本文字数:2767 字

    阅读完需:约 9 分钟

重磅!OpenAI 开放 GPT-3.5 Turbo 微调,网友:将prompt减少90%才实惠 

当地时间 8 月 22 日,OpenAI 宣布企业现在可以使用自己的数据对 GPT-3.5 Turbo 进行微调,OpenAI 声称最终的定制模型可以赶上甚至超过 GPT-4 执行某些任务的能力。今年秋天 OpenAI 将开放更先进的 GPT-4。

 

该公司表示,此次更新将使开发人员能够自定义更适合实际用例的模型,并大规模运行这些自定义模型。OpenAI 强调,传入和传出微调 API 的数据归客户所有, OpenAI 或任何其他组织不会使用这些数据来训练其他模型。

 

OpenAI 此举似乎挽回了一些针对其开源的质疑,有网友评价称,“许多人支持开源人工智能,并批评 OpenAI 不够开放。但最重要的是,OpenAI 在不断创新。”

 

微调用例

 

GPT-3.5 Turbo 是 OpenAI 推出的一种先进的语言模型,它能够准确理解并生成自然语言的文本。相比于之前的版本,GPT-3.5 Turbo 在多个方面有了极大的改进。比如,它具备更加出色的上下文理解能力,能够更好地理解用户的问题或指令,从而提供更准确的回答。它还能够产生更流畅、连贯的文本,仿佛是由人类写就的一样。最重要的是,GPT-3.5 Turbo 具备更快的响应速度,使得用户可以即时得到答案或帮助。

 

自 GPT-3.5 Turbo 发布以来,开发人员和企业纷纷要求开放模型自定义功能,以便为用户创造独特且差异化的体验。通过此次发布,开发人员现可运行监督微调,使得该模型在不同用例中表现更好。

 

微调的基本思想是,先在大规模文本数据上预训练一个大型的语言模型,例如 GPT-3.5,然后使用特定任务的数据集(如法律、医疗),进一步对模型进行训练,以适应特定的任务。在这个过程中,模型的参数会进行微小的调整,使其在特定业务场景上的性能更好。

 

在 OpenAI 的内部 beta 测试中,微调客户已经能够在各类常见用例中显著提高模型性能,例如:

 

  • 改善可操纵性:微调允许企业引导模型更好地遵循指令,例如输出更简洁的答案,或者始终以给定语言做出响应。开发人员可以通过微调保证模型在收到德语提示词后,始终以德语给出回应。

  • 更可靠的输出格式:微调使模型所输出响应结果的格式更加统一。对于需要特定响应格式的应用场景(例如代码补全或编写 API 调用),这种格式可靠性至关重要。例如,开发人员可以用微调将用户提示词转换为可在系统中使用的高质量 JSON 片段。

  • 自定义调节:微调是提升模型输出质量的好办法(包括改善语气、风格),更好地适应企业品牌的固有定位。拥有知名品牌调性的企业可以对模型做出微调,使其与自身市场形象更趋一致。

 

除了提高性能之外,微调还能帮助企业缩短提示词长度,并保证性能基本不变。OpenAI 表示,GPT-3.5 Turbo 的微调可处理 4k 个 tokens——可达之前微调模型的 2 倍。早期测试人员还对模型本身的指令进行了微调,从而将提示词长度缩短达 90%,成功加快每次 API 调用的速度并降低了执行成本。

 

成本是更高了吗?

 

价格问题是开发者们普遍关注的问题之一。根据 OpenAI 说法,微调成本分为两个部分:初始训练成本与使用成本:

 

  • 训练:0.008 美元/1K tokens

  • 使用输入:0.012 美元/1K tokens

  • 使用输出:0.016 美元/1K tokens

 

例如,一个 gpt-3.5-turbo 微调作业中包含 10 万个 token 的训练文件。经过 3 个 epoch 训练轮次,预计成本为 2.40 美元。

 

此前,OpenAI 宣布各初版 GPT-3 基础模型(ada、babbage、curie 和 davinci)将于 2024 年 1 月 4 日正式关闭。OpenAI 如今发布了 babbage-002 和 davinci-002 作为这些模型的替代方案,用户可将其用作基础模型或微调模型。这些模型可以使用新 API 端点/v1/fine_tuning/jobs 进行微调。下面是各基础/微调 GPT-3 模型的定价:

 

对此,有网友算了一笔账:微调的 GPT 3.5 Turbo 生成成本是基本模型生成成本的 8 倍,因此用户确实必须处于 OpenAI 提到的“将提示大小减少 90%”的范围内,才能从中获得成本效益

 

微调定价,每 16 次用户交互的成本将超过 1 美元:16 次交互 *(0.012 美元*4 输入 + 0.016 美元输出)= 1.02 美元。

 

本质上,一个简短的提示,如“打个招呼”,比一个长提示“给黄鼠狼宠物起五个可爱的名字”要花费更少的钱。“要想对一个花费 8 倍以上的微调模型来获得纯粹的财务胜利,需要您将输入和输出提示的大小减少 8 倍或更多。”开发者 simonw 表示。有开发者猜测,这是由于 OpenAI 需要存储和加载模型,即使他们或许也在使用类似 LoRA 的方式来微调模型。

 

对此,也有网友表示,如果进行大量检索增强,那么 8 倍的成本可能仍然比在注入的上下文上消耗大量令牌便宜。


曾基于 OpenAI API 做过 GPT-3 开发的 drcode 分享称,GPT 的“微调”与 Llama2 之类的微调不同,因为它可能不会调整网络的所有权重,只是会调整网络的一小部分。代价是 OpenAI 微调的成本较低,但它的功能也没有“真正的”微调强大。

 

附:微调步骤

 

目前微调需要准备数据、上传必要的文件并通过 OpenAI 的 API 创建微调作业,步骤如下:

 

  1. 准备数据

 

{  "messages": [    { "role": "system", "content": "You are an assistant that occasionally misspells words" },    { "role": "user", "content": "Tell me a story." },    { "role": "assistant", "content": "One day a student went to schoool." }  ]}
复制代码

 

  1. 上传文件

 

curl -https://api.openai.com/v1/files \  -H "Authorization: Bearer $OPENAI_API_KEY" \  -F "purpose=fine-tune" \  -F "file=@path_to_your_file" 
复制代码

 

  1. 创建微调作业

 

curl https://api.openai.com/v1/fine_tuning/jobs \-H "Content-Type: application/json" \-H "Authorization: Bearer $OPENAI_API_KEY" \-d '{  "training_file": "TRAINING_FILE_ID",  "model": "gpt-3.5-turbo-0613",}'
复制代码

 

在模型完成微调过程之后,可以立即在生产环境下使用,且具有与基础模型相同的共享速率限制。

 

  1. 使用微调后的模型

 

curl https://api.openai.com/v1/chat/completions \-H "Content-Type: application/json" \-H "Authorization: Bearer $OPENAI_API_KEY" \-d '{  "model": "ft:gpt-3.5-turbo:org_id",  "messages": [    {      "role": "system",      "content": "You are an assistant that occasionally misspells words"    },    {      "role": "user",      "content": "Hello! What is fine-tuning?"    }  ]}'
复制代码

 

该公司表示,所有微调数据都必须通过“审核”API 和 GPT-4 支持的审核系统,以查看是否与 OpenAI 的安全标准相冲突。OpenAI 还计划在未来推出一个微调 UI,其中包含一个仪表板,用于检查正在进行的微调工作负载的状态。

 

OpenAI 表示,在与其他技术(例如提示词工程、信息检索和函数调用)结合使用后,微调的潜力才能得到充分发挥。对函数调用和 gpt-3.5-turbo-16k 微调的支持也计划于今年秋季推出。

 

对于 OpenAI 开放 GPT-3.5 Turbo 微调,您有什么想法?欢迎在评论区发表您的观点!

 

参考链接:

 

https://openai.com/blog/gpt-3-5-turbo-fine-tuning-and-api-updates

https://news.ycombinator.com/item?id=37227139

2023-08-23 13:585243

评论

发布
暂无评论
发现更多内容

经常被问到的react-router实现原理详解

夏天的味道123

前端 React

社交泛娱乐之外,融云 IM 在商业沟通中的实践

融云 RongCloud

IM 泛娱乐 通讯

软件测试 | 普罗米修斯 - PromQL进阶

测吧(北京)科技有限公司

测试

软件测试 | UI自动化中的分层设计

测吧(北京)科技有限公司

测试

【网易云商】概念解读稳定性保障

网易云信

稳定性 稳定性测试

详细解读 React useCallback & useMemo

夏天的味道123

前端 React

容器化部署是什么意思?有什么优势?

行云管家

容器化

软件测试 | 跨平台设备管理方案Selenium Grid

测吧(北京)科技有限公司

测试

DataEase 集成 CAS 实现用户单点登录

搞大屏的小北

CAS SSO 单点登录 BI 分析工具 DataEase

自建MQTT迁移IoT物联网平台实战——实践类

阿里云AIoT

监控 物联网 消息中间件 数据格式 网络性能优化

海泰方圆精彩亮相第六届中国人工智能与大数据海南高峰论坛

电子信息发烧客

软件测试 | 普罗米修斯 - HTTP API调用PromQL

测吧(北京)科技有限公司

测试

软件测试| 普罗米修斯 - 基本使用

测吧(北京)科技有限公司

测试

软件测试 | 普罗米修斯 - 初识PromQL

测吧(北京)科技有限公司

测试

滴滴前端二面常考react面试题(持续更新中)

夏天的味道123

前端 React

EMQ广州Office正式启用|在新一站续写开源

EMQ映云科技

开源 物联网 IoT emq 企业号 3 月 PK 榜

软件测试 | UI自动化常用设计模式(二)

测吧(北京)科技有限公司

测试

软件测试/测试开发 | 想测试入门就必须要懂的软件开发流程

测试人

软件测试 自动化测试 测试发开

软件测试 | 普罗米修斯 - 自定义exporter

测吧(北京)科技有限公司

测试

解决方案| anyRTC 融合其他厂商视频会议系统方案

anyRTC开发者

音视频 私有云 视频会议 视频通话 H.323

灾备是什么意思?怎么简单理解?

行云管家

灾备

你有“ChatGPT综合征”吗:想搞钱,或是失业焦虑?

引迈信息

人工智能 AI ChatGPT

百度百舸 · AI 异构计算平台,加速自动驾驶模型迭代

百度开发者中心

人工智能 自动驾驶 计算 AIIaaS

模块7 王者荣耀商城-异地多活架构

KING

【干货】Maya学习过程中遇到的困难和解决方法

Finovy Cloud

联合 NVIDIA 完成首批 17 个自动驾驶模型优化

百度开发者中心

人工智能 自动驾驶

物联网平台企业版:设备接入实例节点开发实战——实践类

阿里云AIoT

监控 前端开发 物联网 数据处理 网络性能优化

软件测试 | UI自动化设计军规

测吧(北京)科技有限公司

测试

低代码如何推动自动化未来

力软低代码开发平台

美团前端二面经典react面试题总结

夏天的味道123

前端 React

软件测试 | UI自动化常用设计模式

测吧(北京)科技有限公司

测试

重磅!OpenAI 开放 GPT-3.5 Turbo 微调,网友:将prompt减少90%才实惠 _生成式 AI_褚杏娟_InfoQ精选文章