Leitfaden — Benutzerdefinierte Modell-Provider

Umfang

Dieses Dokument fasst die Schritte und Kriterien für benutzerdefinierte Modell-Provider mit dem Strands Agents SDK in Shell Sentinel zusammen. Es ergänzt die offizielle Dokumentation als interne Checkliste.

Voraussetzungen

Implementierungsablauf

  1. Konfiguration definieren: typisierte ModelConfig mit get_config/update_config.
  2. Client initialisieren: Credentials sicher auflösen, Remote-Client instanziieren, Logging registrieren.
  3. stream(...) implementieren: Eingaben konvertieren, StreamEvent anpassen, Fehler behandeln; bei sync SDK asyncio.to_thread nutzen.
  4. Tools unterstützen: stream in structured_output(...) mit Pydantic-ToolSpec.
  5. Provider registrieren in smart_ai_sys_admin.agent und conf/agent.conf.

Zusätzliche Hinweise

Praxisbeispiel: OpenAI Responses API

providers.openai.api unterstützt chat_completions (Standard, /v1/chat/completions) und responses (/v1/responses). max_tokens wird für Chat Completions zu max_completion_tokens oder für Responses zu max_output_tokens; reasoning_effort und reasoning.effort werden ebenfalls an den Endpoint angepasst.

Die Migration behebt einen HTTP 400, wenn gpt-5.6-sol über Chat Completions Function Tools mit aktivem Reasoning erhält. reasoning_effort: "none" verhindert den Fehler nur durch deaktiviertes Reasoning (reasoning_tokens=0). Responses unterstützt Function Tools mit Reasoning medium ohne diese Einschränkung.

{
  "model_id": "gpt-5.6-sol",
  "api": "responses",
  "params": {"reasoning_effort": "medium", "max_tokens": 32768}
}

Die effektive Anfrage nutzt reasoning.effort und max_output_tokens; die reale Konfiguration nutzt 65536. Optionales temperature: 0.3 wird unterstützt, ist aber kein Standardwert. OPENAI_API_KEY kommt aus der Umgebung.

Optionales stateful kann previous_response_id nutzen, aber rekonstruiertes Multi-Turn-reasoningContent behält noch keine vollständige Reasoning-Kontinuität.

Praxisbeispiel: LM Studio

Praxisbeispiel: Mistral AI (Pfad A+)

Praxisbeispiel: Cerebras

Externe Referenzen