🚀 LettuceDetect:幻覺檢測模型
LettuceDetect是一個基於Transformer的模型,用於對上下文和答案對進行幻覺檢測,專為檢索增強生成(RAG)應用程序而設計。該模型利用了ModernBERT的長上下文支持能力,能夠處理詳細且廣泛的文檔,準確判斷答案是否得到給定上下文的支持。
模型名稱:lettucedect-base-modernbert-en-v1
組織:KRLabsOrg
Github:https://github.com/KRLabsOrg/LettuceDetect
🚀 快速開始
LettuceDetect是一個基於Transformer的模型,用於對上下文和答案對進行幻覺檢測,適用於檢索增強生成(RAG)應用。該模型基於ModernBERT構建,因其支持擴展上下文(最多8192個標記)而被特別選擇和訓練。這種長上下文能力對於需要處理詳細和廣泛文檔以準確確定答案是否得到給定上下文支持的任務至關重要。
✨ 主要特性
- 長上下文支持:基於ModernBERT(Large)架構,支持擴展上下文(最多8192個標記),能夠處理詳細且廣泛的文檔。
- 精準檢測:經過訓練,能夠識別答案文本中未得到給定上下文支持的標記,幫助用戶準確找出答案中被認為是幻覺的部分。
- 多語言支持:支持英文,適用於各種英文語境下的幻覺檢測任務。
📦 安裝指南
安裝lettucedetect
庫:
pip install lettucedetect
💻 使用示例
基礎用法
from lettucedetect.models.inference import HallucinationDetector
detector = HallucinationDetector(
method="transformer", model_path="KRLabsOrg/lettucedect-base-modernbert-en-v1"
)
contexts = ["France is a country in Europe. The capital of France is Paris. The population of France is 67 million.",]
question = "What is the capital of France? What is the population of France?"
answer = "The capital of France is Paris. The population of France is 69 million."
predictions = detector.predict(context=contexts, question=question, answer=answer, output_format="spans")
print("Predictions:", predictions)
📚 詳細文檔
模型詳情
屬性 |
詳情 |
模型架構 |
ModernBERT(Large),支持擴展上下文(最多8192個標記) |
任務類型 |
標記分類 / 幻覺檢測 |
訓練數據集 |
RagTruth |
語言 |
英文 |
工作原理
該模型經過訓練,能夠識別答案文本中未得到給定上下文支持的標記。在推理過程中,模型返回標記級別的預測結果,然後將其聚合為跨度,使用戶能夠準確查看答案中被認為是幻覺的部分。
性能表現
- 示例級別結果:在RAGTruth數據集的測試集上進行評估,大型模型lettucedetect-large-v1的整體F1分數達到79.22%,優於基於提示的方法(如GPT-4,63.4%)和基於編碼器的模型(如Luna,65.4%),也超過了微調後的LLAMA-2-13B(78.7%),並與最先進的微調後的LLAMA-3-8B(83.9%)具有競爭力。
- 跨度級別結果:在跨度級別上,該模型在所有數據類型上均取得了最佳分數,顯著優於之前的模型。
引用信息
如果您使用了該模型或工具,請引用以下論文:
@misc{Kovacs:2025,
title={LettuceDetect: A Hallucination Detection Framework for RAG Applications},
author={Ádám Kovács and Gábor Recski},
year={2025},
eprint={2502.17125},
archivePrefix={arXiv},
primaryClass={cs.CL},
url={https://arxiv.org/abs/2502.17125},
}
📄 許可證
本項目採用MIT許可證。