The AIxiv column is a column where this site publishes academic and technical content. In the past few years, the AIxiv column of this site has received more than 2,000 reports, covering top laboratories from major universities and companies around the world, effectively promoting academic exchanges and dissemination. If you have excellent work that you want to share, please feel free to contribute or contact us for reporting. Submission email: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com
Amazon Shanghai Artificial Intelligence Research Institute was established in 2018 and has become one of the leading institutions in the field of deep learning research, with a total of ~90 publications papers. Research areas include basic theories of deep learning, natural language processing, computer vision, graph machine learning, high-performance computing, intelligent recommendation systems, fraud detection and risk control, knowledge graph construction, and intelligent decision-making systems. The institute took the lead in researching and developing the world's leading deep graph learning library, Deep Graph Library (DGL), which combines the advantages of deep learning and graph structure representation and affects many important application fields. Retrieval-Augmented Generation (RAG) technology is revolutionizing the field of AI applications. Through the seamless integration of external knowledge base and LLM internal knowledge, it greatly improves the accuracy and reliability of AI systems. . However, as RAG systems are widely deployed in various industries, their evaluation and optimization face significant challenges. Existing evaluation methods, whether traditional end-to-end metrics or evaluation of a single module, are difficult to fully reflect the complexity and actual performance of RAG systems. In particular, they can only provide a final score report that reflects only the performance of the RAG system. People need to go to the hospital for examination when they are sick. So if the RAG system is sick, how to diagnose it? Recently, Amazon Shanghai Artificial Intelligence Research Institute launched a diagnostic tool called RAGChecker to provide fine-grained, comprehensive and reliable diagnostic reports for the RAG system, and to further improve performance, provide available Direction of operation . This article introduces this RAG “microscope” in detail to see how it can help developers create smarter and more reliable RAG systems.
- Paper: https://arxiv.org/pdf/2408.08067
- Project address: https://github.com/amazon-science/RAGChecker
RAGChecker: COMPREHENSIVE DIAGNOSTIC TOOLS FOR RAG SYSTEMImagine what it would be like if we could conduct a comprehensive "physical examination" of the RAG system? RAGChecker is made for this. It not only evaluates the overall performance of the system, but also provides in-depth analysis of the performance of the two core modules of retrieval and generation.
RAGChecker’s main features include:
- Fine-grained evaluation: RAGChecker uses claim-level implication checking instead of simple reply-level evaluation. This approach enables a more detailed and nuanced analysis of system performance, providing in-depth insights.
- Comprehensive indicator system: This framework provides a set of indicators covering all aspects of RAG system performance, including faithfulness, context utilization, noise sensitivity and hallucination )wait.
- Proven validity: Reliability testing shows that RAGChecker’s evaluation results strongly correlate with human judgment, outperforming other existing evaluation metrics. This ensures the credibility and practicality of the assessment results.
- Actionable Insights: The diagnostic metrics provided by RAGChecker provide clear direction guidance for improving your RAG system. These insights can help researchers and practitioners develop more effective and reliable AI applications.
The core indicators of RAGCheckerRAGChecker’s indicator system can be intuitively understood using the following figure:
이러한 지표는 세 가지 주요 범주로 나뉩니다.
- 회상: 표준 답변에서 진술의 비율 모델 답변에 포함됨
- F1 점수(F1 점수): 균형 잡힌 성능 측정을 제공하는 정밀도와 재현율의 조화 평균
- 컨텍스트 정밀도 : 검색된 모든 블록 중 하나 이상의 표준 답변 문을 포함하는 블록의 비율
- Claim Recall: 검색된 블록에 포함된 표준 답변 문 비율
컨텍스트 활용: 생성 모듈이 검색 블록에서 얻은 관련 정보를 얼마나 효과적으로 활용하여 올바른 문장을 생성하는지 평가합니다. 이 지표는 시스템이 검색된 정보를 얼마나 효율적으로 활용하는지를 반영합니다. 노이즈 민감도: 생성 모듈이 검색 블록의 잘못된 정보를 답변에 포함하는 경향을 측정한 것입니다. 이 지표는 시스템이 관련이 없거나 잘못된 정보에 얼마나 민감한지 식별하는 데 도움이 됩니다. 환각: 모델이 검색 블록이나 표준 답변에 없는 정보를 생성하는 빈도를 측정합니다. 이는 모델이 허공에서 정보를 '구성'하는 상황을 포착하는 것과 같으며, 모델의 신뢰성을 평가하는 중요한 지표입니다. 자기 지식: 검색 블록에서 정보를 얻지 않고 모델이 질문에 올바르게 대답하는 빈도를 평가합니다. 이는 필요할 때 자체 내장된 지식을 활용하는 모델의 능력을 반영합니다. 신뢰성: 생성 모듈의 응답이 검색 블록에서 제공하는 정보와 얼마나 일치하는지 측정합니다. 이 지표는 주어진 정보에 대한 시스템의 준수 여부를 반영합니다.
이러한 지표는 RAG 시스템의 '신체 검사 보고서'와 같으며 개발자가 시스템 상태를 종합적으로 이해하고 개선할 영역을 식별하는 데 도움이 됩니다. RAGChecker 사용 시작
RAGChecker를 사용해보고 싶은 개발자의 경우 시작 프로세스는 매우 간단합니다. 다음은 빠르게 시작하기 위한 단계입니다.
1. 환경 설정: 먼저 RAGChecker 및 해당 종속 항목을 설치합니다. pip install ragcheckerpython -m spacy download en_core_web_sm
Copy after login
2. RAG 시스템의 출력을 특정 JSON 형식, 쿼리에 대한 컨텍스트, 표준 답변, 모델 답변 및 검색이 포함됩니다. 데이터 형식은 다음과 같아야 합니다. { "results": [ { "query_id": "< 查询 ID>", "query": "< 输入查询 >", "gt_answer": "< 标准答案 >", "response": "<RAG 系统生成的回答 >", "retrieved_context": [ { "doc_id": "< 文档 ID>", "text": "< 检索块的内容 >" }, ... ] }, ... ] }
Copy after login
또는 Python 코드를 사용하세요. : from ragchecker import RAGResults, RAGCheckerfrom ragchecker.metrics import all_metrics# 从 JSON 初始化 RAGResultswith open ("examples/checking_inputs.json") as fp:rag_results = RAGResults.from_json (fp.read ())# 设置评估器evaluator = RAGChecker ()# 评估结果evaluator.evaluate (rag_results, all_metrics)print (rag_results)
Copy after login
4. 분석 결과: RAGChecker는 RAG 시스템의 모든 측면의 성능을 이해하는 데 도움이 되는 평가 지표를 표시하기 위해 json 형식으로 파일을 출력합니다. 이러한 지표를 분석하여 개발자는 RAG 시스템의 다양한 측면을 목표 방식으로 최적화할 수 있습니다. 예:
- 클레임 회수율이 낮다는 것은 향상된 검색 전략이 필요함을 나타낼 수 있습니다. 이는 시스템이 충분한 관련 정보를 검색하지 못했을 수 있으며 검색 알고리즘을 최적화하거나 지식 기반을 확장해야 함을 의미합니다.
- 높은 잡음 민감도는 검색된 컨텍스트에서 관련 정보와 관련이 없거나 잘못된 세부 정보를 더 잘 구별하기 위해 생성 모듈이 추론 기능을 개선해야 함을 나타냅니다. 이를 위해서는 모델의 훈련 방법을 개선하거나 상황을 이해하는 능력을 강화해야 할 수도 있습니다.
- 환각 점수가 높으면 생성 모듈을 검색된 컨텍스트와 더 잘 통합해야 할 필요성을 나타낼 수 있습니다. 여기에는 모델이 검색된 정보를 활용하는 방법을 개선하거나 사실에 대한 충실도를 높이는 것이 포함될 수 있습니다.
- 컨텍스트 활용과 자기 지식 간의 균형은 검색 정보 활용과 모델 고유 지식 간의 균형을 최적화하는 데 도움이 될 수 있습니다. 여기에는 모델이 검색 정보에 얼마나 의존하는지 조정하거나 여러 정보 소스를 결합하는 능력을 향상시키는 것이 포함될 수 있습니다.
이런 방식으로 RAGChecker는 상세한 성능 평가를 제공할 뿐만 아니라 RAG 시스템의 구체적인 최적화 방향에 대한 명확한 지침을 제공합니다. LlamaIndex에서 RAGChecker 사용 RAGChecker는 이제 LlamaIndex와 통합되어 LlamaIndex로 구축된 RAG 애플리케이션을 위한 강력한 평가 도구를 제공합니다. LlamaIndex 프로젝트에서 RAGChecker를 사용하는 방법을 알고 싶다면 LlamaIndex 설명서에서 RAGChecker 통합에 대한 섹션을 참조하세요. RAGChecker는 RAG 시스템의 평가 및 최적화를 위한 새로운 도구를 제공합니다. 이는 개발자에게 RAG 시스템을 심층적으로 이해하고 정확하게 최적화하는 데 도움이 되는 "현미경"을 제공합니다. RAG 기술을 연구하는 학자이든, 더 스마트한 AI 애플리케이션을 개발하는 엔지니어이든, RAGChecker는 없어서는 안 될 오른손 조수가 될 것입니다. 독자는 https://github.com/amazon-science/RAGChecker를 방문하여 자세한 내용을 확인하거나 프로젝트 개발에 참여할 수 있습니다. The above is the detailed content of Give the RAG system a comprehensive 'physical examination' with Amazon's open source RAGChecker diagnostic tool. For more information, please follow other related articles on the PHP Chinese website!