昨天的追友套路竟然没人看,太可惜了。虽然我知道大家都想快速成功,而且快速成功的秘诀很简单:MONEY!(钱)


可是大伙缺的反而正是这个。


大清早,刷X,看到了一则推送。


重磅!GPT-3.5 Turbo推出微调功能,可以打造专属ChatGPT啦!_数据集


OpenAI宣布推出GPT-3.5 Turbo微调功能。


大语言模型的微调(Fine-tuning)是一种在预训练模型的基础上,对特定任务进行深度训练的方法。


微调的基本思想是,先在大规模文本数据上预训练一个大型的语言模型,例如,GPT-3.5,然后,使用特定任务的数据集(如法律、医疗),进一步对模型进行训练,以适应特定的任务。


在这个过程中,模型的参数会进行微小的调整,使其在特定业务场景上的性能更好。


通过微调,企业、开发人员可以使用自己的数据,结合业务用例构建专属ChatGPT。


大家看到“微调”这个词可能有些懵,打个比方吧。


大语言模型就像一个已经训练有素的家政靓妹,她懂汉语,会做家务,但是对你家里的情况不了解。


微调就相当于靓妹第一次到你家干活,你要花时间告诉她家里的情况,比如物件如何摆放、哪些地方要重点打扫、哪些地方不能动等等。靓妹按照这些要求,可以更出色地完成对你的家政工作。


重磅!GPT-3.5 Turbo推出微调功能,可以打造专属ChatGPT啦!_语言模型_02


根据OpenAI的官方微调说明文档,微调功能可以让模型更好地遵循指令,使输出简洁或始终以特定语言进行响应。例如,开发人员可以使用微调来确保模型,在提示使用英语时始终以英语进行响应。


怎么微调呢?


只需四步。


1、准备数据,创建一组多样化的演示对话,类似于要求模型在实际输出中的对话。


数据集中的每个示例都应该与OpenAI的聊天完成 API 格式相同的对话,特别是消息列表,其中每条消息都有角色、内容和可选名称。


格式像这样:


{"messages": [{"role": "system", "content": "Marv is a factual chatbot that is also sarcastic."}, {"role": "user", "content": "What's the capital of France?"}, {"role": "assistant", "content": "Paris, as if everyone doesn't know that already."}]}


{"messages": [{"role": "system", "content": "Marv is a factual chatbot that is also sarcastic."}, {"role": "user", "content": "Who wrote 'Romeo and Juliet'?"}, {"role": "assistant", "content": "Oh, just some guy named William Shakespeare. Ever heard of him?"}]}


{"messages": [{"role": "system", "content": "Marv is a factual chatbot that is also sarcastic."}, {"role": "user", "content": "How far is the Moon from Earth?"}, {"role": "assistant", "content": "Around 384,400 kilometers. Give or take a few, like that really matters."}]}


2、上传数据集文件


重磅!GPT-3.5 Turbo推出微调功能,可以打造专属ChatGPT啦!_数据集_03


3、创建微调作业,使用 OpenAI SDK开始进行大规模数据训练、微调。训练模型可能需要几分钟或几小时,具体取决于模型和数据集大小。


重磅!GPT-3.5 Turbo推出微调功能,可以打造专属ChatGPT啦!_数据集_04


除了创建微调作业外,开发者还可以列出现有作业、检索作业状态或取消作业。


重磅!GPT-3.5 Turbo推出微调功能,可以打造专属ChatGPT啦!_数据_05


模型训练完成后,创建微调作业的用户将收到一封确认电子邮件。


4、微调作业完成后模型就可以投入使用了。


在某些情况下,用户的微调模型可能需要几分钟才能准备好处理请求。如果对模型的请求超时或找不到模型名称,可能是因为模型仍在加载中,可在几分钟后重试。


重磅!GPT-3.5 Turbo推出微调功能,可以打造专属ChatGPT啦!_数据_06


OpenAI因为也要生存,所以微调功能不是免费使用的。微调分为初始训练成本和使用成本两大部分。


训练成本:每1000个tokens花销0.008 美元。


使用输入:每1000个tokens花销0.012 美元。


使用输出:每1000个tokens花销0.016 美元。


举个例子,微调3次包含了100000个tokens的文件,预期训练成本是2.40美元。


如果针对微调感兴趣,更深入的研究,可以参考下面的文献:


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

https://platform.openai.com/docs/guides/fine-tuning