[Lane 4 · numerics] tokenizer.json parity — HF golden encode fixtures for every shipped family that loads a tokenizer.json
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 55/100
- Issue 类型
- 功能
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- python
调研方向
Start with the fromTokenizerJson call sites listed in #471 and audit llm-inference/* and llm-runtime/* to identify tokenizer families. Read the five reference fixture rows in #471, then create scripts/tokenizer_goldens.py using pinned tokenizers and huggingface_hub versions. Generate the family and Laya JSON files under tests/tokenizer-goldens/; done means each has the required metadata and cases, and the audit and results are reported on #471.
由索引模型根据 Issue 内容生成。
描述
Sub-issue of #471 (tokenizer.json parity gate).
Lane: 4 · Ground truth / CI
Skill needed: Python (tokenizers, huggingface_hub), reading Kotlin file names. No Kotlin.
Size: s (a few hours, most of it finding which families ship a tokenizer.json)
Blocked by: nothing
What to do
- Audit which model families in
llm-inference/*andllm-runtime/*load a Hugging Facetokenizer.json(SafeTensors paths) — start from the call sites listed in #471 and grep forfromTokenizerJson. Expected: Gemma 4 (SafeTensors), Llama 3.2 and Qwen via the kllama CLI, SmolLM2, BitNet, Apertus, Gemma3n, Moonshine, BERT/MiniLM; confirm rather than assume. Post the list as a comment on #471. - Write
scripts/tokenizer_goldens.py(or reuse the engine's script of the same name once SKaiNET#1321 lands it): input = Hub repo id, revision, path; output = JSON withrepo,revision,path,sha256,tokenizers_version,vocab_size_with_added, andcasesof{text, ids, tokens}fromTokenizer.from_file(p).encode(text, add_special_tokens=False). - Texts: the five #471 fixture texts plus ~15 targeting one feature each — a lone special token (
<bos>,<|im_start|>), tabs/newlines, a 24-space run, CJK, Arabic, an emoji with skin-tone modifier, decomposed vs composed accents, digits, the empty string, a single space, a chat-template-rendered single turn for chat families. - Generate one golden per audited family at a pinned Hub revision, plus the two Laya files (
convaiinnovations/laya@7b928d828b7b0e022f929d9bd2e44165aa270148, pathstokenizer/tokenizer.jsonandmultilingual/tokenizer/tokenizer.json). Commit them undertests/tokenizer-goldens/<family>.json. Do not commit the tokenizer files; gated models (Gemma, Llama) are fine because only ids are stored. - Script header: exact
pippins and the command line that regenerates everything.
Acceptance
- Family audit comment on #471
- One golden JSON per family that loads a
tokenizer.json, plus the two Laya files, each withsha256andtokenizers_version - The five #471 reference rows reproduced byte-for-byte
- Result reported back on #471
Notes
For gated repositories note HF_TOKEN is required to regenerate; the committed ids are not gated. If a family's tokenizer.json cannot be loaded by tokenizers itself (it happens with hand-edited files), record that in a "note" field — it is a finding for the maintainers.
- 主要语言
- Kotlin
- 星标
- 8
- 派生
- 3
- 平均合并
- 1 天 16 小时
- 30 天内合并 PR
- 48
环境准备
这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
SKaiNET-developers/SKaiNET-transformers 的其他 Issue
-
documentation good first issue size:xs skill:docs sub-issue
难度 2/5 1-3 小时 新手友好度 78/100
SKaiNET-developers/SKaiNET-transformers#478 · 1 条评论 ·
维护者通常 1 天内回复
-
enhancement skill:kotlin-core
难度 4/5 3-5 天 新手友好度 48/100
SKaiNET-developers/SKaiNET-transformers#502 ·
维护者通常 1 天内回复
-
bug
难度 4/5 3-5 天 新手友好度 48/100
SKaiNET-developers/SKaiNET-transformers#483 ·
维护者通常 1 天内回复
-
coding good first issue size:s skill:kotlin-core sub-issue
难度 4/5 1-2 天 新手友好度 64/100
SKaiNET-developers/SKaiNET-transformers#477 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 4/5 3-5 天 新手友好度 25/100
SKaiNET-developers/SKaiNET-transformers#458 ·
维护者通常 1 天内回复
查看 SKaiNET-developers/SKaiNET-transformers 的全部 Issue
相似的 Issue
-
good first issue help wanted
难度 2/5 1-3 小时 新手友好度 66/100
dafonton77-tech/Cadreenf#11 ·
-
design good first issue help wanted
难度 2/5 1-3 小时 新手友好度 68/100
scribe-org/Scribe-Android#739 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 85/100
graphql-java-kickstart/graphql-java-tools#893 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 64/100
ssalggnikool/Navic#688 ·
维护者通常 1 天内回复
-
enhancement good first issue
难度 2/5 1-3 小时 新手友好度 76/100
xybrid-ai/xybrid#661 · 1 条评论 ·
维护者通常 1 天内回复