생성 작업에서 LLM을 평가하기 위한 저장소
최신 뉴스
[2024/06] BiGGen-Bench 와 Prometheus 2 BGB(8x7B)를 출시합니다!
BiGGen-Bench는 9개의 핵심 기능, 77개의 작업, 세심하게 제작된 765개의 인스턴스를 갖추고 있으며 각 인스턴스에는 특정 평가 기준이 적용됩니다.
우리는 5개의 최첨단 평가자 언어 모델로 103개의 프론티어 언어 모델을 평가하고 그 결과를 논문에서 분석했습니다.
우리는 BiGGen-Bench 평가 추적에서 Prometheus 2 8x7B를 지속적으로 교육하고 가장 유능한 평가자 LM Prometheus 2 BGB를 구축하여 절대 등급 작업에서 Claude-3-Opus를 능가했습니다.
데이터 세트, 평가 결과, 리더보드, 대화형 보고서 및 코드를 확인하세요!
[2024/05] 프로메테우스 2(7B & 8x7B) 모델 출시!
Prometheus 2(8x7B)의 평가 통계 또는 성능의 최소 80%를 달성합니다.
16GB의 VRAM만 필요하므로 소비자 GPU에서 실행하기에 적합합니다.
Prometheus 1(13B)에 비해 Prometheus 2(8x7B)는 향상된 평가 성능을 보여주고 쌍별 순위(상대 등급) 형식 평가도 지원합니다!
VicunaBench, MT-Bench 및 FLASK를 포함한 여러 직접 평가 벤치마크에서 5점 Likert 척도로 GPT-4-1106과 0.6~0.7의 Pearson 상관관계를 달성합니다.
또한 HHH Alignment, MT Bench Human Judgment 및 Auto-J Eval을 포함한 여러 쌍별 순위 벤치마크에서 사람의 판단과 72%~85% 일치합니다.
Prometheus 2(8x7B) 는 오픈 소스 최첨단 평가자 언어 모델입니다!
Prometheus 2(7B)는 합리적인 성능을 갖춘 Prometheus 2(8x7B) 모델의 더 가벼운 버전입니다(Llama-2-70B보다 성능이 뛰어나고 Mixtral-8x7B와 동등함).
pip로 설치:
pip 설치 prometheus-eval
Prometheus-Eval은 vllm
통한 로컬 추론과 litellm
의 도움으로 LLM API를 통한 추론을 지원합니다.
로컬 환경에서 Prometheus를 실행하려면 vllm
설치하세요.
pip 설치 vllm
당신이 관심이 있다면:
VLLM 엔드포인트, Huggingface TGI 또는 기타 플랫폼을 통해 Prometheus 인터페이스 활용
GPT-4와 같은 더욱 강력한 평가자 LLM 활용
Prometheus-Eval을 활용할 수도 있습니다! 다양한 공급자에 대한 설치 세부 정보는 LiteLLM 공급자 문서를 참조하세요.
from prometheus_eval.litellm import LiteLLM, AsyncLiteLLMmodel = LiteLLM('openai/prometheus-eval/prometheus-7b-v2.0') # VLLM 엔드포인트 모델 = LiteLLM('huggingface/prometheus-eval/prometheus-7b-v2.0') # 허깅페이스 TGImodel = AsyncLiteLLM('gpt-4-turbo', 요청_분당_분=100) # GPT-4 API(속도 제한을 고려한 비동기 생성)# 그 외 다양한 기능!judge = PrometheusEval(model=model)
참고 : prometheus-eval
라이브러리는 현재 베타 단계에 있습니다. 문제가 발생하면 저장소에 문제를 생성하여 알려주시기 바랍니다.
prometheus-eval
사용하면 명령 과 응답 쌍을 평가하는 것이 다음과 같이 간단합니다.
# 절대 등급: 1~5점 출력from prometheus_eval.vllm import VLLMfrom prometheus_eval import PrometheusEvalfrom prometheus_eval.prompts import ABSOLUTE_PROMPT, SCORE_RUBRIC_TEMPLATEmodel = VLLM(model="prometheus-eval/prometheus-7b-v2.0")judge = PrometheusEval(model= 모델, Absolute_grade_template=ABSOLUTE_PROMPT)instruction = "최근 이별에 어려움을 겪고 있는 사람이 외로움과 슬픔의 강렬한 감정에 대해 이야기합니다. 그들은 가슴 아픈 일에 대처하고 인생에서 앞으로 나아갈 방법에 대한 조언을 구합니다.",response = " 이별 소식을 들으니 정말 안타깝습니다. 이것은 외로움과 슬픔이라는 강렬한 감정으로 가득 찬 매우 힘든 시기일 수 있습니다. 첫째, 자신의 감정을 주저하지 말고 자유롭게 흐르게 하십시오. 감정을 무시하는 것은 종종 치유 과정을 복잡하게 만듭니다. 이것은 모두 치유를 향한 여정의 일부입니다. 자기 관리는 이 힘든 시기에 치유의 향유가 될 수 있습니다. 이는 좋아하는 책을 읽거나, 생각을 일기로 쓰거나, 조용히 차 한 잔을 마시는 것을 의미할 수 있습니다. 자신에게 베푸는 작은 친절은 정서적 안녕을 크게 향상시킬 수 있습니다. 또한 자신을 고립시키지 마십시오. 위로와 이해를 제공할 수 있는 지지적인 사람들과 함께하십시오. 여기에는 친구, 가족 또는 정신 건강 전문가가 포함될 수 있습니다. 그들은 당신이 대처하는 데 꼭 필요한 정서적 지원과 전략을 제공할 수 있습니다. 마지막으로, 치유에는 정해진 일정이 없다는 점을 기억하십시오. 사람마다 다르므로 필요한 만큼 오래 복용해도 괜찮습니다. 미래와 그것이 갖고 있는 잠재력에 집중하십시오. 지금은 불가능해 보일 수도 있지만, 이 경험을 통해 당신은 더욱 강해질 것입니다. 도움을 요청해도 괜찮고, 슬퍼해도 괜찮고, 하루에 한 번씩 받아도 괜찮습니다. 이 여정에는 여러분 혼자가 아니며, 기꺼이 도와줄 준비가 되어 있는 사람들이 있습니다. 자신의 속도로 치유해도 괜찮습니다.",reference_answer = "이 시간이 당신에게 얼마나 힘들었을지 상상만 할 뿐입니다. 상심은 당신을 덮치는 압도적인 파도처럼 느껴져서 길을 잃고 외로움을 느낄 수 있습니다. 이런 느낌을 가져도 괜찮다는 점을 기억하는 것이 중요합니다. 당신의 감정은 타당하며 관계 상실을 슬퍼하는 것은 자연스러운 일입니다. 첫째, 자신이 감정을 완전히 느낄 수 있도록 허용하는 것이 중요합니다. 이를 억제하거나 거부하는 것은 종종 치유 과정을 연장할 뿐입니다. 울어도, 슬퍼도, 화를 내도 괜찮습니다. 이것들은 모두 치유 여정의 일부입니다. 자기 관리 활동에 참여하면 꼭 필요한 활력을 얻을 수도 있습니다. 따뜻한 목욕을 하는 것, 일기를 쓰는 것, 혹은 단순히 좋아하는 차를 마시는 것 등 무엇이든 될 수 있습니다. 자기애의 작은 행동이 당신의 감정에 큰 변화를 가져올 수 있습니다. 다음으로, 당신의 상황을 이해하고 위로해 주는 지지적인 사람들과 함께 주변에 있도록 노력하십시오. 친구와 가족은 가슴이 아플 때 큰 힘이 될 수 있습니다. 편안하다고 느끼면 전문가의 도움을 받는 것이 좋습니다. 치료사와 상담사는 이와 같은 어려운 시기를 헤쳐나갈 수 있는 지원과 도구를 제공하도록 훈련을 받았습니다. 마지막으로, 치유하는 데 시간을 투자해도 괜찮다는 점을 기억하는 것이 중요합니다. 사람마다 자신만의 속도가 있고 서두르지 않습니다. 미래와 그것이 갖고 있는 가능성에 초점을 맞추도록 노력하십시오. 지금은 그렇지 않은 것처럼 보일 수도 있지만, 이 경험을 통해 당신은 더 강해지고 탄력성을 갖게 될 것입니다. 도움을 요청해도 괜찮고 자신이 느끼는 방식을 느껴도 괜찮다는 점을 기억하세요. 이 여정에는 당신 혼자가 아니며 당신을 걱정하고 도와주고 싶어하는 사람들이 있습니다. 하루에 한 번씩 가져가도 괜찮습니다. 치유는 과정이므로 자신의 속도에 맞춰 진행해도 괜찮습니다.",rubric_data = { "criteria":"사용자가 감정을 전달하거나 어려운 상황에 직면할 때 모델이 반응에 공감과 감성 지능을 적용하는 데 능숙합니까? ", "score1_description": "모델은 사용자 입력의 감정적인 어조를 식별하거나 이에 반응하는 것을 무시하여 부적절하거나 감정적으로 둔감한 응답을 제공합니다.", "score2_description":"모델은 감정적 맥락을 간헐적으로 인식하지만 충분한 공감이나 감정적 이해 없이 반응하는 경우가 많습니다.", "score3_description":"모델은 일반적으로 감정적 맥락을 식별하고 공감을 바탕으로 대답하려고 시도하지만 응답은 때때로 요점을 놓치거나 정서적 깊이가 부족합니다.", "score4_description":"이 모델은 감정적 맥락을 일관되게 식별하고 적절하게 반응하여 공감적인 반응을 제공합니다. 그럼에도 불구하고 여전히 감정적 깊이에 대한 산발적인 감독이나 결함이 있을 수 있습니다.", "score5_description":"이 모델은 감정적 맥락을 식별하는 데 탁월하며 사용자의 감정이나 상황에 대한 깊은 이해를 보여주는 공감적이고 감정적으로 인식된 반응을 지속적으로 제공합니다."} Score_rubric = SCORE_RUBRIC_TEMPLATE.format(**rubric_data)피드백, 점수 = Judge.single_absolute_grade(instruction=instruction,response=response,rubric=score_rubric,reference_answer=reference_answer)print("Feedback:", Feedback)print("Score:", Score)# 출력# 피드백: 제공된 응답이 높은 수준을 보여줍니다. 사용자가 표현하는 정서적 고통을 효과적으로 해결하고 사용자의 고통을 인정하고 외로움과 슬픔을 확인합니다. 공감적인 조언을 제공하는 것이 중요한 측면입니다. 응답은 또한 감정 수용, 자기 관리 실천, 친구, 가족 또는 전문가의 지원 구하는 등 대처를 위한 실제적인 단계를 제안합니다. 또한, 응답은 치유가 고정된 일정이 없는 개인적인 과정이라는 점을 사용자에게 확신시켜 편안함과 이해를 제공합니다. 사용자의 가치와 상황을 극복할 수 있는 잠재력을 강조하며, 이는 사용자의 감정과 상황에 대한 깊은 이해를 보여줍니다. 점수 루브릭을 제공된 응답과 비교함으로써 모델이 공감과 감성 지능을 적용하는 탁월한 능력을 보여준다는 것이 분명합니다. 응답은 정서적 깊이에 결함이 없으며 5점 기준을 성공적으로 충족합니다.# 점수: 5
# 상대 등급: 출력 A 또는 Bfrom prometheus_eval.vllm import VLLMfrom prometheus_eval import PrometheusEvalfrom prometheus_eval.prompts import RELATIVE_PROMPTmodel = VLLM(model="prometheus-eval/prometheus-7b-v2.0")judge = PrometheusEval(model=model,relative_grade_template= RELATIVE_PROMPT)데이터 = { "지침": "역사가 그룹이 로마 제국의 몰락을 초래한 요인에 대해 토론을 진행하고 있습니다. 한 역사가는 몰락의 주된 이유가 야만인의 침략으로 인한 지속적인 압력이었다고 주장합니다. 또 다른 역사가는 그것이 때문이라고 믿습니다. 세 번째 주장은 그것이 도덕적 부패와 정치적 불안정 때문이라고 주장합니다. 역사가는 경제적 문제와 노예 노동에 대한 과도한 의존을 주장하는 증거를 제시해야 합니다. case?", "response_A": "경제적 문제와 노예 노동에 대한 과도한 의존이 로마 제국의 몰락을 초래했다고 주장하는 역사가는 다음과 같이 말할 것입니다. 제국의 경제는 로마 통화의 평가 절하로 인해 큰 영향을 받았습니다. 이러한 통화 가치 하락은 만연한 인플레이션을 초래하여 경제 안정을 방해했습니다. 게다가 로마 제국은 노예 노동에 크게 의존했습니다. 노예를 유지하는 것이 자유 시민을 고용하는 것보다 저렴했기 때문에 자유 시민 사이에 실업이 발생했습니다. 고용기회 감소는 경제불안으로 이어졌다. 게다가 제국이 동쪽으로 확장하면서 이집트의 곡물과 같은 수입품에 의존하게 되었습니다. 수입에 대한 과도한 의존은 무역적자를 초래했고, 이는 경제를 더욱 약화시켰다. 제국이 영토를 잃으면서 무역 불균형을 유지하는 것이 어려워지면서 경제적 몰락을 초래했다. 따라서 경제적 문제와 노예 노동에 대한 과도한 의존은 로마 제국 몰락의 주요 원인 중 하나였습니다.", "response_B": "경제적 문제와 노예 노동에 대한 과도한 의존을 주장하는 역사가는 다음과 같은 주요 경제적 요인을 인용하여 자신들의 주장을 제시할 것입니다. 로마 제국의 쇠퇴에 기여했습니다. Harper(2016)는 로마 통화의 평가절하가 어떻게 인플레이션으로 이어져 경제 안정성을 방해하는지 설명했습니다. 또한 Scheidel(2007)은 노예의 남용으로 인해 자유 시민 사이에 광범위한 실업이 발생하고 경제가 더욱 불안정해진다고 강조했습니다. Temin(2006)이 강조한 것처럼 제국이 이집트로부터의 곡물 수입에 의존하여 무역 적자를 초래한 것도 경제 쇠퇴에 기여했습니다. 따라서 이러한 요소들의 조합은 로마 제국의 몰락에 결정적인 역할을 했습니다.", "reference_answer": "이 주장은 로마 제국 몰락의 주요 원인인 경제적 문제와 노예 노동에 대한 지나친 의존에 초점을 맞추고 있습니다. 우선, 중요한 증거 중 하나는 로마 통화의 평가절하입니다. Harper(2016)가 강조한 바와 같이 제국은 지속적인 통화 가치 하락으로 인해 심각한 인플레이션을 겪었고 이로 인해 경제가 안정적으로 유지되기가 어려웠습니다. 더욱이 노예 노동에 대한 과도한 의존도 해로운 역할을 했습니다. Scheidel(2007)이 지적했듯이, 노예에 대한 의존은 자유 로마 시민들의 실업을 초래했습니다. 노예는 자유시민을 고용하는 것보다 유지비가 훨씬 저렴해 취업기회가 줄어들고, 결과적으로 경제적 불안정을 초래했기 때문이다. 더욱이 제국이 동쪽으로 확장하면서 이집트의 곡물과 같은 수입품에 대한 의존도가 높아졌습니다. Temin(2006)이 지적한 바와 같이, 이로 인해 무역 적자가 발생하여 로마 경제가 더욱 약화되었습니다. 제국이 영토를 잃기 시작하자 이러한 무역 불균형을 유지하는 것이 점점 더 어려워졌고, 이로 인해 경제가 쇠퇴했습니다. 결론적으로, 주로 화폐 가치 하락과 노예 노동에 대한 과도한 의존으로 인한 경제적 어려움이 로마 제국을 멸망시키는 중요한 요인이었다고 주장할 수 있습니다. Harper(2016), Scheidel(2007) 및 Temin(2006)에 대한 학문적 참고 자료를 포함하여 제공된 증거는 이 논문을 뒷받침합니다.", "rubric": "해당되는 경우 인용/귀속을 포함한 증거로 답변이 잘 뒷받침됩니까? ?"}피드백, 점수 = Judge.single_relative_grade(**data)print("피드백:", 피드백)print("점수:", 점수)# 출력# 피드백: 응답 A와 응답 B 모두 경제적 문제와 노예 노동에 대한 과도한 의존이 로마 제국의 몰락에 중요한 기여 요인임을 정확하게 식별합니다. 그러나 응답 B는 학문적 출처를 포함하기 때문에 역사가의 주장을 제시하는 데 더 효과적입니다. 특히 Harper, Scheidel 및 Temin의 작품을 참조하여 역사가의 주장에 신뢰성을 더하고 증거 및 인용에 대한 점수 기준표의 강조와 잘 일치합니다. A는 유사한 주장을 제공하는데, 어떤 형태의 인용이나 귀속도 부족하여 제시된 증거의 강도가 약해졌습니다. 따라서 제공된 기준표에 따르면 응답 B는 역사가의 주장을 뒷받침하기 위해 학문적 증거를 사용하므로 우수한 응답입니다.# 점수: B
참고 : 채점할 응답이 여러 개 있는 경우에는 single_absolute_grade
/ single_relative_grade
사용하지 말고 대신에 absolute_grade
및 relative_grade
사용하세요! 10배 이상의 속도 향상을 제공합니다.
# 일괄 절대 등급instructions = [...] # 지침 목록responses = [...] # 응답 목록reference_answers = [...] # 참조 목록 Answersrubric = "..." # 루브릭 stringfeedbacks, Score = Judge.absolute_grade (instructions=instructions,responses=responses,rubric=rubric,reference_answers=reference_answers)# 배치 상대 성적instructions = [...] # 목록 Instructionsresponses_from_a = [...] # 응답 목록responses_from_b = [...]reference_answers = [...] # 참조 답변 목록rubric = "..." # 루브릭 문자열 피드백, 점수 = Judge.relative_grade(instructions=instructions,responses_A=responses_from_a,responses_B=responses_from_b,rubric=rubric,reference_answers=reference_answers)
Prometheus-Eval 은 다른 언어 모델 평가에 특화된 언어 모델을 훈련, 평가 및 사용하기 위한 도구 모음을 제공하는 저장소입니다. 저장소에는 다음 구성 요소가 포함되어 있습니다.
Prometheus를 사용하여 명령-응답 쌍을 평가하기 위한 간단한 인터페이스를 제공하는 prometheus-eval
Python 패키지.
Prometheus 모델을 훈련하고 평가하기 위한 평가 데이터세트 모음입니다.
Prometheus 모델을 훈련하거나 사용자 정의 데이터 세트를 미세 조정하기 위한 스크립트입니다.
Prometheus 는 다른 언어 모델을 평가하는 데 특화된 오픈 소스 언어 모델 제품군입니다. 인간의 판단과 독자적인 LM 기반 평가를 효과적으로 시뮬레이션함으로써 다음과 같은 문제를 해결하는 것을 목표로 합니다.
공정성 : 평가를 위해 비공개 소스 모델에 의존하지 않습니다!
제어성 : 내부 평가 파이프라인을 구축하여 GPT 버전 업데이트나 개인 데이터를 OpenAI로 보내는 것에 대해 걱정할 필요가 없습니다.
경제성 : 이미 GPU를 보유하고 있다면 무료로 사용 가능합니다!
Prometheus 1 모델과 비교하여 Prometheus 2 모델은 직접 평가 (절대 등급)와 쌍별 순위 (상대 등급)를 모두 지원합니다.
다른 입력 프롬프트 형식과 시스템 프롬프트를 제공하여 모드를 전환할 수 있습니다. 프롬프트 내에서 지침, 응답, 점수 기준표를 자신의 데이터로 채워야 합니다. 선택적으로 더 나은 성과로 이어지는 참조 답변을 추가할 수도 있습니다!
prometheus-eval
패키지 사용 prometheus-eval
패키지는 Prometheus를 사용하여 명령-응답 쌍을 평가하기 위한 간단한 인터페이스를 제공합니다. 패키지에는 다음 방법이 포함되어 있습니다.
absolute_grade
: 주어진 지침, 참고 답변 및 점수 루브릭을 기반으로 단일 응답을 평가합니다. 1에서 5 사이의 점수를 출력합니다.
relative_grade
: 주어진 지침과 점수 루브릭을 기반으로 두 가지 응답을 평가합니다. 더 나은 응답을 기준으로 'A' 또는 'B'를 출력합니다.
Huggingface Hub에 업로드된 가중치로 직접 작업하는 것을 선호한다면 모델 가중치를 직접 다운로드할 수 있습니다!
from Transformers import AutoModelForCausalLM, AutoTokenizerdevice = "cuda" # 모델을 로드할 장치 onmodel = AutoModelForCausalLM.from_pretrained("prometheus-eval/prometheus-7b-v2.0")tokenizer = AutoTokenizer.from_pretrained("prometheus-eval/prometheus- 7b-v2.0")ABS_SYSTEM_PROMPT = "당신은 공정한 판사이십니다. 특정 기준에 따라 명확하고 객관적인 피드백을 제공하여 각 평가가 성과에 대해 설정된 절대 표준을 반영하도록 하는 임무를 맡은 보조자입니다."ABSOLUTE_PROMPT = """###작업 설명: 지침(내부에 입력이 포함될 수 있음), 응답 평가, 5점을 받는 참고답변, 평가기준을 나타내는 점수루브릭을 부여한다.1. 일반평가가 아닌 주어진 점수루브릭을 바탕으로 답변의 질을 엄격하게 평가하는 상세한 피드백을 작성한다.2 . 피드백, 1에서 5 사이의 정수로 점수를 작성하십시오. 점수 루브릭을 참조해야 합니다.3. 출력 형식은 다음과 같아야 합니다. "피드백: (기준에 대한 피드백 작성) [RESULT] (사이의 정수) 1과 5)'4. 다른 시작, 끝, 설명을 생성하지 마세요.###평가 지침:{instruction}###평가 응답:{response}###참고 답변(점수 5):{reference_answer}### 점수 루브릭:{rubric}###Feedback: """user_content = ABS_SYSTEM_PROMPT + "nn" + ABSOLUTE_PROMPT.format(...) # 프롬프트를 다음으로 채웁니다. 데이터 메시지 = [ {"역할": "사용자", "콘텐츠": user_content}, ]encodeds = tokenizer.apply_chat_template(messages, return_tensors="pt")model_inputs = encodes.to(device)model.to(device)generated_ids = model.generate(model_inputs, max_new_tokens=1000, do_sample=True)decoded = tokenizer.batch_decode (generated_ids)인쇄(디코딩[0])
부분 | 설명 |
---|---|
BiGGen-벤치 평가 | BiGGen-Bench에서 LM을 평가하는 지침. 자체 평가 벤치마크 구현을 참조할 수도 있습니다. |
프로메테우스 훈련 | Prometheus 2 모델 복제 지침. 정렬 핸드북 저장소를 기반으로 합니다. |
Prometheus를 데이터 품질 필터로 사용 | 합성 데이터 생성 시 품질 필터로 Prometheus 2를 사용하기 위한 요리책입니다. distilabel 팀에게 큰 감사를 드립니다! ? |
RAG에서 Prometheus를 평가자로 사용 | Prometheus 2 RAG 애플리케이션 사용에 대한 설명서입니다. LlamaIndex 팀에게 큰 감사를 드립니다! ? |
훈련을 위한 기본 코드베이스는 Huggingface의 Alignment Handbook 및 Super Mario Merging 저장소에서 유래되었습니다. 또한 추론을 위해 litellm, vllm 및 변환기 라이브러리를 많이 활용합니다. 이 멋진 저장소에 기여한 모든 분들께 큰 감사를 드립니다!! ?
우리 작업이 유용하다고 생각되면 우리 논문을 인용해 보세요!
@misc{kim2024prometheus, title={프로메테우스 2: 다른 언어 모델 평가에 특화된 오픈 소스 언어 모델}, 작성자={김승원, 석주영, Shayne Longpre, Bill Yuchen Lin, Jamin Shin, Sean Welleck, Graham Neubig, 이문태, 이경재, 서민준}, year={2024}, eprint={2405.01535}, archivePrefix={ arXiv}, PrimaryClass={cs.CL}}
@article{kim2023prometheus, title={프로메테우스: 언어 모델에서 세분화된 평가 기능 유도}, 저자={김승원과 신, 자민과 조, 예진과 장, 조엘과 롱프리, 셰인과 이, 화란과 윤, 상두와 신성, 성진과 김, 성동과 쏜, 제임스 외}, 저널={arXiv preprint arXiv:2310.08491}, 연도={2023}}
@misc{lee2024prometheusvision, title={Prometheus-Vision: 세밀한 평가를 위한 심사위원으로서의 비전-언어 모델}, 작성자={이성윤, 김승원, 박수현, 김기욱, 서민준}, year={2024}, eprint={2401.06591}, archivePrefix={arXiv}, PrimaryClass={cs.CL}}
@misc{kim2024biggen, title={BiGGen 벤치: 언어 모델을 사용한 언어 모델의 세밀한 평가를 위한 원칙적 벤치마크}, author={김승원, 석주영, 조지용, 셰인 롱프레, 김채은, 윤동근, 손귀진, 조예진, 셰이크 샤파야트, 백진헌, 박수현, 황현빈, 조진경, 조효원, 신혜빈, 이성균, 오한석, 이노아, 호남규, 주세준, 고미영, 이윤주, 채형주, 신자민, 장조엘, 예성현, Bill Yuchen Lin, Sean Welleck, Graham Neubig, 이문태, 이경재, 서민준}, year={2024}, eprint={2406.05761}, archivePrefix={arXiv}, 기본클래스={cs.CL}}