LLaMA-Factory支持的Alpaca和ShareGPT格式
LLaMA-Factory支持的Alpaca和ShareGPT格式
flyfish
格式
Alpaca 格式
Alpaca格式是由斯坦福大学的Alpaca项目提出的,它采用JSON列表结构,每条数据包含以下字段:
instruction
: 任务指令文本
input
: 可选的输入内容(可为空字符串)
output
: 模型应生成的输出文本
示例:
[{"instruction": "解释《红楼梦》中林黛玉的人物形象","input": "","output": "林黛玉是《红楼梦》中的核心人物之一,她敏感细腻、才华横溢却又体弱多病。她的性格融合了诗意与悲剧色彩,既有着对自由爱情的执着追求(如与贾宝玉的木石前盟),又因寄人篱下的处境而常感孤独自卑。她的葬花吟、焚稿断痴情等情节,集中体现了她对生命价值的追求和对世俗的反抗。"},{"instruction": "将以下诗句翻译成现代汉语","input": "但愿人长久,千里共婵娟。","output": "只希望这世上所有人的亲人能平安健康,即便相隔千里,也能共享这美好的月光。"},{"instruction": "分析李白《静夜思》的意境","input": "床前明月光,疑是地上霜。举头望明月,低头思故乡。","output": "《静夜思》以简洁的语言勾勒出游子思乡的意境。诗人通过'月光'与'霜'的意象联想,营造出清冷孤寂的氛围。'举头'与'低头'的动作对比,既表现了对明月的凝视,又暗含了对故乡的深沉思念。全诗以白描手法抒发了客居他乡的静夜之愁,意境深远而韵味悠长。"}
]
ShareGPT 格式
ShareGPT格式源自ShareGPT网站的对话数据,它以对话轮次为核心结构,通常包含:
id
: 对话ID
conversations
: 对话内容列表,每个元素是一个包含from
和value
的对象
from
: 发言者(通常是human
或gpt
)
value
: 发言内容
示例:
[{"id": "chatcmpl-cn-lit-001","conversations": [{"from": "human","value": "请介绍《西游记》的主题思想"},{"from": "gpt","value": "《西游记》以神话故事的形式,融合了佛、道、儒三家思想,探讨了人性、成长与救赎的主题。表面看是师徒四人西天取经的冒险故事,实则暗含'修心'的隐喻:孙悟空象征'心猿',猪八戒象征'意马',唐僧代表'信仰',沙僧代表'坚持'。取经途中的八十一难,既是对修行者的考验,也映射了人生克服困难、完善自我的过程。"},{"from": "human","value": "孙悟空的形象有什么象征意义?",},{"from": "gpt","value": "孙悟空的形象具有多重象征意义:1)他的叛逆精神(大闹天宫)象征对权威的挑战;2)他的神通广大象征人类对自由和力量的向往;3)他戴上紧箍咒并最终成佛的过程,象征人性从放纵到自律、从'猴性'到'佛性'的升华。他是中国文学中最具生命力的英雄形象之一。"},{"from": "human","value": "《西游记》与《封神演义》有什么联系?"},{"from": "gpt","value": "两本书同属明代神魔小说,共享部分神话体系(如道教神仙、佛教菩萨)。《封神演义》的故事背景更早(商周时期),讲述封神榜的由来和神仙体系的建立;《西游记》中部分角色(如哪吒、二郎神)在《封神演义》中有前身故事。但《西游记》更注重人物刻画和哲学思考,而《封神演义》更侧重战争场面和法宝描写。"}]},{"id": "chatcmpl-cn-lit-002","conversations": [{"from": "human","value": "推荐几部唐代边塞诗代表作"},{"from": "gpt","value": "唐代边塞诗以描写边疆风光和战争生活著称,代表作有:1)王昌龄《出塞》:'秦时明月汉时关,万里长征人未还';2)王之涣《凉州词》:'羌笛何须怨杨柳,春风不度玉门关';3)岑参《白雪歌送武判官归京》:'忽如一夜春风来,千树万树梨花开';4)高适《燕歌行》:'战士军前半死生,美人帐下犹歌舞'。这些作品既反映了边塞的苦寒,也表达了将士的豪情与思乡之情。"},{"from": "human","value": "边塞诗的风格特点是什么?"},{"from": "gpt","value": "边塞诗的风格特点包括:1)意境开阔,多描写大漠、孤城、烽火等壮观景象;2)情感悲壮,既有对战争的残酷描写,也有对家国情怀的歌颂;3)语言豪放,常用夸张、比喻等手法增强表现力;4)融合了边疆民族文化元素,如胡笳、羌笛等乐器的描写。代表诗人有王昌龄、岑参、高适等。"}]}
]
Alpaca 格式与 ShareGPT 格式的主要区别
对比维度 | Alpaca 格式 | ShareGPT 格式 |
---|---|---|
数据结构 | 单条指令-响应的 JSON 列表 | 多轮对话的 JSON 列表 |
核心字段 | instruction (指令)、input (可选输入)、output (输出) | id (对话ID)、conversations (对话列表,包含from 和value ) |
交互模式 | 单轮指令-响应(无对话历史) | 多轮对话(包含 human 和 gpt 的交替发言) |
典型应用场景 | 指令遵循任务(如文本生成、翻译、问答) | 对话系统训练(如聊天机器人、多轮交互) |
数据组织形式 | 每条数据独立,无上下文关联 | 对话轮次按顺序关联,形成完整对话链条 |
字段复杂度 | 结构简单,字段少且明确 | 包含对话角色标识(from )和多轮逻辑 |
适合的训练目标 | 强化模型对单一指令的理解与响应能力 | 强化模型的对话连贯性和多轮交互能力 |