Remove obsolete [1m] model variants
Since March 2026 the 1M-token context window is the default for Opus 4.6/4.7 and Sonnet 4.6 – no separate variant or beta header needed. The "[1m]" suffix on model IDs is dead code now and would even produce HTTP 400 against the current API. Cleanup: - Drop 3 [1m] options from the agent model dropdown; default selection moves from opus-4-7[1m] to opus-4-7. - Drop 5 [1m] mappings from ResolveModelId and add a defensive Replace as a safety net for any agent record still holding an old value. - One-shot startup migration on agents.model + chains.model strips the suffix so existing chains can be re-chatted without errors. - ARCHITECTURE.md reflects the slimmed list and explains why 1M is now default. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
271902f32d
commit
112fd70f3b
4 files changed
+17
-16
No files matched your search
+2
-7
@@ -844,7 +844,7 @@ Ein **Agent** definiert die Persönlichkeit und Fähigkeiten der AI:
|
|||||||
|-------------------|------------------------------------------------------------------|
|
|-------------------|------------------------------------------------------------------|
|
||||||
| `Name` | Anzeigename |
|
| `Name` | Anzeigename |
|
||||||
| `Avatar` | Base64 Data-URL (WebP, 512px) + `AvatarSmall` (WebP, 256px Thumbnail) |
|
| `Avatar` | Base64 Data-URL (WebP, 512px) + `AvatarSmall` (WebP, 256px Thumbnail) |
|
||||||
| `Model` | `sonnet`, `sonnet-4-5`, `sonnet-4-6`, `sonnet-4-6[1m]`, `opus`, `opus-4-5`, `opus-4-6`, `opus-4-6[1m]`, `opus-4-7`, `opus-4-7[1m]`, `haiku`, `haiku-4-5` (Default für `opus` ist `claude-opus-4-7`) |
|
| `Model` | `sonnet`, `sonnet-4-5`, `sonnet-4-6`, `opus`, `opus-4-5`, `opus-4-6`, `opus-4-7`, `haiku`, `haiku-4-5` (Default für `opus` ist `claude-opus-4-7`) |
|
||||||
| `CustomCommands` | JSON-Array mit Slash-Commands (Label + Prompt) |
|
| `CustomCommands` | JSON-Array mit Slash-Commands (Label + Prompt) |
|
||||||
| `AutoCommit` | `""` (nichts), `"mention"` (anmerken – nur auf User-Request), `"enforce"` (erzwingen – nach jeder Änderung), `"forbid"` (strikt verboten) |
|
| `AutoCommit` | `""` (nichts), `"mention"` (anmerken – nur auf User-Request), `"enforce"` (erzwingen – nach jeder Änderung), `"forbid"` (strikt verboten) |
|
||||||
| `UseSoul` | SOUL.md in System-Prompt einbinden |
|
| `UseSoul` | SOUL.md in System-Prompt einbinden |
|
||||||
@@ -860,23 +860,18 @@ Ein **Agent** definiert die Persönlichkeit und Fähigkeiten der AI:
|
|||||||
|
|
||||||
```
|
```
|
||||||
"sonnet" → claude-sonnet-4-6
|
"sonnet" → claude-sonnet-4-6
|
||||||
"sonnet[1m]" → claude-sonnet-4-6[1m] (1M Context)
|
|
||||||
"sonnet-4-5" → claude-sonnet-4-5
|
"sonnet-4-5" → claude-sonnet-4-5
|
||||||
"sonnet-4-6" → claude-sonnet-4-6
|
"sonnet-4-6" → claude-sonnet-4-6
|
||||||
"sonnet-4-6[1m]" → claude-sonnet-4-6[1m]
|
|
||||||
"opus" → claude-opus-4-7
|
"opus" → claude-opus-4-7
|
||||||
"opus[1m]" → claude-opus-4-7[1m] (1M Context)
|
|
||||||
"opus-4-5" → claude-opus-4-5
|
"opus-4-5" → claude-opus-4-5
|
||||||
"opus-4-6" → claude-opus-4-6
|
"opus-4-6" → claude-opus-4-6
|
||||||
"opus-4-6[1m]" → claude-opus-4-6[1m]
|
|
||||||
"opus-4-7" → claude-opus-4-7
|
"opus-4-7" → claude-opus-4-7
|
||||||
"opus-4-7[1m]" → claude-opus-4-7[1m]
|
|
||||||
"haiku" → claude-haiku-4-5
|
"haiku" → claude-haiku-4-5
|
||||||
"haiku-4-5" → claude-haiku-4-5
|
"haiku-4-5" → claude-haiku-4-5
|
||||||
(default) → claude-sonnet-4-6
|
(default) → claude-sonnet-4-6
|
||||||
```
|
```
|
||||||
|
|
||||||
Das `[1m]`-Suffix aktiviert das **1-Million-Token-Context-Fenster** (Anthropic Beta-Feature, längere History/größere Codebases möglich).
|
**1-Million-Token-Context** ist seit März 2026 Default bei **Opus 4.6/4.7/4.8 + Sonnet 4.6** – kein separater Beta-Header und kein `[1m]`-Suffix mehr nötig. Alte DB-Einträge mit `[1m]`-Suffix werden bei Startup automatisch migriert (`UPDATE agents/chains SET model = REPLACE(model, '[1m]', '')`).
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -34,20 +34,20 @@ public class ChatService
|
|||||||
// OpenAI-kompatible Provider werden unverändert durchgereicht (Format: "provider:model")
|
// OpenAI-kompatible Provider werden unverändert durchgereicht (Format: "provider:model")
|
||||||
if (OpenAiService.IsOpenAiProvider(model)) return model;
|
if (OpenAiService.IsOpenAiProvider(model)) return model;
|
||||||
|
|
||||||
|
// Defensiv-Strip: alte "[1m]"-Suffixe aus DB transparent normalisieren.
|
||||||
|
// 1M-Context ist seit März 2026 Default bei Opus 4.6/4.7/4.8 + Sonnet 4.6 – kein Suffix mehr nötig.
|
||||||
|
if (!string.IsNullOrEmpty(model) && model.Contains("[1m]"))
|
||||||
|
model = model.Replace("[1m]", "");
|
||||||
|
|
||||||
return model switch
|
return model switch
|
||||||
{
|
{
|
||||||
"sonnet" => "claude-sonnet-4-6",
|
"sonnet" => "claude-sonnet-4-6",
|
||||||
"sonnet[1m]" => "claude-sonnet-4-6[1m]",
|
|
||||||
"sonnet-4-5" => "claude-sonnet-4-5",
|
"sonnet-4-5" => "claude-sonnet-4-5",
|
||||||
"sonnet-4-6" => "claude-sonnet-4-6",
|
"sonnet-4-6" => "claude-sonnet-4-6",
|
||||||
"sonnet-4-6[1m]" => "claude-sonnet-4-6[1m]",
|
|
||||||
"opus" => "claude-opus-4-7",
|
"opus" => "claude-opus-4-7",
|
||||||
"opus[1m]" => "claude-opus-4-7[1m]",
|
|
||||||
"opus-4-5" => "claude-opus-4-5",
|
"opus-4-5" => "claude-opus-4-5",
|
||||||
"opus-4-6" => "claude-opus-4-6",
|
"opus-4-6" => "claude-opus-4-6",
|
||||||
"opus-4-6[1m]" => "claude-opus-4-6[1m]",
|
|
||||||
"opus-4-7" => "claude-opus-4-7",
|
"opus-4-7" => "claude-opus-4-7",
|
||||||
"opus-4-7[1m]" => "claude-opus-4-7[1m]",
|
|
||||||
"haiku" => "claude-haiku-4-5",
|
"haiku" => "claude-haiku-4-5",
|
||||||
"haiku-4-5" => "claude-haiku-4-5",
|
"haiku-4-5" => "claude-haiku-4-5",
|
||||||
_ => "claude-sonnet-4-6"
|
_ => "claude-sonnet-4-6"
|
||||||
|
|||||||
@@ -197,6 +197,15 @@ public partial class DatabaseService
|
|||||||
TryAddColumn(conn, "sessions", "unity_mcp_token", "TEXT");
|
TryAddColumn(conn, "sessions", "unity_mcp_token", "TEXT");
|
||||||
TryAddColumn(conn, "messages", "tag", "TEXT");
|
TryAddColumn(conn, "messages", "tag", "TEXT");
|
||||||
|
|
||||||
|
// Migration: 1M-Suffix entfernen (Mai 2026). Seit März 2026 ist 1M-Context Default
|
||||||
|
// bei Opus 4.6/4.7/4.8 + Sonnet 4.6 – kein "[1m]"-Suffix mehr nötig.
|
||||||
|
try
|
||||||
|
{
|
||||||
|
conn.Execute("UPDATE agents SET model = REPLACE(model, '[1m]', '') WHERE model LIKE '%[1m]%'");
|
||||||
|
conn.Execute("UPDATE chains SET model = REPLACE(model, '[1m]', '') WHERE model LIKE '%[1m]%'");
|
||||||
|
}
|
||||||
|
catch { /* idempotent */ }
|
||||||
|
|
||||||
conn.Execute(@"
|
conn.Execute(@"
|
||||||
CREATE TABLE IF NOT EXISTS agent_skills (
|
CREATE TABLE IF NOT EXISTS agent_skills (
|
||||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||||
|
|||||||
+1
-4
@@ -201,12 +201,9 @@
|
|||||||
<select id="agentModel">
|
<select id="agentModel">
|
||||||
<option value="sonnet-4-5">sonnet-4-5</option>
|
<option value="sonnet-4-5">sonnet-4-5</option>
|
||||||
<option value="sonnet-4-6">sonnet-4-6</option>
|
<option value="sonnet-4-6">sonnet-4-6</option>
|
||||||
<option value="sonnet-4-6[1m]">sonnet-4-6[1m]</option>
|
|
||||||
<option value="opus-4-5">opus-4-5</option>
|
<option value="opus-4-5">opus-4-5</option>
|
||||||
<option value="opus-4-6">opus-4-6</option>
|
<option value="opus-4-6">opus-4-6</option>
|
||||||
<option value="opus-4-6[1m]">opus-4-6[1m]</option>
|
<option value="opus-4-7" selected>opus-4-7</option>
|
||||||
<option value="opus-4-7">opus-4-7</option>
|
|
||||||
<option value="opus-4-7[1m]" selected>opus-4-7[1m]</option>
|
|
||||||
<option value="haiku-4-5">haiku-4-5</option>
|
<option value="haiku-4-5">haiku-4-5</option>
|
||||||
<optgroup label="OpenAI" id="openaiOptgroup">
|
<optgroup label="OpenAI" id="openaiOptgroup">
|
||||||
<option value="" disabled>Wird geladen...</option>
|
<option value="" disabled>Wird geladen...</option>
|
||||||
|
|||||||
Reference in new issue
Block a user