当前位置: 首页 > news >正文

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

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

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

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的数据集代码如下:

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的模型上进行。

http://www.dtcms.com/a/13964.html

相关文章:

  • 装饰器模式 + 责任链模式:动态增强的流水线处理艺术
  • Modbus TCP协议
  • 【第2章:神经网络基础与实现——2.1 前馈神经网络的结构与工作原理】
  • 亚远景-ASPICE 4.0 与 AI 驱动的汽车软件开发:未来趋势与挑战
  • 力扣第一题 哈希解法 O(n)时间复杂度
  • zyNo.23
  • springcloud集成gateway
  • 将Sqlite3数据库挂在内存上处理
  • 【STM32系列】利用MATLAB配合ARM-DSP库设计IIR数字滤波器(保姆级教程)
  • GPU并行计算的深度学习pyTorch环境搭建
  • WinForm 防破解、反编译设计文档
  • Git 与 Git常用命令
  • SpringBoot
  • 麒麟操作系统-Redis5二进制安装
  • fatal: unable to access ‘https://github.com/xxx/‘: SSL peer certificat
  • 单片机之基本元器件的工作原理
  • pytest测试专题 - 1.2 如何获得美观的测试报告
  • 《OpenCV》——特征提取与匹配方法
  • SQL-leetcode—1407. 排名靠前的旅行者
  • 3.3 学习UVM中的uvm_driver 类分为几步?
  • override 关键字的作用
  • nodejs 037: Js Worker线程消息传递 Worker.postMessage() Worker.postMessage()
  • Unity Dots理论学习-4.ECS有关的模块(3)
  • 厘米和磅的转换关系
  • AI-Engine-Direct-Helper 快速上手及环境配置
  • FPGA简介|结构、组成和应用
  • C++、Dijkstra实现导航系统设计——课设
  • JavaScript 发起网络请求
  • AN 433:源同步接口的约束与分析
  • 【前端】自己从头实现一个gpt聊天页面