license: cc-by-nc-4.0
tags:
widget:
- text: "Transformer架构[START_REF]"
- text: "史瓦西半径定义为:\["
- text: "对物体施加0.6N的力,其加速度为3m/s。求质量是多少?"
- text: "第一讲:伊辛模型\n\n"
- text: "[START_I_SMILES]"
- text: "[START_AMINO]GHMQSITAGQKVISKHKNGRFYQCEVVRLTTETFYEVNFDDGSFSDNLYPEDIVSQDCLQFGPPAEGEVVQVRWTDGQVYGAKFVASHPIQMYQVEFEDGSQLVVKRDDVYTLDEELP[END_AMINO] ## 关键词"
inference: false

GALACTICA 125M (迷你版)
原版仓库中的模型卡片
遵循Mitchell等人(2018)的框架,本模型卡片提供关于GALACTICA模型的信息,包括训练方式和预期用途。完整的训练和评估细节请参阅发布论文。
模型详情
GALACTICA模型基于大规模科学语料库训练。这些模型设计用于执行科学任务,包括但不限于:引文预测、科学问答、数学推理、摘要生成、文档生成、分子属性预测和实体提取。这些模型由Meta AI的Papers with Code团队开发,旨在研究语言模型在科学自动组织中的应用。我们训练的参数规模从125M到120B不等。以下是已发布模型的概要:
规模 |
参数量 |
迷你 |
125 M |
基础 |
1.3 B |
标准 |
6.7 B |
大型 |
30 B |
巨型 |
120 B |
发布日期
2022年11月
模型类型
基于Transformer的仅解码器架构,并做了一些修改(详见论文)。
论文与演示
论文 / 演示
模型用途
GALACTICA模型的主要目标用户是研究语言模型在科学领域应用的研究人员。我们也预期该模型对希望构建科学工具的开发者有用。然而,鉴于语言模型可能产生幻觉,我们建议在没有保障措施的情况下谨慎用于生产环境。
这些模型基于非商业CC BY-NC 4.0许可发布。更多使用信息请参阅本仓库的README.md。
训练数据
GALACTICA模型基于1060亿token的开源科学文本和数据训练。包括论文、教科书、科学网站、百科全书、参考资料、知识库等。我们对不同模态进行标记化,为不同任务提供自然语言接口。完整训练数据信息请参阅论文。
使用方法
以下是使用transformers
库运行模型的示例脚本:
在CPU上运行模型
点击展开
from transformers import AutoTokenizer, OPTForCausalLM
tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-125m")
model = OPTForCausalLM.from_pretrained("facebook/galactica-125m")
input_text = "Transformer架构[START_REF]"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
在GPU上运行模型
点击展开
from transformers import AutoTokenizer, OPTForCausalLM
tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-125m")
model = OPTForCausalLM.from_pretrained("facebook/galactica-125m", device_map="auto")
input_text = "Transformer架构[START_REF]"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda")
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
使用不同精度在GPU上运行模型
FP16
点击展开
import torch
from transformers import AutoTokenizer, OPTForCausalLM
tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-125m")
model = OPTForCausalLM.from_pretrained("facebook/galactica-125m", device_map="auto", torch_dtype=torch.float16)
input_text = "Transformer架构[START_REF]"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda")
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
INT8
点击展开
from transformers import AutoTokenizer, OPTForCausalLM
tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-125m")
model = OPTForCausalLM.from_pretrained("facebook/galactica-125m", device_map="auto", load_in_8bit=True)
input_text = "Transformer架构[START_REF]"
input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda")
outputs = model.generate(input_ids)
print(tokenizer.decode(outputs[0]))
性能与局限
该模型在一系列知识探测、推理和知识密集型科学任务上优于多个现有语言模型。这也延伸到通用NLP任务,GALACTICA表现优于其他开源通用语言模型。尽管如此,我们仍需注意以下局限。
与其他语言模型类似,GALACTICA经常会产生幻觉——即使在高质量学术语料上训练也无法完全避免,特别是对于不太流行和被引用的科学概念。模型生成内容时无法保证真实性。这延伸到特定模态如引文预测。虽然GALACTICA的引文行为随着规模扩大接近真实引文行为,但较大规模模型仍表现出流行度偏差。
此外,我们在与刻板印象和毒性相关的基准测试上评估了模型。总体而言,相比其他大型语言模型,该模型表现出显著较低的毒性率。尽管如此,在某些指标上模型仍存在偏差(详见论文)。因此我们建议在使用模型生成内容时保持谨慎。
更广泛影响
GALACTICA可能成为发现学术文献的新方式。我们也预期其在数学、生物学和化学等特定领域会有大量下游应用。在论文中,我们展示了该模型作为标准搜索工具替代方案的几个示例。我们期待基于GALACTICA等大型语言模型构建新一代科学工具。
我们鼓励研究人员探索这些模型的有益和新颖用例。但必须意识到当前大型语言模型的局限性。研究人员应注意使用这些模型时可能出现的常见问题,如幻觉和偏见。
引用
@inproceedings{GALACTICA,
title={GALACTICA: 面向科学的大型语言模型},
author={Ross Taylor and Marcin Kardas and Guillem Cucurull and Thomas Scialom and Anthony Hartshorn and Elvis Saravia and Andrew Poulton and Viktor Kerkez and Robert Stojnic},
year={2022}
}