23.06.15
DEVOTEE를 활성화 시키면
지금 작성한 커뮤니티 글에 대해 1개의 댓글을 달아줍니다.
버튼을 누르면 글 수정 시 ChatGPT가 작성한 댓글이 수정됩니다.
| 컨텐츠 유형 | 제목 | 저장일 | 삭제 |
|---|
본인인증 로그인에 실패하였습니다.
회원이 아니시거나 본인인증 등록이
완료되지 않은 사용자입니다.
RAGAS 는 LLM 평가를 위한 데이터셋을 생성하고, 이를 평가하기 위한 LLM Evaluation 프레임워크 입니다.
주요 평가 지표 항목으로 아래 그림 (ragas score)과 같이 생성 (generation), 데이터 획득 (retriever) 을 제공합니다.
다른 머신 러닝 시스템과 마찬가지로 LLM 및 RAG 파이프라인 내의 개별 구성 요소의 성능은 전체 경험에 큰 영향을 미칩니다.
Ragas는 RAG 파이프라인의 각 구성 요소를 개별적으로 평가하기 위한 맞춤형 메트릭을 제공합니다.

Ragas 주요 성능 메트릭을 살펴보면 크게 Retrieval, Generation 각 카테고리 별 측면에서 메트릭을 정의할 수 있습니다.
Retrieval 은 정확하고 일관성 있는 답변 생성을 위해 정확성, 정밀성, 관련성 측면에서 좋은 품질의 Context 정보 검색 여부를 살펴봅니다.
Generation은 검색한 Context 정보를 기반으로 LLM이 생성한 답변의 정확성 그리고 질문에 대한 명확한 이해를 통해 답변 생성 여부에 대한 성능을 평가합니다.
Metrics
생성된 답변이 얼마나 사실(Context)에 근거한 정확한 답변인가요?
생성된 답변이 질문에 얼마나 관련성이 있나요?
질문을 통해 답변을 생성하는데 필요한 맥락 정보(Context)를 검색할 수 있나요?
질문에 대한 맥락정보를 검색하여 가져온 Context 중, 질문에 대한 답변과 관련있는 문서가 얼마나 상위에 랭크되어 있나요?
E2E(End-To-End) 파이프라인의 성능을 평가하는 것도 사용자 경험에 직접적인 영향을 미치기 때문에 매우 중요합니다.
Ragas는 파이프라인의 전반적인 성능을 평가하는 데 사용할 수 있는 메트릭을 제공하여 종합적인 평가를 보장합니다.
위에서 소개한 각 메트릭에 대한 정보를 하나씩 이어서 살펴보겠습니다.
Faithfullness는 주어진 맥락에 대해 생성된 답변의 사실적 일관성을 측정합니다.
answer와 retrieved context에서 계산됩니다. Faithfullness 측정값은 값은 (0,1) 범위로 스케일링 되며 높을수록 좋습니다.
생성된 답변은 주어진 맥락에서 답변에 포함된 모든 claims(주장)을 유추할 수 있는 경우 충실한 답변으로 간주됩니다.
그런 다음 이러한 각 주장을 주어진 맥락과 교차 검사하여 주어진 맥락에서 추론할 수 있는지 여부를 결정합니다.
Faithfullness 점수는 다음과 같이 나누어 계산됩니다.
[!NOTE]
Hint
Question: Where and when was Einstein born?
Context: Albert Einstein (born 14 March 1879) was a German-born theoretical physicist, widely held to be one of the greatest and most influential scientists of all time
High faithfulness answer: Einstein was born in Germany on 14th March 1879.
Low faithfulness answer: Einstein was born in Germany on 20th March 1879.
from datasets import Dataset
from ragas.metrics import faithfulness
from ragas import evaluate
data_samples = {
'question': ['When was the first super bowl?', 'Who won the most super bowls?'],
'answer': ['The first superbowl was held on Jan 15, 1967', 'The most super bowls have been won by The New England Patriots'],
'contexts' : [['The First AFL–NFL World Championship Game was an American football game played on January 15, 1967, at the Los Angeles Memorial Coliseum in Los Angeles,'],
['The Green Bay Packers...Green Bay, Wisconsin.','The Packers compete...Football Conference']],
}
dataset = Dataset.from_dict(data_samples)
score = evaluate(dataset,metrics=[faithfulness])
score.to_pandas()Faithfullness(성실도)가 낮은 답변을 사용하여 Faithfullness가 어떻게 계산되는지 살펴보겠습니다.
Step 1: 생성된 답변을 개별 문장으로 나눕니다.
Statements:
Statement 1: “Einstein was born in Germany.”
Statement 2: “Einstein was born on 20th March 1879.”
Step 2: 생성된 각 문장에 대해 주어진 맥락을 통해서 추론할 수 있는지 확인합니다.
Statement 1: Yes
Statement 2: No
Step 3: 위에 설명된 공식을 사용하여 Faithfullness를 계산합니다.
DEVOTEE를 활성화 시키면
지금 작성한 댓글에 AI가 댓글을 달아줍니다.