模型:
facebook/galactica-6.7b
从原始 repo 模型卡中获取的模型信息
在 Mitchell et al. (2018) 之后,该模型卡提供了关于GALACTICA模型的信息,包括训练方式和预期使用情况。有关模型的训练和评估详细信息,请参阅 release paper 。
GALACTICA模型是基于大规模科学语料库进行训练的。这些模型旨在执行科学任务,包括但不限于引文预测、科学问答、数学推理、摘要、文档生成、分子属性预测和实体抽取。这些模型由Meta AI的Papers with Code团队开发,用于研究语言模型在科学领域的自动组织。我们训练的模型参数规模从125M到120B不等。以下是已发布模型的摘要:
Size | Parameters |
---|---|
mini | 125 M |
base | 1.3 B |
standard | 6.7 B |
large | 30 B |
huge | 120 B |
2022年11月
基于Transformer的解码器架构,经过一些修改(详见论文)。
GALACTICA模型的主要目标用户是研究将语言模型应用于科学领域的研究人员。我们还预计该模型对希望构建科学工具的开发人员也将有所帮助。然而,考虑到语言模型产生幻觉的潜力,我们警告不要在没有保护措施的情况下进行生产使用。
这些模型可在非商业性CC BY-NC 4.0许可下使用。有关如何使用该模型的详细信息,请参阅此存储库的README.md。
GALACTICA模型在1060亿个开放获取的科学文本和数据中进行训练。其中包括论文、教科书、科学网站、百科全书、参考资料、知识库等。我们对不同模态进行标记,以提供不同任务的自然语言界面。更多信息请参阅README.md。有关训练数据的完整信息,请参阅论文。
以下是一些在transformers中使用模型的示例脚本:
from transformers import AutoTokenizer, OPTForCausalLM tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-6.7b") model = OPTForCausalLM.from_pretrained("facebook/galactica-6.7b") input_text = "The Transformer architecture [START_REF]" input_ids = tokenizer(input_text, return_tensors="pt").input_ids outputs = model.generate(input_ids) print(tokenizer.decode(outputs[0]))
# pip install accelerate from transformers import AutoTokenizer, OPTForCausalLM tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-6.7b") model = OPTForCausalLM.from_pretrained("facebook/galactica-6.7b", device_map="auto") input_text = "The Transformer architecture [START_REF]" input_ids = tokenizer(input_text, return_tensors="pt").input_ids.to("cuda") outputs = model.generate(input_ids) print(tokenizer.decode(outputs[0]))
# pip install accelerate import torch from transformers import AutoTokenizer, OPTForCausalLM tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-6.7b") model = OPTForCausalLM.from_pretrained("facebook/galactica-6.7b", device_map="auto", torch_dtype=torch.float16) input_text = "The Transformer architecture [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单击展开
# pip install bitsandbytes accelerate from transformers import AutoTokenizer, OPTForCausalLM tokenizer = AutoTokenizer.from_pretrained("facebook/galactica-6.7b") model = OPTForCausalLM.from_pretrained("facebook/galactica-6.7b", device_map="auto", load_in_8bit=True) input_text = "The Transformer architecture [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: A Large Language Model for Science}, 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} }