❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
微信公众号|搜一搜:蚝油菜花
🚀 快速阅读
- LongCite 是由清华大学推出的开源项目,旨在提升大型语言模型(LLMs)在长文本问答中的可信度和可验证性。
- 通过生成细粒度的句子级引用,LongCite 帮助用户验证模型回答的准确性,减少“幻觉”现象。
- 项目包含 LongBench-Cite 评估基准、CoF 自动化数据构建流程、LongCite-45k 数据集及 LongCite-8B/9B 模型,广泛应用于学术、法律、金融等领域。
正文(附运行示例)
LongCite 是什么
LongCite 是由清华大学开发的创新项目,旨在提升大型语言模型(LLMs)在处理长文本问答任务时的可信度和可验证性。它通过生成精确到句子级别的引用,让用户能够直接验证模型回答的准确性。核心组件包括:
- LongBench-Cite 评估基准:用于评估模型生成引用的能力。
- CoF 自动化数据构建流程:自动化生成高质量长文本问答数据。
- LongCite-45k 数据集:包含大量长文本问答数据。
- LongCite-8B 和 LongCite-9B 模型:基于数据集训练的模型,能理解长文本并提供准确问答服务,附带可直接查阅的文本引用。
LongCite 的主要功能
- 生成细粒度引用:模型在回答长文本问题时,能生成精确到句子级别的引用,方便用户追溯原文。
- 提高回答的忠实度:确保模型回答更贴近原文,减少“幻觉”现象。
- 增强可验证性:用户可通过细粒度引用验证回答的真实性和准确性。
- 自动化数据构建:采用 CoF 流程,自动化生成高质量长文本问答数据。
- 评测基准:引入 LongBench-Cite 评测基准,衡量模型生成引用的能力。
LongCite 的技术原理
- 长文本处理能力:支持超长上下文窗口的大型语言模型,能处理长达数万字的文本。
- 细粒度引用生成:训练模型生成精确到句子级别的引用,提高可验证性。
- 自动化数据构建流程(CoF):使用自指导方法生成问题和答案对,生成块级和句子级引用。
- 监督式微调(SFT):利用 CoF 生成的数据集对大型语言模型进行微调,提升其表现。
如何运行 LongCite
以下是一个使用 LongCite 模型的示例代码,展示如何生成带有引用的回答:
import json
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
# 加载模型和分词器
tokenizer = AutoTokenizer.from_pretrained('THUDM/LongCite-glm4-9b', trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained('THUDM/LongCite-glm4-9b', torch_dtype=torch.bfloat16, trust_remote_code=True, device_map='auto')
# 定义上下文和查询
context = '''
W. Russell Todd, 94, United States Army general (b. 1928). February 13. Tim Aymar, 59, heavy metal singer (Pharaoh) (b. 1963). Marshall "Eddie" Conway, 76, Black Panther Party leader (b. 1946). Roger Bonk, 78, football player (North Dakota Fighting Sioux, Winnipeg Blue Bombers) (b. 1944). Conrad Dobler, 72, football player (St. Louis Cardinals, New Orleans Saints, Buffalo Bills) (b. 1950). Brian DuBois, 55, baseball player (Detroit Tigers) (b. 1967). Robert Geddes, 99, architect, dean of the Princeton University School of Architecture (1965–1982) (b. 1923). Tom Luddy, 79, film producer (Barfly, The Secret Garden), co-founder of the Telluride Film Festival (b. 1943). David Singmaster, 84, mathematician (b. 1938).
'''
query = "What was Robert Geddes' profession?"
# 生成回答和引用
result = model.query_longcite(context, query, tokenizer=tokenizer, max_input_length=128000, max_new_tokens=1024)
# 打印结果
print("Answer:\n{}\n".format(result['answer']))
print("Statement with citations:\n{}\n".format(
json.dumps(result['statements_with_citations'], indent=2, ensure_ascii=False)))
print("Context (divided into sentences):\n{}\n".format(result['splited_context']))
资源
- GitHub 仓库:https://github.com/THUDM/LongCite
- HuggingFace 模型库:https://huggingface.co/THUDM
- arXiv 技术论文:https://arxiv.org/pdf/2409.02897
- HuggingFace 数据集:https://huggingface.co/datasets/THUDM/LongCite-45k
- 在线体验:https://huggingface.co/spaces/THUDM-HF-SPACE/LongCite
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
微信公众号|搜一搜:蚝油菜花