Skip to main content
GoModel może działać przed OpenAI Agents SDK, gdy chcesz objąć uruchomienia agentów kluczami gatewaya, budżetami, logami audytowymi, routingiem modeli i śledzeniem użycia. Przepływ: OpenAI Agents SDK -> GoModel /v1 -> selected provider

Zanim zaczniesz

  • Zainstaluj GoModel.
  • Wybierz klucz główny GoModel, na przykład change-me.
  • Skonfiguruj co najmniej jednego upstreamowego providera modeli.
  • Zainstaluj OpenAI Agents SDK dla Pythona lub JavaScriptu.
SDK domyślnie eksportuje trace’y do OpenAI. Jeśli GoModel jest Twoim jedynym endpointem klienta OpenAI, wyłącz tracing lub skonfiguruj osobny klucz OpenAI do tracingu.

1. Uruchom GoModel

Uruchom GoModel z kluczem głównym i kluczem upstreamowego providera. Ten przykład używa OpenAI jako upstreamu:
Jeśli używasz innego providera, zachowaj ten sam bazowy URL GoModel i wybierz model, który Twój provider udostępnia przez GoModel.

2. Sprawdź endpoint Responses

Wyślij jeden mały request przez GoModel:
Jeśli gateway jest poprawnie podłączony, odpowiedź będzie zawierać ok.

3. Skonfiguruj SDK

Skieruj klienta OpenAI w SDK na GoModel:

ID modeli z przestrzenią nazw

Python SDK domyślnie traktuje stringi takie jak anthropic/claude-sonnet-4-20250514 i gemini/gemini-2.0-flash jako nazwy modeli z prefiksem providera. Jeśli chcesz, aby takie ID modeli GoModel z przestrzenią nazw docierały do gatewaya bez zmian, skonfiguruj providera modeli w SDK w trybie przekazywania ID modelu (pass-through):

Obsługiwane ścieżki SDK

GoModel obsługuje standardową ścieżkę HTTP Responses w SDK:
  • Runner.run(...) bez streamingu
  • Runner.run_streamed(...) ze streamingiem przez HTTP/SSE
  • pętle narzędzi funkcyjnych
  • handoffy i agentów jako narzędzia, gdy kompilują się do wywołań narzędzi modelu
  • lokalne sesje zarządzane przez SDK, które odtwarzają historię wejścia
  • /v1/conversations dla zasobów rozmów zarządzanych po stronie serwera
  • /v1/responses/input_tokens
  • /v1/responses/compact
  • lokalne pobieranie odpowiedzi przez /v1/responses/{id} i /v1/responses/{id}/input_items
GoModel zachowuje też nowsze elementy wejściowe Responses dla natywnych providerów Responses. Jeśli request musi zostać przetłumaczony na Chat Completions dla providera, który nie implementuje Responses natywnie, GoModel tłumaczy ustawienia ustrukturyzowanego wyjścia text na response_format z Chat Completions (i przekazuje text.verbosity dalej) tylko dla providerów czatowych, którzy obsługują te pola, a dla stanowych lub natywnych dla providera pól Responses, takich jak previous_response_id, conversation i elementy hostowanych narzędzi, zwraca czytelny błąd. Pełną macierz funkcji znajdziesz w Kompatybilności Responses.

Zachowanie storage

GoModel zapisuje lokalne snapshoty odpowiedzi, aby endpointy cyklu życia działały nawet wtedy, gdy upstreamowy provider nie obsługuje pobierania odpowiedzi. Jeśli SDK wyśle store: false, GoModel nie utrwala lokalnego snapshotu tej odpowiedzi.

Obecne ograniczenia

  • Transport websocket dla Responses nie jest zaimplementowany. Używaj z GoModel transportu HTTP/SSE z SDK.
  • Hostowane narzędzia, takie jak web search, file search i computer use, wymagają natywnego upstreamowego providera, który obsługuje payloady tych narzędzi. Providerzy z translacją do Chat Completions, tacy jak Anthropic i Gemini, odrzucają te narzędzia, chyba że GoModel doda dla nich jawne mapowanie możliwości providera.
  • W Anthropic text.format jest obsługiwane przez natywne structured outputs Claude (json_schema) lub instrukcję w system prompcie (json_object), a text.verbosity jest pomijane z ostrzeżeniem — Anthropic nie ma odpowiednika.
  • previous_response_id jest przekazywane do natywnych providerów Responses. Dla providerów z translacją do Chat Completions GoModel rozwiązuje je na podstawie zapisanych odpowiedzi i odtwarza wejście i wyjście poprzedniej tury, więc poprzednia odpowiedź musi zostać utworzona z włączonym store. conversation jest rozwiązywane z rozmów zarządzanych przez gateway dla każdego providera.
  • Tracing jest niezależny od routingu modeli. Wyłącz tracing w SDK lub skonfiguruj prawdziwy klucz OpenAI do tracingu.

Więcej przykładów

Gotowe do uruchomienia przykłady znajdziesz w docs/examples/openai-agents-sdk/.

Materiały źródłowe

Ostatnia modyfikacja 24 października 2026