Zum Hauptinhalt springen

Zed mit OpenCheese

/ API-Doku

← API-SchnellstartAls Markdown anzeigen

Das Agent-Panel von Zed erreicht OpenCheese über einen openai_compatible-Anbieter in Zeds settings.json und spricht die Chat-Completions-API von OpenAI unter https://api.opencheese.dev/v1.

01settings.json öffnen

Zed speichert alle Benutzereinstellungen in einer einzigen Datei. Öffne sie über die Befehlspalette mit zed: open settings file oder bearbeite sie direkt:

System Datei
macOS und Linux ~/.config/zed/settings.json
Windows %APPDATA%\Zed\settings.json

Ergänze die Datei, statt sie zu ersetzen: Sie enthält auch dein Theme, deine Tastenbelegung, deine Schriftarten und deine Language Server.

02Den Anbieter hinzufügen

Die Seite Konfiguration im Dashboard generiert im Tab Zed diesen Block mit allen Modellen deines Tarifs und den Limits jedes einzelnen. Von Hand sieht ein Modell so aus:

json
{
  "language_models": {
    "openai_compatible": {
      "OpenCheese": {
        "api_url": "https://api.opencheese.dev/v1",
        "available_models": [
          {
            "name": "MODEL_ID",
            "display_name": "Model name",
            "max_tokens": 1000000,
            "max_output_tokens": 131000,
            "max_completion_tokens": 126000,
            "reasoning_effort": "low",
            "capabilities": {
              "tools": true,
              "images": true,
              "parallel_tool_calls": false,
              "prompt_cache_key": true,
              "chat_completions": true,
              "interleaved_reasoning": false,
              "max_tokens_parameter": true
            }
          }
        ]
      }
    }
  }
}
  • api_url behält sein /v1: Zed hängt /chat/completions selbst an.
  • Hat die Datei schon einen Abschnitt language_models, füge nur den Eintrag OpenCheese in dessen Objekt openai_compatible ein.
  • max_tokens ist das Kontextfenster des Modells und max_output_tokens seine längste Antwort: Nimm beide aus context_window und max_output_tokens in /v1/models. Jedes Modell braucht beide, sonst lehnt Zed den ganzen Anbieter ab.
  • reasoning_effort muss einer der Werte none, minimal, low, medium, high, xhigh oder max sein; bei jedem anderen Wert lehnt Zed den ganzen Anbieter ab. Lass das Feld bei einem Modell ohne Stufen weg.
  • Lass prompt_cache_key eingeschaltet: Damit erscheint jeder Zed-Thread im Dashboard als eine Sitzung.
  • images ist nur bei Modellen true, deren modalities.input image enthält.

03Zed den API-Schlüssel geben

Der Schlüssel kommt nie in die settings.json: Zed hat dort kein Feld dafür. Entweder:

  1. Öffne das Agent-Panel, führe agent: open settings aus, suche OpenCheese unter LLM Providers, füge den Schlüssel in das Feld API key ein und drücke Enter. Zed speichert ihn im Schlüsselbund deines Systems.
  2. Oder setze die Umgebungsvariable, die Zed für diesen Anbieter liest:
bash
export OPEN_CHEESE_API_KEY='YOUR_OPENCHEESE_API_KEY'

Achte auf den Unterstrich: Zed bildet den Namen aus der Anbieter-ID und zerlegt OpenCheese in OPEN_CHEESE. OPENCHEESE_API_KEY wird nie gelesen. Außerdem hat die Variable Vorrang vor dem Schlüsselbund: Entferne sie und starte Zed neu, wenn du später den Schlüssel wechselst.

04Ein OpenCheese-Modell wählen (optional)

Zed behält das Modell, das zuvor ausgewählt war. Um ein OpenCheese-Modell zum Standard für neue Threads zu machen, füge Folgendes in die Datei ein:

json
{
  "agent": {
    "default_model": {
      "provider": "OpenCheese",
      "model": "MODEL_ID"
    }
  }
}

provider ist die reine Anbieter-ID, ohne das Präfix openai_compatible/. Starte Zed neu oder lade das Fenster neu, nachdem du settings.json bearbeitet hast.

Fehlerbehebung

  • Überhaupt keine OpenCheese-Modelle: Das JSON ist fehlerhaft, oder ein Modelleintrag hat kein max_tokens oder einen unbekannten reasoning_effort. Kopiere den generierten Block erneut, statt ihn von Hand zu reparieren.
  • Modelle erscheinen, aber jede Anfrage schlägt fehl: Der Schlüssel ist nie bei Zed angekommen; wiederhole Schritt 3.
  • Das Modell wird nicht verwendet: Die Anbieter-ID muss in beiden Blöcken OpenCheese lauten, genau gleich geschrieben.
Der Käse hat Löcher. Deine Infrastruktur sollte keine haben.