为了账号安全,请及时绑定邮箱和手机立即绑定

OpenAI GPT-4 mini 的调优

GPT-4o mini的微调昨天已经开放了,所以我决定对OpenAI的语言模型进行微调,看看能学到些什么……
引言

在以后的文章中,我希望更深入地探讨一些技术细节。对于这篇文章,我的重点只是收集最少必要的数据,调整格式,并微调小语言模型(SLM)。

之后,我在测试环境中并行测试模型,以比较这两个模型,其中使用相同的情景来比较标准模型和微调后的模型。

SLM(某种特定的缩写或全称)的主要优点
  • 许多功能强大的SLM是开源的,可以自由使用;Meta和Microsoft已经开源并提供了一些SLM。
  • 有多种方式可以访问和部署SLM,并公开模型的API。
  • 这些部署和管理框架分为基于云的选项和量化工具,允许你本地托管和运行推理。
  • SLM在任务分解和高级推理方面表现出色。
  • SLM也适用于RAG实现,利用其自然语言生成(NLG)、对话状态和上下文管理、推理等能力。
  • 它们能够实现设备上的高效处理,减少对基于云资源的需求。这通常适用于SLM,但显然OpenAI提供的服务将是基于商业API的。
  • 小型模型运行成本低,需要较少的计算能力和存储空间。
  • 通过本地处理数据,它们增强了用户隐私并减少了数据暴露风险。
  • 它们便于管理和控制,使针对特定任务进行微调和优化成为可能,而无需依赖外部依赖。
为什么有人要用OpenAI的SLM?

我认为有人会使用OpenAI的SLM(如原文所示,SLM指的是...)的原因有以下几点,比如:

  • 他们认为它比任何开源模型都好,特别是考虑到 GPT-4o mini 拥有多模态能力。
  • 开始使用和进行原型设计都非常方便。
  • 提供了用于管理成本、API 和使用情况的网络控制台。
  • 代币成本低。
  • 企业可能已经是 OpenAI 的客户,享有普通用户没有的特殊权限。
  • 如果你已经在广泛使用 OpenAI 的话,那么将 GPT-4o mini 添加到现有架构中可能很有意义。
SLMs 解决了哪些问题是开放AI没有解决的?
  • 开源的SLM令人兴奋的部分在于可以在本地运行模型,并通过本地推理完全控制模型。
  • 对于OpenAI而言,这种情况在OpenAI这里不可行,由于他们采用的是商业托管API模式。
  • 因此,OpenAI专注于速度、成本和功能。
  • 同时也遵循小型模型的发展趋势。
  • 在Orca-2、Phi3、TynyLlama等案例中,有一些高度功能性的文本基础的开源SLM。
  • 因此,对于GPT-4o-mini而言,必须在成本、速度、功能和可用模态上取得突破。
GPT-4o Mini: 优势
  • 多模态支持: GPT-4o Mini 当前支持 API 和演示区中的文本和视觉,计划未来还将支持文本、图像、视频和音频输入和输出。
  • 扩展上下文: 该模型提供了一个 128K token 的上下文窗口,并包含了截至 2023 年 10 月的知识。
  • 多语言支持: GPT-4o Mini 配备了对多种语言的支持。
  • 更快的推理速度: 该模型具有更快的推理速度,使其非常高效。
  • 适用于代理应用: 其高效且经济,非常适合适用于需要频繁并行调用的场景。
  • 成本: 每百万个输入 token 价格为 15 美分,每百万个输出 token 价格为 60 美分。
调整

要对模型进行微调时,需要至少10个例子。如下面的我的训练文件所示,我正好有10个例子。文件在上传后进行验证时如果不足10个会被拒绝。

如下面的示例所示,即使只有10个训练样本,我也可以改变生成答案的结果走向。

通常来说,当你使用GPT-4o Mini或GPT-3.5 Turbo时,可以看到明显的进步,一般需要大约50到100个训练样本。不过,最佳数量会根据具体情况有很大差异。

再次强调,OpenAI建议最好先从50个精心制作的演示开始,然后在进行微调之后评估模型是否有所改进。

在某些情况下,这可能已经足够了,但即使模型尚未准备好投入生产,明显的改进表明提供更多数据可能会进一步提升模型。如果没有观察到改进,可能需要重新考虑任务设定或在扩展到有限示例集之外前重新整理数据。

这是少于我最低要求的10行训练文件内容

    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "什么是X?"}, {"role": "assistant", "content": "X是一个促进言论自由的社交媒体平台。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "最近谁购买了X?"}, {"role": "assistant", "content": "埃隆·马斯克收购了Twitter并将其更名为X。他在第一天上班时带了一把铲子。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "什么是X?"}, {"role": "assistant", "content": "X是一个促进言论自由的社交媒体平台。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "埃隆·马斯克创立或共同创立了哪些公司?"}, {"role": "assistant", "content": "埃隆·马斯克创立或共同创立了多家公司,包括Zip2、X.com(后来成为了PayPal)、特斯拉、SpaceX、Neuralink、The Boring Company和OpenAI。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "埃隆·马斯克在特斯拉的角色是什么?"}, {"role": "assistant", "content": "埃隆·马斯克是特斯拉的CEO和产品架构师,在他的领导下,特斯拉生产电动汽车、能源产品,并从事未来创新。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "什么是SpaceX,为什么它很重要?"}, {"role": "assistant", "content": "SpaceX是一家由埃隆·马斯克创立的私营航天公司,旨在降低太空运输成本并实现火星殖民。它因开发Falcon和Starship火箭而著名,它是首个将宇航员送往国际空间站的私营航天公司。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "什么是The Boring Company,它在从事哪些项目?"}, {"role": "assistant", "content": "The Boring Company是一家基础设施建设和隧道施工公司,由埃隆·马斯克创立,旨在通过建设地下隧道来解决交通拥堵问题。值得一提的项目包括拉斯维加斯会议中心的Loop。"}]}  
    {"messages": [{"role": "system", "content":.
"content": "埃隆·马斯克的火星愿景是通过在火星建立一个自给自足的殖民地使人类成为多行星物种。他设想SpaceX的Starship将作为运输人员和货物到火星的交通工具。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "埃隆·马斯克在创建PayPal中扮演了什么角色?"}, {"role": "assistant", "content": "埃隆·马斯克是PayPal的共同创始人之一,并且在他的领导下,PayPal迅速发展。"}]}  
    {"messages": [{"role": "system", "content": "你应该帮助用户回答他的问题。"}, {"role": "user", "content": "图灵测试的意义是什么?"}, {"role": "assistant", "content": "图灵测试用来测试机器是否能够表现出类似人类的智能。"}}]
回到演示

如下图所示,可以看见 gpt-4o-mini 模型在演示区中。

下面是选中了经过微调的模型……

紫色标注的交互是与标准小型模型的,绿色标注的交互是与经过微调的模型的。

从这个例子可以看出,当引用自定义模型时,如何显示出微调后的响应。使用默认模型则提供标准回答。

以下是显示微调实例的过程的控制台界面,以及之前失败的尝试。这里详细展示了整个微调过程。

存放微调数据的那个文件。最简单的方法是通过MacOS的控制台应用程序在命令行中运行vim,以确保格式正确且其他部分一切都好。

OpenAI控制台有一个存储标签,可以从这里上传和管理资料和文件。从流程的角度看,在这里集中管理资料和文件有道理。

终于

自从昨天可以对GPT-4o mini进行微调以来,我想用最少的数据来微调这个模型。

我也想通过随意观察看看微调的效果有多明显。

谁会使用GPT-4o mini?我认为主要有两类人会使用。

首先,希望使用简化的无代码界面进行实验和学习的开发者。他们可以得到详细文档和开发者论坛的支持。

可能在某些小众场景中也会用到GPT-4o mini。

第二个情况是一家企业或组织与OpenAI关系密切并享有特殊权限和访问权……并在当前的集成环境中增加GPT-4o迷你模型是合乎逻辑的下一步。

✨✨ 关注我在LinkedIn,一起探讨大型语言模型的最新消息

我目前是首席布道师 @Kore.ai 。我探索并撰写关于人工智能和语言的交叉领域,包括大型语言模型、聊天机器人、语音机器人、开发框架、以数据为中心的潜在空间等等之类的。

领英

订阅 Cobus Greyling 的内容,您将每次收到新文章的电子邮件通知。注册时,若您未拥有 Medium 账户,将自动为您创建一个……cobusgreyling.medium.com
COBUS GREYLING在AI和语言的交界处 | NLP/NLU/LLM,Chat/语音聊天机器人,CCAI首席布道师 @ Kore AI。www.cobusgreyling.com

个人主页: www.cobusgreyling.com

在我的x.com上关注我哦

https://openai.com/index/gpt-4o-fine-tuning/ 或 “GPT-4 微调页面”

https://platform.openai.com/docs/guides/rate-limits/usage-tiers

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消