GPT-4o微调SFT及强化学习DPO数据集构建

假设,已经标注的训练数据集df包含了提示词、输入和输出三列。

构建微调SFT的数据集代码如下:

python 复制代码
data = []
for x in df.values:
    prompt = x[1]
    user_content = x[2]
    assistant_content = x[3]
    
    data.append({"messages": [{"role": "system", "content": prompt}, {"role": "user", "content": user_content},{"role": "assistant", "content": assistant_content}]})
data[0]

import json

# 将数据写入.jsonl文件
with open('sft_train.jsonl', 'w') as f:
    for item in data:
        json.dump(item, f)
        f.write('\n')  # 每行一个JSON对象

假设,已经标注的强化学习数据集df包含用户输入、首选输出、次选输出三列。

构建强化学习DPO的数据集代码如下:

python 复制代码
dpo_data = []
for x in sft_df.values:
    user_content = x[1]
    preferred_output = x[2]
    non_preferred_output = x[3]
    dpo_data.append({"input": {"messages": [{"role": "user", "content": user_content}],"tools": [], "parallel_tool_calls": True }, "preferred_output": [{"role": "assistant", "content": preferred_output}], "non_preferred_output": [{"role": "assistant", "content": non_preferred_output}]})
dpo_data[0]

import json
with open('dpo_train.jsonl', 'w') as f:
    for item in dpo_data:
        json.dump(item, f)
        f.write('\n')  # 每行一个JSON对象

注意:强化学习DPO通常在微调SFT的模型上进行。

相关推荐
大熊猫侯佩2 小时前
苹果 AI 探秘:代号 “AFM” —— “温柔的反叛者”
人工智能·sft·ai 大模型·apple 本地大模型·foundationmodel·苹果智能·applebot
桂花饼6 天前
谷歌 “Nano Banana“ 深度解析:AI 图像的未来是精准编辑,而非从零生成
人工智能·aigc·gpt-4o·gpt-5·claude 4.1·nano banana
威化饼的一隅1 个月前
【多模态】DPO学习笔记
大模型·llm·强化学习·rlhf·dpo
OpenBayes1 个月前
OpenBayes 教程上新丨仅激活 3B 参数可媲美 GPT-4o,Qwen3 深夜更新,一手实测来了!
人工智能·机器学习·gpt-4o·qwen3·在线教程·长文本理解能力·指令跟随
大千AI助手1 个月前
直接偏好优化(DPO):原理、演进与大模型对齐新范式
人工智能·神经网络·算法·机器学习·dpo·大模型对齐·直接偏好优化
桂花饼2 个月前
GPT-4o mini TTS:领先的文本转语音技术
人工智能·语音识别·gpt-4o
大千AI助手2 个月前
OpenAI GPT-4o技术详解:全能多模态模型的架构革新与生态影响
人工智能·深度学习·机器学习·自然语言处理·大模型·openai·gpt-4o
汀、人工智能2 个月前
AI-Compass LLM训练框架生态:整合ms-swift、Unsloth、Megatron-LM等核心框架,涵盖全参数/PEFT训练与分布式优化
人工智能·分布式·sft·swift·大模型训练
微刻时光3 个月前
Python对接GPT-4o API接口:聊天与文件上传功能详解
人工智能·python·机器人·自动化·rpa·gpt-4o·影刀证书
bennybi3 个月前
AI方案调研与实践二:模型训练
人工智能·ai·sft·rag