本頁譯自英文文件。指令、識別名稱與範例保持原樣。執行環境 7.24.4 · SDK 2.6.7。 英文原文
AX Engine 模型選擇
狀態:現行 範圍:現行狀態 上次審閱:2026-09-20 負責人:ax-code 執行環境
在符合條件的 Apple Silicon Mac 上,AX Code 透過 AX Engine(本機) 只提供這兩個開發套組。Tiel Coder 是預設;Cyber-Tiel Coder 是替代選擇。
| 模型 | Hugging Face 儲存庫 | AX Code 的選擇 |
|---|---|---|
| Tiel Coder 35B A3B MXFP4 MTP | AutomatosX/AX-Tiel-Coder-35B-A3B-MLX-AXQ-MXFP4-MTP | tiel-coder-35b-axq-mxfp4(預設) |
| Cyber-Tiel Coder 35B A3B MXFP4 MTP | AutomatosX/AX-Cyber-Tiel-Coder-35B-A3B-MLX-AXQ-MXFP4-MTP | cyber-tiel-coder-35b-axq-mxfp4 |
這些別名分別釘選修訂 5ab39b24bfd7f65203be9b7823b1840486f58b6d 與 fe05e871ec69ad9ae8eac01fd285555514ac7daf。兩者都使用 mlx 選擇器,以保留發行者的 MXFP4 套件。模型卡描述的是開發用的重新量化,沒有經過認證的品質對等,也沒有 MTP 速度的宣稱;選取它們並不能建立原生執行,也不能建立速度提升。
AX Code 隨附已簽章的 AX Engine 7.5.7 發行,其中包含來自提交 51137c71a6794964d52c32c95e275c0923ed8d0b 的 Tiel sidecar 命名空間載入器修正。較舊的 Homebrew 7.4.0 二進位檔沒有該修正,並會以 MlxMtpRequiredButUnavailable 拒絕這些套組。請保持 MTP 為必要;明確的執行環境覆寫也必須包含該修正。原生 prefill 與 decode 測量 保留原本受測組建的身分,並不為較新的發行認證效能。
Qwen3.8 27B、Ornith、Qwen3-Coder-Next,以及其他所有儲存庫,都排除在新的受管理選擇與下載之外。每個被選取的儲存庫只出現一次。已設定的別名與較舊的快取修訂,在探索之後不會再增加選項。其他供應商,以及另外設定的本機回送附加介面,仍保持原有行為。若要執行 AX Engine 自己的稠密預設,請啟動 ax-engine serve qwen3.8-27b:axq 並附加該本機端點;在產品路徑上測得的 MTP,於 Mac mini M4 Pro 64 GB 的 decode 是 31.05 tok/s,於 M5 Max 128 GB 是 decode 76.90 tok/s、prefill 795.3 tok/s。這些數字不是 Tiel 的完成 tok/s,也不是 AX Code 的工作階段速度。請見 Tiel 同儕摘要。
查看可用模型
ax-code providers ax-engine models --json
ax-code providers ax-engine models --refresh --json
重新整理會讀取 Hugging Face 中繼資料,而不下載權重,也不會啟動模型。隨附的中繼資料可以離線使用,並在較舊快取缺少所選儲存庫時加以補充。目前已有的修訂不會被悄悄換成另一個隨附修訂。選擇仍然需要有效的來源中繼資料;儲存庫限制並不能建立原生能力。
GET /provider/ax-engine/models 傳回執行中 CLI 的目錄,包含每個模型的精確 ID、儲存庫、量化、本機狀態、記憶體與磁碟估計,以及驗證狀態。外部圖形介面使用這個執行環境 API。若它顯示的是較舊清單,請檢查它啟動的 CLI 與其版本。AX Coder 的開發可以用 AX_CODE_BINARY 或 settings.axCodeBinary 選擇來源執行環境。
準備選取的模型
請從目錄複製精確的模型 ID。預設的 Tiel 別名使用 mlx:
ax-code providers ax-engine prepare \
--model tiel-coder-35b-axq-mxfp4 --quantization mlx --download --start
被排除的模型會在開始工作之前,讓新的準備、下載與受管理啟用請求失敗。既有的模型紀錄仍可用於查看狀態與清理;已移除的 Qwen3.8、Ornith 與 Qwen3-Coder-Next ID 絕不會被改導到任何一個 Tiel 成品。移除選項不會刪除其權重,也不會停止既有的伺服器。
記憶體與執行環境驗證
兩個選取的別名都使用 65,536 token 的上下文、8,192 token 的輸出上限、估計 64 GiB 的記憶體需求,以及 32 GiB 的下載磁碟預算。這些是 AX Code 的服務上限,不是上游的最大上下文。(最初的上下文是 32,768 token:扣掉輸出保留之後,只剩 24,576 個可用輸入 token,少於固定的 AX Code 代理程式系統提示與工具結構描述所需,因此全新工作階段永遠送不出第一回合。)
每項記憶體估計都包含權重、sidecar、KV 快取、緩衝區與主機保留。請用即時目錄對目前這台機器的適配結果。這些估計不是硬體認證,也不是模型品質認證。
64 GiB 這個數字是保守的完整上下文(64K)規劃預算,不是硬性下限。若要有一台用起來從容的受管理本機推理機器,我們建議 Apple Silicon M4 Pro、統一記憶體 48 GB 或以上(例如 Mac Mini M4 Pro 48 GB)。較小的 Apple Silicon Mac 仍可從 8 GB 執行 AX Code 本身,搭配雲端或 API 模型,或較輕量的本機執行環境。
受管理啟用之前,AX Code 會檢查作用中 AX Engine 模型的文字契約與結構化工具契約。verification-required 狀態表示準備已經完成,但該即時契約尚未建立。只有儲存庫名稱或 MTP sidecar,不能證明推理、視覺、MTP 加速,或多回合的程式開發品質。
工作階段壓縮使用作用中模型的上下文與輸出預算,並保留輸入餘裕。選取的變體保持自己的目錄預算;來源模型的最大上下文,並不是受管理的記憶體保證。
生命週期與傳輸細節請見 本機引擎架構。
受管理的 MTP 原則
受管理的 AX Engine 預設為 required,與選取的 MTP 成品一致。草稿器不可用時,啟動會失敗,而不是悄悄退回直接解碼。MTP 權重與純堆疊設定,並不能建立正在作用的加速。預設的 Tiel Coder 套組使用 auto 推測設定檔,因此 AX Engine 會選擇該模型的草稿門檻,而不是一般 agentic 設定檔的 0.80 覆寫。這與 MTP 啟用原則是分開的:auto 的調整仍然使用 required MTP。舊的、專用於稠密 Qwen3.8 的實驗性環境,不會套用到這些 MoE 套組。測得的增益請見 設定檔比較。Cyber-Tiel 保留 agentic;受管理的讀取工作探測在兩種設定檔下都失敗,因此它的工作可靠性仍未解決。啟用原則仍然是 required;引擎必須接納實際的草稿器。若要明確選擇原則,請設定 provider.ax-engine.options.mtpPolicy,位置在 ax-code.json:
{
"provider": {
"ax-engine": {
"options": {
"mtpPolicy": "required"
}
}
}
}
| 原則 | 行為 |
|---|---|
disabled |
使用直接解碼;不要要求模型草稿器。 |
auto |
讓 AX Engine 決定模型與路由是否接納 MTP。這不保證會啟用。 |
required(預設) |
要求已被接納的 MTP 草稿器;草稿器不可用時,AX Engine 會拒絕,而不是悄悄退回。 |
沒有設定供應商選項時,AX_ENGINE_MTP_POLICY 提供相同的三個值。自動的執行環境選擇需要 AX Engine 7.5.7 或更新的版本,才能強制這些原則,包含預設的 required 原則。明確的 disabled 與 auto 設定仍會覆寫預設。較舊或未知的二進位檔,會在取代執行中的引擎之前拒絕原則選擇;使用受管理的原則控制之前,請先升級。沒有記錄原則的歷史狀態檔,會把已啟動的原則回報為未知,並在下一次受管理啟動時被取代。變更原則會在下一次受管理啟動或模型請求時生效,並取代原則不同的既有處理程序。它不會改變模型選擇,也不會改變儲存。
ax-code providers ax-engine start --mtp-policy disabled 只覆寫該次啟動的原則。若之後的程式開發請求也要使用相同覆寫,請設定持久的供應商選項。準備與啟動的 HTTP 本文也接受 mtpPolicy。這些受管理設定不會重新設定另外附加的端點。更新來源之後,請重新啟動 pnpm run dev,以載入新的預設;已經在執行的開發後端會保留已載入的程式碼,直到重新啟動為止。
ax-code providers ax-engine status(或 --json)會分開顯示要求的原則、已啟動的原則,以及觀察到的 active、inactive 與 unknown 狀態。觀察使用的是引擎最新的模型路由指標,不是模型中繼資料,也不是歷史草稿計數。缺少精確模型的樣本時仍然是未知,包含觀察到第一個引擎步驟之前;全伺服器的彙總不能建立啟用。已設定的 required 不會被拿來顯示成正在活動的證明。草稿與接受的計數在有資料時,是常駐引擎的累計值。待處理的原則變更會在狀態檢查時回報,檢查期間不會因此重新啟動。MTP 啟用並不是對某個特定 token 速率的承諾。
解讀本機回應速度
受管理的 AX Engine 不設定每秒 token 的上限。像 50 tok/s 這樣的測量,既不是已設定的目標,也不是上限:較快的硬體可以更快產生 token。上下文大小、輸出預算與請求的並行上限,控制的是容量,不是固定的 token 產生速率。
目前公開的 Tiel 與 MTPLX 對照,是 2026 年 9 月 20 日的原生 API 測試活動,摘要見 Tiel 同儕摘要。在 M5 Max 128 GiB 上,受管理的預設 Tiel 套組完成速度是 194.88 tok/s,含 TTFT(decode 為 217.85)。Cyber-Tiel 的峰值 decode 249.01 tok/s 屬於替代套組,不是預設。這些數字不是 AX Code 的工作階段速度。
請在相同的輸入長度、輸出預算、取樣設定與快取狀態下比較測量。短提示的 decode 測量,不能為上下文有數萬個 token 的程式開發工作階段建立最低速率。重用前綴會減少提示處理;之後的解碼仍然會注意那段上下文。只靠啟用 MTP,不能建立有用的草稿接受率,也不能建立固定的加速倍數。
調查緩慢的回合時,請把啟動與設定、到達第一個內容的時間,以及持續生成分開看。引擎的 ax_runtime_decode_tok_per_sec 指標是跨請求的指數加權平均,不是目前這次回應的速率。請用該回應的請求計時與 token 計數,並用計數器的差值看它的 MTP 接受情形。串流片段可以包含多個 token;把片段數當成 token 數,會得到錯誤的速率。
AX Code 會把成功的執行檔版本探測重用最多五分鐘。它在每次解析時檢查執行檔是否可用,並在啟動器或原生伺服器的檔案身分改變時,使已快取的版本失效。失敗的探測仍然可以重試。這能減少重複的設定工作;它不會改變模型的 decode 速度。開發後端必須重新啟動,才能載入來源的變更。