Clydex

Dokumentation / Erste Schritte

Verbinden Sie Ihre App mit Clydex.

Verbinden Sie sich mit Responses, konfigurieren Sie Ihren Client und fügen Sie Tools hinzu, die in Ihrer App ausgeführt werden.

Bevor Sie beginnen

  1. Erstellen und kopieren Sie einen Schlüssel API-Schlüssel. Halten Sie es privat.
  2. Wählen Sie ein verfügbares Modell aus Kanäle und Modelle. Verwenden Sie anstelle von die genaue ID <MODEL_ID> unten.
  3. Öffnen Sie unten eine Anleitung. Ersetzen <YOUR_CLYDEX_API_KEY> mit Ihrem Schlüssel und speichern Sie die Dateien.
Clydex Basis-URL
https://clydex.shop/v1

Möchten Sie, dass die Einstellungen für Sie ausgefüllt werden? Klicken Sie Schlüssel verwenden Wählen Sie auf Ihrer Schlüsselkarte Ihre App aus und kopieren oder laden Sie deren Konfiguration herunter.

Wählen Sie Ihre Anwendung

Codex CLI / App

Verbinden Sie Codex mit zwei Dateien.

  1. Öffnen Sie ~/.codex in Ihrem Dateimanager. Erstellen Sie den Ordner, falls er fehlt.
  2. Speichern Sie die Einstellungen als config.toml. Platzieren Sie die Einstellungen der obersten Ebene vor allen [Abschnitts-]Überschriften. Behalten Sie Ihre anderen Einstellungen bei.
  3. Speichern Sie auth.json im selben Ordner, starten Sie dann Codex oder Ihren Editor neu und starten Sie einen neuen Chat.
~/.codex/config.toml
model_provider = "clydex"
model = "<MODEL_ID>"
disable_response_storage = true
cli_auth_credentials_store = "file"
web_search = "disabled"

[model_providers.clydex]
name = "Clydex"
base_url = "https://clydex.shop/v1"
wire_api = "responses"
requires_openai_auth = true
supports_websockets = false
request_max_retries = 0
stream_max_retries = 0
~/.codex/auth.json
{
  "OPENAI_API_KEY": "<YOUR_CLYDEX_API_KEY>"
}

Sichern Sie ein vorhandenes auth.json, bevor Sie es ersetzen. Diese Einstellungen gelten auch für die IDE-Erweiterung Codex.

OpenCode

Eine Konfigurationsdatei, dann Clydex in OpenCode auswählen.

  1. Öffnen Sie ~/.config/opencode und erstellen Sie opencode.json, falls es nicht vorhanden ist.
  2. Fügen Sie diese Konfiguration ein. Wenn Sie bereits über eine Konfiguration verfügen, führen Sie die Clydex-Anbieter- und Modelleinstellungen darin zusammen.
  3. Starten Sie OpenCode neu. Führen Sie /models aus und wählen Sie das Modell unter Clydex aus.
~/.config/opencode/opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "model": "clydex/<MODEL_ID>",
  "small_model": "clydex/<MODEL_ID>",
  "provider": {
    "clydex": {
      "npm": "@ai-sdk/openai",
      "name": "Clydex",
      "options": {
        "baseURL": "https://clydex.shop/v1",
        "apiKey": "<YOUR_CLYDEX_API_KEY>"
      },
      "models": {
        "<MODEL_ID>": {
          "name": "<MODEL_ID>",
          "options": {
            "store": false
          }
        }
      }
    }
  }
}
Hermes

Verbinden Sie Hermes von Ihrem Terminal aus.

  1. Öffnen Sie ~/.hermes/config.yaml. Erstellen Sie bei Bedarf den Ordner und die Datei.
  2. Ersetzen Sie den Modellabschnitt durch diese Einstellungen; Behalten Sie den Rest Ihrer Konfiguration bei.
  3. Speichern Sie die Datei, starten Sie Hermes neu und beginnen Sie eine neue Konversation.
~/.hermes/config.yaml
model:
  provider: custom
  default: "<MODEL_ID>"
  base_url: "https://clydex.shop/v1"
  api_mode: codex_responses
  api_key: "<YOUR_CLYDEX_API_KEY>"
Cherry Studio

Fügen Sie Clydex in den Cherry Studio-Einstellungen hinzu.

  1. Öffnen Sie Einstellungen → Modellanbieter und fügen Sie einen Anbieter namens Clydex hinzu.
  2. Wählen Sie OpenAI Responses als Endpunkttyp. Fügen Sie unten die API-Adresse und den Schlüssel ein.
  3. Fügen Sie die Modell-ID <MODEL_ID> hinzu, aktivieren Sie den Anbieter und wählen Sie dieses Modell in einem neuen Chat aus.
API-Adresse
https://clydex.shop/v1/
API-Schlüssel
<YOUR_CLYDEX_API_KEY>
Modell-ID
<MODEL_ID>

Halten Sie die Websuche und Anhänge deaktiviert. In älteren Versionen heißt der Providertyp OpenAI-Response.

API / SDKs

Verwenden Sie Ihren Clydex-Schlüssel mit dem OpenAI SDK Responses API.

  1. Wählen Sie Python, JavaScript oder das Terminalbeispiel unten.
  2. Führen Sie für Python pip install openai und dann python hello.py aus. Führen Sie für JavaScript npm install openai und dann node hello.mjs aus.
Basis-URL
https://clydex.shop/v1
hello.py
from openai import OpenAI

client = OpenAI(
    api_key="<YOUR_CLYDEX_API_KEY>",
    base_url="https://clydex.shop/v1",
    max_retries=0,
)

response = client.responses.create(
    model="<MODEL_ID>",
    input="Say hello in one sentence.",
    max_output_tokens=128,
    store=False,
)
print(response.output_text)
hello.mjs
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: "<YOUR_CLYDEX_API_KEY>",
  baseURL: "https://clydex.shop/v1",
  maxRetries: 0,
});

const response = await client.responses.create({
  model: "<MODEL_ID>",
  input: "Say hello in one sentence.",
  max_output_tokens: 128,
  store: false,
});
console.log(response.output_text);
Terminal
curl 'https://clydex.shop/v1/responses' \
  -H 'Authorization: Bearer <YOUR_CLYDEX_API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{
  "model": "<MODEL_ID>",
  "input": "Say hello in one sentence.",
  "max_output_tokens": 128,
  "store": false
}'

Halten Sie die Dateien, die Ihren Schlüssel enthalten, geheim. Führen Sie SDK-Beispiele auf Ihrem Computer oder Server aus, niemals im öffentlichen Browsercode.

Funktionswerkzeuge

Deklarieren Sie Funktionen in tools. Das Modell gibt einen Aufruf zurück, Ihre Anwendung führt ihn aus und Sie senden einen zurück function_call_output mit dem gleichen call_id. Das folgende Beispiel zeigt eine komplette Hin- und Rückfahrt.

Python-Beispiel: Verwenden Sie eine lokale Funktion

Verwenden des Clients von hello.py Ersetzen Sie die Anfrage oben durch dieses Beispiel. Es stellt bis zu zwei Modellanfragen und führt eine lokale Uhrfunktion aus.

Funktionsaufruf und Ergebnis
import json
import uuid
from datetime import datetime, timezone

history = [{"role": "user", "content": "What time is it in UTC?"}]
tools = [{
    "type": "function",
    "name": "get_utc_time",
    "description": "Return the current UTC time.",
    "parameters": {
        "type": "object",
        "properties": {},
        "required": [],
        "additionalProperties": False,
    },
    "strict": True,
}]

first = client.responses.create(
    model="<MODEL_ID>", input=history, tools=tools,
    tool_choice={"type": "function", "name": "get_utc_time"},
    parallel_tool_calls=False,
    include=["reasoning.encrypted_content"],
    max_output_tokens=256, store=False,
    extra_headers={"Idempotency-Key": str(uuid.uuid4())},
)
history.extend(item.model_dump(exclude_none=True) for item in first.output)
calls = [item for item in first.output if item.type == "function_call"]
if len(calls) != 1 or calls[0].name != "get_utc_time":
    raise RuntimeError("Expected one get_utc_time call; check the response.")
call = calls[0]
if json.loads(call.arguments) != {}:
    raise RuntimeError("Unexpected function arguments.")
history.append({
    "type": "function_call_output",
    "call_id": call.call_id,
    "output": json.dumps({"utc": datetime.now(timezone.utc).isoformat()}),
})
final = client.responses.create(
    model="<MODEL_ID>", input=history, tools=tools, tool_choice="none",
    include=["reasoning.encrypted_content"],
    max_output_tokens=256, store=False,
    extra_headers={"Idempotency-Key": str(uuid.uuid4())},
)
print(final.output_text)

Behalten Sie die zurückgegebenen Ausgabeelemente, einschließlich Argumentationselemente, beim Erstellen der nächsten Runde bei. Validieren Sie Werkzeugnamen und Argumente in Ihrer Anwendung, bevor Sie eine Funktion ausführen. Verwendung benutzerdefinierter Tools custom_tool_call und custom_tool_call_output mit dem gleichen Aufruf-/Ergebnismuster.

Mehr Hilfe

Streaming- und Anfrageoptionen

Set stream: true für das Streamen von Antworten über HTTP. Tool-Aufrufargumente können in mehreren Ereignissen eintreffen; Stellen Sie den vollständigen Aufruf zusammen, bevor Sie ihn ausführen. Die endgültige Verwendung erfolgt im Terminal-Antwortereignis. Der WebSocket-Transport ist nicht verfügbar.

Set max_output_tokens für Ihre gewünschte Ausgabelänge. Es handelt sich nicht um eine garantierte Ausgabenobergrenze. Argumentationsoptionen, Textausführlichkeit und strukturierte Textformate werden akzeptiert, sofern das ausgewählte Modell sie unterstützt. Lassen Sie die Speicherung ausgeschaltet und senden Sie bei jeder Runde den vollständigen Gesprächsverlauf.

Eine Anfrage hat nicht funktioniert
  • Überprüfen Sie, ob der Schlüssel aktiv ist und ein Guthaben vorhanden ist.
  • Verwenden Sie eine verfügbare Modell-ID und den richtigen Endpunkt für dieses Modell.
  • Entfernen Sie bei einem Fehler aufgrund eines nicht unterstützten Felds die im Fehler genannte Option. Wenn Ihre App es immer sendet, verwenden Sie die API-Beispiel.
  • Überprüfen Sie nach einer Zeitüberschreitung Anfrageverlauf bevor Sie es erneut versuchen.
Finden Sie Ihre Nutzung und Gebühren

Offen Anfrageverlauf um den Anforderungsstatus, die Token und die Kosten anzuzeigen. Offene Anfragen werden noch geprüft. Siehe Statistik für Summen, oder Modelle und Preise für Preise.