olmo2-0.837b-zh-en-sft

从零训练的 0.837B 中英双语对话模型(SFT 版,未做偏好对齐)。纯个人学习项目。

License Parameters Context Base

模型信息

项目
架构 OLMo2(reordered norm、QK-norm、tied embedding),16 层 / d_model 1536 / 16 头 / SwiGLU 6144
参数量 837,037,056(0.837B)
上下文 4096
Tokenizer Qwen2.5(词表 151665),chat 模板为 Qwen 风格
预训练 132.1B tokens 单遍(中英约 3:7,悟道 2.0 + Dolma 1.7 子集),62,999 步,8×A100
SFT 509,515 条 / 129.7M tokens(中文 30.0%),3 epoch,lr 2e-5,4×A100

本仓库为 SFT 产物;DPO 对齐版见 zhubolin/olmo2-0.837b-zh-en-dpo(推荐使用)。

Chat 模板使用 <|im_start|> / <|im_end|> 特殊标记包裹消息。

使用方法

from transformers import AutoModelForCausalLM, AutoTokenizer

path = "zhubolin/olmo2-0.837b-zh-en-sft"
tok = AutoTokenizer.from_pretrained(path)
model = AutoModelForCausalLM.from_pretrained(path, dtype="bfloat16", device_map="auto")

messages = [{"role": "user", "content": "保持健康的三个提示。"}]
text = tok.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tok(text, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=512, do_sample=False)
print(tok.decode(out[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True))

生成停止符:eos_token_id = [151645, 151643]<|im_end|> / <|endoftext|>)。

评测

OpenCompass(core 数据包子集,约 9.5K 题,SFT/DPO 同题对比):

OpenCompass评测对比

局限性

  • 0.8B 小模型:事实性知识薄弱,会产生幻觉,不要用于事实查询
  • 未做偏好/安全对齐,回答风格与拒答行为未调优。
  • 纯语言数据训练,无代码、数学专项能力。
  • 仅供学习交流。
Downloads last month
907
Safetensors
Model size
0.8B params
Tensor type
BF16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support