Commit 5d73507
committed
ML Intern: fixed model set with pinned providers, plus a model probe script
ML Intern conversations now run on ML_ASSISTANT_MODELS, a JSON5 list where each
entry pins the inference provider the model was verified on. Creating a mode
conversation swaps any unlisted model (the router alias included) for the set's
default, switching a mode conversation to an unlisted model is refused, and the
pinned provider overrides the user's per-model preference at request time in
both the conversation route and the parked-turn sweeper. With the pill on, the
Models page and the settings sidebar list only the set.
Why: probing GLM-5.3-Flash on the router showed the same model behaving very
differently by provider at 300k-1M tokens. On baseten it intermittently
fabricated, looped, or emitted garbage and then ended the turn with a normal
finish_reason "stop", which chat-ui shows as a finished answer. Together and
novita answered verbatim at 1,034k tokens. Baseten also silently discards a tool
call whose name is not in the tools array. The router's auto choice landed on
baseten, so pinning is the only way to keep the mode off unverified serving.
scripts/probe-model.ts (npm run probe-model) reproduces the check: it sends the
tool loop's request shape with a generated ML Intern history and grades recall
of verbatim log lines, so candidates can be verified before they are listed.
Chart pins from the 2026-09-02 matrix: GLM-5.3-Flash on together, Kimi-K3 on
baseten, GLM-5.3 on novita.1 parent a84171c commit 5d73507
21 files changed
Lines changed: 1204 additions & 21 deletions
File tree
- chart/env
- docs/source/configuration
- scripts
- src
- lib/server
- __tests__
- api
- generation
- textGeneration/mcp
- routes
- api/v2/feature-flags
- conversation
- [id]
- models
- [...model]
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
230 | 230 | | |
231 | 231 | | |
232 | 232 | | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
233 | 241 | | |
234 | 242 | | |
235 | 243 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
25 | 25 | | |
26 | 26 | | |
27 | 27 | | |
28 | | - | |
| 28 | + | |
| 29 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
76 | 82 | | |
77 | 83 | | |
78 | 84 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
86 | 92 | | |
87 | 93 | | |
88 | 94 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
84 | 84 | | |
85 | 85 | | |
86 | 86 | | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
87 | 104 | | |
88 | 105 | | |
89 | 106 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
20 | 20 | | |
21 | 21 | | |
22 | 22 | | |
| 23 | + | |
23 | 24 | | |
24 | 25 | | |
25 | 26 | | |
| |||
0 commit comments