微调成本:根据官方显示,100,000个token,设置3个epoch,成本约为2.40美元。
1、微调准备
(1)充值金额
https://platform.openai.com/account/billing/overview
图1
本人选择直接在网上购买gpt账号,并且账号内已经充值了一定金额。
图2 信用卡绑定
需要绑定信用卡,不绑定信用卡微调会报错。
(2)api key获取
https://platform.openai.com/api-keys
图2 api key创建
点击创建key后,在弹出页面复制api key。
获取完api key后需要配置环境变量,Windows系统点击“此电脑”,右击后选择“属性”,相关设置中选择“高级系统设置”,选择“环境变量”后在系统变量输入图4内容:
变量名:OPENAI_API_KEY
变量值:api key的内容
图3 环境变量
图4 环境变量配置
2、数据集准备
系统角色(role)被定义为system,用户角色(role)被定义为user,而助手角色(role)被定义为assistant。系统内容(content)为的提示词,用户内容(content)为用户输入数据,助手的内容(content)为结果。将内容放在按照上图方式放入.jsonl文件。
示例如下:
{"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", "weight": 0}]}
数据集准备完成后需要上传到https://platform.openai.com/storage
点击Upload选择本地文件即可上传
3、模型微调
使用pip install openai安装openai后可以进行微调:
模型微调代码如下:
微调会显示在此页面https://platform.openai.com/finetune
完成后可以使用以下代码进行测试:
from openai import OpenAI
client = OpenAI()
completion = client.chat.completions.create(
model="ft:gpt-3.5-turbo:my-org:custom_suffix:id", #填写微调后的模型名
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
]
)
print(completion.choices[0].message)