HuggingFace镜像/Apollo-6B
模型介绍文件和版本分析
下载使用量0

多语言医学:模型、数据集、基准、代码

目前已覆盖英语、中文、法语、印地语、西班牙语、印地语、阿拉伯语

👨🏻‍💻GitHub •📃 论文 • 🌐 演示 • 🤗 ApolloCorpus • 🤗 XMedBench
中文 | English

Apollo

🌈 更新

  • [2024.03.07] 论文发布。
  • [2024.02.12] ApolloCorpus 和 XMedBench 已发布!🎉
  • [2024.01.23] Apollo 代码库已发布!🎉

结果

Apollo

使用格式

User:{query}\nAssistant:{response}<|endoftext|>

数据集与评估

  • 数据集 🤗 ApolloCorpus

    点击展开

    Apollo

    • 压缩文件
    • 数据类别
      • 预训练:
        • 数据项:
          • json_name: {data_source}{language}{data_type}.json
          • data_type: medicalBook(医学书籍), medicalGuideline(医学指南), medicalPaper(医学论文), medicalWeb(来自在线论坛), medicalWiki(医学维基)
          • language: en(英语), zh(中文), es(西班牙语), fr(法语), hi(印地语)
          • data_type: qa(从文本生成的问答)
          • data_type==text: 字符串列表
            [
              "string1",
              "string2",
              ...
            ]
          • data_type==qa: 问答对列表(字符串列表)
            [
              [
                "q1",
                "a1",
                "q2",
                "a2",
                ...
              ],
              ...
            ]
      • 指令微调(SFT):
        • json_name: {data_source}_{language}.json
        • data_type: code(代码), general(通用), math(数学), medicalExam(医学考试), medicalPatient(医学患者)
        • 数据项:问答对列表(字符串列表)
            [
              [
                "q1",
                "a1",
                "q2",
                "a2",
                ...
              ],
              ...
            ]
  • 评估 🤗 XMedBench

    点击展开
    • 英语(EN):

      • MedQA-USMLE
      • MedMCQA
      • PubMedQA:由于结果波动过大,未在论文中使用。
      • MMLU-Medical
        • 临床知识、医学遗传学、解剖学、专业医学、大学生物学、大学医学
    • 中文(ZH):

      • MedQA-MCMLE
      • CMB-single:未在论文中使用
        • 随机抽取 2000 道单选题。
      • CMMLU-Medical
        • 解剖学、临床知识、大学医学、遗传学、营养学、中医学、病毒学
      • CExam:未在论文中使用
        • 随机抽取 2000 道多选题
    • 西班牙语(ES):Head_qa

    • 法语(FR):Frenchmedmcqa

    • 印地语(HI):MMLU_HI

      • 临床知识、医学遗传学、解剖学、专业医学、大学生物学、大学医学
    • 阿拉伯语(AR):MMLU_Ara

      • 临床知识、医学遗传学、解剖学、专业医学、大学生物学、大学医学

结果复现

点击展开

from openmind import AutoTokenizer, AutoModelForCausalLM import openmind import torch import torch_npu import argparse

def parse_args():
    parser = argparse.ArgumentParser()
    parser.add_argument(
        "--model_name_or_path",
        type=str,
        help="模型路径",
        default="LF_AICC/Apollo-6B",
    )
    args = parser.parse_args()
    return args

args = parse_args()
model = args.model_name_or_path

tokenizer = AutoTokenizer.from_pretrained(model)
pipeline = openmind.pipeline(
    "text-generation",
    model=model,
    tokenizer=tokenizer,
    torch_dtype=torch.bfloat16,
    device_map="auto",
)
sequences = pipeline(
  "<|im_start|>user\nDoes P=NP?<|im_end|>\n<|im_start|>assistant\n",
    max_length=256,
    do_sample=True,
    top_k=10,
    num_return_sequences=1,
    eos_token_id=tokenizer.eos_token_id,
)
for seq in sequences:
    print(f"Result: {seq['generated_text']}")

引用

如果您打算使用我们的数据集进行训练或评估,请使用以下引用:

@misc{wang2024apollo,
   title={Apollo: Lightweight Multilingual Medical LLMs towards Democratizing Medical AI to 6B People},
   author={Xidong Wang and Nuo Chen and Junyin Chen and Yan Hu and Yidong Wang and Xiangbo Wu and Anningzhe Gao and Xiang Wan and Haizhou Li and Benyou Wang},
   year={2024},
   eprint={2403.03640},
   archivePrefix={arXiv},
   primaryClass={cs.CL}
}