# 토큰 벤치마크

[English](README.md)

이 디렉터리는 Ollama에서 한국어와 영어 입력 토큰 동작을 비교하기 위한 프롬프트 픽스처와 벤치마크 출력을 담고 있습니다.

벤치마크 스크립트는 Ollama를 직접 호출합니다. PolyHarness FastAPI 프록시 경로를 테스트하지 않습니다.

## 파일

- `long-chat-ko.txt`: 한국어 긴 프롬프트 픽스처.
- `long-chat-en.txt`: 같은 의미의 영어 긴 프롬프트 픽스처.
- `results/latest/raw-results.jsonl`: 최신 기록 실행의 모든 Ollama 호출.
- `results/latest/paired-results.csv`: 한국어/영어 페어 비교.
- `results/latest/summary.md`: 사람이 읽기 쉬운 집계 요약.

## 기본 실행

```bash
.venv/bin/python benchmarks/ollama_token_benchmark.py \
  --model gemma4:26b-a4b-it-q4_K_M \
  --repeats 1 3 6 \
  --out-dir docs/benchmarks/results/latest
```

기본 실행 규모:

```text
20 prompt pairs x 3 repeat levels x 2 languages = 120 Ollama calls
20 prompt pairs x 3 repeat levels = 60 paired comparisons
```

합성 데이터셋은 일상 채팅, 여행, 업무, 교육, 비즈니스, 금융, 가족, 커뮤니티, 커리어, 라이프스타일 시나리오를 포함합니다.

## 큰 실행

누적 대화 컨텍스트를 흉내 내려면 더 높은 반복 값을 사용합니다.

```bash
.venv/bin/python benchmarks/ollama_token_benchmark.py \
  --model gemma4:26b-a4b-it-q4_K_M \
  --repeats 1 3 6 10 20 \
  --timeout 1800 \
  --out-dir docs/benchmarks/results/large
```

큰 실행 규모:

```text
20 prompt pairs x 5 repeat levels x 2 languages = 200 Ollama calls
20 prompt pairs x 5 repeat levels = 100 paired comparisons
```

## 주요 지표

```text
1 - (english_prompt_eval_count / korean_prompt_eval_count)
```

총 토큰 절감률도 기록하지만, 출력 길이가 실행마다 달라질 수 있어 프롬프트 토큰 절감률보다 불안정합니다.
