Qwen3 8B AWQ · vLLM · 2026-08-31

영어를 섞으면더 잘 풀까?

Qwen에게 같은 문제를 다섯 가지 말투로 보여줬습니다. 답은 단순하지 않았습니다. 문제 종류에 따라 이긴 말투가 달랐습니다.

Scoreboard

문제 종류별 성적표

막대는 정답률입니다. 각 문제를 한 번씩, 같은 설정으로 풀게 했습니다. 점수는 미리 정한 제외 기준을 적용한 strict-primary 결과입니다.

BigCodeBench-Instruct Hard

Pass@1 · n=87
EN
21.8%
KO
18.4%
MIX1
16.1%
MIX2
12.6%
MIX3
16.1%

87개 중 조건에 따라 정답 여부가 달라진 문제: 24개

BIRD Mini-Dev SQLite

Execution accuracy · n=63
EN
38.1%
KO
34.9%
MIX1
38.1%
MIX2
39.7%
MIX3
36.5%

63개 중 조건에 따라 정답 여부가 달라진 문제: 19개

FinanceReasoning Hard

PoT accuracy · n=105
EN
58.1%
KO
62.9%
MIX1
60.0%
MIX2
61.0%
MIX3
61.0%

105개 중 조건에 따라 정답 여부가 달라진 문제: 21개

What actually happened?

실제 문제와 Qwen의 출력

숫자만 보면 감이 잘 안 옵니다. 아래 세 사례는 같은 내용인데 말투가 달라지자 생성된 코드가 바뀐 경우입니다.

01

ZIP 파일을 내려받아 압축 풀기

BigCodeBench/1006

문제

지정된 URL에서 ZIP 파일을 내려받고 지정된 디렉터리에 풉니다. 네트워크·파일 형식·손상 ZIP 오류를 처리해야 합니다.

생성된 코드의 결정적 차이

EN · 통과
zip_ref.extractall(download_path)
return os.path.join(
  download_path,
  "extracted_contents"
)
KO · 실패
extract_path = os.path.join(
  download_path,
  "extracted_content"
)
zip_ref.extractall(extract_path)
return extract_path

KO 답은 그럴듯하지만 테스트가 기대한 경로 규약과 달랐습니다. 이 사례는 EN과 MIX2만 통과했습니다.

02

검사 기록이 두 건 이상인 환자 찾기

BIRD/1239

KO → MIX2

KO: 헤마토크릿 수치가 정상 범위를 초과한 검사실 검사가 두 건 이상인 환자의 ID와 연령을 제시하세요.

MIX2: hematocrit 수치가 normal range를 초과한 laboratory test가 두 건 이상인 환자의 ID와 연령을 제시하세요.

Qwen이 만든 SQLite

KO · 실패
SUBTRACT(
  YEAR(CURRENT_TIMESTAMP),
  YEAR(p.Birthday)
) AS Age
MIX2 · 통과
strftime('%Y', 'now')
- strftime('%Y', p.Birthday)
AS Age

KO에서는 SQLite가 지원하지 않는 함수를 썼고, MIX2에서는 SQLite 문법으로 바꿨습니다. MIX1·MIX2·MIX3는 통과하고 EN·KO는 실패했습니다.

03

두 거래의 평균 effective spread 계산

Finance/test-2013

주어진 값

거래 1의 bid/offer는 41.45/41.50, 거래 2는 41.73/41.75입니다. 평균 effective spread를 소수점 셋째 자리까지 구합니다.

계산식

EN · 실패
spread_1 = (41.50-41.45)/2
spread_2 = (41.75-41.73)/2
answer = 0.0175
KO · 통과
spread_1 = 41.50-41.45
spread_2 = 41.75-41.73
answer = 0.035

EN 출력은 차이를 다시 2로 나눴습니다. KO와 세 MIX 출력은 0.035를 계산해 모두 통과했습니다.

Second model check

EXAONE으로 다시 물어봤더니

EXAONE 3.5 2.4B에도 같은 266개 문제와 다섯 조건을 적용했습니다. Qwen에서 보인 승자 구도가 그대로 반복되지는 않았습니다.

TaskQwen의 최고 조건EXAONE의 최고 조건재현 여부
BigCodeBench HardEN 21.8%EN·MIX3 9.2%
KO 8.0%
EN > KO 방향은 반복
BIRD SQLiteMIX2 39.7%
EN 38.1%
EN 19.0%
MIX2 9.5%
혼용 효과는 반대로 바뀜
FinanceReasoning HardKO 62.9%
EN 58.1%
EN 25.7%
KO 21.9%
EN–KO 순서가 뒤집힘
쉽게 말하면: “영어를 조금 섞으면 늘 좋아진다”는 규칙은 아직 없습니다. 두 모델이 같은 방향을 보인 것은 코딩에서 EN이 KO보다 높았다는 점뿐이고, 그마저 EXAONE에서는 MIX3와 동률입니다.

Why can wording change code?

말투가 바뀌면 다음 토큰도 바뀐다

Qwen은 문제를 하나의 고정된 뜻으로 바꾼 뒤 답을 꺼내는 계산기가 아닙니다. 입력 토큰의 흐름을 따라 다음 토큰을 고르기 때문에, 뜻이 같아도 표현이 달라지면 다른 구현으로 갈 수 있습니다.

1

내용은 같습니다

동일한 표·스키마·숫자·함수 시그니처를 사용합니다.

2

말투만 바꿉니다

EN, KO, 그리고 영어가 단계적으로 늘어나는 MIX1~3를 만듭니다.

3

생성 경로가 갈립니다

같은 greedy 설정이어도 입력이 달라지면 생성되는 코드와 계산식이 달라집니다.

4

실행해서 채점합니다

코드 테스트, SQL 실행 결과, 금융 계산 결과가 맞는지 확인합니다.

아직 말할 수 없는 것

Qwen 한 모델을 조건당 한 번 실행한 탐색 결과입니다. 작은 차이를 일반 법칙이나 통계적 결론으로 주장할 수는 없습니다.

지금 말할 수 있는 것

언어 조건이 실제 출력과 정답 여부를 바꿨고, 그 방향은 task마다 달랐습니다. 그래서 다음 모델에서도 같은 경향이 재현되는지 확인할 가치가 있습니다.