SmolLM2-1.7B-Instruct — 모델 카드
SmolLM2-1.7B-Instruct — 모델 카드
SmolLM2는 135M, 360M, 1.7B 세 가지 크기의 컴팩트 모델 시리즈예요. 1.7B 변형은 전작 SmolLM1-1.7B 대비 명령 따르기, 지식, 추론, 수학에서 큰 발전을 보여줘요. 온디바이스에서 돌리기엔 가볍고 다양한 작업은 해결할 수 있게 설계됐죠.
훈련
- 11T 토큰으로 훈련. FineWeb-Edu, DCLM, The Stack + 새로 큐레이션한 수학·코딩 데이터셋 조합
- instruct 버전은 SFT(공개 데이터셋 + 자체 큐레이션) 후 DPO(UltraFeedback)로 정렬
- Argilla의 Synth-APIGen-v0.1 같은 데이터셋 덕분에 텍스트 재작성, 요약, 함수 호출도 지원
transformers로 쓰기
from transformers import AutoModelForCausalLM, AutoTokenizer
checkpoint = "HuggingFaceTB/SmolLM2-1.7B-Instruct"
device = "cuda" # or "cpu"
tokenizer = AutoTokenizer.from_pretrained(checkpoint)
model = AutoModelForCausalLM.from_pretrained(checkpoint).to(device)
messages = [{"role": "user", "content": "What is the capital of France."}]
input_text = tokenizer.apply_chat_template(messages, tokenize=False)
inputs = tokenizer.encode(input_text, return_tensors="pt").to(device)
outputs = model.generate(inputs, max_new_tokens=50, temperature=0.2, top_p=0.9, do_sample=True)
print(tokenizer.decode(outputs[0]))
TRL CLI로 채팅
pip install trl
trl chat --model_name_or_path HuggingFaceTB/SmolLM2-1.7B-Instruct --device cpu