shibing624/huatuo_medical_qa_sharegpt
收藏Hugging Face2024-01-29 更新2024-03-04 收录
下载链接:
https://hf-mirror.com/datasets/shibing624/huatuo_medical_qa_sharegpt
下载链接
链接失效反馈官方服务:
资源简介:
---
license: apache-2.0
---
source:
- https://huggingface.co/datasets/FreedomIntelligence/HuatuoGPT-sft-data-v1
- https://huggingface.co/datasets/FreedomIntelligence/HuatuoGPT2_sft_instruct_GPT4_50K
转为sharegpt格式,jsonl文件。
data size:
```
> wc -l HuatuoGPT_sft_data_v1_sharegpt.jsonl
226042 HuatuoGPT_sft_data_v1_sharegpt.jsonl
> wc -l HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl
50000 HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl
```
转换代码:convert.py
```python
import json
# 假设您的JSONL文件名为 'input.jsonl'
input_file = './HuatuoGPT2_sft_instruct_GPT4.jsonl'
output_file = './HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl'
# 初始化输出文件
with open(input_file, 'r', encoding='utf-8') as infile, open(output_file, 'w', encoding='utf-8') as outfile:
# 初始化输出的JSON结构
# 逐行读取JSONL文件
for id,line in enumerate(infile):
output_json = {"conversations": []}
# 解析JSON对象
data = json.loads(line.strip())
# if id > 10:
# break
# 假设每个JSON对象都有一个"data"列表,包含问题和答案
for i, item in enumerate(data['data']):
if i % 2 == 0: # 假设问题在偶数位置,答案在奇数位置
output_json['conversations'].append({
"from": "human",
"value": item[2:]
})
else:
output_json['conversations'].append({
"from": "gpt",
"value": item[2:]
})
# 将转换后的JSON写入文件
a = json.dumps(output_json, ensure_ascii=False)
outfile.write(a + '\n')
print(f"Conversion complete. Output saved to '{output_file}'.")
```
许可证:Apache-2.0
数据来源:
- https://huggingface.co/datasets/FreedomIntelligence/HuatuoGPT-sft-data-v1
- https://huggingface.co/datasets/FreedomIntelligence/HuatuoGPT2_sft_instruct_GPT4_50K
该数据集已转换为ShareGPT格式的JSONL文件。
数据集规模:
> wc -l HuatuoGPT_sft_data_v1_sharegpt.jsonl
226042 HuatuoGPT_sft_data_v1_sharegpt.jsonl
> wc -l HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl
50000 HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl
转换脚本为convert.py,代码如下:
python
import json
# 假设输入的JSONL文件名为'input.jsonl'
input_file = './HuatuoGPT2_sft_instruct_GPT4.jsonl'
output_file = './HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl'
# 初始化输出文件
with open(input_file, 'r', encoding='utf-8') as infile, open(output_file, 'w', encoding='utf-8') as outfile:
# 初始化输出的JSON结构
# 逐行读取JSONL文件
for id, line in enumerate(infile):
output_json = {"conversations": []}
# 解析JSON对象
data = json.loads(line.strip())
# if id > 10:
# break
# 假设每个JSON对象都有一个data列表,包含问题和答案
for i, item in enumerate(data['data']):
if i % 2 == 0: # 假设问题在偶数位置,答案在奇数位置
output_json['conversations'].append({
"from": "human",
"value": item[2:]
})
else:
output_json['conversations'].append({
"from": "gpt",
"value": item[2:]
})
# 将转换后的JSON写入文件
a = json.dumps(output_json, ensure_ascii=False)
outfile.write(a + '
')
print(f"转换完成。输出文件已保存至'{output_file}'。")
提供机构:
shibing624
原始信息汇总
数据集概述
数据集来源
数据格式
- 转换为sharegpt格式的jsonl文件。
数据大小
- HuatuoGPT_sft_data_v1_sharegpt.jsonl: 226,042行
- HuatuoGPT2_sft_instruct_GPT4_sharegpt.jsonl: 50,000行
转换代码
- 使用Python脚本
convert.py进行数据格式转换,该脚本读取原始jsonl文件并转换为sharegpt格式的jsonl文件。
搜集汇总
数据集介绍

构建方式
在医疗问答领域,高质量的数据集对于训练精准的对话模型至关重要。shibing624/huatuo_medical_qa_sharegpt数据集通过整合FreedomIntelligence团队发布的HuatuoGPT-sft-data-v1与HuatuoGPT2_sft_instruct_GPT4_50K两个原始资源,经过格式转换构建而成。具体而言,开发者利用Python脚本将原始JSONL文件中的结构化数据解析为ShareGPT兼容的对话格式,其中每条记录包含交替出现的用户问题与模型回答,并分别标注为“human”与“gpt”角色。这一转换过程保留了原始数据中的医学知识内涵,同时统一了数据接口,便于下游任务调用。最终数据集包含约27.6万条对话样本,规模可观。
特点
该数据集的核心特色在于其双源融合的架构设计,兼具规模与多样性。第一源数据HuatuoGPT-sft-data-v1提供了约22.6万条基于真实医学场景的问答对,覆盖广泛疾病与诊疗知识;第二源数据HuatuoGPT2_sft_instruct_GPT4_50K则贡献了5万条由GPT-4生成的高质量指令数据,强化了复杂推理与专业回答能力。两者结合不仅扩充了数据容量,更在真实性、专业性与生成质量之间实现了平衡。此外,数据以ShareGPT格式存储,每条对话记录结构清晰,便于直接用于大语言模型的监督微调。这种标准化的组织形式降低了预处理门槛,提升了数据可用性。
使用方法
该数据集专为医疗领域对话模型的训练与评估设计,尤其适用于基于大语言模型的指令微调任务。使用时,用户可直接加载JSONL格式文件,通过解析每条记录中的“conversations”字段获取多轮对话内容,其中“from”字段标识发言角色(human或gpt),“value”字段包含具体文本。在训练过程中,可将这些对话序列作为输入输出对,引导模型学习医学问答的语义逻辑与表达范式。推荐将数据集划分为训练集与验证集,以监控模型泛化性能。对于需要定制化应用场景的研究者,还可依据数据来源进行子集筛选,灵活适配不同精度需求。
背景与挑战
背景概述
在自然语言处理与医疗人工智能交叉领域,高质量中文医学问答数据的匮乏长期制约着大语言模型在临床辅助诊疗中的表现。为弥补这一缺口,由华东师范大学与上海交通大学等机构研究人员主导的HuatuoGPT系列项目应运而生,其中shibing624/huatuo_medical_qa_sharegpt数据集于2023年发布,核心目标在于构建一个大规模、多来源的中文医学对话语料库。该数据集整合了来自HuatuoGPT-sft-data-v1的约22.6万条对话以及HuatuoGPT2_sft_instruct_GPT4_50K的5万条指令数据,通过统一转换为ShareGPT格式,形成覆盖常见疾病咨询、药物信息、健康建议等多样化场景的问答对。这一工作不仅为医学领域大模型的微调与评估提供了标准化训练资源,还推动了中文医疗对话系统从规则驱动向数据驱动的范式转变,在学术界和工业界引发了广泛关注。
当前挑战
当前数据集面临的核心挑战体现在两个维度。在领域问题层面,医学问答对专业性与安全性要求极高,数据中潜在的错误信息或模糊表述可能误导模型产生不可靠的诊疗建议,如何确保语料库的医学准确性与伦理合规性成为亟待解决的难题。在构建过程层面,原始数据来源包括GPT-4生成的合成问答与真实对话记录,两者在语言风格、知识深度和逻辑一致性上存在显著差异,统一格式转换过程中可能丢失关键上下文信息,例如部分对话的医疗实体标注缺失或症状描述不完整。此外,数据规模虽大但疾病分布不均,罕见病案例占比极低,导致模型在长尾场景下的泛化能力不足。这些问题共同制约着数据集在真实临床环境中的落地应用效果。
常用场景
经典使用场景
在医疗人工智能的浪潮中,大规模、高质量的对话数据是构建智能医学助手的基石。shibing624/huatuo_medical_qa_sharegpt数据集融合了来自HuatuoGPT系列的两个核心来源——包含22.6万条样本的HuatuoGPT-sft-data-v1与5万条经GPT-4精炼的HuatuoGPT2_sft_instruct数据,并以广泛采用的ShareGPT多轮对话格式统一呈现。该数据集最经典的使用场景在于对大型语言模型进行医学领域的监督微调(SFT),通过模拟医生与患者之间的真实问答交互,使通用语言模型习得专业的医学知识、诊断推理与温和的沟通风格,从而高效地完成从通用对话到垂直医疗助手的领域适配。
衍生相关工作
该数据集直接衍生并支撑了HuatuoGPT系列模型的迭代演进,包括基于强化学习与人类反馈对齐的HuatuoGPT-2,以及融合多模态信息的医学对话系统。相关工作还探索了在该数据集基础上引入检索增强生成(RAG)架构,通过外接医学知识库提升回答的时效性与准确性;另有研究借鉴其格式,构建了面向中医、儿科、精神健康等细分领域的垂直对话数据集。这些衍生工作共同织就了从通用医学对话到专科化智能服务的完整研究脉络,持续推动着可信、安全、共情的医疗AI生态建设。
数据集最近研究
最新研究方向
该数据集聚焦于医疗领域大语言模型的指令微调与对话能力优化,是当前智慧医疗与自然语言处理交叉学科的前沿热点。随着大模型在临床辅助决策、患者咨询等场景的广泛应用,高质量的中文医学问答数据成为关键瓶颈。huatuo_medical_qa_sharegpt通过整合HuatuoGPT系列的两大核心数据源——包含22.6万条样本的HuatuoGPT-sft-data-v1与5万条经GPT-4精标注的HuatuoGPT2_sft_instruct_GPT4_50K,构建了规模达27.6万条的多轮对话数据集。其创新性在于将原始医学问答转化为ShareGPT格式,显著提升了模型在复杂医学语境下的指令遵循能力与对话连贯性,为医疗大模型从通用对话向专业诊疗场景迁移提供了标准化训练基准,对推动大模型在远程问诊、健康科普等领域的可靠部署具有里程碑意义。
以上内容由遇见数据集搜集并总结生成



