일반 소개
LettuceDetect는 검색 증강 생성(RAG) 시스템에서 생성된 환영 콘텐츠를 감지하도록 특별히 설계된 KRLabsOrg에서 개발한 경량 오픈 소스 도구입니다. 개발자가 문맥, 질문, 답변을 비교하고 문맥에서 지원되지 않는 답변 부분을 식별하여 문맥을 강화할 수 있도록 도와줍니다. RAG 시스템 정확도. 이 도구는 ModernBERT 기술을 기반으로 하며 4096을 지원합니다. 토큰 LettuceDetect는 기존 인코더 모델보다 훨씬 계산 비용이 적게 들면서 기존 인코더 모델보다 더 효율적인 긴 컨텍스트 처리를 제공하도록 설계되었으며, 대규모 언어 모델(LLM)에 비해 계산 비용이 훨씬 적게 들면서 RAGTruth 데이터 세트에서 F1 점수가 79.22%로 기존의 여러 솔루션보다 뛰어난 성능을 발휘합니다. 이 프로젝트는 MIT 라이선스에 따라 공개되며, AI가 생성한 콘텐츠의 신뢰성을 최적화해야 하는 사용자를 위해 코드와 모델이 무료로 공개되어 있습니다.

기능 목록
- 토큰 레벨 감지단어별로 응답을 분석하여 환각 부분을 정확하게 표시합니다.
- 스팬 레벨 감지응답, 출력 위치 및 신뢰 수준에서 완전한 팬텀 세그먼트를 식별합니다.
- 긴 컨텍스트 처리복잡한 작업을 위해 4096개의 토큰을 지원하는 컨텍스트입니다.
- 효율적인 추론이 모델은 150M 및 396M 모델로 제공되며 단일 GPU에서 초당 30~60개의 샘플을 처리합니다.
- 오픈 소스 통합pip를 통해 설치되며, 깔끔한 Python API를 제공하며, RAG 시스템에 쉽게 임베드할 수 있습니다.
- 다양한 출력 형식토큰 수준 확률 및 스팬 수준 예측 결과를 지원하여 쉽게 분석할 수 있습니다.
- 성능 벤치마크자세한 평가 데이터는 RAGTruth 데이터 세트에서 확인할 수 있으므로 쉽게 비교할 수 있습니다.
도움말 사용
LettuceDetect는 가볍고 효율적인 도구로, 간단한 설치로 빠르게 시작할 수 있습니다. 아래는 처음부터 기능을 익히는 데 도움이 되는 자세한 설치 및 사용 가이드입니다.
설치 프로세스
- Python 환경 준비하기
Python 3.8 이상이 설치되어 있고 pip 유틸리티가 있는지 확인합니다. 가상 환경을 사용하는 것이 좋습니다:python -m venv venv source venv/bin/activate # Linux/Mac venv\Scripts\activate # Windows
- LettuceDetect 설치
PyPI에서 최신 버전을 설치합니다:pip install lettucedetect
설치 프로세스는 ModernBERT 모델을 포함한 핵심 종속성을 자동으로 다운로드합니다.
- 설치 확인
Python 터미널에서 다음 코드를 실행하여 성공 여부를 확인합니다:from lettucedetect.models.inference import HallucinationDetector print("LettuceDetect 安装成功!")
기본 사용법
LettuceDetect는 몇 줄의 코드만으로 환각을 감지할 수 있는 깔끔한 Python API를 제공합니다. 아래는 기본 예제입니다:
샘플 코드(컴퓨팅)
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."
# 执行 span 级检测
predictions = detector.predict(
context=contexts,
question=question,
answer=answer,
output_format="spans"
)
# 输出结果
print("检测结果:", predictions)
샘플 출력::
检测结果: [{'start': 31, 'end': 71, 'confidence': 0.994, 'text': ' The population of France is 69 million.'}]
그 결과 "인구는 6,900만 명입니다"는 문맥상 6,700만 명의 인구를 의미하기 때문에 착각으로 표시됩니다.
주요 기능
1. 감지기 초기화하기
- 매개변수 설명::
method
현재 '트랜스포머'만 지원됩니다.model_path
선택 사항KRLabsOrg/lettucedect-base-modernbert-en-v1
(150M) 또는KRLabsOrg/lettucedect-large-modernbert-en-v1
(396M).
- rig기본 버전은 가볍고 빠르며, 대형 버전은 더 정확합니다.
2. 입장 준비
- 컨텍스트: 영어로 된 배경 정보가 포함된 문자열 목록을 전달합니다.
- 질문문맥과 관련성이 있어야 하는 구체적인 질문을 입력합니다.
- 답변: RAG 시스템에서 생성된 응답을 입력합니다.
- 다음 사항에 유의하십시오.컨텍스트의 총 길이가 4096토큰을 초과하지 않도록 합니다.
3. 런타임 탐지
- 메서드 호출사용
detector.predict()
. - 출력 형식::
"spans"
환각 클립의 시작 및 종료 위치, 텍스트, 신뢰도를 반환합니다."tokens"
각 토큰의 환영 확률을 반환합니다.
- rig: 적절한 출력 형식, 빠른 보기를 위한 스팬 수준, 심층 분석을 위한 토큰 수준을 선택합니다.
4. 분석
- 스팬 레벨 출력환각의 각 환각 조각을 검사합니다.
text
노래로 응답confidence
신뢰 수준이 1에 가까울수록 환각 가능성이 높음을 나타냅니다. - 토큰 레벨 출력단어 단위 보기
prob
값을 사용하여 특정 오류 지점을 결정합니다. - 후속 치료결과에 따라 RAG 시스템을 최적화하거나 문제를 기록하세요.
주요 기능
토큰 레벨 감지
LettuceDetect는 단어 단위 분석을 지원하여 세분화된 환각 감지를 제공합니다:
predictions = detector.predict(
context=contexts,
question=question,
answer=answer,
output_format="tokens"
)
print(predictions)
샘플 출력::
检测结果: [{'token': '69', 'pred': 1, 'prob': 0.95}, {'token': 'million', 'pred': 1, 'prob': 0.95}]
이는 '6900만'이 환영으로 표시된 것으로, 정밀한 조정이 필요한 시나리오에 적합하다는 것을 의미합니다.
긴 컨텍스트 지원
긴 텍스트 작업의 경우, LettuceDetect는 4096개의 토큰을 처리할 수 있습니다:
contexts = ["A long context repeated many times..." * 50]
predictions = detector.predict(context=contexts, question="...", answer="...")
입력이 한도 내에 있는지 확인하기만 하면 됩니다.
스트림라이트 데모
LettuceDetect는 대화형 프레젠테이션을 제공합니다:
- Streamlit을 설치합니다:
pip install streamlit
- 데모를 실행합니다:
streamlit run demo/streamlit_demo.py
- 브라우저에서 컨텍스트, 질문 및 답변을 입력하여 테스트 결과를 실시간으로 확인하세요.
고급 사용
사용자 지정 모델 교육
- RAGTruth 데이터 세트 다운로드(링크(웹사이트))에 넣고
data/ragtruth
폴더. - 데이터 전처리:
python lettucedetect/preprocess/preprocess_ragtruth.py --input_dir data/ragtruth --output_dir data/ragtruth
- 교육 모델:
python scripts/train.py --data_path data/ragtruth/ragtruth_data.json --model_name answerdotai/ModernBERT-base --output_dir outputs/hallucination_detector --batch_size 4 --epochs 6 --learning_rate 1e-5
성능 최적화
- GPU 가속추론 속도를 향상시키려면 PyTorch CUDA 버전을 설치하세요.
- 배치 파일여러 개의 샘플을
contexts
일회성 테스트 목록.
주의
- 입력은 영어로만 가능하며, 현재 다른 언어는 지원되지 않습니다.
- 처음 실행할 때 모델을 다운로드할 수 있도록 네트워크가 열려 있는지 확인합니다.
위의 단계를 통해 사용자는 LettuceDetect를 사용하여 RAG 시스템 착시를 쉽게 감지하고 생성된 콘텐츠의 신뢰성을 향상시킬 수 있습니다.
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...