Kev 1.0
Kev 1.0 是整個 Kev 家族的首個帶版本號的釋出:四個決策模型讀取一份文件和一組帶型別的問題,在一次前向傳播裡返回各選項上的校準機率,執行在 TypeSafe 的 System One API 之後。其中沒有任何新訓練的內容。它把下一代 Kev 用來對標的 checkpoint、模型卡、評測套件和服務程式碼固定下來,每個 Hub 倉庫都打上同一個 tag(v1.0)。
1.0 裡有什麼
| 模型 | Hub 倉庫 | 權重 revision | 形式 | 基座 | 溫度 | 已驗證上下文 |
|---|---|---|---|---|---|---|
| Kev-0.8B | jaredpalmer/kev-0.8b |
9a45d25e |
LoRA 介面卡 + 指標頭 | Qwen3.5-0.8B-Base (Apache-2.0) | 2.35 | 8,192 tokens |
| Kev-4B | jaredpalmer/kev-4b |
139fdd94 |
LoRA 介面卡 + 指標頭 | Qwen3.5-4B-Base (Apache-2.0) | 2.41 | 8,192 tokens |
| Kev-9B (v2) | jaredpalmer/kev-9b |
b5d8c18e |
LoRA 介面卡 + 指標頭 | Qwen3.5-9B-Base (Apache-2.0) | 2.19 | 8,192 tokens |
| Kev-27B (v2) | jaredpalmer/kev-27b |
28be62e9 |
完整 bf16 權重(51 GB)+ 指標頭 | Qwen3.8-27B,後訓練版 (Apache-2.0) | 1.32 | 65,536 tokens |
頭條數字(fp32 評測路徑,每個模型都在其釋出的溫度下;transfer-v4 測試是鎖定的,每個模型只讀一次):
| Kev-0.8B | Kev-4B | Kev-9B | Kev-27B | Jev | |
|---|---|---|---|---|---|
| 留出資料集:breadth-v1 測試,隨機校正指數 | 23.3 | 38.0 | 41.0 | 52.3 | 54.0 |
| 域外:transfer-v4 開發集準確率 | 0.648 | 0.817 | 0.820 | 0.851 | 0.857 |
| 域外:transfer-v4 鎖定測試準確率 / Brier | 0.697 / 0.397 | 0.838 / 0.224 | 0.852 / 0.199 | 0.889 / 0.154 | – |
| 技能:hard-v1 測試 | 0.665 | 0.803 | 0.834 | 0.918 | – |
| 開發者工具:devtools-v1 測試,全部來源 | 0.637 | 0.756 | 0.791 | 0.790 | – |
| 真實文件:documents-v1 測試 | 0.851 | 0.903 | 0.900 | 0.908 | – |
| MMLU-Pro(transfer-v9 開發集) | 0.230 | 0.565 | 0.590 | 0.675 | 0.840 |
hard-v1、devtools-v1 和 documents-v1 的訓練劃分是每個 Kev 都訓練過的:那幾行測的是已訓練家族的留出條目,不是遷移。breadth-v1 和 transfer-v4 那幾行是沒有任何 Kev 訓練過的資料集。Jev 只在開發劃分和 breadth-v1 測試上讀過。每個數字都通過 docs/claims.json 追溯到一份提交的報告;模型卡(docs/model-cards/)裡有其餘部分,附帶區間。
自上個家族釋出以來有什麼變化
以 2026-09-24 為當前家族首次整理時的 GitHub release kev-family 為基準(Kev-27B v1、Kev-9B v1,以及與此處相同的 Kev-4B 和 Kev-0.8B)。它 2026-09-30 的更新(Kev-27B v2、Kev-9B v2)也列在這裡,因為 1.0 正是它們成為帶版本號釋出一部分的地方。
- Kev-27B v2:完整權重。 把 Qwen3.8-27B 的每一個權重在一個 145,840 條記錄的語料上微調一個 epoch,再與 v1 按 0.85 / 0.15 平均。在測試上與 v1 相比:留出資料集 +1.2 pp [+0.3, +2.2],留出任務家族 +5.3 [+3.7, +6.8],技能、工具與文件 +8.9 [+7.5, +10.3];鎖定的域外測試 0.889 對 0.896,Brier 0.154 對 0.160。在長合同上更差且過度自信(CUAD ECE 0.053 對 0.007)。v1 在
jaredpalmer/kev-27b@v1-lora。 - Kev-9B v2。 v1 加上在 Kev-4B 和 Kev-0.8B 已有的 documents 與 skills 資料上訓練一個 epoch。在測試上與 v1 相比:hard-v1 + devtools-v1 +18.7 pp [+16.7, +20.8],documents-v1 +7.1 [+4.7, +9.2];在鎖定的域外測試上持平(兩者都是 0.852),Brier 0.199 對 0.224。v1 在
jaredpalmer/kev-9b@v1。 - 不再靜默截斷。 伺服器過去會無聲地截斷超過限制的 state。現在它對超過 65,536 tokens 的 state 返回 422,並給出 token 數與限制;
KEV_TRUNCATE_STATES=1可以退回到截斷,而這樣一臺伺服器的每次響應都會帶上truncated。deploy 與 fine-tune 技能把KEV_REF固定到包含此修復以及下面長文件和 MLX 改動的某個 commit(71d4829),Space 也在修復後重新發布。 - 每個規模的長期文件。 評測路徑對數學核心上的長行保留 fp32 注意力,所以 Kev-0.8B、4B 和 9B 在 32k–64k token 的 state 上會耗盡 GPU 視訊記憶體。現在長行在 fp32 下走省視訊記憶體核心:Kev-4B 在 H100 上以 17.2 s 讀取一個 61k token 的 state,權重之上佔用 17.2 GiB,而較短的行逐 bit 保留其 logits。正是這一點讓上面的已驗證上下文長度變得可測。
- Apple Silicon。 MLX 後端按儲存的樣子載入完整權重 checkpoint,不做合併,從而給 Kev-27B 一條 Mac 路徑(預計需要約 51 GB 加工作記憶體;尚未在該規模上跑過)。長期 state 以每次 1,024 tokens 預填充,快取會在一次前向之前逐出,所以 Kev-4B 在 32 GB M5 上以 13.0 GB 峰值服務一個 65,000 token 的 state(新 state 84.5 s,命中快取 716 ms)。
- 核心溯源。 每個評測報告和試驗現在都記錄其 logits 所依賴的核心集(包版本、GPU、dtype、注意力與 DeltaNet 實現),起因是發現評測映象裡的一次核心變更讓 Kev-27B v1 的讀出機率移動了 0.03–0.06,而 Kev 自身程式碼沒有任何改動。
- 評測審計。 三個套件因不適合用於選模型而被移除:scienthoon(模板化工單,有一個問題文本無法回答)、WANLI-v2 / WANLI-v1(四分之一的 gold 標籤是兩位標註者中一位的)以及 TypeSafe 的公開評測(gold 來自兩個閉源模型,問題太少)。頭條面板排除了審計認為無法回答或未標註的條目。過去幾次釋出在這些套件上的數字保留在其記錄裡,不在 1.0 的模型卡上。
- 校準。 Kev-4B 和 Kev-0.8B 釋出的是在其訓練資料留出條目上擬合的溫度。在留出資料集上的一次註冊重擬合對兩者都做了評測,也都沒有采用:它沒有改善 Kev-4B(Brier 差 −0.0001 [−0.0005, +0.0003]),還讓 Kev-0.8B 在其文件與技能家族上校準變差,超出註冊的容差。Kev-9B 和 Kev-27B 釋出的已經是留出資料集溫度。
- 訓練資料已公開。 documents-v1 和 hard-v1 的訓練劃分在
jaredpalmer/kev-suites資料集中,所以小模型的訓練資料可以抓取並做 hash 校驗。 - 已驗證上下文長度。 每張模型卡現在都給出:在 CUAD 合同上的準確率與同一模型在 8k token 時相比保持在 3 pp 以內(95 % 下界)的最長 state。Kev-27B 保持到 65,536 tokens,即服務上限(其 64k 下界為 −2.4 pp)。Kev-0.8B、4B 和 9B 只驗證了它們訓練過的 8,192:三者在 16k 時都已超出容差(下界 −8.5、−3.4 和 −3.7 pp),所以超過 8k token 後,它們對長文件的回答不在該測量的覆蓋範圍內。
- 正式模型卡。 四張卡都遵循同一結構:摘要、詳情、預期用途與範圍外用途、如何使用、訓練資料與流程、評測、侷限、風險、算力、溯源。
已知侷限
- 分佈內增益。 去年的巨大增益出現在訓練劃分就在訓練資料裡的套件上。在沒有任何 Kev 訓練過的資料集上,Kev-27B 在 breadth-v1 測試上比 Jev 低 1.7 個指數點,較小的規模低 13–31 個點。
- 未訓練的長度。 Kev-0.8B、4B 和 9B 訓練時最多 7,552 tokens,Kev-27B 最多 32,768;伺服器接受 65,536。請使用已驗證上下文長度,而不是服務上限。
- Kev-27B 在長合同上不如 v1 準確且過度自信(CUAD 測試 ECE 0.053 對 0.007);在自己的文件上重擬合溫度,或做合同審查時改用
@v1-lora。 - Kev-0.8B 與工具路由。 它的 When2Call 準確率在 documents-and-skills 階段後跌破隨機(測試 0.133);不要用它做工具呼叫路由。
- 日期算術是 27B 以下每個規模最弱的家族(
deadline策略準確率 0.35 / 0.65 / 0.725,對 Jev 的 0.95);KEV_DATE_FACTS=1有幫助。 - 知識由基座決定(MMLU-Pro 0.230–0.675,對 Jev 的 0.840)。
- Kev-9B 在 Mac 上尚未測量,Kev-27B 在 Mac 上預計能裝進 96–128 GB,但尚未執行。
- 選擇。 Kev-27B v2 和 Kev-9B v2 是在已知更早的開發讀數的情況下,按審計後的規則重新選出的;它們的測試餘量偏樂觀。
- 每個模型只有一個溫度,無法重排置信度順序,所以在 5 % 誤差預算下,這些模型在域外自動處理的決策比 Jev 少。
如何執行
git clone https://github.com/jaredpalmer/kev.git && cd kev && uv sync --extra serve
uv run --extra serve python -m kev.serve --run jaredpalmer/kev-4b@v1.0 --port 8009 # CUDA, or MLX on Apple Silicon
從 release tarball:
shasum -a 256 -c SHA256SUMS.txt
tar -xzf kev-4b.tar.gz
uv run --extra serve python -m kev.serve --run kev-4b --port 8009
TypeSafe SDK 原樣可用:TypeSafeClient(api_key="local", base_url="http://127.0.0.1:8009", model="kev-latest")。Kev-27B 需要一張 B200、H200 或 H100 80 GB:--run jaredpalmer/kev-27b@v1.0。要在 Modal 上部署 HTTPS 端點,見 skills/kev-deploy。
資產
每個 tarball 裝著一個 checkpoint 在其權重 revision 上的樣子(LoRA 介面卡、帶溫度的 head.pt、tokenizer 檔案、訓練試驗的 result.json、provenance.json、training_config.json、training_metrics.json 和日誌),Kev 1.0 模型卡作為 README.md,以及鎖定的 transfer-v4 讀數為 locked_test.json。它們由 scripts/build_release_assets.py 從 docs/releases/kev-1.0-assets.json 構建,重新構建得到相同的位元組。其中每個檔案的日期都是 2026-10-01 00:00 UTC,kev.serve 會把它報告為解包 checkpoint 的釋出日期。首批於 2026-10-01 附上的 tarball 把檔案日期標成 1970-01-01,於是 kev.serve 報出 1969-12-31;它們在同一天被這批替換。權重和所有其他檔案逐位元組相同;只有 tarball 的 hash 變了。
| 檔案 | SHA-256 | Checkpoint | 介面卡 / 指標頭 SHA-256 |
|---|---|---|---|
kev-0.8b.tar.gz (46 MB) |
0ae144c7675f0c3f333be0bb878a0f202ab9e6fa84169fb7cb16efe6176c1ef1 |
jaredpalmer/kev-0.8b@9a45d25e |
9b908623… / f400bd12… |
kev-4b.tar.gz (131 MB) |
2e707e2ebd08980dc7881222b7024cea5606401441c1a086afb170ae7784201c |
jaredpalmer/kev-4b@139fdd94 |
90e81735… / dd633435… |
kev-9b.tar.gz (172 MB) |
acd13320b7d1b052ce989f19ca9d1d9ba5219b8beced0ee67337908aef1deb3f |
jaredpalmer/kev-9b@b5d8c18e |
2b2a70cf… / 8e1dab2c… |
Kev-27B 未附帶,因為它 51 GB 的權重超過了 GitHub 每個資產 2 GB 的上限。從 Hub 下載:jaredpalmer/kev-27b@v1.0(權重 commit 28be62e9,head.pt 7968f17b…)。
在每個 Hub 倉庫上,v1.0 tag 指向上傳 Kev 1.0 模型卡的那個 commit。該 commit 只改了 README.md,所以它的權重與第一張表裡的權重 revision 是相同的位元組:kev-0.8b bf75a6a8、kev-4b 6cfce5c2、kev-9b db029f08、kev-27b af0e6d55。
釋出計劃(給維護者;不屬於已釋出的說明)
已於 2026-10-01 完成(記錄 runs/release/kev-1.0.json;PLAN.md「Released: Kev 1.0」)。第 3 步和第 4 步:只改模型卡的 commit,每個模型卡 commit 上打 v1.0(0.8B bf75a6a8、4B 6cfce5c2、9B db029f08、27B af0e6d55;所有其他檔案不變)。第 5 步和第 6 步:資產生成兩次,hash 相同,release 已釋出並標記為 Latest。第 7 步:保留 kev-family,移除其資產,正文改成指向 kev-1.0 的指標,舊說明放在 runs/release/kev-family-notes-retired.md。第 8 步:pin 不變。第 9 步:collection 和 Space 已檢查;Space 未重新發布。釋出前寫就的計劃如下。順序:
-
佔位符:已填(2026-10-01),來自第 28 輪註冊的上下文讀數
runs/r28-readout/context.json(scripts/longdoc_report.py --context-margin -0.03,作用於runs/r28-{4b-r10,08b-r15}-longdoc、runs/r29-9b-r18a-longdoc和runs/r23-27b-k-w85-longdoc;原始runs/r28-context,在釋出溫度下的 ECEruns/r28-context-served),數字在docs/claims.json中。 -
合併本 PR。
-
Hub 模型卡。 每張 1.0 卡只作為
README.md上傳(不帶權重):只改模型卡的 commit 不需要kev.publish;hf upload jaredpalmer/kev-<size> docs/model-cards/kev-<size>.md README.md --commit-message "Kev 1.0 model card (weights unchanged)"。用HfApi().model_info(..., files_metadata=True)檢查adapter_model.safetensors/head.pt(27B:model.safetensors.index.json和每個分片)的 hash 如下。 -
Hub tag。 四個倉庫上都打
v1.0。預設(如規定):打確切的權重 revision;若第 3 步先跑了,就改打模型卡 commit,這樣@v1.0顯示的是 1.0 卡(權重逐位元組相同;兩個 commit 都記到 PLAN.md)。倉庫 v1.0目標(權重)介面卡 / 指標頭 sha256 jaredpalmer/kev-0.8b9a45d25eb2ab761841196625383fa1dff0e56c1e9b908623…/f400bd12…jaredpalmer/kev-4b139fdd94f1b6a6ad80cc15e08fcb99cac885a10190e81735…/dd633435…jaredpalmer/kev-9bb5d8c18e44c60888d138b65cb6507ff0a5a448a02b2a70cf…/8e1dab2c…jaredpalmer/kev-27bmain(今天是ef78cc8a34d5f426fb229c52089db189218cfe5c:權重28be62e9,其後三個只改模型卡的 commit)權重 d27af6ab…/ 指標頭7968f17b…hf repos tag create jaredpalmer/kev-0.8b v1.0 --revision 9a45d25eb2ab761841196625383fa1dff0e56c1e -m "Kev 1.0" hf repos tag create jaredpalmer/kev-4b v1.0 --revision 139fdd94f1b6a6ad80cc15e08fcb99cac885a101 -m "Kev 1.0" hf repos tag create jaredpalmer/kev-9b v1.0 --revision b5d8c18e44c60888d138b65cb6507ff0a5a448a0 -m "Kev 1.0" hf repos tag create jaredpalmer/kev-27b v1.0 --revision <main at release> -m "Kev 1.0" -
資產。
uv run python scripts/build_release_assets.py --release docs/releases/kev-1.0-assets.json --out /tmp/kev-1.0-assets構建kev-0.8b.tar.gz、kev-4b.tar.gz、kev-9b.tar.gz(各自含:上述 revision 上的 Hub 快照,即介面卡、帶溫度的head.pt、tokenizer 檔案、試驗的result.json、provenance.json、training_config.json和training_metrics.json;1.0 卡作為README.md;鎖定的讀數作為locked_test.json),以及SHA256SUMS.txt和manifest.json(每個成員的 sha256)。若某次下載的介面卡或指標頭 hash 與規格不符,它會拒絕。Kev-27B 不是資產(51 GB;GitHub 單個資產上限 2 GB):說明指向 Hub。 -
GitHub release。 在合併 commit 上打 tag
kev-1.0;以這些說明中已釋出的部分(本節以上全部)為正文建立 draft release,附上三個 tarball 和SHA256SUMS.txt,下載回來跑shasum -a 256 -c SHA256SUMS.txt,解包一個並服務它,然後釋出並標記為 Latest。 -
每個規模一個 release。 釋出策略在一個 GitHub release 裡只保留每個規模的最佳版本。
kev-1.0釋出後,kev-family與它重複:刪掉它的三個 tarball 和SHA256SUMS.txt,正文改成指向kev-1.0的指標(或刪除該 release;由 Jared 定)。更早的版本留在各模型卡列出的 Hub tag 上。 -
部署 pin。
skills/kev-deploy和skills/kev-finetune固定KEV_REF71d4829;1.0 的 checkpoint 不需要更新的程式碼。只有當後續的服務修復應隨 1.0 一起釋出時,才移動這個 pin。 -
Collection 與 Space。 Kev collection 已經列出四個倉庫。Space 從
main服務 Kev-4B 和 Kev-0.8B,那就是 1.0 權重;除非kev/model.py、kev/api.py或kev/checkpoint.py在上次釋出後改過,否則無需重新發布。