Brahmi Token Injection을 통해 Devanagari LLM 토큰 비용을 33.8% 절감하는 방법
요약
Brahmi Token Injection 기술을 통해 Devanagari(힌디어) 스크립트의 토큰 효율성을 개선한 Bharat-Tiny-LLM v2를 소개합니다. 이 모델은 표준 토크나이저 대비 토큰 수를 평균 33.8% 절감하여 비용과 처리 속도 문제를 해결합니다.
핵심 포인트
- Brahmi Token Injection을 통한 힌디어 토큰 수 33.8% 평균 절감
- 토큰 압축을 통해 메모리 대역폭 소비 및 API 비용 감소
- 880MB의 초소형 크기로 높은 처리량과 품질 유지
- 표준 BPE 토크나이저의 서브 바이트 파편화 문제 해결
Bharat-Tiny-LLM v2 소개: Devanagari LLM 토큰 비용 33.8% 절감
영어 중심의 학습 데이터셋으로 구축된 다국어 트랜스포머 (Transformer) 모델은 라틴 문자가 아닌 스크립트에 심각한 **"토큰 세금 (Token Tax)"**을 부과합니다. Devanagari (힌디어) 스크립트를 처리할 때, 표준 바이트 쌍 인코딩 (Byte-Pair Encoding, BPE) 토크나이저 (Tokenizer)는 전체 단어를 파편화된 서브 바이트 (sub-byte) 시퀀스로 분해합니다.
프로덕션 환경에서 인디어 (Indic) LLM을 배포하는 개발자들에게 이러한 토큰 팽창은 다음과 같은 문제를 야기합니다:
- 3배 높은 메모리 대역폭 소비 (Memory Bandwidth Consumption)
- 3배 느린 초당 토큰 처리량 (Token-per-Second Throughput)
- 부풀려진 클라우드 API 비용
- 조기 컨텍스트 윈도우 (Context Window) 고갈
이러한 효율성 장벽을 해결하기 위해, 우리는 Brahmi Token Injection을 설계하였으며 Bharat-Tiny-LLM v2의 오픈 웨이트 (open weights)를 공개했습니다.
다음은 성과, 벤치마크, 그리고 오픈 웨이트 모델 제품군을 로컬에서 실행하는 방법에 대한 내용입니다.
혁신: 33.8% 토큰 압축
다음 힌디어 문구를 고려해 보십시오:
"ज़रूरी बात है क्या करते हो"
표준 1.5B 다국어 베이스 모델 (base model)에서 이 프롬프트를 인코딩하려면 26개의 토큰이 필요합니다.
Bharat-Tiny-LLM v2를 사용하면 정확히 동일한 문구에 단 11개의 토큰만 필요하며, 이는 대화형 텍스트에 대해 토큰 수 58% 감소를 나타냅니다. 광범위한 평가 코퍼스 (evaluation corpora) 전반에 걸쳐 Bharat-Tiny-LLM v2는 평균 33.8%의 전체 토큰 감소를 달성했습니다.
[Standard Tokenizer] ज़रूरी बात है क्या करते हो ➔ 26 Tokens 🔴
[Bharat-v2 Tokenizer] ज़रूरी बात है क्या करते हो ➔ 11 Tokens 🟢 (58% Savings)
성능 및 품질 벤치마크
어휘 효율성을 최적화함으로써, Bharat-Tiny-LLM v2는 모델 크기를 880 MB의 초소형 크기로 유지하면서도 상당한 처리량 및 품질 이득을 달성합니다:
| 벤치마크 지표 | 표준 베이스 모델 (Standard Base Model) | Bharat-Tiny-LLM v2 | 달성 차이 (Achievement Delta) |
|---|---|---|---|
| 힌디어 1,000자당 토큰 수 | ~950 tokens | ~630 tokens | 33.8% 토큰 감소 |
| ... |
프롬프트 압축 예시
| Hindi Prompt | Standard Tokens | Bharat-v2 Tokens | Token Savings |
|---|---|---|---|
"ज़रूरी बात है क्या करते हो" | 26 tokens | 11 tokens | **58% 절감 |
| ... |
High-Level Innovation: Brahmi Token Injection (고수준 혁신: Brahmi Token Injection)
표준 토크나이저(Standard tokenizers)는 빈도가 높은 인도어 하위 단어(Indic subwords)에 대한 표현력이 부족합니다. Brahmi Token Injection은 다음과 같은 방식으로 이 문제를 해결합니다:
- 정밀한 어휘 확장 (Surgically Expanding Vocabulary): 스크립트 특화 하위 단어를 토크나이저 사전(tokenizer dictionary)에 직접 주입합니다 (어휘를 151,936개에서 152,236개 토큰으로 확장).
- 타겟 임베딩 및 어텐션 정렬 (Targeted Embedding & Attention Alignment): 유창성과 의미론적 추론(semantic reasoning)을 유지하기 위해, 어텐션 투영 레이어(attention projection layers)를 미세 조정(fine-tuning)하는 동시에 새로 도입된 토큰 표현을 정렬합니다.
(참고: 상세한 수학적 공식, 훈련 로그 및 어블레이션 연구(ablation studies)는 향후 발표될 연구 논문에 게재될 예정입니다).
Quickstart: Open Weights 로컬 실행하기
Option A: PyTorch & Transformers (Linux / Windows / CUDA GPUs)
import torch
from transformers import AutoModelForCausalLM, AutoTokenizer
...
Option B: Apple Silicon MLX (Mac / iPhone / iPad)
from mlx_lm import load, generate
model, tokenizer = load("eulogik/Bharat-Tiny-LLM-v2-MLX")
...
Open Weights & License (오픈 웨이트 및 라이선스)
본 모델 제품군, 웨이트(weights) 및 MLX 양자화(quantizations) 모델은 상업적, 기업용 및 연구 배포를 위해 오늘 Apache 2.0 라이선스로 공개되었습니다.
- PyTorch Open Weights: huggingface.co/eulogik/Bharat-Tiny-LLM-v2
- Apple Silicon MLX Weights: huggingface.co/eulogik/Bharat-Tiny-LLM-v2-MLX
*Built by Eulogik
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기