0. Abstract
현황
- LLM이 사용자가 원하는 언어로 일정하게 텍스트를 생성하지 못함.
제안
- Language Confusion Benchmark(LCB)를 만들어 총 15개의 언어를 대상으로 영어/다국어 프롬프트를 사용하여 테스트 진행
실험 결과
- LLaMA Instruct와 Mistral 모델이 Language confusion이 심함.
- Base Model과 영어 중심의 instruct 모델이 language confusion에 더 취약
- 복잡한 prompt와 sampling temperature가 높을수록 혼동이 심해짐.
- few-shot prompt, 다국어 SFT(Supervised Fine-Tuning), 선호 조성(Preference Tuning)을 통해 부분적으로 완화 가능
1. Introduction
현황 및 문제 상황
- 초기 LLM들은 영어에 초점을 맞췄지만 최근의 모델들은 더 multilingual을 지원하고 있음.
- but, LLM은 latency, 비용 증가, 성능 저하로 인해 non-English 사용자들에게 동일한 효과를 제공하지 못함.
- 실질적으로 유용하기 위해서는 사용자의 의도를 정확하게 이해하고 형식, 내용 모두 적절하게 응답해야함.
- content와 관련된 오류(hallucination)는 평가하기 힘든 반면, 형식 관련 오류는 혼란스럽거나 이해할 수 없는 응답 유발 가능.
- LLM이 사용자가 원하는 언어 또는 문맥에 맞는 적절한 언어로 일관되게 텍스트를 생성하지 못함. → Language Confusion
- full-response confusion, line-level confusion, word-level confusion

제안
- line-level, word-level에서 language confusion 조사.
- 각 level에서 연구할 부분
- 단일 언어 생성: 사용자가 특정 언어로 질문을 하면 그 언어로 응답할 것을 암묵적으로 기대
- 교차 언어 생성: 사용자가 명시적으로 다른 언어로 응답하라고 지시하는 경우
- 총 15개의 언어를 포함하는 Language Confusion Benchmark 제안
실험 결과
- Llama, Command R, Mistral, OpenAI 시리즈를 포함한 최신 LLM 평가
- Llama Instruct와 Mistral은 여러 언어에서 심각한 언어 혼동을 보임.
- Command R, OpenAI 계열 모델은 monolingual에서는 훨씬 좋은 성능을 보였지만, cross-lingual에서는 가장 강력한 모델조차도 언어를 정확히 유지하지 못하는 경우가 있었음.
주요 기여점
- Language Confusion이라는 문제 정의
- 측정할 수 있는 벤치마크와 평가 지표 개발 (LCB)
- 여러 모델을 실험적으로 비교 분석
- LLM의 language confusion을 완화하기 위한 방법들 제안
2. Language Confusion Benchmark
Language confusion을 평가하기 위해 LCB 제작하였고 이는 현실적인 사용 사례를 반영하는 다양한 프롬프트로 구성됨. 또한 다양한 언어 포함.
2.1 Generation settings
두 가지 설정해서 language confusion을 측정
Monolingual generation
- 사용자가 어떤 언어 $l$로 질문을 하면 그에 대한 응답도 동일한 언어로 받기를 기대함.
- 대부분이 자신의 모국어로 기술과 상호작용하는 것을 선호
Cross-lingual generation
- 사용자가 언어 $l$로 모델에게 다른 언어 $l’$로 답하라고 명시적으로 언급하는 경우
- 실험에서는 instruction language를 English로 설정
2.2 Language Confusion Metrics
Language Identification(LID)를 활용하여 language confusion을 탐지
Line-level detection
- 응답을 줄바꿈 문자 기준으로 문장 단위로 나눈 뒤, 각 줄이 사용자가 원하는 언어와 일치하는지 fastText로 검사
- fastText: Meta에서 만든 언어 식별 모델. LLM을 쓰는 것보다 훨씬 빠르고 저렴함.
Word-level detection
- 두 가지 방식의 heuristic 접근법을 통해 정확도가 높은 조건에서만 단어 수준 language confusion 측정
- non-Latin(아랍, 힌디, 일본, 한국, 러시아, 중국어)에서는 language confusion이 대부분 영어 단어가 나오는 형태로 발생
- → 자주 사용되는 일부 단어(외래어처럼 자주 쓰이는 영단어)를 제외하고 일반적으로 사용되지 않는 영어 단어만 탐지
- Latin(독일, 영어, 스페인, 프랑스, 인도네시아, 이탈리아, 포르투갈, 터키, 베트남어)에서는 단어 수준 혼동이 드묾.→ 해당 언어의 unicode 범위를 벗어난 token을 탐지하여 외부 언어로 간주
- → 영어랑 글자가 비슷해서 영어 단어가 섞여도 눈치 채기 어려움.
Binary evaluation
- 응답이 완전히 올바른 언어로 작성된 경우에만 정답으로 간주.
- Binary metrics를 계산하여 다음 세 가지 경우 탐지
- 잘못된 언어로 된 줄이 응답에 포함되어 있는가
- non-Latin 언어의 경우, 영어 단어가 끼어있는가
- Latin 언어의 경우, 유니코드 범위를 벗어난 문자가 있는가
- Language confusion 지표 중 두 가지 핵심 지표
- Line-level pass Rate(LPR)
- 모든 줄이 사용자가 원하는 언어와 일치하는 응답 비율
- 전체 집합 $$R$$, 문장 수준 오류가 포함된 응답 집합 $$E_L$$
- Word-level pass rate(WPR)
- 전체 집합 $R$, 문장 수준 오류가 포함된 응답 집합 $E_L$, 단어 수준 오류가 있는 응답 $E_W$
- Language confusion pass rate (LCPR)
- LPR과 WPR의 조화 평균(균형 있게 종합적으로 평가)
- 정확한 언어로 응답하지 못하는 심각한 문제가 있는 경우, 이를 더 명확하게 보여주는 지표
- Line-level pass Rate(LPR)
2.3 Data sources
- monolingual: 2,600개 프롬프트
- cross-lingual: 4,500개 프롬프트

Aya
- 7개 언어로 작성된 총 250개의 사람이 직접 쓴 원본 프롬프트를 포함
Dolly
- 6개 언어의 프롬프트 200개
Okapi
- Alpaca의 영어 지침 52,000개를 ChatGPT가 26개 언어로 번역한 것
ShareGPT
- 대부분 영어 기반의 사용자 프롬프트 90,000개
Native prompts
- 일본어와 한국어, 스페인어, 프랑스어에 대해 원어민 주석자들이 프롬프트 생성
Complex prompts
- 사람이 작성한 복잡한 영어 프롬프트
2.4 Data Filtering and Processing
언어 식별 정확도를 높이기 위해 불완전하거나 혼란 유발 요소 제거
3. Experiments
Models
- LLaMA 계열 Command 계열 Mistral 계열 OpenAI 계열
- 각 프롬프트당 최대 100개의 토큰만 생성하며, nucleus sampling기법 사용($p = 0.75, T = 0.3$)


Monolingual generation
Command 계열과 GPT 계열 모델은 LPR에서 전체적으로 좋은 성능을 보임.
LLaMA 2/3와 Mistral 계열은 일관되게 올바른 언어를 생성하지 못함.
대부분의 모델은 단어 수준 정답률(WPR)에서 비슷한 범위였고, 라틴 문자를 사용하는 언어에서 비라틴 언어보다 성능이 더 좋았음.
Cross-lingual generation
Command R / R+ Refresh는 원래 모델보다 훨씬 좋은 성능을 보임.