LLM 모델 평가 하기
LLM 평가지표
리더보드에서 사용할 평가지표를 생성 관리할 수 있습니다.

평가 > 평가지표 > LLM 메뉴에서 평가지표 LLM 생성 버튼을 클릭합니다.
제목 : 평가지표의 이름입니다.
상세 설명 : 평가지표의 상세 설명입니다.
관리그룹 : 평가지표를 소유하는 관리그룹입니다.
데이터셋 : 평가지표에 사용할 데이터셋 입니다. 데이터 > 데이터셋 메뉴에서 데이터를 추가할 수 있습니다.
데이터셋 리비전 : 평가지표에 사용할 데이터셋의 리비전 정보를 선택합니다.
코드 : 선택된 데이터셋으로 LLM의 응답을 받고 평가할 python 코드를 추가합니다.
샘플 데이터셋과 샘플 평가 코드입니다.
"질문: 광합성이 대부분의 먹이망의 기초가 되는 이유를 가장 잘 설명하는 문장은 무엇인가요? A. 햇빛은 거의 모든 생태계의 에너지원이다. B. 대부분의 생태계는 물보다 육지에 있다. C. 이산화탄소가 다른 기체보다 더 많이 존재한다. D. 모든 생태계의 생산자는 식물이다. 답변:"
A
"질문: 어떤 안전 장비가 곰팡이 포자가 호흡기로 들어오는 것을 막는 데 사용되나요? A. 안전 고글 B. 호흡 마스크 C. 고무 장갑 D. 납 앞치마 답변:"
B
"질문: 감수분열은 생식 세포가 분열하여 반수체 세포를 생성하는 세포 분열의 한 유형입니다. 감수분열은 어디에서 발생하나요? 1. 뇌 세포 2. 뼈 세포 3. 근육 세포 4. 난소 세포 답변:"
4
import re
async def evaluate(row: dict, predict: callable) -> float:
"""
:param row: 평가에 사용할 데이터 (dict)
:param predict: LLM을 호출하는 비동기 함수
:return: 0 - 1 사이의 값으로 점수를 반환
"""
score = 0.0
prompt_mnc = row['prompt_mnc']
input_prompt = f"아래 질문에 대해서 단계적으로 설명해준 이후에 답을 말해주세요. 최종 답변은 선택지에서 골라주세요.(예시. 추론: ... 답변: A, 추론: ... 답변: 1) {prompt_mnc}"
answer = await predict(input_prompt)
answer_part = answer.split('답변: ')[1]
for i in ['A', 'B', 'C', 'D', 'E', '1', '2', '3', '4', '5']:
if answer_part[0] == i:
answer_result = i
if row['chosen_mnc'] == answer_result:
score = 1.0
return score
LLM 리더보드
LLM 리더보드는 서빙 된 모델들에 대해 사용자가 지정한 평가 데이터와 평가 지표들을 사용하여 평가하고 각 모델들의 점수를 보여줄 수 있습니다.

평가 > 리더보드 > LLM 메뉴에서 LLM 리더보드 생성을 클릭합니다.
필요한 정보들을 입력하고, 미리 만들어 놓은 평가지표들을 추가합니다.

LLM 리더보드 목록에서 추가한 리더보드를 더블클릭합니다.

평가실행 버튼을 클릭하고, 서빙되어 있는 LLM중에서 평가할 서빙을 선택하고, 실행합니다.

평가가 완료 되면 서빙되어있는 모델들의 각 메트릭별 점수, 평균점수를 확인할 수 있습니다.
Last updated
Was this helpful?