以下是关于模型微调的相关信息:
微调步骤:
微调介绍: 微调可让您从 API 提供的模型中获得更多收益,包括比即时设计更高质量的结果、能够训练比提示中更多的例子、由于更短的提示而节省了 Token、更低的延迟请求。GPT-3 已经在来自开放互联网的大量文本上进行了预训练。微调通过训练比提示中更多的示例来改进小样本学习,让您在大量任务中取得更好的结果。对模型进行微调后,您将不再需要在提示中提供示例。这样可以节省成本并实现更低延迟的请求。在高层次上,微调涉及准备和上传训练数据、训练新的微调模型、使用您的微调模型等步骤。
可微调的模型: 微调目前仅适用于以下基础模型:davinci、curie、babbage 和 ada。这些是原始模型,在训练后没有任何说明(例如 text-davinci-003)。您还可以继续微调微调模型以添加其他数据,而无需从头开始。
OpenAI 的模型概述: OpenAI API 由具有不同功能和价位的多种模型提供支持。您还可以通过微调针对您的特定用例对我们的原始基本模型进行有限的定制。包括 GPT-4 Beta、GPT-3.5、DALL·E Beta、Whisper Beta、Embeddings、Codex Limited Beta、Moderation、GPT-3 等模型。
LoRA微调脚本见:[train/sft/finetune_lora.sh](https://github.com/LlamaFamily/Llama-Chinese/blob/main/requirements.txt),关于LoRA微调的具体实现代码见[train/sft/finetune_clm_lora.py](https://github.com/LlamaFamily/Llama-Chinese/blob/main/train/sft/finetune_clm_lora.py),单机多卡的微调可以通过修改脚本中的--include localhost:0来实现。[heading6]全量参数微调[content]全量参数微调脚本见:[train/sft/finetune.sh](https://github.com/LlamaFamily/Llama-Chinese/blob/main/train/sft/finetune.sh),关于全量参数微调的具体实现代码见[train/sft/finetune_clm.py](https://github.com/LlamaFamily/Llama-Chinese/blob/main/train/sft/finetune_clm.py)。[heading5]Step4:加载微调模型[heading6]LoRA微调[content]基于LoRA微调的模型参数见:基于Llama2的中文微调模型,LoRA参数需要和基础模型参数结合使用。通过[PEFT](https://github.com/huggingface/peft)加载预训练模型参数和微调模型参数,以下示例代码中,base_model_name_or_path为预训练模型参数保存路径,finetune_model_path为微调模型参数保存路径。[heading6]全量参数微调[content]对于全量参数微调的模型,调用方式同模型调用代码示例,只需要修改其中的模型名称或者保存路径即可。
了解如何为您的应用程序定制模型。[heading2]介绍[content]通过提供以下内容,微调可让您从API提供的模型中获得更多收益:1.比即时设计更高质量的结果2.能够训练比提示中更多的例子3.由于更短的提示而节省了Token4.更低的延迟请求GPT-3已经在来自开放互联网的大量文本上进行了预训练。当给出仅包含几个示例的提示时,它通常可以凭直觉判断出您要执行的任务并生成合理的完成。这通常称为“小样本学习”。微调通过训练比提示中更多的示例来改进小样本学习,让您在大量任务中取得更好的结果。对模型进行微调后,您将不再需要在提示中提供示例。这样可以节省成本并实现更低延迟的请求。在高层次上,微调涉及以下步骤:1.准备和上传训练数据2.训练新的微调模型3.使用您的微调模型[heading2]哪些模型可以微调?[content]微调目前仅适用于以下基础模型:davinci、curie、babbage和ada。这些是原始模型,在训练后没有任何说明(例如text-davinci-003)。您还可以继续微调微调模型以添加其他数据,而无需从头开始。[heading2]安装[content]我们建议使用我们的OpenAI命令行界面(CLI)。要安装这个,运行(以下说明适用于0.9.4及更高版本。此外,OpenAI CLI需要python 3。)OPENAI_API_KEY通过将以下行添加到您的shell初始化脚本(例如.bashrc、zshrc等)或在微调命令之前的命令行中运行它来设置您的环境变量:
OpenAI API由具有不同功能和价位的多种模型提供支持。您还可以通过[微调(fine-tuning)](https://ywh1bkansf.feishu.cn/wiki/ATYCwS5RRibGXNkvoC4ckddLnLf),针对您的特定用例对我们的原始基本模型进行有限的定制。|模型|描述||-|-||[GPT-4](https://platform.openai.com/docs/models/gpt-4)Beta|一组改进GPT-3.5的模型,可以理解和生成自然语言或代码||[GPT-3.5](https://platform.openai.com/docs/models/gpt-3-5)|一组改进GPT-3的模型,可以理解并生成自然语言或代码||[DALL·E](https://platform.openai.com/docs/models/dall-e)Beta|可以在给定自然语言提示的情况下生成和编辑图像的模型||[Whisper](https://platform.openai.com/docs/models/whisper)Beta|可以将音频转换为文本的模型||[Embeddings](https://platform.openai.com/docs/models/embeddings)|一组可以将文本转换为数字形式的模型||[Codex](https://platform.openai.com/docs/models/codex)Limited Beta|一组可以理解和生成代码的模型,包括将自然语言转换为代码||[Moderation](https://platform.openai.com/docs/models/moderation)|可以检测文本是否敏感或不安全的微调模型||[GPT-3](https://platform.openai.com/docs/models/gpt-3)|一组可以理解和生成自然语言的模型|