chore(i18n): refresh pl translations

This commit is contained in:
openclaw-docs-i18n[bot] 2026-04-12 23:38:39 +00:00
parent 13318c265f
commit f3ba444f84
65 changed files with 11999 additions and 7825 deletions

View File

@ -1,36 +1,36 @@
---
read_when:
- Zmiana reguł wiadomości grupowych lub wzmianek
summary: Zachowanie i konfiguracja obsługi wiadomości grupowych w WhatsApp (mentionPatterns są współdzielone między powierzchniami)
summary: Zachowanie i konfiguracja obsługi wiadomości grupowych w WhatsApp (`mentionPatterns` są współdzielone między interfejsami)
title: Wiadomości grupowe
x-i18n:
generated_at: "2026-04-05T13:43:17Z"
generated_at: "2026-04-12T23:28:02Z"
model: gpt-5.4
provider: openai
source_hash: 2543be5bc4c6f188f955df580a6fef585ecbfc1be36ade5d34b1a9157e021bc5
source_hash: 5d9484dd1de74d42f8dce4c3ac80d60c24864df30a7802e64893ef55506230fe
source_path: channels/group-messages.md
workflow: 15
---
# Wiadomości grupowe (kanał internetowy WhatsApp)
Cel: pozwolić Clawd działać w grupach WhatsApp, wybudzać się tylko po pingnięciu i utrzymywać ten wątek oddzielnie od osobistej sesji DM.
Cel: pozwolić Clawd działać w grupach WhatsApp, wybudzać się tylko po wywołaniu i utrzymywać ten wątek oddzielnie od osobistej sesji DM.
Uwaga: `agents.list[].groupChat.mentionPatterns` jest teraz używane także przez Telegram/Discord/Slack/iMessage; ten dokument koncentruje się na zachowaniu specyficznym dla WhatsApp. W konfiguracjach wieloagentowych ustaw `agents.list[].groupChat.mentionPatterns` dla każdego agenta (lub użyj `messages.groupChat.mentionPatterns` jako globalnego ustawienia zapasowego).
Uwaga: `agents.list[].groupChat.mentionPatterns` jest teraz używane również przez Telegram/Discord/Slack/iMessage; ten dokument koncentruje się na zachowaniu specyficznym dla WhatsApp. W konfiguracjach z wieloma agentami ustaw `agents.list[].groupChat.mentionPatterns` dla każdego agenta (lub użyj `messages.groupChat.mentionPatterns` jako globalnego ustawienia zapasowego).
## Bieżąca implementacja (2025-12-03)
- Tryby aktywacji: `mention` (domyślnie) lub `always`. `mention` wymaga pingnięcia (rzeczywiste WhatsApp @-wzmianki przez `mentionedJids`, bezpieczne wzorce regex lub numer E.164 bota w dowolnym miejscu tekstu). `always` wybudza agenta przy każdej wiadomości, ale powinien on odpowiadać tylko wtedy, gdy może wnieść sensowną wartość; w przeciwnym razie zwraca dokładny cichy token `NO_REPLY` / `no_reply`. Wartości domyślne można ustawić w konfiguracji (`channels.whatsapp.groups`) i nadpisać dla każdej grupy przez `/activation`. Gdy ustawione jest `channels.whatsapp.groups`, działa to również jako allowlista grup (uwzględnij `"*"`, aby zezwolić na wszystkie).
- Polityka grup: `channels.whatsapp.groupPolicy` określa, czy wiadomości grupowe są akceptowane (`open|disabled|allowlist`). `allowlist` używa `channels.whatsapp.groupAllowFrom` (ustawienie zapasowe: jawne `channels.whatsapp.allowFrom`). Domyślnie jest to `allowlist` (zablokowane, dopóki nie dodasz nadawców).
- Sesje per grupa: klucze sesji mają postać `agent:<agentId>:whatsapp:group:<jid>`, więc polecenia takie jak `/verbose on` lub `/think high` (wysyłane jako samodzielne wiadomości) są ograniczone do tej grupy; stan osobistego DM pozostaje nietknięty. Heartbeaty są pomijane dla wątków grupowych.
- Wstrzykiwanie kontekstu: grupowe wiadomości **tylko oczekujące** (domyślnie 50), które _nie_ uruchomiły wykonania, są poprzedzane sekcją `[Chat messages since your last reply - for context]`, a linia wyzwalająca sekcją `[Current message - respond to this]`. Wiadomości już obecne w sesji nie są wstrzykiwane ponownie.
- Ujawnianie nadawcy: każda partia grupowa kończy się teraz `[from: Sender Name (+E164)]`, aby Pi wiedziało, kto mówi.
- Ephemeral/view-once: rozpakowujemy je przed wyodrębnieniem tekstu/wzmianek, więc pingnięcia wewnątrz nich nadal wywołują uruchomienie.
- Prompt systemowy grupy: przy pierwszej turze sesji grupowej (oraz zawsze, gdy `/activation` zmienia tryb) wstrzykujemy krótki fragment do promptu systemowego, taki jak `You are replying inside the WhatsApp group "<subject>". Group members: Alice (+44...), Bob (+43...), … Activation: trigger-only … Address the specific sender noted in the message context.` Jeśli metadane nie są dostępne, nadal informujemy agenta, że to czat grupowy.
- Tryby aktywacji: `mention` (domyślnie) lub `always`. `mention` wymaga wywołania (rzeczywiste wzmianki WhatsApp @ przez `mentionedJids`, bezpieczne wzorce regex lub numer E.164 bota w dowolnym miejscu tekstu). `always` wybudza agenta przy każdej wiadomości, ale powinien on odpowiadać tylko wtedy, gdy może wnieść istotną wartość; w przeciwnym razie zwraca dokładny cichy token `NO_REPLY` / `no_reply`. Ustawienia domyślne można skonfigurować w konfiguracji (`channels.whatsapp.groups`) i nadpisać dla każdej grupy przez `/activation`. Gdy ustawione jest `channels.whatsapp.groups`, działa ono również jako lista dozwolonych grup (uwzględnij `"*"` aby zezwolić na wszystkie).
- Zasada dla grup: `channels.whatsapp.groupPolicy` kontroluje, czy wiadomości grupowe są akceptowane (`open|disabled|allowlist`). `allowlist` używa `channels.whatsapp.groupAllowFrom` (ustawienie zapasowe: jawne `channels.whatsapp.allowFrom`). Domyślna wartość to `allowlist` (blokowane, dopóki nie dodasz nadawców).
- Sesje per grupa: klucze sesji mają postać `agent:<agentId>:whatsapp:group:<jid>`, więc polecenia takie jak `/verbose on`, `/trace on` lub `/think high` (wysyłane jako samodzielne wiadomości) są ograniczone do tej grupy; stan osobistego DM pozostaje nienaruszony. Heartbeat jest pomijany dla wątków grupowych.
- Wstrzykiwanie kontekstu: **tylko oczekujące** wiadomości grupowe (domyślnie 50), które _nie_ uruchomiły wykonania, są poprzedzane sekcją `[Chat messages since your last reply - for context]`, a linia wyzwalająca znajduje się pod `[Current message - respond to this]`. Wiadomości już obecne w sesji nie są wstrzykiwane ponownie.
- Ujawnianie nadawcy: każda partia grupowa kończy się teraz znacznikiem `[from: Sender Name (+E164)]`, aby Pi wiedział, kto mówi.
- Ephemeral/view-once: rozpakowujemy je przed wyodrębnieniem tekstu/wzmianek, więc wywołania w ich treści nadal uruchamiają działanie.
- Prompt systemowy grupy: przy pierwszej turze sesji grupowej (oraz zawsze, gdy `/activation` zmienia tryb) wstrzykujemy krótki opis do promptu systemowego, np. `You are replying inside the WhatsApp group "<subject>". Group members: Alice (+44...), Bob (+43...), … Activation: trigger-only … Address the specific sender noted in the message context.` Jeśli metadane nie są dostępne, nadal informujemy agenta, że jest to czat grupowy.
## Przykład konfiguracji (WhatsApp)
Dodaj blok `groupChat` do `~/.openclaw/openclaw.json`, aby pingnięcia nazwą wyświetlaną działały nawet wtedy, gdy WhatsApp usuwa wizualny znak `@` z treści wiadomości:
Dodaj blok `groupChat` do `~/.openclaw/openclaw.json`, aby wzmianki po nazwie wyświetlanej działały nawet wtedy, gdy WhatsApp usuwa wizualne `@` z treści tekstu:
```json5
{
@ -57,8 +57,8 @@ Dodaj blok `groupChat` do `~/.openclaw/openclaw.json`, aby pingnięcia nazwą wy
Uwagi:
- Regexy są niewrażliwe na wielkość liter i używają tych samych zabezpieczeń safe-regex co inne powierzchnie konfiguracyjne regexów; nieprawidłowe wzorce i niebezpieczne zagnieżdżone powtórzenia są ignorowane.
- WhatsApp nadal wysyła kanoniczne wzmianki przez `mentionedJids`, gdy ktoś stuknie kontakt, więc zapasowe dopasowanie po numerze rzadko jest potrzebne, ale stanowi przydatne zabezpieczenie.
- Regexy nie rozróżniają wielkości liter i używają tych samych zabezpieczeń safe-regex co inne powierzchnie regex w konfiguracji; nieprawidłowe wzorce i niebezpieczne zagnieżdżone powtórzenia są ignorowane.
- WhatsApp nadal wysyła kanoniczne wzmianki przez `mentionedJids`, gdy ktoś kliknie kontakt, więc zapasowe dopasowanie po numerze jest rzadko potrzebne, ale stanowi przydatne zabezpieczenie.
### Polecenie aktywacji (tylko właściciel)
@ -72,20 +72,20 @@ Tylko numer właściciela (z `channels.whatsapp.allowFrom` lub własny numer E.1
## Jak używać
1. Dodaj swoje konto WhatsApp (to, na którym działa OpenClaw) do grupy.
2. Napisz `@openclaw …` (lub dołącz numer). Tylko nadawcy z allowlisty mogą to wywołać, chyba że ustawisz `groupPolicy: "open"`.
3. Prompt agenta będzie zawierał ostatni kontekst grupy oraz końcowy znacznik `[from: …]`, aby mógł zwrócić się do właściwej osoby.
4. Dyrektywy na poziomie sesji (`/verbose on`, `/think high`, `/new` lub `/reset`, `/compact`) dotyczą tylko sesji tej grupy; wysyłaj je jako samodzielne wiadomości, aby zostały zarejestrowane. Twoja osobista sesja DM pozostaje niezależna.
2. Napisz `@openclaw …` (lub podaj numer). Tylko nadawcy z listy dozwolonych mogą to uruchomić, chyba że ustawisz `groupPolicy: "open"`.
3. Prompt agenta będzie zawierał ostatni kontekst grupy oraz końcowy znacznik `[from: …]`, dzięki czemu będzie mógł zwrócić się do właściwej osoby.
4. Dyrektywy na poziomie sesji (`/verbose on`, `/trace on`, `/think high`, `/new` lub `/reset`, `/compact`) dotyczą wyłącznie sesji tej grupy; wysyłaj je jako samodzielne wiadomości, aby zostały zarejestrowane. Twoja osobista sesja DM pozostaje niezależna.
## Testowanie / weryfikacja
- Ręczny smoke test:
- Wyślij ping `@openclaw` w grupie i potwierdź odpowiedź, która odnosi się do nazwy nadawcy.
- Wyślij drugi ping i sprawdź, czy blok historii został dołączony, a potem wyczyszczony w następnej turze.
- Sprawdź logi gateway (uruchomione z `--verbose`), aby zobaczyć wpisy `inbound web message` pokazujące `from: <groupJid>` oraz sufiks `[from: …]`.
- Wyślij wywołanie `@openclaw` w grupie i potwierdź odpowiedź, która odnosi się do nazwy nadawcy.
- Wyślij drugie wywołanie i sprawdź, czy blok historii został dołączony, a następnie wyczyszczony przy kolejnej turze.
- Sprawdź logi Gateway (uruchomione z `--verbose`), aby zobaczyć wpisy `inbound web message` pokazujące `from: <groupJid>` oraz sufiks `[from: …]`.
## Znane kwestie
- Heartbeaty są celowo pomijane dla grup, aby uniknąć hałaśliwych rozgłoszeń.
- Tłumienie echa używa połączonego ciągu partii; jeśli wyślesz identyczny tekst dwa razy bez wzmianek, odpowiedź zostanie wygenerowana tylko na pierwszy.
- Wpisy w magazynie sesji będą widoczne jako `agent:<agentId>:whatsapp:group:<jid>` w magazynie sesji (`~/.openclaw/agents/<agentId>/sessions/sessions.json` domyślnie); brak wpisu oznacza tylko, że grupa nie wywołała jeszcze wykonania.
- Heartbeat jest celowo pomijany dla grup, aby uniknąć głośnych rozgłoszeń.
- Tłumienie echa używa połączonego ciągu partii; jeśli wyślesz ten sam tekst dwa razy bez wzmianek, odpowiedź zostanie wygenerowana tylko za pierwszym razem.
- Wpisy magazynu sesji będą widoczne jako `agent:<agentId>:whatsapp:group:<jid>` w magazynie sesji (domyślnie `~/.openclaw/agents/<agentId>/sessions/sessions.json`); brak wpisu oznacza tylko, że grupa nie uruchomiła jeszcze wykonania.
- Wskaźniki pisania w grupach są zgodne z `agents.defaults.typingMode` (domyślnie: `message`, gdy nie ma wzmianki).

View File

@ -2,27 +2,27 @@
read_when:
- Chcesz zrozumieć, do czego służy Active Memory
- Chcesz włączyć Active Memory dla agenta konwersacyjnego
- Chcesz dostroić zachowanie Active Memory bez włączania go wszędzie
summary: Należący do Plugin podagent blokującej pamięci, który wstrzykuje odpowiednią pamięć do interaktywnych sesji czatu
- Chcesz dostroić działanie Active Memory bez włączania go wszędzie
summary: Blokujący podagent pamięci należący do Pluginu, który wstrzykuje odpowiednią pamięć do interaktywnych sesji czatu
title: Active Memory
x-i18n:
generated_at: "2026-04-12T09:33:34Z"
generated_at: "2026-04-12T23:28:12Z"
model: gpt-5.4
provider: openai
source_hash: 59456805c28daaab394ba2a7f87e1104a1334a5cf32dbb961d5d232d9c471d84
source_hash: 11665dbc888b6d4dc667a47624cc1f2e4cc71e1d58e1f7d9b5fe4057ec4da108
source_path: concepts/active-memory.md
workflow: 15
---
# Active Memory
Active Memory to opcjonalny należący do Plugin blokujący podagent pamięci, który działa
Active Memory to opcjonalny, należący do Pluginu blokujący podagent pamięci, który działa
przed główną odpowiedzią dla kwalifikujących się sesji konwersacyjnych.
Istnieje, ponieważ większość systemów pamięci jest zdolna do działania, ale reaktywna. Polegają one na
tym, że główny agent zdecyduje, kiedy przeszukać pamięć, albo na tym, że użytkownik powie
coś w rodzaju „zapamiętaj to” lub „przeszukaj pamięć”. Wtedy jednak moment, w którym pamięć
sprawiłaby, że odpowiedź brzmiałaby naturalnie, już minął.
Istnieje, ponieważ większość systemów pamięci jest skuteczna, ale reaktywna. Polegają
na tym, że główny agent decyduje, kiedy przeszukiwać pamięć, albo na tym, że użytkownik mówi
rzeczy w rodzaju „zapamiętaj to” lub „przeszukaj pamięć”. Wtedy moment, w którym pamięć
sprawiłaby, że odpowiedź byłaby naturalna, już minął.
Active Memory daje systemowi jedną ograniczoną szansę na wydobycie odpowiedniej pamięci
zanim zostanie wygenerowana główna odpowiedź.
@ -56,7 +56,7 @@ samowystarczalną konfiguracją z bezpiecznymi ustawieniami domyślnymi:
}
```
To włącza plugin dla agenta `main`, domyślnie ogranicza go do sesji
To włącza Plugin dla agenta `main`, domyślnie ogranicza go do sesji
w stylu wiadomości bezpośrednich, pozwala mu najpierw dziedziczyć bieżący model sesji i
używa skonfigurowanego modelu zapasowego tylko wtedy, gdy nie jest dostępny
żaden jawny ani dziedziczony model.
@ -67,19 +67,20 @@ Następnie uruchom ponownie Gateway:
openclaw gateway
```
Aby obserwować to na żywo w rozmowie:
Aby sprawdzić to na żywo w rozmowie:
```text
/verbose on
/trace on
```
## Włącz Active Memory
Najbezpieczniejsza konfiguracja to:
1. włączyć plugin
2. wskazać jednego agenta konwersacyjnego
3. pozostaw logowanie włączone tylko podczas dostrajania
1. włącz Plugin
2. wybierz jednego agenta konwersacyjnego
3. pozostaw logowanie włączone tylko podczas dostrajania
Zacznij od tego w `openclaw.json`:
@ -114,22 +115,22 @@ openclaw gateway
Co to oznacza:
- `plugins.entries.active-memory.enabled: true` włącza plugin
- `plugins.entries.active-memory.enabled: true` włącza Plugin
- `config.agents: ["main"]` włącza active memory tylko dla agenta `main`
- `config.allowedChatTypes: ["direct"]` domyślnie utrzymuje active memory tylko dla sesji w stylu wiadomości bezpośrednich
- jeśli `config.model` nie jest ustawione, active memory najpierw dziedziczy bieżący model sesji
- `config.modelFallback` opcjonalnie zapewnia własny zapasowy dostawcę/model do przywoływania pamięci
- `config.promptStyle: "balanced"` używa domyślnego stylu promptu ogólnego przeznaczenia dla trybu `recent`
- `config.promptStyle: "balanced"` używa domyślnego prompt style ogólnego przeznaczenia dla trybu `recent`
- active memory nadal działa tylko w kwalifikujących się interaktywnych trwałych sesjach czatu
## Jak to zobaczyć
Active memory wstrzykuje ukryty kontekst systemowy dla modelu. Nie ujawnia
Active Memory wstrzykuje ukryty kontekst systemowy dla modelu. Nie ujawnia
surowych tagów `<active_memory_plugin>...</active_memory_plugin>` klientowi.
## Przełącznik sesji
Użyj polecenia plugin, gdy chcesz wstrzymać lub wznowić active memory dla
Użyj polecenia Pluginu, gdy chcesz wstrzymać lub wznowić active memory dla
bieżącej sesji czatu bez edytowania konfiguracji:
```text
@ -139,7 +140,7 @@ bieżącej sesji czatu bez edytowania konfiguracji:
```
To działa w zakresie sesji. Nie zmienia
`plugins.entries.active-memory.enabled`, wskazania agenta ani innej globalnej
`plugins.entries.active-memory.enabled`, kierowania agentów ani innej globalnej
konfiguracji.
Jeśli chcesz, aby polecenie zapisywało konfigurację oraz wstrzymywało lub wznawiało active memory dla
@ -155,21 +156,24 @@ Forma globalna zapisuje `plugins.entries.active-memory.config.enabled`. Pozostaw
`plugins.entries.active-memory.enabled` włączone, aby polecenie nadal było dostępne do
ponownego włączenia active memory później.
Jeśli chcesz zobaczyć, co active memory robi w sesji na żywo, włącz tryb verbose
dla tej sesji:
Jeśli chcesz zobaczyć, co active memory robi w sesji na żywo, włącz
przełączniki sesji odpowiadające wyjściu, które chcesz zobaczyć:
```text
/verbose on
/trace on
```
Przy włączonym verbose OpenClaw może pokazać:
Po ich włączeniu OpenClaw może pokazać:
- wiersz stanu active memory, taki jak `Active Memory: ok 842ms recent 34 chars`
- czytelne podsumowanie debugowania, takie jak `Active Memory Debug: Lemon pepper wings with blue cheese.`
- wiersz stanu active memory, taki jak `Active Memory: ok 842ms recent 34 chars`, gdy włączone jest `/verbose on`
- czytelne podsumowanie debugowania, takie jak `Active Memory Debug: Lemon pepper wings with blue cheese.`, gdy włączone jest `/trace on`
Te wiersze pochodzą z tego samego przebiegu active memory, który zasila ukryty
kontekst systemowy, ale są sformatowane dla ludzi zamiast ujawniać surowe
znaczniki promptu.
oznaczenia promptu. Są wysyłane jako diagnostyczna wiadomość uzupełniająca po normalnej
odpowiedzi asystenta, aby klienci kanałów, tacy jak Telegram, nie wyświetlali osobnego
diagnostycznego dymka przed odpowiedzią.
Domyślnie transkrypt blokującego podagenta pamięci jest tymczasowy i usuwany
po zakończeniu działania.
@ -178,10 +182,11 @@ Przykładowy przebieg:
```text
/verbose on
/trace on
what wings should i order?
```
Oczekiwany kształt widocznej odpowiedzi:
Oczekiwany widoczny kształt odpowiedzi:
```text
...normal assistant reply...
@ -190,18 +195,18 @@ Oczekiwany kształt widocznej odpowiedzi:
🔎 Active Memory Debug: Lemon pepper wings with blue cheese.
```
## Kiedy działa
## Kiedy to działa
Active memory używa dwóch bramek:
Active Memory używa dwóch bramek:
1. **Jawne włączenie w konfiguracji**
Plugin musi być włączony, a bieżący identyfikator agenta musi występować w
Plugin musi być włączony, a identyfikator bieżącego agenta musi występować w
`plugins.entries.active-memory.config.agents`.
2. **Ścisła kwalifikacja w czasie działania**
Nawet gdy jest włączone i wskazane, active memory działa tylko dla kwalifikujących się
interaktywnych trwałych sesji czatu.
Nawet gdy jest włączone i skierowane na agenta, active memory działa tylko dla
kwalifikujących się interaktywnych trwałych sesji czatu.
Rzeczywista reguła wygląda tak:
Rzeczywista reguła jest następująca:
```text
plugin enabled
@ -215,14 +220,14 @@ eligible interactive persistent chat session
active memory runs
```
Jeśli którykolwiek z tych warunków nie jest spełniony, active memory nie działa.
Jeśli którykolwiek z tych warunków nie zostanie spełniony, active memory nie działa.
## Typy sesji
`config.allowedChatTypes` kontroluje, w jakich rodzajach rozmów Active
Memory może w ogóle działać.
`config.allowedChatTypes` kontroluje, jakie rodzaje rozmów mogą w ogóle uruchamiać Active
Memory.
Domyślna wartość to:
Wartość domyślna to:
```json5
allowedChatTypes: ["direct"]
@ -245,16 +250,16 @@ allowedChatTypes: ["direct", "group"]
allowedChatTypes: ["direct", "group", "channel"]
```
## Gdzie działa
## Gdzie to działa
Active memory to funkcja wzbogacająca rozmowę, a nie ogólnoplatformowa
funkcja wnioskowania.
funkcja inferencji.
| Powierzchnia | Czy działa active memory? |
| Powierzchnia | Czy uruchamia active memory? |
| ------------------------------------------------------------------- | ------------------------------------------------------- |
| Trwałe sesje Control UI / czatu webowego | Tak, jeśli plugin jest włączony i agent jest wskazany |
| Inne interaktywne sesje kanałowe na tej samej trwałej ścieżce czatu | Tak, jeśli plugin jest włączony i agent jest wskazany |
| Bezgłowe uruchomienia jednorazowe | Nie |
| Trwałe sesje w interfejsie Control UI / czacie webowym | Tak, jeśli Plugin jest włączony i agent jest wskazany |
| Inne interaktywne sesje kanałowe na tej samej ścieżce trwałego czatu | Tak, jeśli Plugin jest włączony i agent jest wskazany |
| Bezobsługowe uruchomienia jednorazowe | Nie |
| Uruchomienia Heartbeat/w tle | Nie |
| Ogólne wewnętrzne ścieżki `agent-command` | Nie |
| Wykonanie podagenta/wewnętrznego pomocnika | Nie |
@ -264,16 +269,16 @@ funkcja wnioskowania.
Używaj active memory, gdy:
- sesja jest trwała i skierowana do użytkownika
- agent ma istotną pamięć długoterminową do przeszukania
- agent ma sensowną pamięć długoterminową do przeszukania
- ciągłość i personalizacja są ważniejsze niż surowy determinizm promptu
Działa to szczególnie dobrze dla:
- trwałych preferencji
- powtarzających się nawyków
- długoterminowego kontekstu użytkownika, który powinien naturalnie się ujawniać
- długoterminowego kontekstu użytkownika, który powinien naturalnie się pojawiać
Słabo nadaje się do:
To słabo nadaje się do:
- automatyzacji
- wewnętrznych workerów
@ -282,7 +287,7 @@ Słabo nadaje się do:
## Jak to działa
Kształt działania w czasie wykonywania jest następujący:
Kształt w czasie działania jest następujący:
```mermaid
flowchart LR
@ -300,25 +305,25 @@ Blokujący podagent pamięci może używać tylko:
Jeśli połączenie jest słabe, powinien zwrócić `NONE`.
## Tryby zapytań
## Tryby zapytania
`config.queryMode` kontroluje, jak dużą część rozmowy widzi blokujący podagent pamięci.
## Style promptu
## Style promptów
`config.promptStyle` kontroluje, jak chętny lub restrykcyjny jest blokujący podagent pamięci
przy podejmowaniu decyzji, czy zwrócić pamięć.
`config.promptStyle` kontroluje, jak chętny lub rygorystyczny jest blokujący podagent pamięci
podczas podejmowania decyzji, czy zwrócić pamięć.
Dostępne style:
- `balanced`: domyślny styl ogólnego przeznaczenia dla trybu `recent`
- `balanced`: domyślne ustawienie ogólnego przeznaczenia dla trybu `recent`
- `strict`: najmniej chętny; najlepszy, gdy chcesz bardzo małego przenikania z pobliskiego kontekstu
- `contextual`: najbardziej sprzyjający ciągłości; najlepszy, gdy historia rozmowy ma większe znaczenie
- `recall-heavy`: chętniej wydobywa pamięć przy słabszych, ale nadal prawdopodobnych dopasowaniach
- `contextual`: najbardziej sprzyjający ciągłości; najlepszy, gdy historia rozmowy powinna mieć większe znaczenie
- `recall-heavy`: bardziej skłonny do wydobywania pamięci przy słabszych, ale nadal prawdopodobnych dopasowaniach
- `precision-heavy`: zdecydowanie preferuje `NONE`, chyba że dopasowanie jest oczywiste
- `preference-only`: zoptymalizowany pod ulubione rzeczy, nawyki, rutyny, gust i powracające fakty osobiste
- `preference-only`: zoptymalizowany pod ulubione rzeczy, nawyki, rutyny, gust i powtarzające się fakty osobiste
Mapowanie domyślne, gdy `config.promptStyle` nie jest ustawione:
Domyślne mapowanie, gdy `config.promptStyle` nie jest ustawione:
```text
message -> strict
@ -326,7 +331,7 @@ recent -> balanced
full -> contextual
```
Jeśli ustawisz `config.promptStyle` jawnie, to nadpisanie ma pierwszeństwo.
Jeśli jawnie ustawisz `config.promptStyle`, to nadpisanie ma pierwszeństwo.
Przykład:
@ -353,13 +358,13 @@ Opcjonalny własny model zapasowy:
modelFallback: "google/gemini-3-flash"
```
Jeśli nie uda się rozwiązać żadnego jawnego, dziedziczonego ani skonfigurowanego modelu zapasowego, Active Memory
Jeśli nie zostanie rozpoznany żaden jawny, dziedziczony ani skonfigurowany model zapasowy, Active Memory
pomija przywoływanie pamięci dla tej tury.
`config.modelFallbackPolicy` jest zachowane wyłącznie jako przestarzałe pole zgodności
dla starszych konfiguracji. Nie zmienia już zachowania w czasie działania.
## Zaawansowane mechanizmy awaryjne
## Zaawansowane furtki awaryjne
Te opcje celowo nie są częścią zalecanej konfiguracji.
@ -376,7 +381,7 @@ thinking: "off"
```
Nie włączaj tego domyślnie. Active Memory działa na ścieżce odpowiedzi, więc dodatkowy
czas myślenia bezpośrednio zwiększa opóźnienie widoczne dla użytkownika.
czas myślenia bezpośrednio zwiększa widoczne dla użytkownika opóźnienie.
`config.promptAppend` dodaje dodatkowe instrukcje operatora po domyślnym prompcie Active
Memory i przed kontekstem rozmowy:
@ -386,14 +391,14 @@ promptAppend: "Prefer stable long-term preferences over one-off events."
```
`config.promptOverride` zastępuje domyślny prompt Active Memory. OpenClaw
nadal dołącza potem kontekst rozmowy:
nadal dodaje potem kontekst rozmowy:
```json5
promptOverride: "You are a memory search agent. Return NONE or one compact user fact."
```
Dostosowywanie promptu nie jest zalecane, chyba że celowo testujesz
inny kontrakt przywoływania pamięci. Domyślny prompt jest dostrojony tak, aby zwracać albo `NONE`,
Dostosowywanie promptu nie jest zalecane, chyba że celowo testujesz inną
umowę przywoływania pamięci. Domyślny prompt jest dostrojony tak, aby zwracał `NONE`
albo zwięzły kontekst faktów o użytkowniku dla głównego modelu.
### `message`
@ -408,7 +413,7 @@ Użyj tego, gdy:
- chcesz najszybszego działania
- chcesz najsilniejszego ukierunkowania na przywoływanie trwałych preferencji
- kolejne tury nie wymagają kontekstu rozmowy
- kolejne tury nie potrzebują kontekstu rozmowy
Zalecany limit czasu:
@ -416,7 +421,7 @@ Zalecany limit czasu:
### `recent`
Wysyłana jest najnowsza wiadomość użytkownika wraz z niewielkim ogonem ostatniej rozmowy.
Wysyłana jest najnowsza wiadomość użytkownika wraz z niewielkim ostatnim ogonem rozmowy.
```text
Recent conversation tail:
@ -431,7 +436,7 @@ Latest user message:
Użyj tego, gdy:
- chcesz lepszej równowagi między szybkością a osadzeniem w rozmowie
- pytania następcze często zależą od kilku ostatnich tur
- pytania uzupełniające często zależą od kilku ostatnich tur
Zalecany limit czasu:
@ -439,7 +444,7 @@ Zalecany limit czasu:
### `full`
Cała rozmowa jest wysyłana do blokującego podagenta pamięci.
Do blokującego podagenta pamięci wysyłana jest pełna rozmowa.
```text
Full conversation context:
@ -451,13 +456,13 @@ user: ...
Użyj tego, gdy:
- najwyższa jakość przywoływania pamięci jest ważniejsza niż opóźnienie
- najwyższa jakość przywoływania pamięci ma większe znaczenie niż opóźnienie
- rozmowa zawiera ważne przygotowanie daleko wcześniej w wątku
Zalecany limit czasu:
- zwiększ go znacząco w porównaniu z `message` lub `recent`
- zacznij od około `15000` ms lub więcej w zależności od rozmiaru wątku
- zacznij od około `15000` ms lub więcej, zależnie od rozmiaru wątku
Ogólnie limit czasu powinien rosnąć wraz z rozmiarem kontekstu:
@ -465,19 +470,19 @@ Ogólnie limit czasu powinien rosnąć wraz z rozmiarem kontekstu:
message < recent < full
```
## Trwałość transkryptu
## Trwałość transkryptów
Uruchomienia blokującego podagenta pamięci Active Memory tworzą rzeczywisty transkrypt `session.jsonl`
podczas wywołania blokującego podagenta pamięci.
Uruchomienia blokującego podagenta pamięci active memory tworzą rzeczywisty
transkrypt `session.jsonl` podczas wywołania blokującego podagenta pamięci.
Domyślnie ten transkrypt jest tymczasowy:
- jest zapisywany w katalogu tymczasowym
- jest używany tylko na potrzeby działania blokującego podagenta pamięci
- jest używany tylko do uruchomienia blokującego podagenta pamięci
- jest usuwany natychmiast po zakończeniu działania
Jeśli chcesz zachować te transkrypty blokującego podagenta pamięci na dysku do debugowania lub
inspekcji, włącz trwałość jawnie:
inspekcji, jawnie włącz trwałość:
```json5
{
@ -496,11 +501,11 @@ inspekcji, włącz trwałość jawnie:
}
```
Po włączeniu active memory zapisuje transkrypty w osobnym katalogu pod
folderem sesji docelowego agenta, a nie w głównej ścieżce transkryptu
rozmowy użytkownika.
Po włączeniu active memory przechowuje transkrypty w oddzielnym katalogu w
folderze sesji docelowego agenta, a nie w głównej ścieżce transkryptu rozmowy
użytkownika.
Domyślny układ jest koncepcyjnie następujący:
Domyślny układ koncepcyjnie wygląda tak:
```text
agents/<agent>/sessions/active-memory/<blocking-memory-sub-agent-session-id>.jsonl
@ -510,13 +515,13 @@ Możesz zmienić względny podkatalog za pomocą `config.transcriptDir`.
Używaj tego ostrożnie:
- transkrypty blokującego podagenta pamięci mogą szybko się gromadzić w aktywnych sesjach
- tryb zapytań `full` może duplikować dużą część kontekstu rozmowy
- transkrypty blokującego podagenta pamięci mogą szybko się gromadzić przy obciążonych sesjach
- tryb zapytania `full` może duplikować dużo kontekstu rozmowy
- te transkrypty zawierają ukryty kontekst promptu i przywołane wspomnienia
## Konfiguracja
Cała konfiguracja active memory znajduje się pod:
Cała konfiguracja active memory znajduje się w:
```text
plugins.entries.active-memory
@ -526,30 +531,30 @@ Najważniejsze pola to:
| Klucz | Typ | Znaczenie |
| --------------------------- | ---------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
| `enabled` | `boolean` | Włącza sam plugin |
| `enabled` | `boolean` | Włącza sam Plugin |
| `config.agents` | `string[]` | Identyfikatory agentów, które mogą używać active memory |
| `config.model` | `string` | Opcjonalne odwołanie do modelu blokującego podagenta pamięci; gdy nie jest ustawione, active memory używa bieżącego modelu sesji |
| `config.queryMode` | `"message" \| "recent" \| "full"` | Kontroluje, jak dużą część rozmowy widzi blokujący podagent pamięci |
| `config.promptStyle` | `"balanced" \| "strict" \| "contextual" \| "recall-heavy" \| "precision-heavy" \| "preference-only"` | Kontroluje, jak chętny lub restrykcyjny jest blokujący podagent pamięci przy podejmowaniu decyzji, czy zwrócić pamięć |
| `config.queryMode` | `"message" \| "recent" \| "full"` | Określa, jak dużą część rozmowy widzi blokujący podagent pamięci |
| `config.promptStyle` | `"balanced" \| "strict" \| "contextual" \| "recall-heavy" \| "precision-heavy" \| "preference-only"` | Określa, jak chętny lub rygorystyczny jest blokujący podagent pamięci przy podejmowaniu decyzji, czy zwrócić pamięć |
| `config.thinking` | `"off" \| "minimal" \| "low" \| "medium" \| "high" \| "xhigh" \| "adaptive"` | Zaawansowane nadpisanie poziomu myślenia dla blokującego podagenta pamięci; domyślnie `off` dla szybkości |
| `config.promptOverride` | `string` | Zaawansowana pełna zamiana promptu; niezalecana do normalnego użycia |
| `config.promptAppend` | `string` | Zaawansowane dodatkowe instrukcje dołączane do domyślnego lub nadpisanego promptu |
| `config.promptOverride` | `string` | Zaawansowane pełne zastąpienie promptu; niezalecane do normalnego użycia |
| `config.promptAppend` | `string` | Zaawansowane dodatkowe instrukcje dołączane do domyślnego lub nadpisanego promptu |
| `config.timeoutMs` | `number` | Twardy limit czasu dla blokującego podagenta pamięci |
| `config.maxSummaryChars` | `number` | Maksymalna łączna liczba znaków dozwolona w podsumowaniu active-memory |
| `config.logging` | `boolean` | Emisja logów active memory podczas dostrajania |
| `config.persistTranscripts` | `boolean` | Zachowuje transkrypty blokującego podagenta pamięci na dysku zamiast usuwać pliki tymczasowe |
| `config.transcriptDir` | `string` | Względny katalog transkryptów blokującego podagenta pamięci pod folderem sesji agenta |
| `config.transcriptDir` | `string` | Względny katalog transkryptów blokującego podagenta pamięci w folderze sesji agenta |
Przydatne pola do dostrajania:
| Klucz | Typ | Znaczenie |
| ----------------------------- | -------- | ------------------------------------------------------------ |
| `config.maxSummaryChars` | `number` | Maksymalna łączna liczba znaków dozwolona w podsumowaniu active-memory |
| `config.recentUserTurns` | `number` | Poprzednie tury użytkownika do uwzględnienia, gdy `queryMode` ma wartość `recent` |
| `config.recentAssistantTurns` | `number` | Poprzednie tury asystenta do uwzględnienia, gdy `queryMode` ma wartość `recent` |
| `config.recentUserTurns` | `number` | Poprzednie tury użytkownika do uwzględnienia, gdy `queryMode` to `recent` |
| `config.recentAssistantTurns` | `number` | Poprzednie tury asystenta do uwzględnienia, gdy `queryMode` to `recent` |
| `config.recentUserChars` | `number` | Maksymalna liczba znaków na ostatnią turę użytkownika |
| `config.recentAssistantChars` | `number` | Maksymalna liczba znaków na ostatnią turę asystenta |
| `config.cacheTtlMs` | `number` | Ponowne użycie pamięci podręcznej dla powtarzających się identycznych zapytań |
| `config.cacheTtlMs` | `number` | Ponowne użycie pamięci podręcznej dla powtarzanych identycznych zapytań |
## Zalecana konfiguracja
@ -575,8 +580,10 @@ Zacznij od `recent`.
}
```
Jeśli chcesz obserwować zachowanie na żywo podczas dostrajania, użyj `/verbose on` w
sesji zamiast szukać osobnego polecenia debugowania active-memory.
Jeśli chcesz sprawdzać zachowanie na żywo podczas dostrajania, użyj `/verbose on` dla
normalnego wiersza stanu oraz `/trace on` dla podsumowania debugowania active-memory, zamiast
szukać osobnego polecenia debugowania active-memory. W kanałach czatu te
wiersze diagnostyczne są wysyłane po głównej odpowiedzi asystenta, a nie przed nią.
Następnie przejdź do:
@ -585,15 +592,15 @@ Następnie przejdź do:
## Debugowanie
Jeśli active memory nie pojawia się tam, gdzie się go spodziewasz:
Jeśli active memory nie pojawia się tam, gdzie się tego spodziewasz:
1. Potwierdź, że plugin jest włączony pod `plugins.entries.active-memory.enabled`.
2. Potwierdź, że bieżący identyfikator agenta jest wymieniony w `config.agents`.
1. Potwierdź, że Plugin jest włączony w `plugins.entries.active-memory.enabled`.
2. Potwierdź, że identyfikator bieżącego agenta jest wymieniony w `config.agents`.
3. Potwierdź, że testujesz przez interaktywną trwałą sesję czatu.
4. Włącz `config.logging: true` i obserwuj logi Gateway.
5. Sprawdź, czy samo wyszukiwanie pamięci działa przy użyciu `openclaw memory status --deep`.
5. Sprawdź, czy samo przeszukiwanie pamięci działa, używając `openclaw memory status --deep`.
Jeśli trafienia pamięci są zbyt szumne, zaostrz:
Jeśli trafienia pamięci są zbyt chaotyczne, zaostrz:
- `maxSummaryChars`
@ -604,8 +611,186 @@ Jeśli active memory jest zbyt wolne:
- zmniejsz liczbę ostatnich tur
- zmniejsz limity znaków na turę
## Częste problemy
### Dostawca osadzania zmienił się nieoczekiwanie
Active Memory używa zwykłego potoku `memory_search` w
`agents.defaults.memorySearch`. Oznacza to, że konfiguracja dostawcy osadzania jest wymagana
tylko wtedy, gdy Twoja konfiguracja `memorySearch` wymaga osadzań dla oczekiwanego
zachowania.
W praktyce:
- jawna konfiguracja dostawcy jest **wymagana**, jeśli chcesz dostawcę, który nie jest
automatycznie wykrywany, na przykład `ollama`
- jawna konfiguracja dostawcy jest **wymagana**, jeśli automatyczne wykrywanie nie rozpoznaje
żadnego użytecznego dostawcy osadzania dla Twojego środowiska
- jawna konfiguracja dostawcy jest **zdecydowanie zalecana**, jeśli chcesz deterministycznego
wyboru dostawcy zamiast zasady „pierwszy dostępny wygrywa”
- jawna konfiguracja dostawcy zwykle **nie jest wymagana**, jeśli automatyczne wykrywanie już
rozpoznaje dostawcę, którego chcesz, i ten dostawca jest stabilny w Twoim wdrożeniu
Jeśli `memorySearch.provider` nie jest ustawione, OpenClaw automatycznie wykrywa
pierwszego dostępnego dostawcę osadzania.
Może to być mylące w rzeczywistych wdrożeniach:
- nowo dostępny klucz API może zmienić dostawcę używanego przez przeszukiwanie pamięci
- jedno polecenie lub powierzchnia diagnostyczna może sprawiać, że wybrany dostawca wygląda
inaczej niż ścieżka, którą rzeczywiście trafiasz podczas synchronizacji pamięci na żywo lub
bootstrapu wyszukiwania
- dostawcy hostowani mogą kończyć się błędami limitu przydziału lub limitu szybkości, które pojawiają się
dopiero wtedy, gdy Active Memory zaczyna wykonywać wyszukiwania przywoływania przed każdą odpowiedzią
Active Memory może nadal działać bez osadzań, gdy `memory_search` może działać
w zdegradowanym trybie wyłącznie leksykalnym, co zwykle ma miejsce wtedy, gdy nie można
rozpoznać żadnego dostawcy osadzania.
Nie zakładaj takiego samego mechanizmu awaryjnego przy błędach dostawcy w czasie działania, takich jak
wyczerpanie limitu przydziału, limity szybkości, błędy sieci/dostawcy lub brakujące modele lokalne/zdalne
po tym, jak dostawca został już wybrany.
W praktyce:
- jeśli nie można rozpoznać żadnego dostawcy osadzania, `memory_search` może przejść
do pobierania wyłącznie leksykalnego
- jeśli dostawca osadzania zostanie rozpoznany, a następnie zawiedzie w czasie działania, OpenClaw
obecnie nie gwarantuje leksykalnego mechanizmu awaryjnego dla tego żądania
- jeśli potrzebujesz deterministycznego wyboru dostawcy, przypnij
`agents.defaults.memorySearch.provider`
- jeśli potrzebujesz przełączania awaryjnego dostawcy przy błędach w czasie działania, jawnie skonfiguruj
`agents.defaults.memorySearch.fallback`
Jeśli zależysz od przywoływania opartego na osadzaniu, indeksowania multimodalnego lub określonego
dostawcy lokalnego/zdalnego, przypnij dostawcę jawnie zamiast polegać na
automatycznym wykrywaniu.
Typowe przykłady przypinania:
OpenAI:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "openai",
model: "text-embedding-3-small",
},
},
},
}
```
Gemini:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "gemini",
model: "gemini-embedding-001",
},
},
},
}
```
Ollama:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "ollama",
model: "nomic-embed-text",
},
},
},
}
```
Jeśli oczekujesz przełączania awaryjnego dostawcy przy błędach w czasie działania, takich jak wyczerpanie limitu przydziału,
samo przypięcie dostawcy nie wystarczy. Skonfiguruj również jawny mechanizm awaryjny:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "openai",
fallback: "gemini",
},
},
},
}
```
### Debugowanie problemów z dostawcą
Jeśli Active Memory jest wolne, puste lub wygląda, jakby nieoczekiwanie przełączało dostawców:
- obserwuj logi Gateway podczas odtwarzania problemu; szukaj wierszy takich jak
`active-memory: ... start|done`, `memory sync failed (search-bootstrap)` lub
błędów osadzania specyficznych dla dostawcy
- włącz `/trace on`, aby wyświetlić należące do Pluginu podsumowanie debugowania Active Memory w
sesji
- włącz `/verbose on`, jeśli chcesz także widzieć zwykły wiersz stanu
`🧩 Active Memory: ...` po każdej odpowiedzi
- uruchom `openclaw memory status --deep`, aby sprawdzić bieżący backend
wyszukiwania pamięci i stan indeksu
- sprawdź `agents.defaults.memorySearch.provider` oraz powiązaną autoryzację/konfigurację, aby
upewnić się, że dostawca, którego oczekujesz, jest faktycznie tym, który może zostać rozpoznany w czasie działania
- jeśli używasz `ollama`, sprawdź, czy skonfigurowany model osadzania jest zainstalowany, na
przykład `ollama list`
Przykładowa pętla debugowania:
```text
1. Start the gateway and watch its logs
2. In the chat session, run /trace on
3. Send one message that should trigger Active Memory
4. Compare the chat-visible debug line with the gateway log lines
5. If provider choice is ambiguous, pin agents.defaults.memorySearch.provider explicitly
```
Przykład:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "ollama",
model: "nomic-embed-text",
},
},
},
}
```
Albo, jeśli chcesz osadzania Gemini:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "gemini",
},
},
},
}
```
Po zmianie dostawcy uruchom ponownie Gateway i przeprowadź nowy test z
`/trace on`, aby wiersz debugowania Active Memory odzwierciedlał nową ścieżkę osadzania.
## Powiązane strony
- [Wyszukiwanie w pamięci](/pl/concepts/memory-search)
- [Memory Search](/pl/concepts/memory-search)
- [Dokumentacja konfiguracji pamięci](/pl/reference/memory-config)
- [Konfiguracja Plugin SDK](/pl/plugins/sdk-setup)

View File

@ -4,22 +4,23 @@ read_when:
summary: Cykl życia pętli agenta, strumienie i semantyka oczekiwania
title: Pętla agenta
x-i18n:
generated_at: "2026-04-10T09:44:34Z"
generated_at: "2026-04-12T23:28:03Z"
model: gpt-5.4
provider: openai
source_hash: b6831a5b11e9100e49f650feca51ab44a2bef242ce1b5db2766d0b3b5c5ba729
source_hash: 3c2986708b444055340e0c91b8fce7d32225fcccf3d197b797665fd36b1991a5
source_path: concepts/agent-loop.md
workflow: 15
---
# Pętla agenta (OpenClaw)
Pętla agenta to pełny, „rzeczywisty” przebieg działania agenta: przyjęcie danych wejściowych → złożenie kontekstu → wnioskowanie modelu →
wykonanie narzędzi → strumieniowanie odpowiedzi → utrwalenie. To autorytatywna ścieżka, która zamienia wiadomość
w działania i końcową odpowiedź, przy zachowaniu spójnego stanu sesji.
Pętla agentowa to pełny, „rzeczywisty” przebieg działania agenta: przyjęcie danych wejściowych → zbudowanie kontekstu → wnioskowanie modelu →
wykonanie narzędzi → strumieniowanie odpowiedzi → trwały zapis. To autorytatywna ścieżka, która przekształca wiadomość
w działania i końcową odpowiedź, zachowując przy tym spójność stanu sesji.
W OpenClaw pętla to pojedynczy, serializowany przebieg na sesję, który emituje zdarzenia cyklu życia i zdarzenia strumienia,
gdy model analizuje, wywołuje narzędzia i strumieniuje wynik. Ten dokument wyjaśnia, jak ta rzeczywista pętla jest połączona od początku do końca.
W OpenClaw pętla to pojedynczy, serializowany przebieg na sesję, który emituje zdarzenia cyklu życia i strumienia,
gdy model myśli, wywołuje narzędzia i strumieniuje dane wyjściowe. Ten dokument wyjaśnia, jak ta autentyczna pętla
jest połączona od początku do końca.
## Punkty wejścia
@ -28,18 +29,18 @@ gdy model analizuje, wywołuje narzędzia i strumieniuje wynik. Ten dokument wyj
## Jak to działa (wysoki poziom)
1. RPC `agent` sprawdza poprawność parametrów, rozpoznaje sesję (sessionKey/sessionId), utrwala metadane sesji i natychmiast zwraca `{ runId, acceptedAt }`.
1. RPC `agent` weryfikuje parametry, rozwiązuje sesję (`sessionKey`/`sessionId`), zapisuje metadane sesji i natychmiast zwraca `{ runId, acceptedAt }`.
2. `agentCommand` uruchamia agenta:
- rozpoznaje model + domyślne wartości thinking/verbose
- ładuje migawkę Skills
- rozwiązuje domyślne wartości modelu + thinking/verbose/trace
- wczytuje snapshot Skills
- wywołuje `runEmbeddedPiAgent` (środowisko uruchomieniowe pi-agent-core)
- emituje **lifecycle end/error**, jeśli osadzona pętla sama go nie emituje
- emituje **lifecycle end/error**, jeśli osadzona pętla tego nie zrobi
3. `runEmbeddedPiAgent`:
- serializuje przebiegi przez kolejki per sesja i globalne
- rozpoznaje model + profil uwierzytelniania i buduje sesję Pi
- rozwiązuje profil modelu + auth i buduje sesję pi
- subskrybuje zdarzenia pi i strumieniuje delty asystenta/narzędzi
- wymusza limit czasu -> przerywa przebieg po jego przekroczeniu
- zwraca ładunki + metadane użycia
- zwraca payloady + metadane użycia
4. `subscribeEmbeddedPiSession` mostkuje zdarzenia pi-agent-core do strumienia OpenClaw `agent`:
- zdarzenia narzędzi => `stream: "tool"`
- delty asystenta => `stream: "assistant"`
@ -50,97 +51,97 @@ gdy model analizuje, wywołuje narzędzia i strumieniuje wynik. Ten dokument wyj
## Kolejkowanie + współbieżność
- Przebiegi są serializowane dla każdego klucza sesji (pas sesji) i opcjonalnie przez globalny pas.
- Zapobiega to wyścigom narzędzi/sesji i utrzymuje spójną historię sesji.
- Przebiegi są serializowane per klucz sesji (pas sesji), a opcjonalnie także przez pas globalny.
- Zapobiega to wyścigom narzędzi/sesji i utrzymuje spójność historii sesji.
- Kanały wiadomości mogą wybierać tryby kolejki (collect/steer/followup), które zasilają ten system pasów.
Zobacz [Command Queue](/pl/concepts/queue).
Zobacz [Kolejka poleceń](/pl/concepts/queue).
## Przygotowanie sesji + obszaru roboczego
- Obszar roboczy jest rozpoznawany i tworzony; przebiegi piaskownicowane mogą zostać przekierowane do katalogu głównego obszaru roboczego sandboxa.
- Skills są ładowane (lub ponownie używane z migawki) i wstrzykiwane do środowiska oraz promptu.
- Pliki bootstrap/context są rozpoznawane i wstrzykiwane do raportu promptu systemowego.
- Uzyskiwana jest blokada zapisu sesji; `SessionManager` jest otwierany i przygotowywany przed rozpoczęciem strumieniowania.
- Obszar roboczy jest rozwiązywany i tworzony; przebiegi w sandbox mogą zostać przekierowane do katalogu głównego obszaru roboczego sandbox.
- Skills są wczytywane (lub ponownie używane ze snapshotu) i wstrzykiwane do środowiska oraz promptu.
- Pliki bootstrap/kontekstu są rozwiązywane i wstrzykiwane do raportu promptu systemowego.
- Uzyskiwana jest blokada zapisu sesji; przed rozpoczęciem strumieniowania `SessionManager` jest otwierany i przygotowywany.
## Składanie promptu + prompt systemowy
- Prompt systemowy jest budowany na podstawie bazowego promptu OpenClaw, promptu Skills, kontekstu bootstrap i nadpisań dla danego przebiegu.
- Wymuszane są limity specyficzne dla modelu oraz rezerwa tokenów na kompaktowanie.
- Zobacz [System prompt](/pl/concepts/system-prompt), aby sprawdzić, co widzi model.
- Prompt systemowy jest budowany z bazowego promptu OpenClaw, promptu Skills, kontekstu bootstrap i nadpisań dla danego przebiegu.
- Wymuszane są limity specyficzne dla modelu oraz tokeny zarezerwowane dla Compaction.
- Zobacz [Prompt systemowy](/pl/concepts/system-prompt), aby sprawdzić, co widzi model.
## Punkty hooków (gdzie można przechwycić)
OpenClaw ma dwa systemy hooków:
- **Hooki wewnętrzne** (hooki Gateway): skrypty sterowane zdarzeniami dla poleceń i zdarzeń cyklu życia.
- **Hooki pluginów**: punkty rozszerzeń wewnątrz cyklu życia agenta/narzędzi i potoku gateway.
- **Hooki Pluginów**: punkty rozszerzeń wewnątrz cyklu życia agenta/narzędzi i potoku Gateway.
### Hooki wewnętrzne (hooki Gateway)
- **`agent:bootstrap`**: uruchamia się podczas budowania plików bootstrap, zanim prompt systemowy zostanie ostatecznie sfinalizowany.
Użyj tego, aby dodawać/usuwać pliki kontekstu bootstrap.
- **Hooki poleceń**: `/new`, `/reset`, `/stop` i inne zdarzenia poleceń (zobacz dokumentację Hooks).
- Hooki poleceń: `/new`, `/reset`, `/stop` i inne zdarzenia poleceń (zobacz dokumentację Hooków).
Zobacz [Hooks](/pl/automation/hooks), aby poznać konfigurację i przykłady.
Zobacz [Hooki](/pl/automation/hooks), aby znaleźć konfigurację i przykłady.
### Hooki pluginów (cykl życia agenta + gateway)
### Hooki Pluginów (cykl życia agenta + Gateway)
uruchamiane wewnątrz pętli agenta lub potoku gateway:
one uruchamiane wewnątrz pętli agenta lub potoku Gateway:
- **`before_model_resolve`**: uruchamia się przed sesją (bez `messages`), aby deterministycznie nadpisać dostawcę/model przed rozpoznaniem modelu.
- **`before_prompt_build`**: uruchamia się po załadowaniu sesji (z `messages`), aby wstrzyknąć `prependContext`, `systemPrompt`, `prependSystemContext` lub `appendSystemContext` przed wysłaniem promptu. Używaj `prependContext` do dynamicznego tekstu dla danego obrotu i pól kontekstu systemowego do stabilnych wskazówek, które powinny znajdować się w obszarze promptu systemowego.
- **`before_agent_start`**: hook zgodności wstecznej; może uruchamiać się w obu fazach — preferuj powyższe jawne hooki.
- **`before_agent_reply`**: uruchamia się po działaniach inline i przed wywołaniem LLM, pozwalając pluginowi przejąć obrót i zwrócić syntetyczną odpowiedź lub całkowicie wyciszyć obrót.
- **`before_model_resolve`**: uruchamiany przed sesją (bez `messages`), aby deterministycznie nadpisać dostawcę/model przed rozstrzygnięciem modelu.
- **`before_prompt_build`**: uruchamiany po wczytaniu sesji (z `messages`), aby wstrzyknąć `prependContext`, `systemPrompt`, `prependSystemContext` lub `appendSystemContext` przed wysłaniem promptu. Używaj `prependContext` dla dynamicznego tekstu per tura, a pól kontekstu systemowego dla stabilnych wskazówek, które powinny znajdować się w przestrzeni promptu systemowego.
- **`before_agent_start`**: hook zgodności wstecznej; może działać w dowolnej z obu faz — preferuj powyższe hooki jawne.
- **`before_agent_reply`**: uruchamiany po działaniach inline i przed wywołaniem LLM, pozwalając Pluginowi przejąć turę i zwrócić odpowiedź syntetyczną lub całkowicie wyciszyć turę.
- **`agent_end`**: umożliwia inspekcję końcowej listy wiadomości i metadanych przebiegu po zakończeniu.
- **`before_compaction` / `after_compaction`**: obserwują lub opisują cykle kompaktowania.
- **`before_compaction` / `after_compaction`**: obserwują lub adnotują cykle Compaction.
- **`before_tool_call` / `after_tool_call`**: przechwytują parametry/wyniki narzędzi.
- **`before_install`**: umożliwia inspekcję wyników wbudowanego skanowania i opcjonalne blokowanie instalacji Skills lub pluginów.
- **`tool_result_persist`**: synchronicznie przekształca wyniki narzędzi przed zapisaniem ich do transkryptu sesji.
- **`before_install`**: umożliwia inspekcję wyników wbudowanego skanowania i opcjonalne zablokowanie instalacji Skills lub Pluginów.
- **`tool_result_persist`**: synchronicznie przekształca wyniki narzędzi, zanim zostaną zapisane w transkrypcie sesji.
- **`message_received` / `message_sending` / `message_sent`**: hooki wiadomości przychodzących i wychodzących.
- **`session_start` / `session_end`**: granice cyklu życia sesji.
- **`gateway_start` / `gateway_stop`**: zdarzenia cyklu życia gateway.
- **`gateway_start` / `gateway_stop`**: zdarzenia cyklu życia Gateway.
Zasady podejmowania decyzji przez hooki dla zabezpieczeń wiadomości wychodzących/narzędzi:
Zasady decyzyjne hooków dla zabezpieczeń wyjścia/narzędzi:
- `before_tool_call`: `{ block: true }` jest terminalne i zatrzymuje handlery o niższym priorytecie.
- `before_tool_call`: `{ block: true }` jest rozstrzygające i zatrzymuje handlery o niższym priorytecie.
- `before_tool_call`: `{ block: false }` nic nie robi i nie usuwa wcześniejszej blokady.
- `before_install`: `{ block: true }` jest terminalne i zatrzymuje handlery o niższym priorytecie.
- `before_install`: `{ block: true }` jest rozstrzygające i zatrzymuje handlery o niższym priorytecie.
- `before_install`: `{ block: false }` nic nie robi i nie usuwa wcześniejszej blokady.
- `message_sending`: `{ cancel: true }` jest terminalne i zatrzymuje handlery o niższym priorytecie.
- `message_sending`: `{ cancel: true }` jest rozstrzygające i zatrzymuje handlery o niższym priorytecie.
- `message_sending`: `{ cancel: false }` nic nie robi i nie usuwa wcześniejszego anulowania.
Zobacz [Plugin hooks](/pl/plugins/architecture#provider-runtime-hooks), aby poznać API hooków i szczegóły rejestracji.
Zobacz [Hooki Pluginów](/pl/plugins/architecture#provider-runtime-hooks), aby znaleźć API hooków i szczegóły rejestracji.
## Strumieniowanie + odpowiedzi częściowe
## Strumieniowanie + częściowe odpowiedzi
- Delty asystenta są strumieniowane z pi-agent-core i emitowane jako zdarzenia `assistant`.
- Strumieniowanie bloków może emitować odpowiedzi częściowe przy `text_end` lub `message_end`.
- Strumieniowanie rozumowania może być emitowane jako osobny strumień lub jako odpowiedzi blokowe.
- Zobacz [Streaming](/pl/concepts/streaming), aby poznać zachowanie fragmentacji i odpowiedzi blokowych.
- Strumieniowanie blokowe może emitować częściowe odpowiedzi na `text_end` albo `message_end`.
- Strumieniowanie rozumowania może być emitowane jako osobny strumień albo jako odpowiedzi blokowe.
- Zobacz [Strumieniowanie](/pl/concepts/streaming), aby poznać zachowanie fragmentacji i odpowiedzi blokowych.
## Wykonywanie narzędzi + narzędzia wiadomości
- Zdarzenia start/update/end narzędzi są emitowane w strumieniu `tool`.
- Wyniki narzędzi są oczyszczane pod kątem rozmiaru i ładunków obrazów przed logowaniem/emisją.
- Zdarzenia rozpoczęcia/aktualizacji/zakończenia narzędzia są emitowane w strumieniu `tool`.
- Wyniki narzędzi są oczyszczane pod względem rozmiaru i payloadów obrazów przed logowaniem/emisją.
- Wysłania przez narzędzia wiadomości są śledzone, aby tłumić zduplikowane potwierdzenia asystenta.
## Kształtowanie odpowiedzi + tłumienie
- Końcowe ładunki są składane z:
- Końcowe payloady są składane z:
- tekstu asystenta (i opcjonalnie rozumowania)
- podsumowań narzędzi inline (gdy `verbose` jest włączone i dozwolone)
- tekstu błędu asystenta, gdy model zwróci błąd
- Dokładny cichy token `NO_REPLY` / `no_reply` jest odfiltrowywany z wychodzących
ładunków.
- Duplikaty z narzędzi wiadomości są usuwane z końcowej listy ładunków.
- Jeśli nie pozostaną żadne renderowalne ładunki, a narzędzie zwróciło błąd, emitowana jest zapasowa odpowiedź błędu narzędzia
(chyba że narzędzie wiadomości wysłało już odpowiedź widoczną dla użytkownika).
- Dokładny token wyciszający `NO_REPLY` / `no_reply` jest filtrowany z wychodzących
payloadów.
- Duplikaty z narzędzi wiadomości są usuwane z końcowej listy payloadów.
- Jeśli nie pozostaną żadne renderowalne payloady, a narzędzie zwróciło błąd, emitowana jest awaryjna odpowiedź o błędzie narzędzia
(chyba że narzędzie wiadomości już wysłało odpowiedź widoczną dla użytkownika).
## Kompaktowanie + ponowienia
## Compaction + ponowienia
- Automatyczne kompaktowanie emituje zdarzenia strumienia `compaction` i może wywołać ponowienie.
- Auto-Compaction emituje zdarzenia strumienia `compaction` i może uruchomić ponowienie.
- Przy ponowieniu bufory w pamięci i podsumowania narzędzi są resetowane, aby uniknąć zduplikowanego wyjścia.
- Zobacz [Compaction](/pl/concepts/compaction), aby poznać potok kompaktowania.
- Zobacz [Compaction](/pl/concepts/compaction), aby poznać potok Compaction.
## Strumienie zdarzeń (obecnie)
@ -150,26 +151,26 @@ Zobacz [Plugin hooks](/pl/plugins/architecture#provider-runtime-hooks), aby pozn
## Obsługa kanału czatu
- Delty asystenta są buforowane do komunikatów czatu `delta`.
- Końcowy komunikat czatu `final` jest emitowany przy **lifecycle end/error**.
- Delty asystenta są buforowane do wiadomości czatu `delta`.
- Końcowe `final` czatu jest emitowane przy **lifecycle end/error**.
## Limity czasu
- Domyślny `agent.wait`: 30 s (tylko oczekiwanie). Parametr `timeoutMs` go nadpisuje.
- Czas działania agenta: domyślnie `agents.defaults.timeoutSeconds` wynosi 172800 s (48 godzin); egzekwowany przez licznik przerwania w `runEmbeddedPiAgent`.
- Limit bezczynności LLM: `agents.defaults.llm.idleTimeoutSeconds` przerywa żądanie modelu, gdy przed upływem okna bezczynności nie nadejdą żadne fragmenty odpowiedzi. Ustaw go jawnie dla wolnych modeli lokalnych lub dostawców rozumowania/wywołań narzędzi; ustaw na 0, aby wyłączyć. Jeśli nie jest ustawiony, OpenClaw używa `agents.defaults.timeoutSeconds`, jeśli skonfigurowano, w przeciwnym razie 120 s. Przebiegi wyzwalane przez cron bez jawnego limitu czasu LLM lub agenta wyłączają nadzorcę bezczynności i polegają na zewnętrznym limicie czasu crona.
- Czas działania agenta: domyślne `agents.defaults.timeoutSeconds` to 172800 s (48 godzin); wymuszane przez timer przerwania w `runEmbeddedPiAgent`.
- Limit bezczynności LLM: `agents.defaults.llm.idleTimeoutSeconds` przerywa żądanie modelu, gdy w oknie bezczynności nie nadejdą żadne fragmenty odpowiedzi. Ustaw tę wartość jawnie dla wolnych modeli lokalnych albo dostawców rozumowania/wywołań narzędzi; ustaw na 0, aby wyłączyć. Jeśli nie jest ustawiona, OpenClaw używa `agents.defaults.timeoutSeconds`, jeśli jest skonfigurowane, w przeciwnym razie 120 s. Przebiegi wyzwalane przez Cron bez jawnego limitu czasu LLM lub agenta wyłączają watchdog bezczynności i polegają na zewnętrznym limicie czasu Cron.
## Gdzie wszystko może zakończyć się wcześniej
- Limit czasu agenta (przerwanie)
- AbortSignal (anulowanie)
- Rozłączenie gateway lub limit czasu RPC
- Limit czasu `agent.wait` (tylko oczekiwanie, nie zatrzymuje agenta)
- Rozłączenie Gateway lub limit czasu RPC
- Limit czasu `agent.wait` (dotyczy tylko oczekiwania, nie zatrzymuje agenta)
## Powiązane
- [Tools](/pl/tools) — dostępne narzędzia agenta
- [Hooks](/pl/automation/hooks) — skrypty sterowane zdarzeniami, wyzwalane przez zdarzenia cyklu życia agenta
- [Compaction](/pl/concepts/compaction) — jak podsumowywane są długie rozmowy
- [Exec Approvals](/pl/tools/exec-approvals) — bramki zatwierdzania dla poleceń powłoki
- [Narzędzia](/pl/tools) — dostępne narzędzia agenta
- [Hooki](/pl/automation/hooks) — skrypty sterowane zdarzeniami, wyzwalane przez zdarzenia cyklu życia agenta
- [Compaction](/pl/concepts/compaction) — jak długie rozmowy są podsumowywane
- [Zgody na Exec](/pl/tools/exec-approvals) — bramki zatwierdzania poleceń powłoki
- [Thinking](/pl/tools/thinking) — konfiguracja poziomu thinking/rozumowania

View File

@ -1,55 +1,55 @@
---
read_when:
- Chcesz zrozumieć, co oznacza „kontekst” w OpenClaw
- Debugujesz, dlaczego model coś „wie” (albo o czymś zapomniał)
- Debugujesz, dlaczego model „wie” coś (albo o tym zapomniał)
- Chcesz zmniejszyć narzut kontekstu (`/context`, `/status`, `/compact`)
summary: 'Kontekst: co widzi model, jak jest budowany i jak go sprawdzić'
summary: 'Kontekst: co widzi model, jak jest zbudowany i jak go sprawdzić'
title: Kontekst
x-i18n:
generated_at: "2026-04-07T09:44:00Z"
generated_at: "2026-04-12T23:28:04Z"
model: gpt-5.4
provider: openai
source_hash: a75b4cd65bf6385d46265b9ce1643310bc99d220e35ec4b4924096bed3ca4aa0
source_hash: 3620db1a8c1956d91a01328966df491388d3a32c4003dc4447197eb34316c77d
source_path: concepts/context.md
workflow: 15
---
# Kontekst
„Kontekst” to **wszystko, co OpenClaw wysyła do modelu dla danego uruchomienia**. Jest ograniczony przez **okno kontekstu** modelu (limit tokenów).
„Kontekst” to **wszystko, co OpenClaw wysyła do modelu dla danego uruchomienia**. Jest on ograniczony przez **okno kontekstowe** modelu (limit tokenów).
Prosty model mentalny dla początkujących:
Model mentalny dla początkujących:
- **System prompt** (budowany przez OpenClaw): reguły, narzędzia, lista Skills, czas/runtime i wstrzyknięte pliki obszaru roboczego.
- **System prompt** (zbudowany przez OpenClaw): reguły, narzędzia, lista Skills, czas/środowisko uruchomieniowe oraz wstrzyknięte pliki workspace.
- **Historia rozmowy**: Twoje wiadomości + wiadomości asystenta dla tej sesji.
- **Wywołania/wyniki narzędzi + załączniki**: dane wyjściowe poleceń, odczyty plików, obrazy/audio itp.
- **Wywołania/wyniki narzędzi + załączniki**: wyniki poleceń, odczyty plików, obrazy/audio itd.
Kontekst _to nie to samo_ co „pamięć”: pamięć może być przechowywana na dysku i później ponownie wczytana; kontekst to to, co znajduje się w bieżącym oknie modelu.
Kontekst _nie jest tym samym_ co „pamięć”: pamięć może być zapisana na dysku i wczytana później; kontekst to to, co znajduje się w bieżącym oknie modelu.
## Szybki start (sprawdzanie kontekstu)
- `/status` → szybki widok „jak bardzo zapełnione jest moje okno?” + ustawienia sesji.
- `/context list` → co jest wstrzyknięte + przybliżone rozmiary (na plik + sumy).
- `/context detail`bardziej szczegółowy podział: rozmiary per plik, per schemat narzędzia, per wpis Skills i rozmiar system promptu.
- `/usage tokens` → dodaje stopkę z użyciem do zwykłych odpowiedzi.
- `/context list` → co jest wstrzyknięte + przybliżone rozmiary (dla każdego pliku + łącznie).
- `/context detail`głębszy rozkład: rozmiary dla każdego pliku, dla każdego schematu narzędzia, dla każdego wpisu Skills oraz rozmiar system promptu.
- `/usage tokens` → dołącza stopkę z użyciem tokenów do zwykłych odpowiedzi.
- `/compact` → podsumowuje starszą historię do zwartego wpisu, aby zwolnić miejsce w oknie.
Zobacz też: [Polecenia slash](/pl/tools/slash-commands), [Użycie tokenów i koszty](/pl/reference/token-use), [Kompaktowanie](/pl/concepts/compaction).
Zobacz też: [Polecenia slash](/pl/tools/slash-commands), [Użycie tokenów i koszty](/pl/reference/token-use), [Compaction](/pl/concepts/compaction).
## Przykładowe dane wyjściowe
Wartości różnią się w zależności od modelu, dostawcy, zasad dotyczących narzędzi i tego, co znajduje się w Twoim obszarze roboczym.
Wartości różnią się w zależności od modelu, dostawcy, polityki narzędzi i tego, co znajduje się w Twoim workspace.
### `/context list`
```
🧠 Podział kontekstu
Obszar roboczy: <workspaceDir>
🧠 Rozkład kontekstu
Workspace: <workspaceDir>
Maks. bootstrap/plik: 20,000 chars
Sandbox: mode=non-main sandboxed=false
System prompt (uruchomienie): 38,412 chars (~9,603 tok) (Project Context 23,901 chars (~5,976 tok))
Wstrzyknięte pliki obszaru roboczego:
Wstrzyknięte pliki workspace:
- AGENTS.md: OK | raw 1,742 chars (~436 tok) | injected 1,742 chars (~436 tok)
- SOUL.md: OK | raw 912 chars (~228 tok) | injected 912 chars (~228 tok)
- TOOLS.md: TRUNCATED | raw 54,210 chars (~13,553 tok) | injected 20,962 chars (~5,241 tok)
@ -61,18 +61,18 @@ Wstrzyknięte pliki obszaru roboczego:
Lista Skills (tekst system promptu): 2,184 chars (~546 tok) (12 skills)
Narzędzia: read, edit, write, exec, process, browser, message, sessions_send, …
Lista narzędzi (tekst system promptu): 1,032 chars (~258 tok)
Schematy narzędzi (JSON): 31,988 chars (~7,997 tok) (wlicza się do kontekstu; nie jest pokazywane jako tekst)
Schematy narzędzi (JSON): 31,988 chars (~7,997 tok) (wliczają się do kontekstu; nie są pokazane jako tekst)
Narzędzia: (takie same jak powyżej)
Tokeny sesji (z cache): 14,250 total / ctx=32,000
Tokeny sesji (z cache): 14,250 łącznie / ctx=32,000
```
### `/context detail`
```
🧠 Podział kontekstu (szczegółowy)
🧠 Rozkład kontekstu (szczegółowy)
Największe Skills (rozmiar wpisu w prompcie):
Największe Skills (rozmiar wpisu promptu):
- frontend-design: 412 chars (~103 tok)
- oracle: 401 chars (~101 tok)
… (+10 more skills)
@ -83,7 +83,7 @@ Największe narzędzia (rozmiar schematu):
… (+N more tools)
```
## Co wlicza się do okna kontekstu
## Co wlicza się do okna kontekstowego
Wlicza się wszystko, co otrzymuje model, w tym:
@ -91,8 +91,8 @@ Wlicza się wszystko, co otrzymuje model, w tym:
- Historia rozmowy.
- Wywołania narzędzi + wyniki narzędzi.
- Załączniki/transkrypcje (obrazy/audio/pliki).
- Podsumowania kompaktowania i artefakty przycinania.
- „Wrappery” dostawcy lub ukryte nagłówki (niewidoczne, ale nadal wliczane).
- Podsumowania Compaction i artefakty przycinania.
- „Opakowania” dostawcy lub ukryte nagłówki (niewidoczne, ale nadal liczone).
## Jak OpenClaw buduje system prompt
@ -100,16 +100,16 @@ System prompt jest **własnością OpenClaw** i jest przebudowywany przy każdym
- Listę narzędzi + krótkie opisy.
- Listę Skills (tylko metadane; zobacz niżej).
- Lokalizację obszaru roboczego.
- Lokalizację workspace.
- Czas (UTC + przeliczony czas użytkownika, jeśli skonfigurowano).
- Metadane runtime (host/OS/model/thinking).
- Wstrzyknięte pliki bootstrap obszaru roboczego w sekcji **Project Context**.
- Metadane środowiska uruchomieniowego (host/OS/model/myślenie).
- Wstrzyknięte pliki bootstrap workspace w sekcji **Project Context**.
Pełny podział: [System Prompt](/pl/concepts/system-prompt).
Pełny opis: [System Prompt](/pl/concepts/system-prompt).
## Wstrzyknięte pliki obszaru roboczego (Project Context)
## Wstrzyknięte pliki workspace (Project Context)
Domyślnie OpenClaw wstrzykuje stały zestaw plików obszaru roboczego (jeśli są obecne):
Domyślnie OpenClaw wstrzykuje stały zestaw plików workspace (jeśli istnieją):
- `AGENTS.md`
- `SOUL.md`
@ -119,68 +119,68 @@ Domyślnie OpenClaw wstrzykuje stały zestaw plików obszaru roboczego (jeśli s
- `HEARTBEAT.md`
- `BOOTSTRAP.md` (tylko przy pierwszym uruchomieniu)
Duże pliki są przycinane per plik za pomocą `agents.defaults.bootstrapMaxChars` (domyślnie `20000` znaków). OpenClaw wymusza też łączny limit wstrzyknięcia bootstrap dla wszystkich plików przez `agents.defaults.bootstrapTotalMaxChars` (domyślnie `150000` znaków). `/context` pokazuje rozmiary **raw vs injected** oraz informację, czy nastąpiło przycięcie.
Duże pliki są przycinane osobno dla każdego pliku zgodnie z `agents.defaults.bootstrapMaxChars` (domyślnie `20000` znaków). OpenClaw wymusza także łączny limit wstrzykiwania bootstrap dla wszystkich plików przez `agents.defaults.bootstrapTotalMaxChars` (domyślnie `150000` znaków). `/context` pokazuje rozmiary **raw vs injected** oraz to, czy wystąpiło przycięcie.
Gdy dochodzi do przycięcia, runtime może wstrzyknąć blok ostrzeżenia wewnątrz promptu w sekcji Project Context. Skonfigurujesz to przez `agents.defaults.bootstrapPromptTruncationWarning` (`off`, `once`, `always`; domyślnie `once`).
Gdy dochodzi do przycięcia, środowisko uruchomieniowe może wstrzyknąć ostrzeżenie bezpośrednio w prompt w sekcji Project Context. Skonfigurujesz to przez `agents.defaults.bootstrapPromptTruncationWarning` (`off`, `once`, `always`; domyślnie `once`).
## Skills: wstrzykiwane vs wczytywane na żądanie
## Skills: wstrzyknięte vs ładowane na żądanie
System prompt zawiera zwięzłą **listę Skills** (nazwa + opis + lokalizacja). Ta lista ma realny narzut.
System prompt zawiera zwartą **listę Skills** (nazwa + opis + lokalizacja). Ta lista ma realny narzut.
Instrukcje Skills _nie_ są domyślnie dołączane. Model ma użyć `read` do odczytu `SKILL.md` danego Skill **tylko wtedy, gdy jest to potrzebne**.
Instrukcje Skills _nie są_ domyślnie dołączane. Oczekuje się, że model odczyta `SKILL.md` danej umiejętności przez `read` **tylko wtedy, gdy jest to potrzebne**.
## Narzędzia: są dwa koszty
Narzędzia wpływają na kontekst na dwa sposoby:
1. **Tekst listy narzędzi** w system promcie (to, co widzisz jako „Tooling”).
1. **Tekst listy narzędzi** w system prompcie (to, co widzisz jako „Tooling”).
2. **Schematy narzędzi** (JSON). Są wysyłane do modelu, aby mógł wywoływać narzędzia. Wliczają się do kontekstu, mimo że nie widzisz ich jako zwykłego tekstu.
`/context detail` pokazuje podział największych schematów narzędzi, dzięki czemu możesz zobaczyć, co dominuje.
`/context detail` rozbija największe schematy narzędzi, aby pokazać, co dominuje.
## Polecenia, dyrektywy i „skróty inline”
Polecenia slash są obsługiwane przez Gateway. Występuje kilka różnych zachowań:
Polecenia slash są obsługiwane przez Gateway. Występuje tu kilka różnych zachowań:
- **Polecenia samodzielne**: wiadomość zawierająca tylko `/...` jest wykonywana jako polecenie.
- **Dyrektywy**: `/think`, `/verbose`, `/reasoning`, `/elevated`, `/model`, `/queue` są usuwane, zanim model zobaczy wiadomość.
- Wiadomości zawierające tylko dyrektywę zapisują ustawienia sesji.
- Dyrektywy inline w zwykłej wiadomości działają jako wskazówki dla pojedynczej wiadomości.
- **Skróty inline** (tylko nadawcy z allowlist): niektóre tokeny `/...` wewnątrz zwykłej wiadomości mogą zostać wykonane od razu (przykład: „hej /status”) i są usuwane, zanim model zobaczy pozostały tekst.
- **Polecenia samodzielne**: wiadomość zawierająca wyłącznie `/...` jest uruchamiana jako polecenie.
- **Dyrektywy**: `/think`, `/verbose`, `/trace`, `/reasoning`, `/elevated`, `/model`, `/queue` są usuwane, zanim model zobaczy wiadomość.
- Wiadomości zawierające wyłącznie dyrektywy utrwalają ustawienia sesji.
- Dyrektywy inline w zwykłej wiadomości działają jako wskazówki dla tej konkretnej wiadomości.
- **Skróty inline** (tylko dla nadawców z allowlisty): niektóre tokeny `/...` w zwykłej wiadomości mogą zostać uruchomione natychmiast (na przykład: „hej /status”) i są usuwane, zanim model zobaczy pozostały tekst.
Szczegóły: [Polecenia slash](/pl/tools/slash-commands).
## Sesje, kompaktowanie i przycinanie (co się utrzymuje)
## Sesje, Compaction i przycinanie (co jest trwałe)
To, co utrzymuje się między wiadomościami, zależy od mechanizmu:
To, co pozostaje między wiadomościami, zależy od mechanizmu:
- **Zwykła historia** utrzymuje się w transkrypcie sesji, dopóki nie zostanie skompaktowana/przycięta zgodnie z zasadami.
- **Kompaktowanie** zapisuje podsumowanie do transkryptu i zachowuje ostatnie wiadomości bez zmian.
- **Przycinanie** usuwa stare wyniki narzędzi z promptu _w pamięci_ dla danego uruchomienia, ale nie przepisuje transkryptu.
- **Zwykła historia** pozostaje w transkrypcie sesji, dopóki nie zostanie skompaktowana/przycięta zgodnie z polityką.
- **Compaction** zapisuje podsumowanie w transkrypcie i zachowuje nienaruszone ostatnie wiadomości.
- **Pruning** usuwa stare wyniki narzędzi z promptu _w pamięci_ dla danego uruchomienia, ale nie przepisuje transkryptu.
Dokumentacja: [Sesja](/pl/concepts/session), [Kompaktowanie](/pl/concepts/compaction), [Przycinanie sesji](/pl/concepts/session-pruning).
Dokumentacja: [Session](/pl/concepts/session), [Compaction](/pl/concepts/compaction), [Session pruning](/pl/concepts/session-pruning).
Domyślnie OpenClaw używa wbudowanego silnika kontekstu `legacy` do składania
i kompaktowania. Jeśli zainstalujesz plugin, który udostępnia `kind: "context-engine"` i
wybierzesz go przez `plugins.slots.contextEngine`, OpenClaw deleguje składanie kontekstu,
`/compact` oraz powiązane hooki cyklu życia kontekstu subagenta do tego
silnika. `ownsCompaction: false` nie powoduje automatycznego fallbacku do silnika
legacy; aktywny silnik nadal musi poprawnie implementować `compact()`. Zobacz
Domyślnie OpenClaw używa wbudowanego silnika kontekstu `legacy` do składania kontekstu i
Compaction. Jeśli zainstalujesz Plugin, który udostępnia `kind: "context-engine"` i
wybierzesz go za pomocą `plugins.slots.contextEngine`, OpenClaw przekaże temu
silnikowi składanie kontekstu, `/compact` oraz powiązane hooki cyklu życia
kontekstu subagenta. `ownsCompaction: false` nie powoduje automatycznego powrotu
do silnika `legacy`; aktywny silnik nadal musi poprawnie implementować `compact()`. Zobacz
[Context Engine](/pl/concepts/context-engine), aby poznać pełny
interfejs rozszerzalny, hooki cyklu życia i konfigurację.
interfejs z możliwością podłączania, hooki cyklu życia i konfigurację.
## Co faktycznie raportuje `/context`
## Co tak naprawdę raportuje `/context`
`/context` preferuje najnowszy raport system promptu **zbudowanego dla uruchomienia**, gdy jest dostępny:
`/context` preferuje najnowszy raport system promptu **zbudowanego podczas uruchomienia**, jeśli jest dostępny:
- `System prompt (run)` = przechwycony z ostatniego uruchomienia osadzonego (z obsługą narzędzi) i zapisany w magazynie sesji.
- `System prompt (estimate)` = obliczony na bieżąco, gdy nie istnieje raport z uruchomienia (lub podczas działania przez backend CLI, który nie generuje raportu).
- `System prompt (run)` = przechwycony z ostatniego osadzonego uruchomienia (z obsługą narzędzi) i utrwalony w magazynie sesji.
- `System prompt (estimate)` = obliczany na bieżąco, gdy nie istnieje raport z uruchomienia (lub gdy uruchamiasz przez backend CLI, który nie generuje raportu).
W obu przypadkach raportuje rozmiary i największe składowe; **nie** wypisuje pełnego system promptu ani schematów narzędzi.
W obu przypadkach raportuje rozmiary i największe składniki; **nie** zrzuca pełnego system promptu ani schematów narzędzi.
## Powiązane
- [Context Engine](/pl/concepts/context-engine) — niestandardowe wstrzykiwanie kontekstu przez pluginy
- [Kompaktowanie](/pl/concepts/compaction) — podsumowywanie długich rozmów
- [Compaction](/pl/concepts/compaction) — podsumowywanie długich rozmów
- [System Prompt](/pl/concepts/system-prompt) — jak budowany jest system prompt
- [Pętla agenta](/pl/concepts/agent-loop) — pełny cykl wykonywania agenta
- [Agent Loop](/pl/concepts/agent-loop) — pełny cykl działania agenta

View File

@ -2,31 +2,31 @@
read_when:
- Chcesz skonfigurować QMD jako backend pamięci
- Chcesz korzystać z zaawansowanych funkcji pamięci, takich jak reranking lub dodatkowe indeksowane ścieżki
summary: Lokalny sidecar wyszukiwania z BM25, wektorami, rerankingiem i rozwijaniem zapytań
summary: Lokalny sidecar wyszukiwania z podejściem local-first, z BM25, wektorami, rerankingiem i rozszerzaniem zapytań
title: Silnik pamięci QMD
x-i18n:
generated_at: "2026-04-06T03:06:19Z"
generated_at: "2026-04-12T23:28:03Z"
model: gpt-5.4
provider: openai
source_hash: 36642c7df94b88f562745dd2270334379f2aeeef4b363a8c13ef6be42dadbe5c
source_hash: 27afc996b959d71caed964a3cae437e0e29721728b30ebe7f014db124c88da04
source_path: concepts/memory-qmd.md
workflow: 15
---
# Silnik pamięci QMD
[QMD](https://github.com/tobi/qmd) to lokalny sidecar wyszukiwania, który działa
[QMD](https://github.com/tobi/qmd) to sidecar wyszukiwania local-first, który działa
obok OpenClaw. Łączy BM25, wyszukiwanie wektorowe i reranking w jednym
pliku binarnym oraz może indeksować treści wykraczające poza pliki pamięci w obszarze roboczym.
binarium, a także może indeksować treści wykraczające poza pliki pamięci w Twoim obszarze roboczym.
## Co dodaje względem wbudowanego rozwiązania
## Co dodaje w porównaniu z wbudowanym rozwiązaniem
- **Reranking i rozwijanie zapytań** dla lepszego recall.
- **Indeksowanie dodatkowych katalogów** -- dokumentacji projektu, notatek zespołu, wszystkiego na dysku.
- **Indeksowanie transkryptów sesji** -- przywoływanie wcześniejszych rozmów.
- **W pełni lokalne** -- działa przez Bun + node-llama-cpp, automatycznie pobiera modele GGUF.
- **Automatyczny fallback** -- jeśli QMD jest niedostępne, OpenClaw płynnie wraca do
wbudowanego silnika.
- **Reranking i rozszerzanie zapytań** dla lepszego recall.
- **Indeksowanie dodatkowych katalogów** — dokumentacja projektu, notatki zespołu, wszystko na dysku.
- **Indeksowanie transkryptów sesji** przywoływanie wcześniejszych rozmów.
- **W pełni lokalne** działa przez Bun + node-llama-cpp, automatycznie pobiera modele GGUF.
- **Automatyczny fallback** — jeśli QMD jest niedostępne, OpenClaw płynnie przełącza się na
wbudowany silnik.
## Pierwsze kroki
@ -34,8 +34,8 @@ pliku binarnym oraz może indeksować treści wykraczające poza pliki pamięci
- Zainstaluj QMD: `npm install -g @tobilu/qmd` lub `bun install -g @tobilu/qmd`
- Kompilacja SQLite, która pozwala na rozszerzenia (`brew install sqlite` na macOS).
- QMD musi być dostępne w `PATH` bramy.
- macOS i Linux działają od razu. Windows jest najlepiej obsługiwany przez WSL2.
- QMD musi znajdować się w `PATH` bramy.
- macOS i Linux działają od razu. Windows jest najlepiej wspierany przez WSL2.
### Włączanie
@ -49,29 +49,31 @@ pliku binarnym oraz może indeksować treści wykraczające poza pliki pamięci
OpenClaw tworzy samowystarczalny katalog domowy QMD w
`~/.openclaw/agents/<agentId>/qmd/` i automatycznie zarządza cyklem życia sidecara
-- kolekcje, aktualizacje i uruchomienia osadzania są obsługiwane automatycznie.
Preferuje bieżące kształty kolekcji QMD i zapytań MCP, ale w razie potrzeby nadal wraca do
starszych flag kolekcji `--mask` i starszych nazw narzędzi MCP.
— kolekcje, aktualizacje i uruchomienia osadzania są obsługiwane za Ciebie.
Preferuje bieżące kształty kolekcji QMD i zapytań MCP, ale nadal wraca do
starszych flag kolekcji `--mask` i starszych nazw narzędzi MCP, gdy jest to potrzebne.
## Jak działa sidecar
- OpenClaw tworzy kolekcje z plików pamięci w obszarze roboczym oraz ze wszystkich
- OpenClaw tworzy kolekcje z plików pamięci Twojego obszaru roboczego oraz wszystkich
skonfigurowanych `memory.qmd.paths`, a następnie uruchamia `qmd update` + `qmd embed` przy starcie
i okresowo (domyślnie co 5 minut).
- Domyślna kolekcja obszaru roboczego śledzi `MEMORY.md` oraz drzewo `memory/`.
Małe litery w `memory.md` pozostają fallbackiem bootstrapowym, a nie oddzielną kolekcją QMD.
- Odświeżanie przy starcie działa w tle, więc uruchamianie czatu nie jest blokowane.
- Wyszukiwania używają skonfigurowanego `searchMode` (domyślnie: `search`; obsługuje też
`vsearch` i `query`). Jeśli dany tryb zawiedzie, OpenClaw ponawia próbę za pomocą `qmd query`.
- Jeśli QMD całkowicie zawiedzie, OpenClaw wraca do wbudowanego silnika SQLite.
- Wyszukiwania używają skonfigurowanego `searchMode` (domyślnie: `search`; obsługiwane są też
`vsearch` i `query`). Jeśli dany tryb zawiedzie, OpenClaw ponawia próbę z `qmd query`.
- Jeśli QMD całkowicie zawiedzie, OpenClaw przełącza się na wbudowany silnik SQLite.
<Info>
Pierwsze wyszukiwanie może być wolne -- QMD automatycznie pobiera modele GGUF (~2 GB) do
rerankingu i rozwijania zapytań przy pierwszym uruchomieniu `qmd query`.
Pierwsze wyszukiwanie może być wolne QMD automatycznie pobiera modele GGUF (~2 GB) do
rerankingu i rozszerzania zapytań przy pierwszym uruchomieniu `qmd query`.
</Info>
## Nadpisania modeli
Zmienne środowiskowe modeli QMD są przekazywane bez zmian z procesu bramy,
więc możesz globalnie dostrajać QMD bez dodawania nowej konfiguracji OpenClaw:
więc możesz globalnie dostroić QMD bez dodawania nowej konfiguracji OpenClaw:
```bash
export QMD_EMBED_MODEL="hf:Qwen/Qwen3-Embedding-0.6B-GGUF/Qwen3-Embedding-0.6B-Q8_0.gguf"
@ -79,12 +81,12 @@ export QMD_RERANK_MODEL="/absolute/path/to/reranker.gguf"
export QMD_GENERATE_MODEL="/absolute/path/to/generator.gguf"
```
Po zmianie modelu osadzania uruchom ponownie osadzanie, aby indeks odpowiadał
Po zmianie modelu osadzania uruchom ponownie osadzanie, aby indeks pasował do
nowej przestrzeni wektorowej.
## Indeksowanie dodatkowych ścieżek
Skieruj QMD na dodatkowe katalogi, aby stały się przeszukiwalne:
Skieruj QMD na dodatkowe katalogi, aby można było je przeszukiwać:
```json5
{
@ -98,7 +100,7 @@ Skieruj QMD na dodatkowe katalogi, aby stały się przeszukiwalne:
```
Fragmenty z dodatkowych ścieżek pojawiają się jako `qmd/<collection>/<relative-path>` w
wynikach wyszukiwania. `memory_get` rozumie ten prefiks i odczytuje z właściwego
wynikach wyszukiwania. `memory_get` rozumie ten prefiks i odczytuje z poprawnego
katalogu głównego kolekcji.
## Indeksowanie transkryptów sesji
@ -116,13 +118,13 @@ Włącz indeksowanie sesji, aby przywoływać wcześniejsze rozmowy:
}
```
Transkrypty są eksportowane jako oczyszczone tury Użytkownik/Asystent do dedykowanej
Transkrypty są eksportowane jako oczyszczone tury User/Assistant do dedykowanej
kolekcji QMD w `~/.openclaw/agents/<id>/qmd/sessions/`.
## Zakres wyszukiwania
Domyślnie wyniki wyszukiwania QMD są udostępniane tylko w sesjach DM (nie w grupach ani
kanałach). Skonfiguruj `memory.qmd.scope`, aby to zmienić:
Domyślnie wyniki wyszukiwania QMD są udostępniane w sesjach bezpośrednich i kanałowych
(nie grupowych). Aby to zmienić, skonfiguruj `memory.qmd.scope`:
```json5
{
@ -137,22 +139,22 @@ kanałach). Skonfiguruj `memory.qmd.scope`, aby to zmienić:
}
```
Gdy zakres odrzuca wyszukiwanie, OpenClaw zapisuje ostrzeżenie z wyprowadzonym kanałem i
typem czatu, aby łatwiej było diagnozować puste wyniki.
Gdy zakres zabrania wyszukiwania, OpenClaw zapisuje ostrzeżenie z wyliczonym kanałem i
typem czatu, dzięki czemu łatwiej diagnozować puste wyniki.
## Cytowania
Gdy `memory.citations` ma wartość `auto` lub `on`, fragmenty wyszukiwania zawierają
stopkę `Source: <path#line>`. Ustaw `memory.citations = "off"`, aby pominąć stopkę,
jednocześnie nadal przekazując ścieżkę agentowi wewnętrznie.
zachowując jednocześnie przekazywanie ścieżki wewnętrznie do agenta.
## Kiedy używać
Wybierz QMD, gdy potrzebujesz:
- Rerankingu dla wyników wyższej jakości.
- Przeszukiwania dokumentacji projektu lub notatek poza obszarem roboczym.
- Przywoływania wcześniejszych rozmów z sesji.
- Przeszukiwać dokumentację projektu lub notatki poza obszarem roboczym.
- Przywoływać wcześniejsze rozmowy z sesji.
- W pełni lokalnego wyszukiwania bez kluczy API.
W prostszych konfiguracjach [wbudowany silnik](/pl/concepts/memory-builtin) sprawdza się dobrze
@ -160,27 +162,27 @@ bez dodatkowych zależności.
## Rozwiązywanie problemów
**Nie znaleziono QMD?** Upewnij się, że plik binarny jest w `PATH` bramy. Jeśli OpenClaw
**Nie znaleziono QMD?** Upewnij się, że binarium jest w `PATH` bramy. Jeśli OpenClaw
działa jako usługa, utwórz dowiązanie symboliczne:
`sudo ln -s ~/.bun/bin/qmd /usr/local/bin/qmd`.
**Pierwsze wyszukiwanie jest bardzo wolne?** QMD pobiera modele GGUF przy pierwszym użyciu. Wstępnie rozgrzej
je poleceniem `qmd query "test"` z użyciem tych samych katalogów XDG, których używa OpenClaw.
**Pierwsze wyszukiwanie jest bardzo wolne?** QMD pobiera modele GGUF przy pierwszym użyciu. Rozgrzej je wcześniej
poleceniem `qmd query "test"` z użyciem tych samych katalogów XDG, których używa OpenClaw.
**Wyszukiwanie przekracza limit czasu?** Zwiększ `memory.qmd.limits.timeoutMs` (domyślnie: 4000ms).
**Wyszukiwanie przekracza limit czasu?** Zwiększ `memory.qmd.limits.timeoutMs` (domyślnie: 4000 ms).
Ustaw `120000` dla wolniejszego sprzętu.
**Puste wyniki w czatach grupowych?** Sprawdź `memory.qmd.scope` -- domyślna konfiguracja
zezwala tylko na sesje DM.
**Puste wyniki w czatach grupowych?** Sprawdź `memory.qmd.scope` — domyślnie
dozwolone są tylko sesje bezpośrednie i kanałowe.
**Tymczasowe repozytoria widoczne w obszarze roboczym powodują `ENAMETOOLONG` lub błędne indeksowanie?**
Przechodzenie QMD obecnie podąża za bazowym zachowaniem skanera QMD zamiast
wbudowanych reguł dowiązań symbolicznych OpenClaw. Trzymaj tymczasowe checkouty monorepo w
ukrytych katalogach, takich jak `.tmp/`, lub poza indeksowanymi katalogami głównymi QMD, dopóki QMD nie udostępni
odpornego na cykle przechodzenia lub jawnych mechanizmów wykluczania.
Przechodzenie przez drzewo w QMD obecnie podąża za zachowaniem bazowego skanera QMD zamiast
zasad dowiązań symbolicznych wbudowanych w OpenClaw. Trzymaj tymczasowe checkouty monorepo w
ukrytych katalogach takich jak `.tmp/` lub poza indeksowanymi katalogami głównymi QMD, dopóki QMD nie udostępni
bezpiecznego przechodzenia po cyklach albo jawnych mechanizmów wykluczania.
## Konfiguracja
Pełny opis powierzchni konfiguracji (`memory.qmd.*`), trybów wyszukiwania, interwałów aktualizacji,
reguł zakresu i wszystkich pozostałych ustawień znajdziesz w
[referencji konfiguracji pamięci](/pl/reference/memory-config).
Aby zobaczyć pełną powierzchnię konfiguracji (`memory.qmd.*`), tryby wyszukiwania, interwały aktualizacji,
reguły zakresu i wszystkie pozostałe ustawienia, zobacz
[Dokumentację konfiguracji pamięci](/pl/reference/memory-config).

View File

@ -1,60 +1,56 @@
---
read_when:
- Chcesz zrozumieć, jak działa memory_search
- Chcesz zrozumieć, jak działa `memory_search`
- Chcesz wybrać dostawcę embeddingów
- Chcesz dostroić jakość wyszukiwania
summary: Jak wyszukiwanie w pamięci znajduje odpowiednie notatki za pomocą embeddingów i wyszukiwania hybrydowego
title: Wyszukiwanie w pamięci
summary: Jak wyszukiwanie pamięci znajduje odpowiednie notatki za pomocą embeddingów i wyszukiwania hybrydowego
title: Wyszukiwanie pamięci
x-i18n:
generated_at: "2026-04-10T09:44:32Z"
generated_at: "2026-04-12T23:28:04Z"
model: gpt-5.4
provider: openai
source_hash: ca0237f4f1ee69dcbfb12e6e9527a53e368c0bf9b429e506831d4af2f3a3ac6f
source_hash: 71fde251b7d2dc455574aa458e7e09136f30613609ad8dafeafd53b2729a0310
source_path: concepts/memory-search.md
workflow: 15
---
# Wyszukiwanie w pamięci
# Wyszukiwanie pamięci
`memory_search` znajduje odpowiednie notatki z Twoich plików pamięci, nawet gdy
sformułowania różnią się od oryginalnego tekstu. Działa poprzez indeksowanie pamięci na małe
fragmenty i przeszukiwanie ich za pomocą embeddingów, słów kluczowych albo obu tych metod.
`memory_search` znajduje odpowiednie notatki z Twoich plików pamięci, nawet gdy sformułowania różnią się od oryginalnego tekstu. Działa przez indeksowanie pamięci w małych fragmentach i przeszukiwanie ich za pomocą embeddingów, słów kluczowych albo obu tych metod.
## Szybki start
Jeśli masz skonfigurowany klucz API OpenAI, Gemini, Voyage lub Mistral, wyszukiwanie w pamięci
działa automatycznie. Aby jawnie ustawić dostawcę:
Jeśli masz skonfigurowany klucz API OpenAI, Gemini, Voyage lub Mistral, wyszukiwanie pamięci działa automatycznie. Aby jawnie ustawić dostawcę:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "openai", // or "gemini", "local", "ollama", etc.
provider: "openai", // lub "gemini", "local", "ollama" itp.
},
},
},
}
```
W przypadku lokalnych embeddingów bez klucza API użyj `provider: "local"` (wymaga
`node-llama-cpp`).
W przypadku lokalnych embeddingów bez klucza API użyj `provider: "local"` (wymaga `node-llama-cpp`).
## Obsługiwani dostawcy
| Dostawca | ID | Wymaga klucza API | Uwagi |
| -------- | --------- | ----------------- | ---------------------------------------------------- |
| OpenAI | `openai` | Tak | Wykrywany automatycznie, szybki |
| Gemini | `gemini` | Tak | Obsługuje indeksowanie obrazów/dźwięku |
| Gemini | `gemini` | Tak | Obsługuje indeksowanie obrazów i dźwięku |
| Voyage | `voyage` | Tak | Wykrywany automatycznie |
| Mistral | `mistral` | Tak | Wykrywany automatycznie |
| Bedrock | `bedrock` | Nie | Wykrywany automatycznie, gdy łańcuch poświadczeń AWS zostanie rozwiązany |
| Ollama | `ollama` | Nie | Lokalny, trzeba ustawić jawnie |
| Local | `local` | Nie | Model GGUF, pobieranie ~0.6 GB |
| Local | `local` | Nie | Model GGUF, pobieranie ~0,6 GB |
## Jak działa wyszukiwanie
OpenClaw uruchamia równolegle dwie ścieżki pobierania wyników i scala ich rezultaty:
OpenClaw uruchamia równolegle dwie ścieżki wyszukiwania i scala wyniki:
```mermaid
flowchart LR
@ -67,12 +63,12 @@ flowchart LR
M --> R["Top Results"]
```
- **Wyszukiwanie wektorowe** znajduje notatki o podobnym znaczeniu („gateway host” pasuje do
„maszyna, na której działa OpenClaw”).
- **Wyszukiwanie słów kluczowych BM25** znajduje dokładne dopasowania (ID, ciągi błędów, klucze
konfiguracji).
- **Wyszukiwanie wektorowe** znajduje notatki o podobnym znaczeniu („gateway host” pasuje do „maszyna, na której działa OpenClaw”).
- **Wyszukiwanie słów kluczowych BM25** znajduje dokładne dopasowania (ID, ciągi błędów, klucze konfiguracji).
Jeśli dostępna jest tylko jedna ścieżka (brak embeddingów albo brak FTS), działa samodzielnie tylko druga.
Jeśli dostępna jest tylko jedna ścieżka (brak embeddingów albo brak FTS), działa tylko ta jedna.
Gdy embeddingi są niedostępne, OpenClaw nadal używa rankingu leksykalnego na wynikach FTS zamiast sprowadzać się wyłącznie do surowego porządku dokładnych dopasowań. Ten tryb obniżonej jakości wzmacnia fragmenty z lepszym pokryciem terminów zapytania i odpowiednimi ścieżkami plików, co pomaga zachować użyteczny recall nawet bez `sqlite-vec` lub dostawcy embeddingów.
## Poprawa jakości wyszukiwania
@ -80,23 +76,18 @@ Dwie opcjonalne funkcje pomagają, gdy masz dużą historię notatek:
### Zanikanie czasowe
Starsze notatki stopniowo tracą wagę w rankingu, dzięki czemu najpierw pojawiają się nowsze informacje.
Przy domyślnym okresie półtrwania wynoszącym 30 dni notatka z zeszłego miesiąca ma wynik równy 50% swojej
pierwotnej wagi. Pliki stałe, takie jak `MEMORY.md`, nigdy nie podlegają zanikaniu.
Stare notatki stopniowo tracą wagę rankingową, dzięki czemu nowsze informacje pojawiają się wyżej. Przy domyślnym okresie połowicznego zaniku wynoszącym 30 dni notatka z zeszłego miesiąca zachowuje 50% swojej pierwotnej wagi. Pliki trwałe, takie jak `MEMORY.md`, nigdy nie podlegają zanikowi.
<Tip>
Włącz zanikanie czasowe, jeśli Twój agent ma wiele miesięcy codziennych notatek, a nieaktualne
informacje stale wyprzedzają nowszy kontekst.
Włącz zanikanie czasowe, jeśli Twój agent ma miesiące codziennych notatek, a nieaktualne informacje stale wyprzedzają nowszy kontekst.
</Tip>
### MMR (różnorodność)
Ogranicza powtarzające się wyniki. Jeśli pięć notatek wspomina tę samą konfigurację routera, MMR
sprawia, że najwyższe wyniki obejmują różne tematy, zamiast się powtarzać.
Ogranicza redundantne wyniki. Jeśli pięć notatek wspomina tę samą konfigurację routera, MMR sprawia, że najwyższe wyniki obejmują różne tematy zamiast się powtarzać.
<Tip>
Włącz MMR, jeśli `memory_search` stale zwraca niemal identyczne fragmenty z
różnych codziennych notatek.
Włącz MMR, jeśli `memory_search` stale zwraca niemal identyczne fragmenty z różnych codziennych notatek.
</Tip>
### Włącz oba
@ -120,30 +111,22 @@ różnych codziennych notatek.
## Pamięć multimodalna
Z Gemini Embedding 2 możesz indeksować obrazy i pliki audio obok plików
Markdown. Zapytania wyszukiwania nadal pozostają tekstowe, ale dopasowują się do treści wizualnych i audio.
Informacje o konfiguracji znajdziesz w [dokumencie referencyjnym konfiguracji pamięci](/pl/reference/memory-config).
Dzięki Gemini Embedding 2 możesz indeksować obrazy i pliki audio obok Markdownu. Zapytania wyszukiwania nadal pozostają tekstowe, ale dopasowują się do treści wizualnych i dźwiękowych. Informacje o konfiguracji znajdziesz w [referencji konfiguracji pamięci](/pl/reference/memory-config).
## Wyszukiwanie w pamięci sesji
## Wyszukiwanie pamięci sesji
Możesz opcjonalnie indeksować transkrypcje sesji, aby `memory_search` mógł przywoływać
wcześniejsze rozmowy. Jest to funkcja opt-in dostępna przez
`memorySearch.experimental.sessionMemory`. Szczegóły znajdziesz w
[dokumencie referencyjnym konfiguracji](/pl/reference/memory-config).
Możesz opcjonalnie indeksować transkrypcje sesji, aby `memory_search` mogło przywoływać wcześniejsze rozmowy. Jest to funkcja opt-in przez `memorySearch.experimental.sessionMemory`. Szczegóły znajdziesz w [referencji konfiguracji](/pl/reference/memory-config).
## Rozwiązywanie problemów
**Brak wyników?** Uruchom `openclaw memory status`, aby sprawdzić indeks. Jeśli jest pusty, uruchom
`openclaw memory index --force`.
**Brak wyników?** Uruchom `openclaw memory status`, aby sprawdzić indeks. Jeśli jest pusty, uruchom `openclaw memory index --force`.
**Tylko dopasowania słów kluczowych?** Twój dostawca embeddingów może nie być skonfigurowany. Sprawdź
`openclaw memory status --deep`.
**Tylko dopasowania słów kluczowych?** Twój dostawca embeddingów może nie być skonfigurowany. Sprawdź `openclaw memory status --deep`.
**Nie znajduje tekstu CJK?** Odbuduj indeks FTS za pomocą
`openclaw memory index --force`.
**Nie znajduje tekstu CJK?** Przebuduj indeks FTS za pomocą `openclaw memory index --force`.
## Dalsza lektura
- [Aktywna pamięć](/pl/concepts/active-memory) -- pamięć sub-agentów dla interaktywnych sesji czatu
- [Active Memory](/pl/concepts/active-memory) -- pamięć podagenta dla interaktywnych sesji czatu
- [Pamięć](/pl/concepts/memory) -- układ plików, backendy, narzędzia
- [Dokument referencyjny konfiguracji pamięci](/pl/reference/memory-config) -- wszystkie opcje konfiguracji
- [Referencja konfiguracji pamięci](/pl/reference/memory-config) -- wszystkie opcje konfiguracji

View File

@ -1,23 +1,23 @@
---
read_when:
- Rozszerzanie qa-lab lub qa-channel
- Dodawanie scenariuszy QA wspieranych przez repozytorium
- Budowanie bardziej realistycznej automatyzacji QA wokół panelu Gateway
- Dodawanie scenariuszy QA opartych na repozytorium
- Tworzenie bardziej realistycznej automatyzacji QA wokół panelu Gateway
summary: Prywatny kształt automatyzacji QA dla qa-lab, qa-channel, scenariuszy seedowanych i raportów protokołu
title: Automatyzacja QA E2E
x-i18n:
generated_at: "2026-04-11T02:44:28Z"
generated_at: "2026-04-12T23:28:04Z"
model: gpt-5.4
provider: openai
source_hash: 5427b505e26bfd542e984e3920c3f7cb825473959195ba9737eff5da944c60d0
source_hash: b9fe27dc049823d5e3eb7ae1eac6aad21ed9e917425611fb1dbcb28ab9210d5e
source_path: concepts/qa-e2e-automation.md
workflow: 15
---
# Automatyzacja QA E2E
Prywatny stos QA ma na celu testowanie OpenClaw w sposób bardziej realistyczny,
ukształtowany przez kanały, niż pozwala na to pojedynczy test jednostkowy.
Prywatny stos QA ma na celu testowanie OpenClaw w bardziej realistyczny,
kanałowy sposób niż pojedynczy test jednostkowy.
Obecne elementy:
@ -25,27 +25,26 @@ Obecne elementy:
reakcji, edycji i usuwania.
- `extensions/qa-lab`: interfejs debuggera i magistrala QA do obserwowania transkryptu,
wstrzykiwania wiadomości przychodzących i eksportowania raportu Markdown.
- `qa/`: zasoby seedowane wspierane przez repozytorium dla zadania początkowego i bazowych
scenariuszy QA.
- `qa/`: zasoby seedowane oparte na repozytorium dla zadania startowego i bazowych scenariuszy QA.
Obecny przepływ pracy operatora QA to dwupanelowa witryna QA:
- Po lewej: panel Gateway (Control UI) z agentem.
- Po prawej: QA Lab, pokazujący transkrypt w stylu Slacka i plan scenariusza.
Uruchom to poleceniem:
Uruchom za pomocą:
```bash
pnpm qa:lab:up
```
To buduje witrynę QA, uruchamia ścieżkę gateway wspieraną przez Docker i udostępnia
stronę QA Lab, na której operator lub pętla automatyzacji może zlecić agentowi
misję QA, obserwować rzeczywiste zachowanie kanału oraz zapisywać, co działało,
co zawiodło i co pozostało zablokowane.
To buduje witrynę QA, uruchamia opartą na Dockerze ścieżkę gateway i udostępnia
stronę QA Lab, na której operator lub pętla automatyzacji może przydzielić agentowi
misję QA, obserwować rzeczywiste zachowanie kanału oraz zapisywać, co zadziałało,
co zawiodło lub co pozostało zablokowane.
Aby szybciej iterować nad interfejsem QA Lab bez przebudowywania obrazu Docker przy każdej zmianie,
uruchom stos z podmontowanym pakietem QA Lab:
Aby szybciej iterować nad interfejsem QA Lab bez każdorazowego przebudowywania obrazu Docker,
uruchom stos z bind-mountowanym bundle QA Lab:
```bash
pnpm openclaw qa docker-build-image
@ -56,90 +55,118 @@ pnpm qa:lab:watch
`qa:lab:up:fast` utrzymuje usługi Docker na wcześniej zbudowanym obrazie i bind-mountuje
`extensions/qa-lab/web/dist` do kontenera `qa-lab`. `qa:lab:watch`
przebudowuje ten pakiet przy zmianach, a przeglądarka automatycznie przeładowuje się,
gdy zmienia się hash zasobu QA Lab.
przebudowuje ten bundle przy zmianach, a przeglądarka automatycznie odświeża się,
gdy zmieni się hash zasobu QA Lab.
Aby uruchomić ścieżkę smoke Matrix z rzeczywistym transportem, użyj:
Aby uruchomić ścieżkę smoke Matrix z rzeczywistym transportem, wykonaj:
```bash
pnpm openclaw qa matrix
```
Ta ścieżka przygotowuje jednorazowy homeserver Tuwunel w Dockerze, rejestruje
Ta ścieżka provisionuje jednorazowy homeserver Tuwunel w Dockerze, rejestruje
tymczasowych użytkowników driver, SUT i observer, tworzy jeden prywatny pokój,
a następnie uruchamia rzeczywistą wtyczkę Matrix wewnątrz podrzędnego procesu QA gateway. Ścieżka z żywym transportem utrzymuje konfigurację procesu podrzędnego ograniczoną do testowanego transportu, dzięki czemu Matrix działa bez
`qa-channel` w konfiguracji procesu podrzędnego.
a następnie uruchamia prawdziwy Plugin Matrix wewnątrz potomnego procesu QA gateway. Ścieżka z żywym
transportem utrzymuje konfigurację potomną ograniczoną do testowanego transportu,
dzięki czemu Matrix działa bez `qa-channel` w konfiguracji potomnej.
Aby uruchomić ścieżkę smoke Telegram z rzeczywistym transportem, użyj:
Aby uruchomić ścieżkę smoke Telegram z rzeczywistym transportem, wykonaj:
```bash
pnpm openclaw qa telegram
```
Ta ścieżka celuje w jedną rzeczywistą prywatną grupę Telegram zamiast przygotowywać
Ta ścieżka kieruje ruch do jednej prawdziwej prywatnej grupy Telegram zamiast provisionować
jednorazowy serwer. Wymaga `OPENCLAW_QA_TELEGRAM_GROUP_ID`,
`OPENCLAW_QA_TELEGRAM_DRIVER_BOT_TOKEN` oraz
`OPENCLAW_QA_TELEGRAM_SUT_BOT_TOKEN`, a także dwóch różnych botów w tej samej
`OPENCLAW_QA_TELEGRAM_SUT_BOT_TOKEN`, a także dwóch odrębnych botów w tej samej
prywatnej grupie. Bot SUT musi mieć nazwę użytkownika Telegram, a obserwacja bot-bot
działa najlepiej, gdy oba boty mają włączony tryb Bot-to-Bot Communication Mode
w `@BotFather`.
Ścieżki z żywym transportem współdzielą teraz jeden mniejszy kontrakt zamiast tego,
by każda definiowała własny kształt listy scenariuszy:
by każda wymyślała własny kształt listy scenariuszy:
`qa-channel` pozostaje szerokim syntetycznym zestawem zachowań produktu i nie jest częścią
macierzy pokrycia żywego transportu.
| Ścieżka | Canary | Bramka wzmianek | Blokada allowlisty | Odpowiedź najwyższego poziomu | Wznowienie po restarcie | Dalszy ciąg w wątku | Izolacja wątku | Obserwacja reakcji | Polecenie pomocy |
| -------- | ------ | --------------- | ------------------ | ----------------------------- | ----------------------- | ------------------- | -------------- | ------------------ | ---------------- |
| Matrix | x | x | x | x | x | x | x | x | |
| Telegram | x | | | | | | | | x |
| Ścieżka | Canary | Bramka wzmianek | Blokada allowlisty | Odpowiedź najwyższego poziomu | Wznowienie po restarcie | Dalszy ciąg wątku | Izolacja wątku | Obserwacja reakcji | Komenda pomocy |
| -------- | ------ | --------------- | ------------------ | ----------------------------- | ----------------------- | ----------------- | -------------- | ------------------ | -------------- |
| Matrix | x | x | x | x | x | x | x | x | |
| Telegram | x | | | | | | | | x |
Dzięki temu `qa-channel` pozostaje szerokim zestawem zachowań produktu, podczas gdy Matrix,
Telegram i przyszłe żywe transporty współdzielą jedną jawną checklistę kontraktu transportu.
Telegram i przyszłe żywe transporty współdzielą jedną jawną listę kontrolną kontraktu transportu.
Aby uruchomić jednorazową ścieżkę na maszynie wirtualnej Linux bez włączania Dockera do ścieżki QA, użyj:
Aby uruchomić jednorazową ścieżkę Linux VM bez wprowadzania Dockera do ścieżki QA, wykonaj:
```bash
pnpm openclaw qa suite --runner multipass --scenario channel-chat-baseline
```
To uruchamia świeżego gościa Multipass, instaluje zależności, buduje OpenClaw
wewnątrz gościa, uruchamia `qa suite`, a następnie kopiuje standardowy raport QA
i podsumowanie z powrotem do `.artifacts/qa-e2e/...` na hoście.
Wykorzystuje to samo zachowanie wyboru scenariuszy co `qa suite` na hoście.
Uruchomienia hosta i Multipass domyślnie wykonują wiele wybranych scenariuszy równolegle
z izolowanymi workerami gateway, do 64 workerów lub liczby wybranych scenariuszy.
Użyj `--concurrency <count>`, aby dostroić liczbę workerów, albo
`--concurrency 1` do wykonania szeregowego.
wewnątrz gościa, uruchamia `qa suite`, a następnie kopiuje zwykły raport QA i
podsumowanie z powrotem do `.artifacts/qa-e2e/...` na hoście.
Ponownie wykorzystuje to samo zachowanie wyboru scenariuszy co `qa suite` na hoście.
Uruchomienia hosta i Multipass suite wykonują domyślnie wiele wybranych scenariuszy równolegle
z izolowanymi workerami gateway, maksymalnie do 64 workerów lub liczby wybranych
scenariuszy. Użyj `--concurrency <count>`, aby dostroić liczbę workerów, lub
`--concurrency 1` dla wykonania seryjnego.
Uruchomienia live przekazują obsługiwane wejścia uwierzytelniania QA, które są praktyczne dla
gościa: klucze dostawców oparte na env, ścieżkę konfiguracji dostawcy QA live oraz
`CODEX_HOME`, jeśli jest obecne. Utrzymuj `--output-dir` pod katalogiem głównym repozytorium, aby gość
mógł zapisywać z powrotem przez zamontowany obszar roboczy.
gościa: klucze dostawcy oparte na env, ścieżkę konfiguracji dostawcy QA live oraz
`CODEX_HOME`, gdy jest obecne. Zachowaj `--output-dir` pod katalogiem głównym repozytorium, aby gość
mógł zapisywać z powrotem przez zamontowany workspace.
## Seedy wspierane przez repozytorium
## Seedy oparte na repozytorium
Zasoby seedów znajdują się w `qa/`:
Zasoby seedowane znajdują się w `qa/`:
- `qa/scenarios/index.md`
- `qa/scenarios/*.md`
Są one celowo przechowywane w git, aby plan QA był widoczny zarówno dla ludzi, jak i dla
agenta. Lista bazowa powinna pozostać na tyle szeroka, aby obejmować:
agenta.
`qa-lab` powinien pozostać generycznym runnerem markdown. Każdy plik markdown scenariusza jest
źródłem prawdy dla jednego uruchomienia testu i powinien definiować:
- metadane scenariusza
- odwołania do dokumentacji i kodu
- opcjonalne wymagania Pluginów
- opcjonalną łatkę konfiguracji gateway
- wykonywalny `qa-flow`
Lista bazowa powinna pozostać wystarczająco szeroka, aby obejmować:
- czat DM i kanałowy
- zachowanie wątków
- cykl życia akcji wiadomości
- wywołania cron
- wywołania zwrotne Cron
- przywoływanie pamięci
- przełączanie modeli
- przekazanie do subagenta
- czytanie repozytorium i dokumentacji
- jedno małe zadanie build, takie jak Lobster Invaders
## Adaptery transportu
`qa-lab` posiada generyczny seam transportowy dla scenariuszy QA w markdown.
`qa-channel` jest pierwszym adapterem na tym seamie, ale docelowy projekt jest szerszy:
przyszłe rzeczywiste lub syntetyczne kanały powinny podłączać się do tego samego runnera suite
zamiast dodawać runner QA specyficzny dla transportu.
Na poziomie architektury podział jest następujący:
- `qa-lab` odpowiada za generyczne wykonywanie scenariuszy, współbieżność workerów, zapisywanie artefaktów i raportowanie.
- adapter transportu odpowiada za konfigurację gateway, gotowość, obserwację wejścia i wyjścia, akcje transportu oraz znormalizowany stan transportu.
- pliki markdown scenariuszy w `qa/scenarios/` definiują przebieg testu; `qa-lab` udostępnia wielokrotnego użytku powierzchnię runtime, która je wykonuje.
Wskazówki wdrożeniowe dla maintainerów dotyczące nowych adapterów kanałów znajdują się w
[Testing](/pl/help/testing#adding-a-channel-to-qa).
## Raportowanie
`qa-lab` eksportuje raport protokołu Markdown z obserwowanej osi czasu magistrali.
`qa-lab` eksportuje raport protokołu Markdown na podstawie obserwowanej osi czasu magistrali.
Raport powinien odpowiadać na pytania:
- Co zadziałało
@ -147,7 +174,7 @@ Raport powinien odpowiadać na pytania:
- Co pozostało zablokowane
- Jakie scenariusze uzupełniające warto dodać
W celu sprawdzania charakteru i stylu uruchom ten sam scenariusz dla wielu referencji modeli live
Aby przeprowadzić kontrole charakteru i stylu, uruchom ten sam scenariusz na wielu żywych referencjach modeli
i zapisz oceniony raport Markdown:
```bash
@ -167,36 +194,36 @@ pnpm openclaw qa character-eval \
--judge-concurrency 16
```
Polecenie uruchamia lokalne podrzędne procesy QA gateway, a nie Docker. Scenariusze
oceny charakteru powinny ustawiać personę przez `SOUL.md`, a następnie uruchamiać zwykłe
tury użytkownika, takie jak czat, pomoc dotyczącą obszaru roboczego i małe zadania na plikach. Kandydatowi
nie należy mówić, że jest oceniany. Polecenie zachowuje każdy pełny
transkrypt, rejestruje podstawowe statystyki uruchomienia, a następnie prosi modele sędziujące w trybie fast z
rozumowaniem `xhigh` o uszeregowanie uruchomień według naturalności, klimatu i humoru.
Użyj `--blind-judge-models` podczas porównywania dostawców: prompt sędziego nadal otrzymuje
Komenda uruchamia lokalne potomne procesy QA gateway, a nie Docker. Scenariusze character eval
powinny ustawiać personę przez `SOUL.md`, a następnie wykonywać zwykłe tury użytkownika,
takie jak czat, pomoc dotycząca workspace i małe zadania na plikach. Kandydacki model
nie powinien być informowany, że jest oceniany. Komenda zachowuje każdy pełny
transkrypt, rejestruje podstawowe statystyki uruchomienia, a następnie prosi modele oceniające w trybie fast z
rozumowaniem `xhigh`, aby uszeregowały uruchomienia według naturalności, klimatu i humoru.
Użyj `--blind-judge-models` podczas porównywania dostawców: prompt oceniający nadal otrzymuje
każdy transkrypt i status uruchomienia, ale referencje kandydatów są zastępowane neutralnymi
etykietami, takimi jak `candidate-01`; raport mapuje rankingi z powrotem na rzeczywiste referencje po
etykietami, takimi jak `candidate-01`; raport mapuje rankingi z powrotem na prawdziwe referencje po
parsowaniu.
Uruchomienia kandydatów domyślnie używają `high` thinking, z `xhigh` dla modeli OpenAI, które to
obsługują. Zastąp konkretnego kandydata inline przez
Uruchomienia kandydatów domyślnie używają poziomu myślenia `high`, z `xhigh` dla modeli OpenAI,
które go obsługują. Zastąp określonego kandydata inline za pomocą
`--model provider/model,thinking=<level>`. `--thinking <level>` nadal ustawia
globalny fallback, a starsza forma `--model-thinking <provider/model=level>` jest
zachowana dla kompatybilności.
Referencje kandydatów OpenAI domyślnie używają trybu fast, aby korzystać z przetwarzania priorytetowego tam,
gdzie dostawca to obsługuje. Dodaj inline `,fast`, `,no-fast` lub `,fast=false`, gdy
pojedynczy kandydat lub sędzia wymaga nadpisania. Przekaż `--fast` tylko wtedy, gdy chcesz
wymusić tryb fast dla każdego modelu kandydata. Czas trwania uruchomień kandydatów i sędziów jest
rejestrowany w raporcie na potrzeby analizy porównawczej, ale prompty sędziów wyraźnie mówią,
aby nie tworzyć rankingu według szybkości.
Uruchomienia modeli kandydatów i sędziów domyślnie używają współbieżności 16. Zmniejsz
Referencje kandydatów OpenAI domyślnie używają trybu fast, dzięki czemu wykorzystywane jest
przetwarzanie priorytetowe tam, gdzie dostawca je obsługuje. Dodaj inline `,fast`, `,no-fast` lub `,fast=false`,
gdy pojedynczy kandydat lub oceniający wymaga nadpisania. Przekaż `--fast` tylko wtedy, gdy chcesz
wymusić tryb fast dla każdego modelu kandydata. Czasy trwania kandydatów i oceniających są
rejestrowane w raporcie do analizy benchmarkowej, ale prompty oceniające wyraźnie mówią,
aby nie ustalać rankingu według szybkości.
Zarówno uruchomienia modeli kandydatów, jak i oceniających domyślnie używają współbieżności 16. Zmniejsz
`--concurrency` lub `--judge-concurrency`, gdy limity dostawcy lub obciążenie lokalnego gateway
powodują, że uruchomienie jest zbyt zaszumione.
Gdy nie zostanie przekazany żaden kandydat `--model`, ocena charakteru domyślnie używa
sprawiają, że uruchomienie jest zbyt zaszumione.
Gdy nie zostanie przekazany żaden kandydat `--model`, character eval domyślnie używa
`openai/gpt-5.4`, `openai/gpt-5.2`, `openai/gpt-5`, `anthropic/claude-opus-4-6`,
`anthropic/claude-sonnet-4-6`, `zai/glm-5.1`,
`moonshot/kimi-k2.5` oraz
`google/gemini-3.1-pro-preview`, gdy nie zostanie przekazane `--model`.
Gdy nie zostanie przekazane `--judge-model`, sędziowie domyślnie używają
`google/gemini-3.1-pro-preview`, jeśli nie przekazano `--model`.
Gdy nie zostanie przekazany żaden `--judge-model`, oceniający domyślnie używają
`openai/gpt-5.4,thinking=xhigh,fast` oraz
`anthropic/claude-opus-4-6,thinking=high`.

File diff suppressed because it is too large Load Diff

View File

@ -2,28 +2,27 @@
read_when:
- Musisz sprawdzić surowe dane wyjściowe modelu pod kątem wycieku rozumowania
- Chcesz uruchomić Gateway w trybie watch podczas iteracji
- Potrzebujesz powtarzalnego workflow debugowania
summary: 'Narzędzia do debugowania: tryb watch, surowe strumienie modelu i śledzenie wycieku rozumowania'
- Potrzebujesz powtarzalnego przepływu debugowania
summary: 'Narzędzia debugowania: tryb watch, surowe strumienie modelu i śledzenie wycieku rozumowania'
title: Debugowanie
x-i18n:
generated_at: "2026-04-06T03:07:43Z"
generated_at: "2026-04-12T23:28:25Z"
model: gpt-5.4
provider: openai
source_hash: 4bc72e8d6cad3a1acaad066f381c82309583fabf304c589e63885f2685dc704e
source_hash: bc31ce9b41e92a14c4309f32df569b7050b18024f83280930e53714d3bfcd5cc
source_path: help/debugging.md
workflow: 15
---
# Debugowanie
Ta strona opisuje pomocniki debugowania dla wyjścia strumieniowego, szczególnie gdy
provider miesza rozumowanie ze zwykłym tekstem.
Ta strona opisuje pomocnicze narzędzia do debugowania strumieniowego wyjścia, szczególnie gdy dostawca miesza rozumowanie ze zwykłym tekstem.
## Nadpisania debugowania runtime
## Nadpisania debugowania w czasie działania
Użyj `/debug` na czacie, aby ustawić nadpisania konfiguracji **tylko dla runtime** (pamięć, nie dysk).
`/debug` jest domyślnie wyłączone; włącz je za pomocą `commands.debug: true`.
To przydatne, gdy musisz przełączyć rzadko używane ustawienia bez edytowania `openclaw.json`.
Użyj `/debug` na czacie, aby ustawić nadpisania konfiguracji **tylko na czas działania** (w pamięci, nie na dysku).
`/debug` jest domyślnie wyłączone; włącz je przez `commands.debug: true`.
To przydaje się, gdy trzeba przełączać rzadko używane ustawienia bez edytowania `openclaw.json`.
Przykłady:
@ -34,51 +33,56 @@ Przykłady:
/debug reset
```
`/debug reset` czyści wszystkie nadpisania i przywraca konfigurację zapisaną na dysku.
`/debug reset` czyści wszystkie nadpisania i przywraca konfigurację z dysku.
## Wyjście śledzenia sesji
Użyj `/trace`, gdy chcesz zobaczyć linie śledzenia/debugowania należące do Plugin w jednej sesji bez włączania pełnego trybu verbose.
Przykłady:
```text
/trace
/trace on
/trace off
```
Używaj `/trace` do diagnostyki Plugin, takiej jak podsumowania debugowania Active Memory.
Nadal używaj `/verbose` do zwykłego szczegółowego wyjścia statusu/narzędzi, a `/debug` do nadpisań konfiguracji tylko na czas działania.
## Tryb watch Gateway
Aby szybko iterować, uruchom gateway pod watcherem plików:
Aby szybko iterować, uruchom Gateway pod watcherem plików:
```bash
pnpm gateway:watch
```
Mapuje się to na:
To mapuje się na:
```bash
node scripts/watch-node.mjs gateway --force
```
Watcher restartuje się po zmianach w plikach istotnych dla builda w `src/`, plikach źródłowych rozszerzeń,
metadanych `package.json` i `openclaw.plugin.json` rozszerzeń, `tsconfig.json`,
`package.json` oraz `tsdown.config.ts`. Zmiany metadanych rozszerzeń restartują
gateway bez wymuszania przebudowy `tsdown`; zmiany źródeł i konfiguracji nadal
najpierw przebudowują `dist`.
Watcher restartuje proces po zmianach w plikach mających znaczenie dla kompilacji w `src/`, plikach źródłowych rozszerzeń, metadanych rozszerzeń `package.json` i `openclaw.plugin.json`, `tsconfig.json`, `package.json` oraz `tsdown.config.ts`. Zmiany metadanych rozszerzeń restartują Gateway bez wymuszania przebudowy `tsdown`; zmiany w źródłach i konfiguracji nadal najpierw przebudowują `dist`.
Dodaj dowolne flagi CLI gatewaya po `gateway:watch`, a będą przekazywane przy
każdym restarcie. Ponowne uruchomienie tego samego polecenia watch dla tego samego
repozytorium/zestawu flag zastępuje teraz starszy watcher zamiast pozostawiać
zduplikowane procesy nadrzędne watcherów.
Dodaj dowolne flagi CLI Gateway po `gateway:watch`, a będą przekazywane przy każdym restarcie. Ponowne uruchomienie tego samego polecenia watch dla tego samego repozytorium/zestawu flag zastępuje teraz starszego watchera zamiast pozostawiać zduplikowane procesy nadrzędne watcherów.
## Profil dev + gateway dev (`--dev`)
## Profil deweloperski + deweloperski Gateway (`--dev`)
Użyj profilu dev, aby odizolować stan i uruchomić bezpieczną, tymczasową konfigurację do
debugowania. Istnieją **dwie** flagi `--dev`:
Użyj profilu deweloperskiego, aby odizolować stan i uruchomić bezpieczne, tymczasowe środowisko do debugowania. Istnieją **dwie** flagi `--dev`:
- **Globalne `--dev` (profil):** izoluje stan w `~/.openclaw-dev` i
domyślnie ustawia port gatewaya na `19001` (powiązane porty odpowiednio się przesuwają).
- **`gateway --dev`:** nakazuje Gateway automatycznie utworzyć domyślną konfigurację +
workspace, jeśli ich brakuje (i pominąć BOOTSTRAP.md).
- **Globalne `--dev` (profil):** izoluje stan w `~/.openclaw-dev` i domyślnie ustawia port Gateway na `19001` (powiązane porty przesuwają się wraz z nim).
- **`gateway --dev`:** mówi Gateway, aby automatycznie utworzył domyślną konfigurację + workspace, jeśli ich brakuje (i pominął `BOOTSTRAP.md`).
Zalecany przepływ (profil dev + bootstrap dev):
Zalecany przepływ (profil deweloperski + bootstrap deweloperski):
```bash
pnpm gateway:dev
OPENCLAW_PROFILE=dev openclaw tui
```
Jeśli nie masz jeszcze globalnej instalacji, uruchom CLI przez `pnpm openclaw ...`.
Jeśli nie masz jeszcze instalacji globalnej, uruchamiaj CLI przez `pnpm openclaw ...`.
Co to robi:
@ -86,34 +90,33 @@ Co to robi:
- `OPENCLAW_PROFILE=dev`
- `OPENCLAW_STATE_DIR=~/.openclaw-dev`
- `OPENCLAW_CONFIG_PATH=~/.openclaw-dev/openclaw.json`
- `OPENCLAW_GATEWAY_PORT=19001` (przeglądarka/canvas odpowiednio się przesuwają)
- `OPENCLAW_GATEWAY_PORT=19001` (porty browser/canvas odpowiednio się przesuwają)
2. **Bootstrap dev** (`gateway --dev`)
- Zapisuje minimalną konfigurację, jeśli jej brakuje (`gateway.mode=local`, bind loopback).
- Ustawia `agent.workspace` na workspace dev.
- Ustawia `agent.skipBootstrap=true` (bez BOOTSTRAP.md).
- Seeduje pliki workspace, jeśli ich brakuje:
2. **Bootstrap deweloperski** (`gateway --dev`)
- Zapisuje minimalną konfigurację, jeśli jej brakuje (`gateway.mode=local`, bind do loopback).
- Ustawia `agent.workspace` na deweloperski workspace.
- Ustawia `agent.skipBootstrap=true` (bez `BOOTSTRAP.md`).
- Tworzy pliki workspace, jeśli ich brakuje:
`AGENTS.md`, `SOUL.md`, `TOOLS.md`, `IDENTITY.md`, `USER.md`, `HEARTBEAT.md`.
- Domyślna tożsamość: **C3PO** (droid protokolarny).
- Pomija providery kanałów w trybie dev (`OPENCLAW_SKIP_CHANNELS=1`).
- Pomija dostawców kanałów w trybie deweloperskim (`OPENCLAW_SKIP_CHANNELS=1`).
Przepływ resetu (świeży start):
Przepływ resetowania (świeży start):
```bash
pnpm gateway:dev:reset
```
Uwaga: `--dev` to **globalna** flaga profilu i jest przechwytywana przez niektóre runnery.
Jeśli musisz ją zapisać jawnie, użyj formy z env var:
Uwaga: `--dev` to **globalna** flaga profilu i bywa przechwytywana przez niektóre uruchamiacze.
Jeśli musisz zapisać ją jawnie, użyj formy z zmienną środowiskową:
```bash
OPENCLAW_PROFILE=dev openclaw gateway --dev --reset
```
`--reset` czyści konfigurację, poświadczenia, sesje i workspace dev (przy użyciu
`trash`, a nie `rm`), a następnie odtwarza domyślną konfigurację dev.
`--reset` czyści konfigurację, poświadczenia, sesje i deweloperski workspace (używając `trash`, a nie `rm`), a następnie odtwarza domyślne środowisko deweloperskie.
Wskazówka: jeśli działa już gateway inny niż dev (launchd/systemd), najpierw go zatrzymaj:
Wskazówka: jeśli działa już Gateway poza trybem deweloperskim (launchd/systemd), najpierw go zatrzymaj:
```bash
openclaw gateway stop
@ -122,8 +125,8 @@ openclaw gateway stop
## Logowanie surowego strumienia (OpenClaw)
OpenClaw może logować **surowy strumień asystenta** przed jakimkolwiek filtrowaniem/formatowaniem.
To najlepszy sposób, aby sprawdzić, czy rozumowanie dociera jako zwykłe delty tekstowe
(lub jako osobne bloki thinking).
To najlepszy sposób, aby sprawdzić, czy rozumowanie przychodzi jako zwykłe delty tekstowe
(lub jako osobne bloki myślenia).
Włącz przez CLI:
@ -137,7 +140,7 @@ Opcjonalne nadpisanie ścieżki:
pnpm gateway:watch --raw-stream --raw-stream-path ~/.openclaw/logs/raw-stream.jsonl
```
Równoważne zmienne env:
Równoważne zmienne środowiskowe:
```bash
OPENCLAW_RAW_STREAM=1
@ -150,7 +153,7 @@ Plik domyślny:
## Logowanie surowych chunków (pi-mono)
Aby przechwycić **surowe chunki zgodne z OpenAI** przed ich sparsowaniem do bloków,
Aby przechwytywać **surowe chunki zgodne z OpenAI** przed przetworzeniem ich na bloki,
pi-mono udostępnia osobny logger:
```bash
@ -167,11 +170,11 @@ Plik domyślny:
`~/.pi-mono/logs/raw-openai-completions.jsonl`
> Uwaga: jest to emitowane tylko przez procesy używające providera
> Uwaga: jest to emitowane tylko przez procesy używające dostawcy
> `openai-completions` z pi-mono.
## Uwagi dotyczące bezpieczeństwa
- Logi surowego strumienia mogą zawierać pełne prompty, wyjście narzędzi i dane użytkownika.
- Przechowuj logi lokalnie i usuwaj je po zakończeniu debugowania.
- Przechowuj logi lokalnie i usuwaj je po debugowaniu.
- Jeśli udostępniasz logi, najpierw usuń z nich sekrety i dane osobowe.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,77 +1,75 @@
---
read_when:
- Tworzysz Plugin OpenClaw
- Musisz dostarczyć schemat konfiguracji pluginu lub debugować błędy walidacji pluginu
summary: Wymagania dotyczące manifestu Plugin + schematu JSON (ścisła walidacja konfiguracji)
title: Manifest Plugin
- Musisz dostarczyć schemat konfiguracji Pluginu albo debugować błędy walidacji Pluginu
summary: Manifest Pluginu + wymagania schematu JSON (ścisła walidacja konfiguracji)
title: Manifest Pluginu
x-i18n:
generated_at: "2026-04-12T09:33:29Z"
generated_at: "2026-04-12T23:28:43Z"
model: gpt-5.4
provider: openai
source_hash: 4074b3639bf24606d6087597f28e29afc85f4ea628a713e9d984b441a16f1c13
source_hash: 93b57c7373e4ccd521b10945346db67991543bd2bed4cc8b6641e1f215b48579
source_path: plugins/manifest.md
workflow: 15
---
# Manifest Plugin (`openclaw.plugin.json`)
# Manifest Pluginu (`openclaw.plugin.json`)
Ta strona dotyczy wyłącznie **natywnego manifestu Plugin OpenClaw**.
Ta strona dotyczy wyłącznie **natywnego manifestu Pluginu OpenClaw**.
Informacje o zgodnych układach pakietów znajdziesz tutaj: [Pakiety Plugin](/pl/plugins/bundles).
Informacje o zgodnych układach bundli znajdziesz tutaj: [Bundle Pluginów](/pl/plugins/bundles).
Zgodne formaty pakietów używają innych plików manifestu:
Zgodne formaty bundli używają innych plików manifestu:
- Pakiet Codex: `.codex-plugin/plugin.json`
- Pakiet Claude: `.claude-plugin/plugin.json` lub domyślny układ komponentu Claude
- Bundle Codex: `.codex-plugin/plugin.json`
- Bundle Claude: `.claude-plugin/plugin.json` albo domyślny układ komponentów Claude
bez manifestu
- Pakiet Cursor: `.cursor-plugin/plugin.json`
- Bundle Cursor: `.cursor-plugin/plugin.json`
OpenClaw automatycznie wykrywa także te układy pakietów, ale nie są one walidowane
OpenClaw automatycznie wykrywa również te układy bundli, ale nie są one walidowane
względem opisanego tutaj schematu `openclaw.plugin.json`.
W przypadku zgodnych pakietów OpenClaw obecnie odczytuje metadane pakietu oraz zadeklarowane
korzenie Skills, korzenie poleceń Claude, domyślne ustawienia `settings.json` pakietu Claude,
domyślne ustawienia LSP pakietu Claude oraz obsługiwane zestawy hooków, gdy układ odpowiada
W przypadku zgodnych bundli OpenClaw obecnie odczytuje metadane bundla oraz zadeklarowane
korzenie Skills, korzenie poleceń Claude, domyślne wartości `settings.json` bundla Claude,
domyślne wartości LSP bundla Claude oraz obsługiwane pakiety hooków, gdy układ odpowiada
oczekiwaniom środowiska uruchomieniowego OpenClaw.
Każdy natywny Plugin OpenClaw **musi** zawierać plik `openclaw.plugin.json` w
**katalogu głównym pluginu**. OpenClaw używa tego manifestu do walidacji konfiguracji
**bez wykonywania kodu pluginu**. Brakujące lub nieprawidłowe manifesty są traktowane jako
błędy pluginu i blokują walidację konfiguracji.
Każdy natywny Plugin OpenClaw **musi** dostarczać plik `openclaw.plugin.json` w
**katalogu głównym Pluginu**. OpenClaw używa tego manifestu do walidacji konfiguracji
**bez wykonywania kodu Pluginu**. Brakujące lub nieprawidłowe manifesty są traktowane jako
błędy Pluginu i blokują walidację konfiguracji.
Zobacz pełny przewodnik po systemie pluginów: [Plugins](/pl/tools/plugin).
Informacje o natywnym modelu możliwości i aktualnych wytycznych zgodności zewnętrznej:
[Model możliwości](/pl/plugins/architecture#public-capability-model).
Zobacz pełny przewodnik po systemie Pluginów: [Pluginy](/pl/tools/plugin).
Informacje o natywnym modelu capabilities i aktualnych wskazówkach dotyczących zgodności zewnętrznej:
[Model capabilities](/pl/plugins/architecture#public-capability-model).
## Do czego służy ten plik
`openclaw.plugin.json` to metadane, które OpenClaw odczytuje przed załadowaniem
kodu twojego pluginu.
`openclaw.plugin.json` to metadane, które OpenClaw odczytuje, zanim załaduje kod
Twojego Pluginu.
Używaj go do:
- tożsamości pluginu
- tożsamości Pluginu
- walidacji konfiguracji
- metadanych uwierzytelniania i onboardingu, które powinny być dostępne bez uruchamiania
środowiska uruchomieniowego pluginu
- tanich wskazówek aktywacji, które powierzchnie płaszczyzny sterowania mogą sprawdzać przed załadowaniem środowiska uruchomieniowego
- tanich deskryptorów konfiguracji, które powierzchnie konfiguracji/onboardingu mogą sprawdzać przed załadowaniem
środowiska uruchomieniowego
- metadanych aliasów i automatycznego włączania, które powinny być rozstrzygane przed załadowaniem środowiska uruchomieniowego pluginu
- skróconych metadanych własności rodziny modeli, które powinny automatycznie aktywować
plugin przed załadowaniem środowiska uruchomieniowego
- statycznych migawek własności możliwości używanych do zgodnego okablowania pakietów i pokrycia kontraktów
- metadanych konfiguracji specyficznych dla kanału, które powinny być scalane z katalogiem i powierzchniami walidacji
- metadanych auth i onboardingu, które powinny być dostępne bez uruchamiania środowiska uruchomieniowego Pluginu
- lekkich wskazówek aktywacji, które powierzchnie płaszczyzny sterowania mogą sprawdzać przed załadowaniem środowiska uruchomieniowego
- lekkich deskryptorów konfiguracji, które powierzchnie konfiguracji/onboardingu mogą sprawdzać przed załadowaniem środowiska uruchomieniowego
- metadanych aliasów i auto-enable, które powinny zostać rozstrzygnięte przed załadowaniem środowiska uruchomieniowego Pluginu
- skróconych metadanych własności rodzin modeli, które powinny auto-activate
Plugin przed załadowaniem środowiska uruchomieniowego
- statycznych snapshotów własności capabilities używanych do zgodnego okablowania bundli i pokrycia kontraktów
- metadanych konfiguracji specyficznych dla kanału, które powinny zostać scalone z powierzchniami katalogu i walidacji
bez ładowania środowiska uruchomieniowego
- wskazówek UI konfiguracji
Nie używaj go do:
- rejestrowania zachowania środowiska uruchomieniowego
- deklarowania punktów wejścia kodu
- deklarowania entrypointów kodu
- metadanych instalacji npm
To należy do kodu twojego pluginu i `package.json`.
To należy do kodu Pluginu i `package.json`.
## Minimalny przykład
@ -142,64 +140,64 @@ To należy do kodu twojego pluginu i `package.json`.
}
```
## Odwołanie do pól najwyższego poziomu
## Informacje o polach najwyższego poziomu
| Pole | Wymagane | Typ | Co oznacza |
| ----------------------------------- | -------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `id` | Tak | `string` | Kanoniczny identyfikator pluginu. Jest to identyfikator używany w `plugins.entries.<id>`. |
| `configSchema` | Tak | `object` | Wbudowany schemat JSON dla konfiguracji tego pluginu. |
| `enabledByDefault` | Nie | `true` | Oznacza plugin pakietowy jako domyślnie włączony. Pomiń to pole lub ustaw dowolną wartość inną niż `true`, aby plugin pozostał domyślnie wyłączony. |
| `legacyPluginIds` | Nie | `string[]` | Starsze identyfikatory, które są normalizowane do tego kanonicznego identyfikatora pluginu. |
| `autoEnableWhenConfiguredProviders` | Nie | `string[]` | Identyfikatory dostawców, które powinny automatycznie włączać ten plugin, gdy uwierzytelnianie, konfiguracja lub odwołania do modeli o nich wspominają. |
| `kind` | Nie | `"memory"` \| `"context-engine"` | Deklaruje wyłączny rodzaj pluginu używany przez `plugins.slots.*`. |
| `channels` | Nie | `string[]` | Identyfikatory kanałów należących do tego pluginu. Używane do wykrywania i walidacji konfiguracji. |
| `providers` | Nie | `string[]` | Identyfikatory dostawców należących do tego pluginu. |
| `modelSupport` | Nie | `object` | Skrócone metadane rodziny modeli należące do manifestu, używane do automatycznego ładowania pluginu przed środowiskiem uruchomieniowym. |
| `cliBackends` | Nie | `string[]` | Identyfikatory backendów inferencji CLI należących do tego pluginu. Używane do automatycznej aktywacji przy uruchomieniu na podstawie jawnych odwołań w konfiguracji. |
| `commandAliases` | Nie | `object[]` | Nazwy poleceń należące do tego pluginu, które powinny generować świadome pluginu diagnostyki konfiguracji i CLI przed załadowaniem środowiska uruchomieniowego. |
| `providerAuthEnvVars` | Nie | `Record<string, string[]>` | Lekkie metadane env uwierzytelniania dostawcy, które OpenClaw może sprawdzić bez ładowania kodu pluginu. |
| `providerAuthAliases` | Nie | `Record<string, string>` | Identyfikatory dostawców, które powinny używać ponownie innego identyfikatora dostawcy do wyszukiwania uwierzytelniania, na przykład dostawca programistyczny współdzielący bazowy klucz API i profile uwierzytelniania dostawcy. |
| `channelEnvVars` | Nie | `Record<string, string[]>` | Lekkie metadane env kanału, które OpenClaw może sprawdzić bez ładowania kodu pluginu. Użyj tego dla konfiguracji kanału sterowanej przez env lub powierzchni uwierzytelniania, które ogólne pomocniki uruchamiania/konfiguracji powinny widzieć. |
| `providerAuthChoices` | Nie | `object[]` | Lekkie metadane wyboru uwierzytelniania dla selektorów onboardingu, rozstrzygania preferowanego dostawcy i prostego mapowania flag CLI. |
| `activation` | Nie | `object` | Lekkie wskazówki aktywacji dla ładowania wyzwalanego przez dostawcę, polecenie, kanał, trasę i możliwości. Tylko metadane; rzeczywiste zachowanie nadal należy do środowiska uruchomieniowego pluginu. |
| `setup` | Nie | `object` | Lekkie deskryptory konfiguracji/onboardingu, które powierzchnie wykrywania i konfiguracji mogą sprawdzać bez ładowania środowiska uruchomieniowego pluginu. |
| `contracts` | Nie | `object` | Statyczna migawka możliwości pakietowych dla własności mowy, transkrypcji w czasie rzeczywistym, głosu w czasie rzeczywistym, rozumienia mediów, generowania obrazów, generowania muzyki, generowania wideo, pobierania z sieci, wyszukiwania w sieci i narzędzi. |
| `channelConfigs` | Nie | `Record<string, object>` | Metadane konfiguracji kanału należące do manifestu, scalane z powierzchniami wykrywania i walidacji przed załadowaniem środowiska uruchomieniowego. |
| `skills` | Nie | `string[]` | Katalogi Skills do załadowania, względnie do katalogu głównego pluginu. |
| `name` | Nie | `string` | Czytelna dla człowieka nazwa pluginu. |
| `description` | Nie | `string` | Krótkie podsumowanie wyświetlane na powierzchniach pluginu. |
| `version` | Nie | `string` | Informacyjna wersja pluginu. |
| `uiHints` | Nie | `Record<string, object>` | Etykiety UI, placeholdery i wskazówki dotyczące wrażliwości dla pól konfiguracji. |
| Pole | Wymagane | Typ | Co oznacza |
| ----------------------------------- | -------- | -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `id` | Tak | `string` | Kanoniczny identyfikator Pluginu. To identyfikator używany w `plugins.entries.<id>`. |
| `configSchema` | Tak | `object` | Wbudowany schemat JSON dla konfiguracji tego Pluginu. |
| `enabledByDefault` | Nie | `true` | Oznacza bundlowy Plugin jako domyślnie włączony. Pomiń to pole albo ustaw dowolną wartość inną niż `true`, aby pozostawić Plugin domyślnie wyłączony. |
| `legacyPluginIds` | Nie | `string[]` | Starsze identyfikatory, które są normalizowane do tego kanonicznego identyfikatora Pluginu. |
| `autoEnableWhenConfiguredProviders` | Nie | `string[]` | Identyfikatory dostawców, które powinny automatycznie włączać ten Plugin, gdy auth, konfiguracja lub odwołania do modeli na nie wskazują. |
| `kind` | Nie | `"memory"` \| `"context-engine"` | Deklaruje wyłączny rodzaj Pluginu używany przez `plugins.slots.*`. |
| `channels` | Nie | `string[]` | Identyfikatory kanałów należących do tego Pluginu. Używane do wykrywania i walidacji konfiguracji. |
| `providers` | Nie | `string[]` | Identyfikatory dostawców należących do tego Pluginu. |
| `modelSupport` | Nie | `object` | Należące do manifestu skrócone metadane rodzin modeli używane do automatycznego załadowania Pluginu przed środowiskiem uruchomieniowym. |
| `cliBackends` | Nie | `string[]` | Identyfikatory backendów inferencji CLI należących do tego Pluginu. Używane do automatycznej aktywacji przy uruchomieniu na podstawie jawnych odwołań w konfiguracji. |
| `commandAliases` | Nie | `object[]` | Nazwy poleceń należące do tego Pluginu, które powinny generować diagnostykę konfiguracji i CLI uwzględniającą Plugin jeszcze przed załadowaniem środowiska uruchomieniowego. |
| `providerAuthEnvVars` | Nie | `Record<string, string[]>` | Lekkie metadane env dla auth dostawców, które OpenClaw może sprawdzać bez ładowania kodu Pluginu. |
| `providerAuthAliases` | Nie | `Record<string, string>` | Identyfikatory dostawców, które powinny ponownie używać innego identyfikatora dostawcy do wyszukiwania auth, na przykład dostawca kodowania, który współdzieli bazowy klucz API dostawcy i profile auth. |
| `channelEnvVars` | Nie | `Record<string, string[]>` | Lekkie metadane env dla kanałów, które OpenClaw może sprawdzać bez ładowania kodu Pluginu. Używaj tego dla konfiguracji kanałów sterowanej przez env albo powierzchni auth, które powinny widzieć ogólne pomocniki uruchamiania/konfiguracji. |
| `providerAuthChoices` | Nie | `object[]` | Lekkie metadane wyboru auth dla selektorów onboardingu, rozstrzygania preferowanego dostawcy i prostego okablowania flag CLI. |
| `activation` | Nie | `object` | Lekkie wskazówki aktywacji dla ładowania wyzwalanego przez dostawcę, polecenie, kanał, trasę i capability. Tylko metadane; rzeczywiste zachowanie nadal należy do środowiska uruchomieniowego Pluginu. |
| `setup` | Nie | `object` | Lekkie deskryptory konfiguracji/onboardingu, które powierzchnie wykrywania i konfiguracji mogą sprawdzać bez ładowania środowiska uruchomieniowego Pluginu. |
| `contracts` | Nie | `object` | Statyczny snapshot bundlowych capabilities dla speech, realtime transcription, realtime voice, media-understanding, image-generation, music-generation, video-generation, web-fetch, web search i własności narzędzi. |
| `channelConfigs` | Nie | `Record<string, object>` | Metadane konfiguracji kanału należące do manifestu, scalane z powierzchniami wykrywania i walidacji przed załadowaniem środowiska uruchomieniowego. |
| `skills` | Nie | `string[]` | Katalogi Skills do załadowania, względne względem katalogu głównego Pluginu. |
| `name` | Nie | `string` | Przyjazna dla człowieka nazwa Pluginu. |
| `description` | Nie | `string` | Krótkie podsumowanie wyświetlane na powierzchniach Pluginu. |
| `version` | Nie | `string` | Informacyjna wersja Pluginu. |
| `uiHints` | Nie | `Record<string, object>` | Etykiety UI, placeholdery i wskazówki dotyczące wrażliwości dla pól konfiguracji. |
## Odwołanie do `providerAuthChoices`
## Informacje o `providerAuthChoices`
Każdy wpis `providerAuthChoices` opisuje jeden wybór onboardingu lub uwierzytelniania.
OpenClaw odczytuje to przed załadowaniem środowiska uruchomieniowego dostawcy.
Każdy wpis `providerAuthChoices` opisuje jeden wybór onboardingu lub auth.
OpenClaw odczytuje to, zanim załaduje się środowisko uruchomieniowe dostawcy.
| Pole | Wymagane | Typ | Co oznacza |
| --------------------- | -------- | ----------------------------------------------- | -------------------------------------------------------------------------------------------------------- |
| `provider` | Tak | `string` | Identyfikator dostawcy, do którego należy ten wybór. |
| `method` | Tak | `string` | Identyfikator metody uwierzytelniania, do której należy przekazać żądanie. |
| `choiceId` | Tak | `string` | Stabilny identyfikator wyboru uwierzytelniania używany przez onboarding i przepływy CLI. |
| `choiceLabel` | Nie | `string` | Etykieta widoczna dla użytkownika. Jeśli zostanie pominięta, OpenClaw użyje wartości `choiceId`. |
| `method` | Tak | `string` | Identyfikator metody auth, do której należy przekazać sterowanie. |
| `choiceId` | Tak | `string` | Stabilny identyfikator wyboru auth używany przez onboarding i przepływy CLI. |
| `choiceLabel` | Nie | `string` | Etykieta widoczna dla użytkownika. Jeśli zostanie pominięta, OpenClaw użyje `choiceId`. |
| `choiceHint` | Nie | `string` | Krótki tekst pomocniczy dla selektora. |
| `assistantPriority` | Nie | `number` | Niższe wartości są sortowane wcześniej w interaktywnych selektorach sterowanych przez asystenta. |
| `assistantVisibility` | Nie | `"visible"` \| `"manual-only"` | Ukrywa wybór w selektorach asystenta, ale nadal pozwala na ręczny wybór w CLI. |
| `deprecatedChoiceIds` | Nie | `string[]` | Starsze identyfikatory wyboru, które powinny przekierowywać użytkowników do tego zamiennego wyboru. |
| `assistantVisibility` | Nie | `"visible"` \| `"manual-only"` | Ukrywa wybór w selektorach asystenta, nadal pozwalając na ręczny wybór w CLI. |
| `deprecatedChoiceIds` | Nie | `string[]` | Starsze identyfikatory wyboru, które powinny przekierowywać użytkowników do tego wyboru zastępczego. |
| `groupId` | Nie | `string` | Opcjonalny identyfikator grupy do grupowania powiązanych wyborów. |
| `groupLabel` | Nie | `string` | Etykieta widoczna dla użytkownika dla tej grupy. |
| `groupLabel` | Nie | `string` | Etykieta tej grupy widoczna dla użytkownika. |
| `groupHint` | Nie | `string` | Krótki tekst pomocniczy dla grupy. |
| `optionKey` | Nie | `string` | Wewnętrzny klucz opcji dla prostych przepływów uwierzytelniania z jedną flagą. |
| `cliFlag` | Nie | `string` | Nazwa flagi CLI, na przykład `--openrouter-api-key`. |
| `cliOption` | Nie | `string` | Pełna postać opcji CLI, na przykład `--openrouter-api-key <key>`. |
| `optionKey` | Nie | `string` | Wewnętrzny klucz opcji dla prostych przepływów auth z jedną flagą. |
| `cliFlag` | Nie | `string` | Nazwa flagi CLI, taka jak `--openrouter-api-key`. |
| `cliOption` | Nie | `string` | Pełna postać opcji CLI, taka jak `--openrouter-api-key <key>`. |
| `cliDescription` | Nie | `string` | Opis używany w pomocy CLI. |
| `onboardingScopes` | Nie | `Array<"text-inference" \| "image-generation">` | Na których powierzchniach onboardingu ten wybór powinien się pojawiać. Jeśli zostanie pominięte, domyślnie używane jest `["text-inference"]`. |
## Odwołanie do `commandAliases`
## Informacje o `commandAliases`
Użyj `commandAliases`, gdy plugin jest właścicielem nazwy polecenia środowiska uruchomieniowego, którą użytkownicy mogą
omyłkowo umieścić w `plugins.allow` lub próbować uruchomić jako główne polecenie CLI. OpenClaw
używa tych metadanych do diagnostyki bez importowania kodu środowiska uruchomieniowego pluginu.
Używaj `commandAliases`, gdy Plugin posiada nazwę polecenia środowiska uruchomieniowego, którą użytkownicy mogą
omyłkowo umieścić w `plugins.allow` albo próbować uruchomić jako główne polecenie CLI. OpenClaw
używa tych metadanych do diagnostyki bez importowania kodu środowiska uruchomieniowego Pluginu.
```json
{
@ -213,22 +211,22 @@ używa tych metadanych do diagnostyki bez importowania kodu środowiska uruchomi
}
```
| Pole | Wymagane | Typ | Co oznacza |
| ------------ | -------- | ----------------- | --------------------------------------------------------------------------- |
| `name` | Tak | `string` | Nazwa polecenia należąca do tego pluginu. |
| `kind` | Nie | `"runtime-slash"` | Oznacza alias jako polecenie slash czatu, a nie główne polecenie CLI. |
| Pole | Wymagane | Typ | Co oznacza |
| ------------ | -------- | ----------------- | ----------------------------------------------------------------------------------- |
| `name` | Tak | `string` | Nazwa polecenia należąca do tego Pluginu. |
| `kind` | Nie | `"runtime-slash"` | Oznacza alias jako polecenie ukośnikowe czatu, a nie główne polecenie CLI. |
| `cliCommand` | Nie | `string` | Powiązane główne polecenie CLI, które należy zasugerować dla operacji CLI, jeśli istnieje. |
## Odwołanie do `activation`
## Informacje o `activation`
Użyj `activation`, gdy plugin może w prosty sposób zadeklarować, które zdarzenia płaszczyzny sterowania
Używaj `activation`, gdy Plugin może w prosty sposób zadeklarować, które zdarzenia płaszczyzny sterowania
powinny aktywować go później.
Ten blok zawiera tylko metadane. Nie rejestruje zachowania środowiska uruchomieniowego i nie
zastępuje `register(...)`, `setupEntry` ani innych punktów wejścia środowiska uruchomieniowego/pluginu.
Obecni konsumenci używają go jako wskazówki zawężającej przed szerszym ładowaniem pluginu, więc
brak metadanych aktywacji wpływa tylko na wydajność; nie powinien zmieniać
poprawności.
Ten blok zawiera wyłącznie metadane. Nie rejestruje zachowania środowiska uruchomieniowego i nie
zastępuje `register(...)`, `setupEntry` ani innych entrypointów środowiska uruchomieniowego/Pluginu.
Obecni konsumenci używają go jako wskazówki zawężającej przed szerszym ładowaniem Pluginów, więc
brak metadanych aktywacji zwykle wpływa tylko na wydajność; nie powinien zmieniać
poprawności, dopóki nadal istnieją starsze fallbacki własności manifestu.
```json
{
@ -242,21 +240,27 @@ poprawności.
}
```
| Pole | Wymagane | Typ | Co oznacza |
| ---------------- | -------- | ---------------------------------------------------- | --------------------------------------------------------------------- |
| `onProviders` | Nie | `string[]` | Identyfikatory dostawców, które powinny aktywować ten plugin po żądaniu. |
| `onCommands` | Nie | `string[]` | Identyfikatory poleceń, które powinny aktywować ten plugin. |
| `onChannels` | Nie | `string[]` | Identyfikatory kanałów, które powinny aktywować ten plugin. |
| `onRoutes` | Nie | `string[]` | Rodzaje tras, które powinny aktywować ten plugin. |
| `onCapabilities` | Nie | `Array<"provider" \| "channel" \| "tool" \| "hook">` | Ogólne wskazówki dotyczące możliwości używane przy planowaniu aktywacji płaszczyzny sterowania. |
| Pole | Wymagane | Typ | Co oznacza |
| ---------------- | -------- | ---------------------------------------------------- | ------------------------------------------------------------------- |
| `onProviders` | Nie | `string[]` | Identyfikatory dostawców, które powinny aktywować ten Plugin po zażądaniu. |
| `onCommands` | Nie | `string[]` | Identyfikatory poleceń, które powinny aktywować ten Plugin. |
| `onChannels` | Nie | `string[]` | Identyfikatory kanałów, które powinny aktywować ten Plugin. |
| `onRoutes` | Nie | `string[]` | Rodzaje tras, które powinny aktywować ten Plugin. |
| `onCapabilities` | Nie | `Array<"provider" \| "channel" \| "tool" \| "hook">` | Szerokie wskazówki capabilities używane przez planowanie aktywacji płaszczyzny sterowania. |
W przypadku planowania wyzwalanego poleceniem OpenClaw nadal korzysta z awaryjnego mechanizmu
opartego na starszych `commandAliases[].cliCommand` lub `commandAliases[].name`, gdy plugin
nie dodał jeszcze jawnych metadanych `activation.onCommands`.
Obecni aktywni konsumenci:
## Odwołanie do `setup`
- planowanie CLI wyzwalane poleceniem wraca awaryjnie do starszych
`commandAliases[].cliCommand` albo `commandAliases[].name`
- planowanie konfiguracji/kanałów wyzwalane kanałem wraca awaryjnie do starszej własności
`channels[]`, gdy brakuje jawnych metadanych aktywacji kanału
- planowanie konfiguracji/środowiska uruchomieniowego wyzwalane dostawcą wraca awaryjnie do starszej
własności `providers[]` i `cliBackends[]` najwyższego poziomu, gdy brakuje jawnych metadanych
aktywacji dostawcy
Użyj `setup`, gdy powierzchnie konfiguracji i onboardingu potrzebują prostych metadanych należących do pluginu
## Informacje o `setup`
Używaj `setup`, gdy powierzchnie konfiguracji i onboardingu potrzebują lekkich metadanych należących do Pluginu
przed załadowaniem środowiska uruchomieniowego.
```json
@ -276,39 +280,39 @@ przed załadowaniem środowiska uruchomieniowego.
}
```
Pole najwyższego poziomu `cliBackends` pozostaje prawidłowe i nadal opisuje backendy inferencji CLI.
`setup.cliBackends` to powierzchnia deskryptorów specyficzna dla konfiguracji dla
przepływów płaszczyzny sterowania/konfiguracji, które powinny pozostać wyłącznie metadanymi.
`cliBackends` najwyższego poziomu pozostaje prawidłowe i nadal opisuje backendy
inferencji CLI. `setup.cliBackends` to powierzchnia deskryptorów specyficzna dla konfiguracji
dla przepływów płaszczyzny sterowania/konfiguracji, które powinny pozostać wyłącznie metadanymi.
Gdy są obecne, `setup.providers` i `setup.cliBackends` są preferowaną
powierzchnią wyszukiwania opartą najpierw na deskryptorach dla wykrywania konfiguracji. Jeśli deskryptor
jedynie zawęża kandydujący plugin, a konfiguracja nadal potrzebuje bogatszych hooków czasu konfiguracji,
Jeśli są obecne, `setup.providers` i `setup.cliBackends` są preferowaną
powierzchnią wyszukiwania najpierw po deskryptorach dla wykrywania konfiguracji. Jeśli deskryptor tylko
zawęża kandydujący Plugin, a konfiguracja nadal potrzebuje bogatszych hooków środowiska uruchomieniowego w czasie konfiguracji,
ustaw `requiresRuntime: true` i pozostaw `setup-api` jako
awaryjną ścieżkę wykonania.
Ponieważ wyszukiwanie konfiguracji może wykonywać kod `setup-api` należący do pluginu,
Ponieważ wyszukiwanie konfiguracji może wykonywać należący do Pluginu kod `setup-api`,
znormalizowane wartości `setup.providers[].id` i `setup.cliBackends[]` muszą pozostać unikalne globalnie
wśród wykrytych pluginów. Niejednoznaczna własność kończy się bezpieczną odmową zamiast wybierania
zwycięzcy na podstawie kolejności wykrywania.
wśród wykrytych Pluginów. Niejednoznaczna własność kończy się bez wyboru zwycięzcy
według kolejności wykrycia.
### Odwołanie do `setup.providers`
### Informacje o `setup.providers`
| Pole | Wymagane | Typ | Co oznacza |
| ------------- | -------- | ---------- | --------------------------------------------------------------------------------------- |
| `id` | Tak | `string` | Identyfikator dostawcy udostępniany podczas konfiguracji lub onboardingu. Zachowaj globalną unikalność znormalizowanych identyfikatorów. |
| `authMethods` | Nie | `string[]` | Identyfikatory metod konfiguracji/uwierzytelniania obsługiwanych przez tego dostawcę bez ładowania pełnego środowiska uruchomieniowego. |
| `envVars` | Nie | `string[]` | Zmienne env, które ogólne powierzchnie konfiguracji/statusu mogą sprawdzać przed załadowaniem środowiska uruchomieniowego pluginu. |
| Pole | Wymagane | Typ | Co oznacza |
| ------------- | -------- | ---------- | -------------------------------------------------------------------------------------------- |
| `id` | Tak | `string` | Identyfikator dostawcy udostępniany podczas konfiguracji lub onboardingu. Znormalizowane identyfikatory muszą być globalnie unikalne. |
| `authMethods` | Nie | `string[]` | Identyfikatory metod konfiguracji/auth obsługiwanych przez tego dostawcę bez ładowania pełnego środowiska uruchomieniowego. |
| `envVars` | Nie | `string[]` | Zmienne env, które ogólne powierzchnie konfiguracji/statusu mogą sprawdzać przed załadowaniem środowiska uruchomieniowego Pluginu. |
### Pola `setup`
| Pole | Wymagane | Typ | Co oznacza |
| ------------------ | -------- | ---------- | --------------------------------------------------------------------------------------------------- |
| `providers` | Nie | `object[]` | Deskryptory konfiguracji dostawców udostępniane podczas konfiguracji i onboardingu. |
| `cliBackends` | Nie | `string[]` | Identyfikatory backendów czasu konfiguracji używane do wyszukiwania konfiguracji opartego najpierw na deskryptorach. Zachowaj globalną unikalność znormalizowanych identyfikatorów. |
| `configMigrations` | Nie | `string[]` | Identyfikatory migracji konfiguracji należące do powierzchni konfiguracji tego pluginu. |
| `requiresRuntime` | Nie | `boolean` | Czy konfiguracja nadal wymaga wykonania `setup-api` po wyszukaniu deskryptora. |
| ------------------ | -------- | ---------- | ---------------------------------------------------------------------------------------------------- |
| `providers` | Nie | `object[]` | Deskryptory konfiguracji dostawców udostępniane podczas konfiguracji i onboardingu. |
| `cliBackends` | Nie | `string[]` | Identyfikatory backendów czasu konfiguracji używane do wyszukiwania konfiguracji najpierw po deskryptorach. Znormalizowane identyfikatory muszą być globalnie unikalne. |
| `configMigrations` | Nie | `string[]` | Identyfikatory migracji konfiguracji należące do powierzchni konfiguracji tego Pluginu. |
| `requiresRuntime` | Nie | `boolean` | Czy konfiguracja nadal wymaga wykonania `setup-api` po wyszukaniu deskryptora. |
## Odwołanie do `uiHints`
## Informacje o `uiHints`
`uiHints` to mapa od nazw pól konfiguracji do małych wskazówek renderowania.
@ -327,19 +331,19 @@ zwycięzcy na podstawie kolejności wykrywania.
Każda wskazówka pola może zawierać:
| Pole | Typ | Co oznacza |
| ------------- | ---------- | --------------------------------------- |
| `label` | `string` | Etykieta pola widoczna dla użytkownika. |
| `help` | `string` | Krótki tekst pomocniczy. |
| `tags` | `string[]` | Opcjonalne tagi UI. |
| `advanced` | `boolean` | Oznacza pole jako zaawansowane. |
| `sensitive` | `boolean` | Oznacza pole jako tajne lub wrażliwe. |
| `placeholder` | `string` | Tekst placeholdera dla pól formularza. |
| Pole | Typ | Co oznacza |
| ------------- | ---------- | ---------------------------------------- |
| `label` | `string` | Etykieta pola widoczna dla użytkownika. |
| `help` | `string` | Krótki tekst pomocniczy. |
| `tags` | `string[]` | Opcjonalne tagi UI. |
| `advanced` | `boolean` | Oznacza pole jako zaawansowane. |
| `sensitive` | `boolean` | Oznacza pole jako sekretne lub wrażliwe. |
| `placeholder` | `string` | Tekst placeholdera dla pól formularza. |
## Odwołanie do `contracts`
## Informacje o `contracts`
Używaj `contracts` tylko dla statycznych metadanych własności możliwości, które OpenClaw może
odczytać bez importowania środowiska uruchomieniowego pluginu.
Używaj `contracts` wyłącznie dla statycznych metadanych własności capabilities, które OpenClaw może
odczytać bez importowania środowiska uruchomieniowego Pluginu.
```json
{
@ -359,21 +363,21 @@ odczytać bez importowania środowiska uruchomieniowego pluginu.
Każda lista jest opcjonalna:
| Pole | Typ | Co oznacza |
| -------------------------------- | ---------- | --------------------------------------------------------------- |
| `speechProviders` | `string[]` | Identyfikatory dostawców mowy należących do tego pluginu. |
| `realtimeTranscriptionProviders` | `string[]` | Identyfikatory dostawców transkrypcji w czasie rzeczywistym należących do tego pluginu. |
| `realtimeVoiceProviders` | `string[]` | Identyfikatory dostawców głosu w czasie rzeczywistym należących do tego pluginu. |
| `mediaUnderstandingProviders` | `string[]` | Identyfikatory dostawców rozumienia mediów należących do tego pluginu. |
| `imageGenerationProviders` | `string[]` | Identyfikatory dostawców generowania obrazów należących do tego pluginu. |
| `videoGenerationProviders` | `string[]` | Identyfikatory dostawców generowania wideo należących do tego pluginu. |
| `webFetchProviders` | `string[]` | Identyfikatory dostawców pobierania z sieci należących do tego pluginu. |
| `webSearchProviders` | `string[]` | Identyfikatory dostawców wyszukiwania w sieci należących do tego pluginu. |
| `tools` | `string[]` | Nazwy narzędzi agenta należących do tego pluginu na potrzeby kontroli kontraktów pakietowych. |
| Pole | Typ | Co oznacza |
| -------------------------------- | ---------- | ------------------------------------------------------------ |
| `speechProviders` | `string[]` | Identyfikatory dostawców speech należących do tego Pluginu. |
| `realtimeTranscriptionProviders` | `string[]` | Identyfikatory dostawców realtime transcription należących do tego Pluginu. |
| `realtimeVoiceProviders` | `string[]` | Identyfikatory dostawców realtime voice należących do tego Pluginu. |
| `mediaUnderstandingProviders` | `string[]` | Identyfikatory dostawców media-understanding należących do tego Pluginu. |
| `imageGenerationProviders` | `string[]` | Identyfikatory dostawców image-generation należących do tego Pluginu. |
| `videoGenerationProviders` | `string[]` | Identyfikatory dostawców video-generation należących do tego Pluginu. |
| `webFetchProviders` | `string[]` | Identyfikatory dostawców web-fetch należących do tego Pluginu. |
| `webSearchProviders` | `string[]` | Identyfikatory dostawców web search należących do tego Pluginu. |
| `tools` | `string[]` | Nazwy narzędzi agenta należących do tego Pluginu dla bundlowych kontroli kontraktów. |
## Odwołanie do `channelConfigs`
## Informacje o `channelConfigs`
Użyj `channelConfigs`, gdy plugin kanału potrzebuje prostych metadanych konfiguracji przed
Używaj `channelConfigs`, gdy Plugin kanału potrzebuje lekkich metadanych konfiguracji przed
załadowaniem środowiska uruchomieniowego.
```json
@ -389,12 +393,12 @@ załadowaniem środowiska uruchomieniowego.
},
"uiHints": {
"homeserverUrl": {
"label": "URL homeserwera",
"label": "URL Homeservera",
"placeholder": "https://matrix.example.com"
}
},
"label": "Matrix",
"description": "Połączenie z homeserwerem Matrix",
"description": "Połączenie z homeserverem Matrix",
"preferOver": ["matrix-legacy"]
}
}
@ -403,19 +407,18 @@ załadowaniem środowiska uruchomieniowego.
Każdy wpis kanału może zawierać:
| Pole | Typ | Co oznacza |
| ------------- | ------------------------ | ------------------------------------------------------------------------------------------ |
| Pole | Typ | Co oznacza |
| ------------- | ------------------------ | -------------------------------------------------------------------------------------------- |
| `schema` | `object` | Schemat JSON dla `channels.<id>`. Wymagany dla każdego zadeklarowanego wpisu konfiguracji kanału. |
| `uiHints` | `Record<string, object>` | Opcjonalne etykiety UI/placeholdery/wskazówki dotyczące wrażliwości dla tej sekcji konfiguracji kanału. |
| `label` | `string` | Etykieta kanału scalana z powierzchniami selektora i inspekcji, gdy metadane środowiska uruchomieniowego nie są gotowe. |
| `description` | `string` | Krótki opis kanału dla powierzchni inspekcji i katalogu. |
| `preferOver` | `string[]` | Starsze lub niżej priorytetowe identyfikatory pluginów, które ten kanał powinien wyprzedzać na powierzchniach wyboru. |
| `label` | `string` | Etykieta kanału scalana z powierzchniami wyboru i inspekcji, gdy metadane środowiska uruchomieniowego nie są jeszcze gotowe. |
| `description` | `string` | Krótki opis kanału dla powierzchni inspekcji i katalogu. |
| `preferOver` | `string[]` | Starsze lub mniej priorytetowe identyfikatory Pluginów, które ten kanał powinien wyprzedzać na powierzchniach wyboru. |
## Odwołanie do `modelSupport`
## Informacje o `modelSupport`
Użyj `modelSupport`, gdy OpenClaw ma wnioskować o pluginie dostawcy na podstawie
skrótowych identyfikatorów modeli, takich jak `gpt-5.4` lub `claude-sonnet-4.6`, zanim środowisko uruchomieniowe pluginu
zostanie załadowane.
Używaj `modelSupport`, gdy OpenClaw powinien wywnioskować Plugin dostawcy na podstawie
skróconych identyfikatorów modeli, takich jak `gpt-5.4` albo `claude-sonnet-4.6`, zanim załaduje się środowisko uruchomieniowe Pluginu.
```json
{
@ -428,72 +431,73 @@ zostanie załadowane.
OpenClaw stosuje następujący priorytet:
- jawne odwołania `provider/model` używają metadanych manifestu `providers` właściciela
- `modelPatterns` mają pierwszeństwo przed `modelPrefixes`
- jeśli jeden plugin zewnętrzny i jeden plugin pakietowy pasują jednocześnie, wygrywa plugin zewnętrzny
- pozostała niejednoznaczność jest ignorowana, dopóki użytkownik lub konfiguracja nie określi dostawcy
- jawne odwołania `provider/model` używają należących do właściciela metadanych manifestu `providers`
- `modelPatterns` mają wyższy priorytet niż `modelPrefixes`
- jeśli pasuje jeden Plugin zewnętrzny i jeden Plugin bundlowy, wygrywa Plugin zewnętrzny
- pozostała niejednoznaczność jest ignorowana, dopóki użytkownik lub konfiguracja nie wskaże dostawcy
Pola:
| Pole | Typ | Co oznacza |
| --------------- | ---------- | ----------------------------------------------------------------------------- |
| `modelPrefixes` | `string[]` | Prefiksy dopasowywane za pomocą `startsWith` do skrótowych identyfikatorów modeli. |
| `modelPatterns` | `string[]` | Źródła regex dopasowywane do skrótowych identyfikatorów modeli po usunięciu sufiksu profilu. |
| Pole | Typ | Co oznacza |
| --------------- | ---------- | ------------------------------------------------------------------------------ |
| `modelPrefixes` | `string[]` | Prefiksy dopasowywane przez `startsWith` do skróconych identyfikatorów modeli. |
| `modelPatterns` | `string[]` | Źródła regex dopasowywane do skróconych identyfikatorów modeli po usunięciu sufiksu profilu. |
Starsze klucze możliwości najwyższego poziomu są przestarzałe. Użyj `openclaw doctor --fix`, aby
Starsze klucze capabilities najwyższego poziomu są przestarzałe. Użyj `openclaw doctor --fix`, aby
przenieść `speechProviders`, `realtimeTranscriptionProviders`,
`realtimeVoiceProviders`, `mediaUnderstandingProviders`,
`imageGenerationProviders`, `videoGenerationProviders`,
`webFetchProviders` i `webSearchProviders` do `contracts`; zwykłe
ładowanie manifestu nie traktuje już tych pól najwyższego poziomu jako
własności możliwości.
własności capabilities.
## Manifest a package.json
## Manifest a `package.json`
Te dwa pliki pełnią różne role:
Te dwa pliki służą do różnych zadań:
| Plik | Używaj go do |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| `openclaw.plugin.json` | Wykrywania, walidacji konfiguracji, metadanych wyboru uwierzytelniania i wskazówek UI, które muszą istnieć przed uruchomieniem kodu pluginu |
| `package.json` | Metadanych npm, instalacji zależności oraz bloku `openclaw` używanego do punktów wejścia, kontroli instalacji, konfiguracji lub metadanych katalogu |
| Plik | Używaj go do |
| ---------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
| `openclaw.plugin.json` | Wykrywania, walidacji konfiguracji, metadanych wyboru auth i wskazówek UI, które muszą istnieć przed uruchomieniem kodu Pluginu |
| `package.json` | Metadanych npm, instalacji zależności oraz bloku `openclaw` używanego do entrypointów, bramek instalacji, konfiguracji lub metadanych katalogu |
Jeśli nie masz pewności, gdzie powinien znaleźć się dany fragment metadanych, użyj tej zasady:
Jeśli nie masz pewności, gdzie powinien trafić dany fragment metadanych, stosuj tę zasadę:
- jeśli OpenClaw musi o tym wiedzieć przed załadowaniem kodu pluginu, umieść to w `openclaw.plugin.json`
- jeśli dotyczy to pakowania, plików wejściowych lub zachowania instalacji npm, umieść to w `package.json`
- jeśli OpenClaw musi znać go przed załadowaniem kodu Pluginu, umieść go w `openclaw.plugin.json`
- jeśli dotyczy pakowania, plików wejściowych albo zachowania instalacji npm, umieść go w `package.json`
### Pola `package.json`, które wpływają na wykrywanie
Niektóre metadane pluginów sprzed uruchomienia celowo znajdują się w `package.json` w bloku
Niektóre metadane Pluginów przed uruchomieniem celowo znajdują się w `package.json` w bloku
`openclaw`, a nie w `openclaw.plugin.json`.
Ważne przykłady:
| Pole | Co oznacza |
| Pole | Co oznacza |
| ----------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| `openclaw.extensions` | Deklaruje natywne punkty wejścia Plugin. |
| `openclaw.setupEntry` | Lekki punkt wejścia tylko do konfiguracji używany podczas onboardingu i odroczonego uruchamiania kanału. |
| `openclaw.channel` | Lekkie metadane katalogu kanałów, takie jak etykiety, ścieżki dokumentacji, aliasy i teksty wyboru. |
| `openclaw.channel.configuredState` | Lekkie metadane modułu sprawdzania stanu konfiguracji, które mogą odpowiedzieć na pytanie „czy konfiguracja oparta wyłącznie na env już istnieje?” bez ładowania pełnego środowiska uruchomieniowego kanału. |
| `openclaw.channel.persistedAuthState` | Lekkie metadane modułu sprawdzania utrwalonego stanu uwierzytelniania, które mogą odpowiedzieć na pytanie „czy cokolwiek jest już zalogowane?” bez ładowania pełnego środowiska uruchomieniowego kanału. |
| `openclaw.install.npmSpec` / `openclaw.install.localPath` | Wskazówki instalacji/aktualizacji dla pluginów pakietowych i publikowanych zewnętrznie. |
| `openclaw.install.defaultChoice` | Preferowana ścieżka instalacji, gdy dostępnych jest wiele źródeł instalacji. |
| `openclaw.install.minHostVersion` | Minimalna obsługiwana wersja hosta OpenClaw z użyciem dolnego ograniczenia semver, na przykład `>=2026.3.22`. |
| `openclaw.install.allowInvalidConfigRecovery` | Umożliwia wąską ścieżkę odzyskiwania przez ponowną instalację pluginu pakietowego, gdy konfiguracja jest nieprawidłowa. |
| `openclaw.startup.deferConfiguredChannelFullLoadUntilAfterListen` | Pozwala powierzchniom kanału tylko do konfiguracji ładować się przed pełnym pluginem kanału podczas uruchamiania. |
| `openclaw.extensions` | Deklaruje natywne entrypointy Pluginów. |
| `openclaw.setupEntry` | Lekki entrypoint tylko do konfiguracji, używany podczas onboardingu i odroczonego uruchamiania kanału. |
| `openclaw.channel` | Lekkie metadane katalogu kanałów, takie jak etykiety, ścieżki do dokumentacji, aliasy i tekst wyboru. |
| `openclaw.channel.configuredState` | Lekkie metadane sprawdzania stanu konfiguracji, które mogą odpowiedzieć na pytanie „czy konfiguracja oparta wyłącznie na env już istnieje?” bez ładowania pełnego środowiska uruchomieniowego kanału. |
| `openclaw.channel.persistedAuthState` | Lekkie metadane sprawdzania trwałego stanu auth, które mogą odpowiedzieć na pytanie „czy cokolwiek jest już zalogowane?” bez ładowania pełnego środowiska uruchomieniowego kanału. |
| `openclaw.install.npmSpec` / `openclaw.install.localPath` | Wskazówki instalacji/aktualizacji dla Pluginów bundlowych i publikowanych zewnętrznie. |
| `openclaw.install.defaultChoice` | Preferowana ścieżka instalacji, gdy dostępnych jest wiele źródeł instalacji. |
| `openclaw.install.minHostVersion` | Minimalna obsługiwana wersja hosta OpenClaw, z użyciem dolnego ograniczenia semver, takiego jak `>=2026.3.22`. |
| `openclaw.install.allowInvalidConfigRecovery` | Umożliwia wąską ścieżkę odzyskiwania po ponownej instalacji bundlowego Pluginu, gdy konfiguracja jest nieprawidłowa. |
| `openclaw.startup.deferConfiguredChannelFullLoadUntilAfterListen` | Pozwala powierzchniom kanałów tylko do konfiguracji załadować się przed pełnym Pluginem kanału podczas uruchamiania. |
`openclaw.install.minHostVersion` jest egzekwowane podczas instalacji i
`openclaw.install.minHostVersion` jest wymuszane podczas instalacji i
ładowania rejestru manifestów. Nieprawidłowe wartości są odrzucane; nowsze, ale poprawne wartości powodują pominięcie
pluginu na starszych hostach.
Pluginu na starszych hostach.
`openclaw.install.allowInvalidConfigRecovery` jest celowo wąskie. Nie
sprawia, że dowolne uszkodzone konfiguracje stają się możliwe do zainstalowania. Obecnie pozwala tylko przepływom instalacji
odzyskiwać po konkretnych nieaktualnych awariach aktualizacji pluginów pakietowych, takich jak
brakująca ścieżka pluginu pakietowego lub nieaktualny wpis `channels.<id>` dla tego samego
pluginu pakietowego. Niezwiązane błędy konfiguracji nadal blokują instalację i kierują operatorów
sprawia, że dowolnie uszkodzone konfiguracje stają się możliwe do zainstalowania. Obecnie pozwala tylko
przepływom instalacji odzyskać sprawność po określonych niepowodzeniach aktualizacji bundlowych Pluginów, takich jak
brak ścieżki bundlowego Pluginu albo nieaktualny wpis `channels.<id>` dla tego samego
bundlowego Pluginu. Niezwiązane błędy konfiguracji nadal blokują instalację i kierują operatorów
do `openclaw doctor --fix`.
`openclaw.channel.persistedAuthState` to metadane pakietu dla małego modułu sprawdzającego:
`openclaw.channel.persistedAuthState` to metadane pakietu dla małego modułu
sprawdzającego:
```json
{
@ -509,12 +513,12 @@ do `openclaw doctor --fix`.
}
```
Użyj tego, gdy przepływy konfiguracji, doctor lub stanu konfiguracji potrzebują prostego sprawdzenia
uwierzytelniania typu tak/nie przed załadowaniem pełnego pluginu kanału. Docelowy eksport powinien być małą
funkcją, która odczytuje tylko utrwalony stan; nie prowadź go przez pełną beczkę środowiska uruchomieniowego kanału.
Używaj tego, gdy przepływy konfiguracji, doctor albo configured-state potrzebują prostego
sprawdzenia auth typu tak/nie, zanim załaduje się pełny Plugin kanału. Docelowy eksport powinien być małą
funkcją, która odczytuje wyłącznie stan trwały; nie kieruj tego przez pełny barrel środowiska uruchomieniowego kanału.
`openclaw.channel.configuredState` ma ten sam kształt dla prostych kontroli
stanu konfiguracji opartych wyłącznie na env:
`openclaw.channel.configuredState` ma taki sam kształt dla lekkich sprawdzeń
konfiguracji opartych wyłącznie na env:
```json
{
@ -530,64 +534,63 @@ stanu konfiguracji opartych wyłącznie na env:
}
```
Użyj tego, gdy kanał może odpowiedzieć o stanie konfiguracji na podstawie env lub innych małych
wejść niebędących częścią środowiska uruchomieniowego. Jeśli sprawdzenie wymaga pełnego rozstrzygania konfiguracji lub rzeczywistego
środowiska uruchomieniowego kanału, pozostaw tę logikę w hooku pluginu `config.hasConfiguredState`.
Używaj tego, gdy kanał może odpowiedzieć o stanie konfiguracji na podstawie env lub innych małych
wejść niezwiązanych ze środowiskiem uruchomieniowym. Jeśli sprawdzenie wymaga pełnego rozstrzygnięcia konfiguracji albo rzeczywistego
środowiska uruchomieniowego kanału, pozostaw tę logikę w hooku Pluginu `config.hasConfiguredState`.
## Wymagania schematu JSON
- **Każdy plugin musi dostarczać schemat JSON**, nawet jeśli nie przyjmuje żadnej konfiguracji.
- **Każdy Plugin musi dostarczać schemat JSON**, nawet jeśli nie przyjmuje żadnej konfiguracji.
- Pusty schemat jest akceptowalny (na przykład `{ "type": "object", "additionalProperties": false }`).
- Schematy są walidowane podczas odczytu/zapisu konfiguracji, a nie w czasie działania.
## Zachowanie walidacji
- Nieznane klucze `channels.*`**błędami**, chyba że identyfikator kanału jest zadeklarowany przez
manifest pluginu.
manifest Pluginu.
- `plugins.entries.<id>`, `plugins.allow`, `plugins.deny` i `plugins.slots.*`
muszą odwoływać się do **wykrywalnych** identyfikatorów pluginów. Nieznane identyfikatory są **błędami**.
- Jeśli plugin jest zainstalowany, ale ma uszkodzony lub brakujący manifest albo schemat,
walidacja kończy się niepowodzeniem, a Doctor zgłasza błąd pluginu.
- Jeśli konfiguracja pluginu istnieje, ale plugin jest **wyłączony**, konfiguracja jest zachowywana i
pojawia się **ostrzeżenie** w Doctor + logach.
muszą odwoływać się do **wykrywalnych** identyfikatorów Pluginów. Nieznane identyfikatory są **błędami**.
- Jeśli Plugin jest zainstalowany, ale ma uszkodzony lub brakujący manifest albo schemat,
walidacja kończy się niepowodzeniem, a Doctor zgłasza błąd Pluginu.
- Jeśli konfiguracja Pluginu istnieje, ale Plugin jest **wyłączony**, konfiguracja jest zachowywana i
w Doctor + logach wyświetlane jest **ostrzeżenie**.
Pełny schemat `plugins.*` znajdziesz w [Odwołaniu do konfiguracji](/pl/gateway/configuration).
Pełny schemat `plugins.*` znajdziesz tutaj: [Informacje o konfiguracji](/pl/gateway/configuration).
## Uwagi
- Manifest jest **wymagany dla natywnych Plugin OpenClaw**, w tym dla ładowań z lokalnego systemu plików.
- Środowisko uruchomieniowe nadal ładuje moduł pluginu osobno; manifest służy tylko do
- Manifest jest **wymagany dla natywnych Pluginów OpenClaw**, w tym dla ładowania z lokalnego systemu plików.
- Środowisko uruchomieniowe nadal ładuje moduł Pluginu osobno; manifest służy tylko do
wykrywania + walidacji.
- Natywne manifesty są parsowane przy użyciu JSON5, więc komentarze, końcowe przecinki i
klucze bez cudzysłowów są akceptowane, o ile końcowa wartość nadal jest obiektem.
- Ładowarka manifestu odczytuje tylko udokumentowane pola manifestu. Unikaj dodawania
tutaj niestandardowych kluczy najwyższego poziomu.
- `providerAuthEnvVars` to lekka ścieżka metadanych dla sond uwierzytelniania, walidacji znaczników env
i podobnych powierzchni uwierzytelniania dostawcy, które nie powinny uruchamiać środowiska uruchomieniowego pluginu
tylko po to, aby sprawdzić nazwy env.
- `providerAuthAliases` pozwala wariantom dostawcy ponownie używać zmiennych env uwierzytelniania innego dostawcy,
profili uwierzytelniania, uwierzytelniania opartego na konfiguracji oraz wyboru onboardingu klucza API
bez kodowania tej relacji na sztywno w rdzeniu.
- `channelEnvVars` to lekka ścieżka metadanych dla awaryjnego użycia shell env, promptów konfiguracji
i podobnych powierzchni kanału, które nie powinny uruchamiać środowiska uruchomieniowego pluginu
tylko po to, aby sprawdzić nazwy env.
- `providerAuthChoices` to lekka ścieżka metadanych dla selektorów wyboru uwierzytelniania,
klucze bez cudzysłowów są akceptowane, o ile wartość końcowa nadal jest obiektem.
- Loader manifestu odczytuje tylko udokumentowane pola manifestu. Unikaj dodawania
tutaj własnych kluczy najwyższego poziomu.
- `providerAuthEnvVars` to lekka ścieżka metadanych dla sond auth, walidacji
znaczników env i podobnych powierzchni auth dostawców, które nie powinny uruchamiać środowiska uruchomieniowego Pluginu tylko po to, by sprawdzić nazwy env.
- `providerAuthAliases` pozwala wariantom dostawców ponownie używać zmiennych env auth,
profili auth, auth opartych na konfiguracji oraz wyboru onboardingu klucza API innego dostawcy
bez kodowania tej relacji na sztywno w core.
- `channelEnvVars` to lekka ścieżka metadanych dla fallbacku shell-env, promptów konfiguracji
i podobnych powierzchni kanałów, które nie powinny uruchamiać środowiska uruchomieniowego Pluginu
tylko po to, by sprawdzić nazwy env.
- `providerAuthChoices` to lekka ścieżka metadanych dla selektorów wyboru auth,
rozstrzygania `--auth-choice`, mapowania preferowanego dostawcy i prostej rejestracji flag CLI
dla onboardingu przed załadowaniem środowiska uruchomieniowego dostawcy. W przypadku metadanych kreatora środowiska uruchomieniowego,
onboardingu przed załadowaniem środowiska uruchomieniowego dostawcy. W przypadku metadanych kreatora środowiska uruchomieniowego,
które wymagają kodu dostawcy, zobacz
[Hooki środowiska uruchomieniowego dostawcy](/pl/plugins/architecture#provider-runtime-hooks).
- Wyłączne rodzaje pluginów są wybierane przez `plugins.slots.*`.
- Wyłączne rodzaje Pluginów są wybierane przez `plugins.slots.*`.
- `kind: "memory"` jest wybierany przez `plugins.slots.memory`.
- `kind: "context-engine"` jest wybierany przez `plugins.slots.contextEngine`
(domyślnie: wbudowany `legacy`).
- `channels`, `providers`, `cliBackends` i `skills` można pominąć, gdy
plugin ich nie potrzebuje.
- Jeśli twój plugin zależy od modułów natywnych, udokumentuj kroki budowania oraz wszelkie
wymagania listy dozwolonych elementów menedżera pakietów (na przykład pnpm `allow-build-scripts`
- `channels`, `providers`, `cliBackends` i `skills` można pominąć, jeśli
Plugin ich nie potrzebuje.
- Jeśli Twój Plugin zależy od modułów natywnych, udokumentuj kroki budowania oraz wszelkie
wymagania dotyczące allowlist menedżera pakietów (na przykład pnpm `allow-build-scripts`
- `pnpm rebuild <package>`).
## Powiązane
- [Tworzenie Plugin](/pl/plugins/building-plugins) — wprowadzenie do pluginów
- [Architektura Plugin](/pl/plugins/architecture) — architektura wewnętrzna
- [Przegląd SDK](/pl/plugins/sdk-overview) — dokumentacja SDK Plugin
- [Tworzenie Pluginów](/pl/plugins/building-plugins) — pierwsze kroki z Pluginami
- [Architektura Pluginów](/pl/plugins/architecture) — architektura wewnętrzna
- [Przegląd SDK](/pl/plugins/sdk-overview) — dokumentacja Plugin SDK

View File

@ -1,58 +1,78 @@
---
read_when:
- Chcesz mieć trwałą wiedzę wykraczającą poza zwykłe notatki MEMORY.md
- Konfigurujesz dołączoną wtyczkę memory-wiki
- Chcesz zrozumieć wiki_search, wiki_get lub tryb mostu
summary: 'memory-wiki: skompilowany sejf wiedzy z pochodzeniem, twierdzeniami, pulpitami i trybem mostu'
title: Wiki pamięci
- Chcesz trwałej wiedzy wykraczającej poza zwykłe notatki w `MEMORY.md`
- Konfigurujesz dołączony Plugin memory-wiki
- Chcesz zrozumieć `wiki_search`, `wiki_get` lub tryb bridge
summary: 'memory-wiki: skompilowany sejf wiedzy z proweniencją, twierdzeniami, dashboardami i trybem bridge'
title: Memory Wiki
x-i18n:
generated_at: "2026-04-08T06:01:15Z"
generated_at: "2026-04-12T23:28:47Z"
model: gpt-5.4
provider: openai
source_hash: b78dd6a4ef4451dae6b53197bf0c7c2a2ba846b08e4a3a93c1026366b1598d82
source_hash: 44d168a7096f744c56566ecac57499192eb101b4dd8a78e1b92f3aa0d6da3ad1
source_path: plugins/memory-wiki.md
workflow: 15
---
# Wiki pamięci
# Memory Wiki
`memory-wiki` to dołączona wtyczka, która zamienia trwałą pamięć w skompilowany
`memory-wiki` to dołączony Plugin, który przekształca trwałą pamięć w skompilowany
sejf wiedzy.
**Nie** zastępuje aktywnej wtyczki pamięci. Aktywna wtyczka pamięci nadal
odpowiada za przywoływanie, promowanie, indeksowanie i śnienie. `memory-wiki`
działa obok niej i kompiluje trwałą wiedzę do postaci nawigowalnej wiki z
deterministycznymi stronami, uporządkowanymi twierdzeniami, pochodzeniem,
pulpitami i odczytywalnymi maszynowo skrótami.
Nie zastępuje on Pluginu Active Memory. Plugin Active Memory nadal
odpowiada za recall, promotion, indexing i Dreaming. `memory-wiki` działa obok niego
i kompiluje trwałą wiedzę do postaci nawigowalnego wiki z deterministycznymi stronami,
ustrukturyzowanymi twierdzeniami, proweniencją, dashboardami i odczytywalnymi maszynowo digestami.
Używaj jej, gdy chcesz, aby pamięć działała bardziej jak utrzymywana warstwa
wiedzy, a mniej jak stos plików Markdown.
Używaj go, gdy chcesz, aby pamięć zachowywała się bardziej jak utrzymywana warstwa wiedzy,
a mniej jak stos plików Markdown.
## Co dodaje
- Dedykowany sejf wiki z deterministycznym układem stron
- Uporządkowane metadane twierdzeń i dowodów, a nie tylko tekst opisowy
- Pochodzenie, pewność, sprzeczności i otwarte pytania na poziomie strony
- Skompilowane skróty dla agentów i komponentów środowiska uruchomieniowego
- Ustrukturyzowane metadane twierdzeń i dowodów, a nie tylko proza
- Proweniencję, poziom pewności, sprzeczności i otwarte pytania na poziomie strony
- Skompilowane digests dla agentów i konsumentów runtime
- Natywne dla wiki narzędzia search/get/apply/lint
- Opcjonalny tryb mostu, który importuje publiczne artefakty z aktywnej wtyczki pamięci
- Opcjonalny tryb bridge, który importuje publiczne artefakty z Pluginu Active Memory
- Opcjonalny tryb renderowania przyjazny dla Obsidian oraz integrację z CLI
## Jak współgra z pamięcią
## Jak to pasuje do pamięci
Możesz myśleć o tym podziale w ten sposób:
Pomyśl o tym podziale w ten sposób:
| Warstwa | Odpowiada za |
| ------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
| Aktywna wtyczka pamięci (`memory-core`, QMD, Honcho itd.) | Przywoływanie, wyszukiwanie semantyczne, promowanie, śnienie, środowisko pamięci |
| `memory-wiki` | Skompilowane strony wiki, syntezy bogate w pochodzenie, pulpity, wyszukiwanie/get/apply specyficzne dla wiki |
| Plugin Active Memory (`memory-core`, QMD, Honcho itp.) | Recall, wyszukiwanie semantyczne, promotion, Dreaming, runtime pamięci |
| `memory-wiki` | Skompilowane strony wiki, syntezy bogate w proweniencję, dashboardy, specyficzne dla wiki search/get/apply |
Jeśli aktywna wtyczka pamięci udostępnia współdzielone artefakty przywoływania,
OpenClaw może przeszukiwać obie warstwy w jednym przebiegu za pomocą
`memory_search corpus=all`.
Jeśli Plugin Active Memory udostępnia współdzielone artefakty recall, OpenClaw może przeszukiwać
obie warstwy w jednym przebiegu za pomocą `memory_search corpus=all`.
Gdy potrzebujesz rankingu specyficznego dla wiki, pochodzenia lub
bezpośredniego dostępu do strony, użyj zamiast tego natywnych narzędzi wiki.
Gdy potrzebujesz rankingu specyficznego dla wiki, proweniencji lub bezpośredniego dostępu do stron,
użyj zamiast tego narzędzi natywnych dla wiki.
## Zalecany wzorzec hybrydowy
Mocną domyślną konfiguracją dla lokalnych środowisk jest:
- QMD jako backend Active Memory dla recall i szerokiego wyszukiwania semantycznego
- `memory-wiki` w trybie `bridge` dla trwałych stron wiedzy syntetyzowanej
Ten podział działa dobrze, ponieważ każda warstwa pozostaje skoncentrowana na swoim zadaniu:
- QMD utrzymuje możliwość przeszukiwania surowych notatek, eksportów sesji i dodatkowych kolekcji
- `memory-wiki` kompiluje stabilne encje, twierdzenia, dashboardy i strony źródłowe
Praktyczna zasada:
- użyj `memory_search`, gdy chcesz wykonać jeden szeroki przebieg recall przez pamięć
- użyj `wiki_search` i `wiki_get`, gdy chcesz wyników wiki uwzględniających proweniencję
- użyj `memory_search corpus=all`, gdy chcesz, aby współdzielone wyszukiwanie obejmowało obie warstwy
Jeśli tryb bridge zgłasza zero wyeksportowanych artefaktów, Plugin Active Memory
obecnie jeszcze nie udostępnia publicznych danych wejściowych bridge. Najpierw uruchom `openclaw wiki doctor`,
a następnie potwierdź, że Plugin Active Memory obsługuje publiczne artefakty.
## Tryby sejfu
@ -62,37 +82,35 @@ bezpośredniego dostępu do strony, użyj zamiast tego natywnych narzędzi wiki.
Własny sejf, własne źródła, bez zależności od `memory-core`.
Użyj tego trybu, jeśli chcesz, aby wiki była własnym, starannie utrzymywanym
magazynem wiedzy.
Użyj tego, gdy chcesz, aby wiki było własnym kuratorowanym magazynem wiedzy.
### `bridge`
Odczytuje publiczne artefakty pamięci i zdarzenia pamięci z aktywnej wtyczki
pamięci za pośrednictwem publicznych punktów integracji plugin SDK.
Odczytuje publiczne artefakty pamięci i zdarzenia pamięci z Pluginu Active Memory
przez publiczne seamy Plugin SDK.
Użyj tego trybu, jeśli chcesz, aby wiki kompilowała i porządkowała
wyeksportowane artefakty wtyczki pamięci bez sięgania do prywatnych elementów
wewnętrznych wtyczki.
Użyj tego, gdy chcesz, aby wiki kompilowało i porządkowało wyeksportowane artefakty
Pluginu pamięci bez sięgania do prywatnych wnętrzności Pluginu.
Tryb mostu może indeksować:
Tryb bridge może indeksować:
- wyeksportowane artefakty pamięci
- raporty ze snów
- raporty Dreaming
- notatki dzienne
- pliki główne pamięci
- dzienniki zdarzeń pamięci
- logi zdarzeń pamięci
### `unsafe-local`
Jawna furtka ucieczki dla lokalnych prywatnych ścieżek na tej samej maszynie.
Jawna furtka awaryjna dla lokalnych prywatnych ścieżek na tym samym komputerze.
Ten tryb jest celowo eksperymentalny i nieprzenośny. Używaj go tylko wtedy, gdy
rozumiesz granicę zaufania i konkretnie potrzebujesz lokalnego dostępu do
systemu plików, którego tryb mostu nie może zapewnić.
rozumiesz granicę zaufania i konkretnie potrzebujesz lokalnego dostępu do systemu plików,
którego tryb bridge nie może zapewnić.
## Układ sejfu
Wtyczka inicjalizuje sejf w ten sposób:
Plugin inicjalizuje sejf w taki sposób:
```text
<vault>/
@ -110,21 +128,19 @@ Wtyczka inicjalizuje sejf w ten sposób:
.openclaw-wiki/
```
Zarządzana zawartość pozostaje wewnątrz wygenerowanych bloków. Bloki notatek
tworzonych przez ludzi są zachowywane.
Zarządzana zawartość pozostaje wewnątrz wygenerowanych bloków. Bloki notatek tworzonych przez ludzi są zachowywane.
Główne grupy stron to:
- `sources/` dla zaimportowanego surowego materiału i stron opartych na trybie mostu
- `sources/` dla zaimportowanych surowych materiałów i stron wspieranych przez bridge
- `entities/` dla trwałych rzeczy, osób, systemów, projektów i obiektów
- `concepts/` dla idei, abstrakcji, wzorców i zasad
- `concepts/` dla idei, abstrakcji, wzorców i polityk
- `syntheses/` dla skompilowanych podsumowań i utrzymywanych zestawień
- `reports/` dla wygenerowanych pulpitów
- `reports/` dla wygenerowanych dashboardów
## Uporządkowane twierdzenia i dowody
## Ustrukturyzowane twierdzenia i dowody
Strony mogą zawierać uporządkowane `claims` we frontmatter, a nie tylko
swobodny tekst.
Strony mogą zawierać ustrukturyzowany frontmatter `claims`, a nie tylko tekst swobodny.
Każde twierdzenie może zawierać:
@ -135,7 +151,7 @@ Każde twierdzenie może zawierać:
- `evidence[]`
- `updatedAt`
Elementy dowodów mogą zawierać:
Wpisy dowodowe mogą zawierać:
- `sourceId`
- `path`
@ -145,31 +161,29 @@ Elementy dowodów mogą zawierać:
- `updatedAt`
To właśnie sprawia, że wiki działa bardziej jak warstwa przekonań niż pasywny
zrzut notatek. Twierdzenia mogą być śledzone, oceniane, kwestionowane i
rozstrzygane z odniesieniem do źródeł.
zrzut notatek. Twierdzenia mogą być śledzone, oceniane, kwestionowane i rozstrzygane z powrotem do źródeł.
## Potok kompilacji
## Pipeline kompilacji
Krok kompilacji odczytuje strony wiki, normalizuje podsumowania i zapisuje
stabilne artefakty przeznaczone dla maszyn w:
Krok kompilacji odczytuje strony wiki, normalizuje podsumowania i emituje stabilne
artefakty skierowane do maszyn w:
- `.openclaw-wiki/cache/agent-digest.json`
- `.openclaw-wiki/cache/claims.jsonl`
Te skróty istnieją po to, aby agenci i kod środowiska uruchomieniowego nie
musieli analizować stron Markdown.
Te digests istnieją po to, aby agenci i kod runtime nie musieli analizować stron
Markdown.
Skompilowane dane wyjściowe obsługują także:
Skompilowane dane wyjściowe zasilają także:
- pierwszy etap indeksowania wiki dla przepływów search/get
- wyszukiwanie po `claim-id` z powrotem do strony właściciela
- indeksowanie wiki pierwszego przebiegu dla przepływów search/get
- wyszukiwanie `claim-id` z powrotem do strony właściciela
- kompaktowe uzupełnienia promptów
- generowanie raportów i pulpitów
- generowanie raportów/dashboardów
## Pulpity i raporty stanu
## Dashboardy i raporty zdrowia
Gdy włączone jest `render.createDashboards`, kompilacja utrzymuje pulpity w
`reports/`.
Gdy włączone jest `render.createDashboards`, kompilacja utrzymuje dashboardy w `reports/`.
Wbudowane raporty obejmują:
@ -183,19 +197,19 @@ Raporty te śledzą takie rzeczy jak:
- klastry notatek o sprzecznościach
- klastry konkurujących twierdzeń
- twierdzenia bez uporządkowanych dowodów
- strony i twierdzenia o niskiej pewności
- twierdzenia bez ustrukturyzowanych dowodów
- strony i twierdzenia o niskim poziomie pewności
- nieaktualność lub nieznaną świeżość
- strony z nierozstrzygniętymi pytaniami
- strony z nierozwiązanymi pytaniami
## Wyszukiwanie i pobieranie
## Search i retrieval
`memory-wiki` obsługuje dwa backendy wyszukiwania:
`memory-wiki` obsługuje dwa backendy search:
- `shared`: używaj współdzielonego przepływu wyszukiwania pamięci, gdy jest dostępny
- `shared`: użyj współdzielonego przepływu wyszukiwania pamięci, gdy jest dostępny
- `local`: przeszukuj wiki lokalnie
Obsługuje też trzy korpusy:
Obsługuje także trzy corpora:
- `wiki`
- `memory`
@ -203,20 +217,20 @@ Obsługuje też trzy korpusy:
Ważne zachowanie:
- `wiki_search` i `wiki_get` używają skompilowanych skrótów jako pierwszego etapu, gdy to możliwe
- `wiki_search` i `wiki_get` używają skompilowanych digestów jako pierwszego przebiegu, gdy to możliwe
- identyfikatory twierdzeń mogą być rozwiązywane z powrotem do strony właściciela
- kwestionowane/nieaktualne/świeże twierdzenia wpływają na ranking
- etykiety pochodzenia mogą być zachowywane w wynikach
- etykiety proweniencji mogą przetrwać do wyników
Praktyczna zasada:
- używaj `memory_search corpus=all` do jednego szerokiego przebiegu przywoływania
- używaj `wiki_search` + `wiki_get`, gdy zależy Ci na rankingu specyficznym dla wiki,
pochodzeniu lub strukturze przekonań na poziomie strony
- użyj `memory_search corpus=all` dla jednego szerokiego przebiegu recall
- użyj `wiki_search` + `wiki_get`, gdy zależy Ci na rankingu specyficznym dla wiki,
proweniencji lub strukturze przekonań na poziomie strony
## Narzędzia agenta
Wtyczka rejestruje następujące narzędzia:
Plugin rejestruje następujące narzędzia:
- `wiki_status`
- `wiki_search`
@ -224,34 +238,32 @@ Wtyczka rejestruje następujące narzędzia:
- `wiki_apply`
- `wiki_lint`
Co robią:
Ich działanie:
- `wiki_status`: bieżący tryb sejfu, stan, dostępność Obsidian CLI
- `wiki_search`: przeszukiwanie stron wiki oraz, po skonfigurowaniu, współdzielonych korpusów pamięci
- `wiki_get`: odczyt strony wiki według id/ścieżki lub przejście awaryjne do współdzielonego korpusu pamięci
- `wiki_apply`: wąskie mutacje syntez/metadanych bez swobodnej ingerencji w stronę
- `wiki_lint`: kontrole strukturalne, luki w pochodzeniu, sprzeczności, otwarte pytania
- `wiki_status`: bieżący tryb sejfu, stan zdrowia, dostępność Obsidian CLI
- `wiki_search`: przeszukuje strony wiki i, gdy skonfigurowano, współdzielone corpora pamięci
- `wiki_get`: odczytuje stronę wiki według id/ścieżki lub wraca do współdzielonego corpus pamięci
- `wiki_apply`: wąskie mutacje syntez/metadanych bez swobodnej edycji strony
- `wiki_lint`: kontrole strukturalne, luki proweniencji, sprzeczności, otwarte pytania
Wtyczka rejestruje także niewyłączny dodatek do korpusu pamięci, dzięki czemu
współdzielone `memory_search` i `memory_get` mogą sięgać do wiki, gdy aktywna
wtyczka pamięci obsługuje wybór korpusu.
Plugin rejestruje także niewyłączny supplement corpus pamięci, dzięki czemu współdzielone
`memory_search` i `memory_get` mogą sięgać do wiki, gdy Plugin Active Memory obsługuje wybór corpus.
## Zachowanie promptów i kontekstu
## Zachowanie promptu i kontekstu
Gdy włączone jest `context.includeCompiledDigestPrompt`, sekcje promptów pamięci
dołączają kompaktowy skompilowany zrzut z `agent-digest.json`.
dołączają kompaktowy skompilowany snapshot z `agent-digest.json`.
Ten zrzut jest celowo mały i bogaty w sygnał:
Ten snapshot jest celowo mały i bogaty w sygnał:
- tylko najważniejsze strony
- tylko najważniejsze twierdzenia
- liczba sprzeczności
- liczba pytań
- kwalifikatory pewności/świeżości
- kwalifikatory confidence/freshness
Jest to opcjonalne, ponieważ zmienia kształt promptu i jest przydatne głównie
dla silników kontekstu lub starszego składania promptów, które jawnie
wykorzystują dodatki pamięci.
Jest to opcjonalne, ponieważ zmienia kształt promptu i jest głównie przydatne dla
silników kontekstu lub starszego składania promptów, które jawnie korzystają z supplementów pamięci.
## Konfiguracja
@ -311,17 +323,58 @@ Kluczowe przełączniki:
- `vaultMode`: `isolated`, `bridge`, `unsafe-local`
- `vault.renderMode`: `native` lub `obsidian`
- `bridge.readMemoryArtifacts`: import publicznych artefaktów aktywnej wtyczki pamięci
- `bridge.followMemoryEvents`: uwzględnianie dzienników zdarzeń w trybie mostu
- `bridge.readMemoryArtifacts`: importuj publiczne artefakty Pluginu Active Memory
- `bridge.followMemoryEvents`: uwzględniaj logi zdarzeń w trybie bridge
- `search.backend`: `shared` lub `local`
- `search.corpus`: `wiki`, `memory` lub `all`
- `context.includeCompiledDigestPrompt`: dołączanie kompaktowego zrzutu skrótu do sekcji promptów pamięci
- `render.createBacklinks`: generowanie deterministycznych bloków powiązań
- `render.createDashboards`: generowanie stron pulpitów
- `context.includeCompiledDigestPrompt`: dołącz kompaktowy snapshot digestu do sekcji promptów pamięci
- `render.createBacklinks`: generuj deterministyczne bloki powiązanych treści
- `render.createDashboards`: generuj strony dashboardów
### Przykład: QMD + tryb bridge
Użyj tego, gdy chcesz używać QMD do recall, a `memory-wiki` jako utrzymywanej
warstwy wiedzy:
```json5
{
memory: {
backend: "qmd",
"memory-wiki": {
enabled: true,
config: {
vaultMode: "bridge",
bridge: {
enabled: true,
readMemoryArtifacts: true,
indexDreamReports: true,
indexDailyNotes: true,
indexMemoryRoot: true,
followMemoryEvents: true,
},
search: {
backend: "shared",
corpus: "all",
},
context: {
includeCompiledDigestPrompt: false,
},
},
},
},
},
}
```
Dzięki temu:
- QMD odpowiada za recall w Active Memory
- `memory-wiki` koncentruje się na skompilowanych stronach i dashboardach
- kształt promptu pozostaje niezmieniony, dopóki celowo nie włączysz promptów skompilowanego digestu
## CLI
`memory-wiki` udostępnia również interfejs CLI najwyższego poziomu:
`memory-wiki` udostępnia także powierzchnię najwyższego poziomu w CLI:
```bash
openclaw wiki status
@ -337,36 +390,36 @@ openclaw wiki bridge import
openclaw wiki obsidian status
```
Pełne omówienie poleceń znajdziesz w [CLI: wiki](/cli/wiki).
Pełne odniesienie do komend znajdziesz w [CLI: wiki](/cli/wiki).
## Obsługa Obsidian
Gdy `vault.renderMode` ma wartość `obsidian`, wtyczka zapisuje Markdown
przyjazny dla Obsidian i może opcjonalnie używać oficjalnego `obsidian` CLI.
Gdy `vault.renderMode` ma wartość `obsidian`, Plugin zapisuje Markdown przyjazny dla Obsidian
i może opcjonalnie używać oficjalnego CLI `obsidian`.
Obsługiwane przepływy pracy obejmują:
- sprawdzanie stanu
- sprawdzanie statusu
- przeszukiwanie sejfu
- otwieranie strony
- wywoływanie polecenia Obsidian
- przechodzenie do notatki dziennej
- wywoływanie komendy Obsidian
- przecie do notatki dziennej
To opcjonalne. Wiki nadal działa w trybie natywnym bez Obsidian.
Jest to opcjonalne. Wiki nadal działa w trybie natywnym bez Obsidian.
## Zalecany przepływ pracy
1. Zachowaj aktywną wtyczkę pamięci do przywoływania/promowania/śnienia.
1. Zachowaj swój Plugin Active Memory dla recall/promotion/Dreaming.
2. Włącz `memory-wiki`.
3. Zacznij od trybu `isolated`, chyba że jawnie chcesz używać trybu mostu.
4. Używaj `wiki_search` / `wiki_get`, gdy pochodzenie ma znaczenie.
3. Zacznij od trybu `isolated`, chyba że jawnie chcesz trybu bridge.
4. Używaj `wiki_search` / `wiki_get`, gdy proweniencja ma znaczenie.
5. Używaj `wiki_apply` do wąskich syntez lub aktualizacji metadanych.
6. Uruchamiaj `wiki_lint` po istotnych zmianach.
7. Włącz pulpity, jeśli chcesz mieć widoczność nieaktualności/sprzeczności.
7. Włącz dashboardy, jeśli chcesz mieć widoczność nieaktualności/sprzeczności.
## Powiązane dokumenty
## Powiązana dokumentacja
- [Przegląd pamięci](/pl/concepts/memory)
- [Memory Overview](/pl/concepts/memory)
- [CLI: memory](/cli/memory)
- [CLI: wiki](/cli/wiki)
- [Przegląd Plugin SDK](/pl/plugins/sdk-overview)
- [Plugin SDK overview](/pl/plugins/sdk-overview)

View File

@ -5,75 +5,117 @@ read_when:
summary: Generowanie wideo Wan w Alibaba Model Studio w OpenClaw
title: Alibaba Model Studio
x-i18n:
generated_at: "2026-04-06T03:10:18Z"
generated_at: "2026-04-12T23:28:49Z"
model: gpt-5.4
provider: openai
source_hash: 97a1eddc7cbd816776b9368f2a926b5ef9ee543f08d151a490023736f67dc635
source_hash: a6e97d929952cdba7740f5ab3f6d85c18286b05596a4137bf80bbc8b54f32662
source_path: providers/alibaba.md
workflow: 15
---
# Alibaba Model Studio
OpenClaw dostarcza wbudowanego dostawcę generowania wideo `alibaba` dla modeli Wan w
Alibaba Model Studio / DashScope.
OpenClaw zawiera dołączonego dostawcę generowania wideo `alibaba` dla modeli Wan w Alibaba Model Studio / DashScope.
- Dostawca: `alibaba`
- Preferowane uwierzytelnianie: `MODELSTUDIO_API_KEY`
- Akceptowane również: `DASHSCOPE_API_KEY`, `QWEN_API_KEY`
- API: asynchroniczne generowanie wideo DashScope / Model Studio
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
```bash
openclaw onboard --auth-choice qwen-standard-api-key
```
2. Ustaw domyślny model wideo:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "alibaba/wan2.6-t2v",
<Steps>
<Step title="Ustaw klucz API">
```bash
openclaw onboard --auth-choice qwen-standard-api-key
```
</Step>
<Step title="Ustaw domyślny model generowania wideo">
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "alibaba/wan2.6-t2v",
},
},
},
},
},
}
```
}
```
</Step>
<Step title="Sprawdź, czy dostawca jest dostępny">
```bash
openclaw models list --provider alibaba
```
</Step>
</Steps>
<Note>
Każdy z akceptowanych kluczy uwierzytelniających (`MODELSTUDIO_API_KEY`, `DASHSCOPE_API_KEY`, `QWEN_API_KEY`) będzie działać. Opcja onboardingu `qwen-standard-api-key` konfiguruje współdzielone poświadczenie DashScope.
</Note>
## Wbudowane modele Wan
Wbudowany dostawca `alibaba` rejestruje obecnie:
Dołączony dostawca `alibaba` obecnie rejestruje:
- `alibaba/wan2.6-t2v`
- `alibaba/wan2.6-i2v`
- `alibaba/wan2.6-r2v`
- `alibaba/wan2.6-r2v-flash`
- `alibaba/wan2.7-r2v`
| Odwołanie modelu | Tryb |
| ------------------------- | ------------------------- |
| `alibaba/wan2.6-t2v` | Tekst na wideo |
| `alibaba/wan2.6-i2v` | Obraz na wideo |
| `alibaba/wan2.6-r2v` | Referencja na wideo |
| `alibaba/wan2.6-r2v-flash`| Referencja na wideo (szybko) |
| `alibaba/wan2.7-r2v` | Referencja na wideo |
## Bieżące limity
## Obecne ograniczenia
- Maksymalnie **1** wyjściowe wideo na żądanie
- Maksymalnie **1** obraz wejściowy
- Maksymalnie **4** wejściowe pliki wideo
- Maksymalnie **10 sekund** długości
- Obsługuje `size`, `aspectRatio`, `resolution`, `audio` i `watermark`
- Tryb obrazu/wideo referencyjnego wymaga obecnie **zdalnych adresów URL http(s)**
| Parametr | Limit |
| --------------------- | --------------------------------------------------------- |
| Wyjściowe wideo | Maksymalnie **1** na żądanie |
| Obrazy wejściowe | Maksymalnie **1** |
| Wejściowe wideo | Maksymalnie **4** |
| Czas trwania | Maksymalnie **10 sekund** |
| Obsługiwane kontrolki | `size`, `aspectRatio`, `resolution`, `audio`, `watermark` |
| Obraz/wideo referencyjne | Tylko zdalne adresy URL `http(s)` |
## Relacja z Qwen
<Warning>
Tryb obrazu/wideo referencyjnego obecnie wymaga **zdalnych adresów URL `http(s)`**. Lokalne ścieżki plików nie są obsługiwane dla wejść referencyjnych.
</Warning>
Wbudowany dostawca `qwen` również używa hostowanych przez Alibaba endpointów DashScope do
generowania wideo Wan. Użyj:
## Konfiguracja zaawansowana
- `qwen/...`, gdy chcesz używać kanonicznej powierzchni dostawcy Qwen
- `alibaba/...`, gdy chcesz używać bezpośredniej, należącej do dostawcy powierzchni wideo Wan
<AccordionGroup>
<Accordion title="Relacja do Qwen">
Dołączony dostawca `qwen` również używa hostowanych przez Alibaba endpointów DashScope do generowania wideo Wan. Użyj:
- `qwen/...`, gdy chcesz korzystać z kanonicznej powierzchni dostawcy Qwen
- `alibaba/...`, gdy chcesz korzystać z bezpośredniej, należącej do dostawcy powierzchni wideo Wan
Więcej szczegółów znajdziesz w [dokumentacji dostawcy Qwen](/pl/providers/qwen).
</Accordion>
<Accordion title="Priorytet kluczy uwierzytelniających">
OpenClaw sprawdza klucze uwierzytelniające w tej kolejności:
1. `MODELSTUDIO_API_KEY` (preferowany)
2. `DASHSCOPE_API_KEY`
3. `QWEN_API_KEY`
Każdy z nich uwierzytelni dostawcę `alibaba`.
</Accordion>
</AccordionGroup>
## Powiązane
- [Generowanie wideo](/tools/video-generation)
- [Qwen](/pl/providers/qwen)
- [Dokumentacja konfiguracji](/pl/gateway/configuration-reference#agent-defaults)
<CardGroup cols={2}>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Współdzielone parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Qwen" href="/pl/providers/qwen" icon="microchip">
Konfiguracja dostawcy Qwen i integracja z DashScope.
</Card>
<Card title="Referencja konfiguracji" href="/pl/gateway/configuration-reference#agent-defaults" icon="gear">
Domyślne ustawienia agenta i konfiguracja modeli.
</Card>
</CardGroup>

View File

@ -1,96 +1,127 @@
---
read_when:
- Chcesz używać modeli Anthropic w OpenClaw
summary: Używaj Anthropic Claude przez klucze API lub Claude CLI w OpenClaw
summary: Używaj Anthropic Claude za pomocą kluczy API lub Claude CLI w OpenClaw
title: Anthropic
x-i18n:
generated_at: "2026-04-07T09:48:55Z"
generated_at: "2026-04-12T23:29:04Z"
model: gpt-5.4
provider: openai
source_hash: 423928fd36c66729985208d4d3f53aff1f94f63b908df85072988bdc41d5cf46
source_hash: 5e3dda5f98ade9d4c3841888103bfb43d59e075d358a701ed0ae3ffb8d5694a7
source_path: providers/anthropic.md
workflow: 15
---
# Anthropic (Claude)
Anthropic tworzy rodzinę modeli **Claude** i udostępnia dostęp przez API oraz
Claude CLI. W OpenClaw obsługiwane są zarówno klucze API Anthropic, jak i ponowne
wykorzystanie Claude CLI. Istniejące starsze profile tokenów Anthropic są nadal
respektowane w runtime, jeśli są już skonfigurowane.
Anthropic tworzy rodzinę modeli **Claude**. OpenClaw obsługuje dwie ścieżki uwierzytelniania:
- **Klucz API** — bezpośredni dostęp do API Anthropic z rozliczaniem zależnym od użycia (modele `anthropic/*`)
- **Claude CLI** — ponowne wykorzystanie istniejącego logowania Claude CLI na tym samym hoście
<Warning>
Pracownicy Anthropic powiedzieli nam, że użycie Claude CLI w stylu OpenClaw jest ponownie dozwolone, więc
OpenClaw traktuje ponowne użycie Claude CLI i użycie `claude -p` jako usankcjonowane dla tej
integracji, chyba że Anthropic opublikuje nową politykę.
Pracownicy Anthropic poinformowali nas, że użycie Claude CLI w stylu OpenClaw jest znowu dozwolone, więc OpenClaw traktuje ponowne wykorzystanie Claude CLI i użycie `claude -p` jako dozwolone, chyba że Anthropic opublikuje nową politykę.
Dla długotrwale działających hostów gateway klucze API Anthropic nadal są najjaśniejszą i
najbardziej przewidywalną ścieżką produkcyjną. Jeśli już używasz Claude CLI na hoście,
OpenClaw może bezpośrednio wykorzystać to logowanie.
W przypadku długotrwale działających hostów Gateway klucze API Anthropic nadal są najjaśniejszą i najbardziej przewidywalną ścieżką produkcyjną.
Obecna publiczna dokumentacja Anthropic:
Aktualna publiczna dokumentacja Anthropic:
- [Claude Code CLI reference](https://code.claude.com/docs/en/cli-reference)
- [Claude Agent SDK overview](https://platform.claude.com/docs/en/agent-sdk/overview)
- [Referencja Claude Code CLI](https://code.claude.com/docs/en/cli-reference)
- [Przegląd Claude Agent SDK](https://platform.claude.com/docs/en/agent-sdk/overview)
- [Używanie Claude Code z planem Pro lub Max](https://support.claude.com/en/articles/11145838-using-claude-code-with-your-pro-or-max-plan)
- [Używanie Claude Code z planem Team lub Enterprise](https://support.anthropic.com/en/articles/11845131-using-claude-code-with-your-team-or-enterprise-plan/)
</Warning>
- [Using Claude Code with your Pro or Max plan](https://support.claude.com/en/articles/11145838-using-claude-code-with-your-pro-or-max-plan)
- [Using Claude Code with your Team or Enterprise plan](https://support.anthropic.com/en/articles/11845131-using-claude-code-with-your-team-or-enterprise-plan/)
## Pierwsze kroki
Jeśli chcesz mieć najjaśniejszą ścieżkę rozliczeń, użyj klucza API Anthropic.
OpenClaw obsługuje też inne opcje w stylu subskrypcyjnym, w tym [OpenAI
Codex](/pl/providers/openai), [Qwen Cloud Coding Plan](/pl/providers/qwen),
[MiniMax Coding Plan](/pl/providers/minimax) oraz [Z.AI / GLM Coding
Plan](/pl/providers/glm).
</Warning>
<Tabs>
<Tab title="Klucz API">
**Najlepsze do:** standardowego dostępu do API i rozliczania zależnego od użycia.
## Opcja A: klucz API Anthropic
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API w [Anthropic Console](https://console.anthropic.com/).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard
# wybierz: Anthropic API key
```
**Najlepsze dla:** standardowego dostępu do API i rozliczania według użycia.
Utwórz swój klucz API w Anthropic Console.
Albo przekaż klucz bezpośrednio:
### Konfiguracja CLI
```bash
openclaw onboard --anthropic-api-key "$ANTHROPIC_API_KEY"
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider anthropic
```
</Step>
</Steps>
```bash
openclaw onboard
# choose: Anthropic API key
### Przykład konfiguracji
# or non-interactive
openclaw onboard --anthropic-api-key "$ANTHROPIC_API_KEY"
```
```json5
{
env: { ANTHROPIC_API_KEY: "sk-ant-..." },
agents: { defaults: { model: { primary: "anthropic/claude-opus-4-6" } } },
}
```
### Fragment konfiguracji Anthropic
</Tab>
```json5
{
env: { ANTHROPIC_API_KEY: "sk-ant-..." },
agents: { defaults: { model: { primary: "anthropic/claude-opus-4-6" } } },
}
```
<Tab title="Claude CLI">
**Najlepsze do:** ponownego wykorzystania istniejącego logowania Claude CLI bez osobnego klucza API.
<Steps>
<Step title="Upewnij się, że Claude CLI jest zainstalowane i zalogowane">
Sprawdź za pomocą:
```bash
claude --version
```
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard
# wybierz: Claude CLI
```
OpenClaw wykrywa i ponownie wykorzystuje istniejące poświadczenia Claude CLI.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider anthropic
```
</Step>
</Steps>
<Note>
Szczegóły konfiguracji i działania backendu Claude CLI znajdują się w [CLI Backends](/pl/gateway/cli-backends).
</Note>
<Tip>
Jeśli chcesz mieć najjaśniejszą ścieżkę rozliczania, zamiast tego użyj klucza API Anthropic. OpenClaw obsługuje też opcje subskrypcyjne z [OpenAI Codex](/pl/providers/openai), [Qwen Cloud](/pl/providers/qwen), [MiniMax](/pl/providers/minimax) i [Z.AI / GLM](/pl/providers/glm).
</Tip>
</Tab>
</Tabs>
## Domyślne ustawienia thinking (Claude 4.6)
- Modele Anthropic Claude 4.6 domyślnie używają `adaptive` thinking w OpenClaw, gdy nie ustawiono jawnie poziomu thinking.
- Możesz to nadpisać dla pojedynczej wiadomości (`/think:<level>`) lub w parametrach modelu:
`agents.defaults.models["anthropic/<model>"].params.thinking`.
- Powiązana dokumentacja Anthropic:
- [Adaptive thinking](https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking)
- [Extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)
Modele Claude 4.6 domyślnie używają `adaptive` thinking w OpenClaw, gdy nie ustawiono jawnego poziomu thinking.
## Tryb fast (Anthropic API)
Wspólny przełącznik `/fast` w OpenClaw obsługuje też bezpośredni publiczny ruch Anthropic, w tym żądania uwierzytelniane kluczem API i OAuth wysyłane do `api.anthropic.com`.
- `/fast on` mapuje do `service_tier: "auto"`
- `/fast off` mapuje do `service_tier: "standard_only"`
- Domyślna konfiguracja:
Nadpisz dla pojedynczej wiadomości za pomocą `/think:<level>` albo w parametrach modelu:
```json5
{
agents: {
defaults: {
models: {
"anthropic/claude-sonnet-4-6": {
params: { fastMode: true },
"anthropic/claude-opus-4-6": {
params: { thinking: "adaptive" },
},
},
},
@ -98,25 +129,21 @@ Wspólny przełącznik `/fast` w OpenClaw obsługuje też bezpośredni publiczny
}
```
Ważne ograniczenia:
<Note>
Powiązana dokumentacja Anthropic:
- [Adaptive thinking](https://platform.claude.com/docs/en/build-with-claude/adaptive-thinking)
- [Extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking)
</Note>
- OpenClaw wstrzykuje poziomy usług Anthropic tylko dla bezpośrednich żądań do `api.anthropic.com`. Jeśli kierujesz `anthropic/*` przez proxy lub gateway, `/fast` pozostawia `service_tier` bez zmian.
- Jawne parametry modelu Anthropic `serviceTier` lub `service_tier` mają pierwszeństwo przed domyślnym `/fast`, gdy ustawiono oba.
- Anthropic raportuje efektywny poziom w odpowiedzi pod `usage.service_tier`. Na kontach bez pojemności Priority Tier wartość `service_tier: "auto"` może nadal rozwiązać się do `standard`.
## Cache promptów
## Prompt caching (Anthropic API)
OpenClaw obsługuje funkcję cache promptów Anthropic dla uwierzytelniania kluczem API.
OpenClaw obsługuje funkcję prompt caching od Anthropic. To jest **tylko dla API**; starsze uwierzytelnianie tokenami Anthropic nie respektuje ustawień cache.
### Konfiguracja
Użyj parametru `cacheRetention` w konfiguracji modelu:
| Value | Czas trwania cache | Opis |
| ------- | ------------------ | ---------------------------- |
| `none` | Brak cache | Wyłącza prompt caching |
| `short` | 5 minut | Domyślnie dla auth API Key |
| `long` | 1 godzina | Rozszerzony cache |
| Wartość | Czas trwania cache | Opis |
| ------------------- | ------------------ | ---------------------------------------------- |
| `"short"` (domyślne) | 5 minut | Stosowane automatycznie dla uwierzytelniania kluczem API |
| `"long"` | 1 godzina | Rozszerzony cache |
| `"none"` | Brak cache | Wyłącza cache promptów |
```json5
{
@ -132,122 +159,155 @@ Użyj parametru `cacheRetention` w konfiguracji modelu:
}
```
### Wartości domyślne
<AccordionGroup>
<Accordion title="Nadpisania cache dla poszczególnych agentów">
Użyj parametrów na poziomie modelu jako wartości bazowej, a następnie nadpisz konkretne agenty przez `agents.list[].params`:
Gdy używasz uwierzytelniania kluczem API Anthropic, OpenClaw automatycznie stosuje `cacheRetention: "short"` (5-minutowy cache) dla wszystkich modeli Anthropic. Możesz to nadpisać, jawnie ustawiając `cacheRetention` w swojej konfiguracji.
```json5
{
agents: {
defaults: {
model: { primary: "anthropic/claude-opus-4-6" },
models: {
"anthropic/claude-opus-4-6": {
params: { cacheRetention: "long" },
},
},
},
list: [
{ id: "research", default: true },
{ id: "alerts", params: { cacheRetention: "none" } },
],
},
}
```
### Nadpisania cacheRetention per agent
Kolejność scalania konfiguracji:
Użyj parametrów na poziomie modelu jako bazowego ustawienia, a następnie nadpisuj konkretne agenty przez `agents.list[].params`.
1. `agents.defaults.models["provider/model"].params`
2. `agents.list[].params` (dopasowane `id`, nadpisuje według klucza)
```json5
{
agents: {
defaults: {
model: { primary: "anthropic/claude-opus-4-6" },
models: {
"anthropic/claude-opus-4-6": {
params: { cacheRetention: "long" }, // baseline for most agents
Dzięki temu jeden agent może zachować długotrwały cache, podczas gdy inny agent na tym samym modelu wyłączy cache dla skokowego ruchu o niskim poziomie ponownego użycia.
</Accordion>
<Accordion title="Uwagi o Claude na Bedrock">
- Modele Anthropic Claude na Bedrock (`amazon-bedrock/*anthropic.claude*`) akceptują przekazanie `cacheRetention`, jeśli jest skonfigurowane.
- Modele Bedrock inne niż Anthropic są w czasie działania wymuszane na `cacheRetention: "none"`.
- Inteligentne ustawienia domyślne dla klucza API ustawiają też `cacheRetention: "short"` dla odwołań do Claude na Bedrock, gdy nie ustawiono jawnej wartości.
</Accordion>
</AccordionGroup>
## Konfiguracja zaawansowana
<AccordionGroup>
<Accordion title="Tryb fast">
Wspólny przełącznik `/fast` w OpenClaw obsługuje bezpośredni ruch Anthropic (klucz API i OAuth do `api.anthropic.com`).
| Polecenie | Mapuje na |
|---------|---------|
| `/fast on` | `service_tier: "auto"` |
| `/fast off` | `service_tier: "standard_only"` |
```json5
{
agents: {
defaults: {
models: {
"anthropic/claude-sonnet-4-6": {
params: { fastMode: true },
},
},
},
},
},
list: [
{ id: "research", default: true },
{ id: "alerts", params: { cacheRetention: "none" } }, // override for this agent only
],
},
}
```
}
```
Kolejność scalania konfiguracji dla parametrów związanych z cache:
<Note>
- Wstrzykiwane tylko dla bezpośrednich żądań do `api.anthropic.com`. Trasy proxy pozostawiają `service_tier` bez zmian.
- Jawne parametry `serviceTier` lub `service_tier` mają pierwszeństwo przed `/fast`, gdy ustawione są oba.
- Na kontach bez pojemności Priority Tier `service_tier: "auto"` może zostać rozwiązane jako `standard`.
</Note>
1. `agents.defaults.models["provider/model"].params`
2. `agents.list[].params` (pasujące `id`, nadpisuje według klucza)
</Accordion>
Dzięki temu jeden agent może zachować długotrwały cache, podczas gdy inny agent na tym samym modelu wyłącza cache, aby uniknąć kosztów zapisu przy ruchu skokowym lub o małym poziomie ponownego użycia.
<Accordion title="Rozumienie mediów (obraz i PDF)">
Dołączony Plugin Anthropic rejestruje rozumienie obrazów i plików PDF. OpenClaw
automatycznie rozwiązuje możliwości mediów na podstawie skonfigurowanego uwierzytelniania Anthropic — nie jest potrzebna dodatkowa konfiguracja.
### Uwagi o Bedrock Claude
| Właściwość | Wartość |
| ----------------- | -------------------- |
| Model domyślny | `claude-opus-4-6` |
| Obsługiwane wejście | Obrazy, dokumenty PDF |
- Modele Anthropic Claude w Bedrock (`amazon-bedrock/*anthropic.claude*`) akceptują przekazywanie `cacheRetention`, jeśli jest skonfigurowane.
- Modele Bedrock inne niż Anthropic są wymuszane w runtime do `cacheRetention: "none"`.
- Inteligentne wartości domyślne dla kluczy API Anthropic ustawiają także `cacheRetention: "short"` dla odwołań do modeli Claude-on-Bedrock, gdy nie ustawiono jawnej wartości.
Gdy do rozmowy zostanie dołączony obraz lub plik PDF, OpenClaw automatycznie
kieruje go przez dostawcę rozumienia mediów Anthropic.
## Okno kontekstu 1M (Anthropic beta)
</Accordion>
Okno kontekstu 1M Anthropic jest objęte betą. W OpenClaw włącz je per model
przez `params.context1m: true` dla obsługiwanych modeli Opus/Sonnet.
<Accordion title="Okno kontekstu 1M (beta)">
Okno kontekstu 1M w Anthropic jest dostępne za bramką beta. Włącz je dla wybranego modelu:
```json5
{
agents: {
defaults: {
models: {
"anthropic/claude-opus-4-6": {
params: { context1m: true },
```json5
{
agents: {
defaults: {
models: {
"anthropic/claude-opus-4-6": {
params: { context1m: true },
},
},
},
},
},
},
}
```
}
```
OpenClaw mapuje to do `anthropic-beta: context-1m-2025-08-07` w żądaniach
Anthropic.
OpenClaw mapuje to w żądaniach na `anthropic-beta: context-1m-2025-08-07`.
To aktywuje się tylko wtedy, gdy `params.context1m` jest jawnie ustawione na `true` dla
tego modelu.
<Warning>
Wymaga dostępu do długiego kontekstu na Twoim poświadczeniu Anthropic. Starsze uwierzytelnianie tokenem (`sk-ant-oat-*`) jest odrzucane dla żądań kontekstu 1M — OpenClaw zapisuje ostrzeżenie w logach i wraca do standardowego okna kontekstu.
</Warning>
Wymaganie: Anthropic musi zezwalać na użycie długiego kontekstu dla tych poświadczeń.
Uwaga: Anthropic obecnie odrzuca żądania beta `context-1m-*` przy użyciu
starszego uwierzytelniania tokenami Anthropic (`sk-ant-oat-*`). Jeśli skonfigurujesz
`context1m: true` w tym starszym trybie uwierzytelniania, OpenClaw zapisze ostrzeżenie w logach i
wróci do standardowego okna kontekstu, pomijając nagłówek beta context1m
przy jednoczesnym zachowaniu wymaganych bet OAuth.
## Backend Claude CLI
Dołączony backend Anthropic `claude-cli` jest obsługiwany w OpenClaw.
- Pracownicy Anthropic powiedzieli nam, że to użycie jest ponownie dozwolone.
- OpenClaw dlatego traktuje ponowne użycie Claude CLI i użycie `claude -p` jako
usankcjonowane dla tej integracji, chyba że Anthropic opublikuje nową politykę.
- Klucze API Anthropic pozostają najjaśniejszą ścieżką produkcyjną dla stale działających hostów gateway
oraz jawnej kontroli rozliczeń po stronie serwera.
- Szczegóły konfiguracji i runtime znajdują się w [/gateway/cli-backends](/pl/gateway/cli-backends).
## Uwagi
- Publiczna dokumentacja Claude Code Anthropic nadal opisuje bezpośrednie użycie CLI, takie jak
`claude -p`, a pracownicy Anthropic powiedzieli nam, że użycie Claude CLI w stylu OpenClaw jest
ponownie dozwolone. Traktujemy te wytyczne jako ustalone, chyba że Anthropic
opublikuje nową zmianę polityki.
- Anthropic setup-token pozostaje dostępny w OpenClaw jako obsługiwana ścieżka uwierzytelniania tokenem, ale OpenClaw teraz preferuje ponowne użycie Claude CLI i `claude -p`, gdy są dostępne.
- Szczegóły auth + zasady ponownego użycia znajdują się w [/concepts/oauth](/pl/concepts/oauth).
</Accordion>
</AccordionGroup>
## Rozwiązywanie problemów
**Błędy 401 / token nagle stał się nieprawidłowy**
<AccordionGroup>
<Accordion title="Błędy 401 / token nagle nieważny">
Uwierzytelnianie tokenem Anthropic może wygasnąć lub zostać cofnięte. W nowych konfiguracjach przejdź na klucz API Anthropic.
</Accordion>
- Uwierzytelnianie tokenem Anthropic może wygasnąć lub zostać cofnięte.
- Dla nowej konfiguracji przejdź na klucz API Anthropic.
<Accordion title='Nie znaleziono klucza API dla dostawcy "anthropic"'>
Uwierzytelnianie jest **na agenta**. Nowi agenci nie dziedziczą kluczy głównego agenta. Uruchom onboarding ponownie dla tego agenta albo skonfiguruj klucz API na hoście Gateway, a następnie sprawdź za pomocą `openclaw models status`.
</Accordion>
**Nie znaleziono klucza API dla dostawcy "anthropic"**
<Accordion title='Nie znaleziono poświadczeń dla profilu "anthropic:default"'>
Uruchom `openclaw models status`, aby zobaczyć, który profil uwierzytelniania jest aktywny. Uruchom onboarding ponownie albo skonfiguruj klucz API dla tej ścieżki profilu.
</Accordion>
- Uwierzytelnianie jest **per agent**. Nowi agenci nie dziedziczą kluczy głównego agenta.
- Uruchom onboarding ponownie dla tego agenta albo skonfiguruj klucz API na hoście gateway,
a następnie zweryfikuj przez `openclaw models status`.
<Accordion title="Brak dostępnego profilu uwierzytelniania (wszystkie w cooldown)">
Sprawdź `openclaw models status --json` dla `auth.unusableProfiles`. Cooldowny limitów szybkości Anthropic mogą być ograniczone do modelu, więc pokrewny model Anthropic nadal może być użyteczny. Dodaj kolejny profil Anthropic albo poczekaj na koniec cooldownu.
</Accordion>
</AccordionGroup>
**Nie znaleziono poświadczeń dla profilu `anthropic:default`**
<Note>
Więcej pomocy: [Rozwiązywanie problemów](/pl/help/troubleshooting) i [FAQ](/pl/help/faq).
</Note>
- Uruchom `openclaw models status`, aby zobaczyć, który profil uwierzytelniania jest aktywny.
- Uruchom onboarding ponownie albo skonfiguruj klucz API dla ścieżki tego profilu.
## Powiązane
**Brak dostępnego profilu uwierzytelniania (wszystkie w cooldown/niedostępne)**
- Sprawdź `openclaw models status --json` dla `auth.unusableProfiles`.
- Cooldowny limitów Anthropic mogą być ograniczone do konkretnego modelu, więc pokrewny model Anthropic
może nadal być użyteczny nawet wtedy, gdy bieżący jest w cooldownie.
- Dodaj kolejny profil Anthropic albo poczekaj na koniec cooldownu.
Więcej: [/gateway/troubleshooting](/pl/gateway/troubleshooting) oraz [/help/faq](/pl/help/faq).
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="CLI backends" href="/pl/gateway/cli-backends" icon="terminal">
Konfiguracja backendu Claude CLI i szczegóły działania.
</Card>
<Card title="Cache promptów" href="/pl/reference/prompt-caching" icon="database">
Jak działa cache promptów u różnych dostawców.
</Card>
<Card title="OAuth i uwierzytelnianie" href="/pl/gateway/authentication" icon="key">
Szczegóły uwierzytelniania i zasady ponownego wykorzystania poświadczeń.
</Card>
</CardGroup>

View File

@ -1,94 +1,153 @@
---
read_when:
- Chcesz używać Arcee AI z OpenClaw
- Potrzebujesz zmiennej środowiskowej z kluczem API lub opcji uwierzytelniania w CLI
- Potrzebujesz zmiennej środowiskowej klucza API lub opcji uwierzytelniania w CLI
summary: Konfiguracja Arcee AI (uwierzytelnianie + wybór modelu)
title: Arcee AI
x-i18n:
generated_at: "2026-04-07T09:48:42Z"
generated_at: "2026-04-12T23:29:32Z"
model: gpt-5.4
provider: openai
source_hash: fb04909a708fec08dd2c8c863501b178f098bc4818eaebad38aea264157969d8
source_hash: 68c5fddbe272c69611257ceff319c4de7ad21134aaf64582d60720a6f3b853cc
source_path: providers/arcee.md
workflow: 15
---
# Arcee AI
[Arcee AI](https://arcee.ai) zapewnia dostęp do rodziny modeli Trinity typu mixture-of-experts przez API zgodne z OpenAI. Wszystkie modele Trinity są licencjonowane na Apache 2.0.
[Arcee AI](https://arcee.ai) zapewnia dostęp do rodziny modeli typu mixture-of-experts Trinity przez API zgodne z OpenAI. Wszystkie modele Trinity są licencjonowane na Apache 2.0.
Dostęp do modeli Arcee AI można uzyskać bezpośrednio przez platformę Arcee lub przez [OpenRouter](/pl/providers/openrouter).
Do modeli Arcee AI można uzyskać dostęp bezpośrednio przez platformę Arcee lub przez [OpenRouter](/pl/providers/openrouter).
- Provider: `arcee`
- Uwierzytelnianie: `ARCEEAI_API_KEY` (bezpośrednio) lub `OPENROUTER_API_KEY` (przez OpenRouter)
- API: zgodne z OpenAI
- Base URL: `https://api.arcee.ai/api/v1` (bezpośrednio) lub `https://openrouter.ai/api/v1` (OpenRouter)
| Właściwość | Wartość |
| ---------- | ------------------------------------------------------------------------------------ |
| Dostawca | `arcee` |
| Uwierzytelnianie | `ARCEEAI_API_KEY` (bezpośrednio) lub `OPENROUTER_API_KEY` (przez OpenRouter) |
| API | zgodne z OpenAI |
| Bazowy URL | `https://api.arcee.ai/api/v1` (bezpośrednio) lub `https://openrouter.ai/api/v1` (OpenRouter) |
## Szybki start
## Pierwsze kroki
1. Pobierz klucz API z [Arcee AI](https://chat.arcee.ai/) lub [OpenRouter](https://openrouter.ai/keys).
<Tabs>
<Tab title="Bezpośrednio (platforma Arcee)">
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API w [Arcee AI](https://chat.arcee.ai/).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice arceeai-api-key
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "arcee/trinity-large-thinking" },
},
},
}
```
</Step>
</Steps>
</Tab>
2. Ustaw klucz API (zalecane: zapisz go dla Gateway):
<Tab title="Przez OpenRouter">
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API w [OpenRouter](https://openrouter.ai/keys).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice arceeai-openrouter
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "arcee/trinity-large-thinking" },
},
},
}
```
```bash
# Direct (platforma Arcee)
openclaw onboard --auth-choice arceeai-api-key
Te same referencje modeli działają zarówno dla konfiguracji bezpośredniej, jak i przez OpenRouter (na przykład `arcee/trinity-large-thinking`).
</Step>
</Steps>
# Via OpenRouter
openclaw onboard --auth-choice arceeai-openrouter
```
</Tab>
</Tabs>
3. Ustaw model domyślny:
## Konfiguracja nieinteraktywna
```json5
{
agents: {
defaults: {
model: { primary: "arcee/trinity-large-thinking" },
},
},
}
```
<Tabs>
<Tab title="Bezpośrednio (platforma Arcee)">
```bash
openclaw onboard --non-interactive \
--mode local \
--auth-choice arceeai-api-key \
--arceeai-api-key "$ARCEEAI_API_KEY"
```
</Tab>
## Przykład nieinteraktywny
```bash
# Direct (platforma Arcee)
openclaw onboard --non-interactive \
--mode local \
--auth-choice arceeai-api-key \
--arceeai-api-key "$ARCEEAI_API_KEY"
# Via OpenRouter
openclaw onboard --non-interactive \
--mode local \
--auth-choice arceeai-openrouter \
--openrouter-api-key "$OPENROUTER_API_KEY"
```
## Uwaga dotycząca środowiska
Jeśli Gateway działa jako daemon (`launchd`/`systemd`), upewnij się, że `ARCEEAI_API_KEY`
(lub `OPENROUTER_API_KEY`) jest dostępne dla tego procesu (na przykład w
`~/.openclaw/.env` lub przez `env.shellEnv`).
<Tab title="Przez OpenRouter">
```bash
openclaw onboard --non-interactive \
--mode local \
--auth-choice arceeai-openrouter \
--openrouter-api-key "$OPENROUTER_API_KEY"
```
</Tab>
</Tabs>
## Wbudowany katalog
OpenClaw obecnie dostarcza ten dołączony katalog Arcee:
| Model ref | Nazwa | Wejście | Kontekst | Koszt (wej./wyj. na 1M) | Uwagi |
| ------------------------------ | ---------------------- | ------- | -------- | ---------------------- | ----------------------------------------- |
| `arcee/trinity-large-thinking` | Trinity Large Thinking | text | 256K | $0.25 / $0.90 | Model domyślny; reasoning włączone |
| `arcee/trinity-large-preview` | Trinity Large Preview | text | 128K | $0.25 / $1.00 | Ogólnego przeznaczenia; 400B parametrów, 13B aktywnych |
| `arcee/trinity-mini` | Trinity Mini 26B | text | 128K | $0.045 / $0.15 | Szybki i oszczędny kosztowo; function calling |
| Ref modelu | Nazwa | Wejście | Kontekst | Koszt (wej./wyj. na 1 mln) | Uwagi |
| ------------------------------ | ---------------------- | ------- | -------- | -------------------------- | ----------------------------------------- |
| `arcee/trinity-large-thinking` | Trinity Large Thinking | text | 256K | $0.25 / $0.90 | Model domyślny; rozumowanie włączone |
| `arcee/trinity-large-preview` | Trinity Large Preview | text | 128K | $0.25 / $1.00 | Ogólnego przeznaczenia; 400B parametrów, 13B aktywnych |
| `arcee/trinity-mini` | Trinity Mini 26B | text | 128K | $0.045 / $0.15 | Szybki i opłacalny; function calling |
Te same referencje modeli działają zarówno dla konfiguracji bezpośrednich, jak i przez OpenRouter (na przykład `arcee/trinity-large-thinking`).
Preset onboardingu ustawia `arcee/trinity-large-thinking` jako model domyślny.
<Tip>
Preset onboarding ustawia `arcee/trinity-large-thinking` jako model domyślny.
</Tip>
## Obsługiwane funkcje
- Streaming
- Użycie narzędzi / function calling
- Structured output (tryb JSON i schemat JSON)
- Extended thinking (Trinity Large Thinking)
| Funkcja | Obsługiwane |
| -------------------------------------------- | ---------------------------- |
| Streaming | Tak |
| Użycie narzędzi / function calling | Tak |
| Dane wyjściowe strukturalne (tryb JSON i schemat JSON) | Tak |
| Rozszerzone myślenie | Tak (Trinity Large Thinking) |
<AccordionGroup>
<Accordion title="Uwaga dotycząca środowiska">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `ARCEEAI_API_KEY`
(lub `OPENROUTER_API_KEY`) jest dostępny dla tego procesu (na przykład w
`~/.openclaw/.env` lub przez `env.shellEnv`).
</Accordion>
<Accordion title="Routing OpenRouter">
Podczas używania modeli Arcee przez OpenRouter obowiązują te same referencje modeli `arcee/*`.
OpenClaw obsługuje routing transparentnie na podstawie wybranego sposobu uwierzytelniania. Zobacz
[dokumentację dostawcy OpenRouter](/pl/providers/openrouter), aby poznać szczegóły konfiguracji
specyficzne dla OpenRouter.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="OpenRouter" href="/pl/providers/openrouter" icon="shuffle">
Uzyskaj dostęp do modeli Arcee i wielu innych przez jeden klucz API.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
</CardGroup>

View File

@ -1,74 +1,114 @@
---
read_when:
- Chcesz używać hostowanych przez Bedrock Mantle modeli OSS z OpenClaw
- Potrzebujesz endpointu Mantle zgodnego z OpenAI dla GPT-OSS, Qwen, Kimi lub GLM
- Chcesz używać hostowanych modeli OSS Bedrock Mantle z OpenClaw
- Potrzebujesz zgodnego z OpenAI endpointu Mantle dla GPT-OSS, Qwen, Kimi lub GLM
summary: Używaj modeli Amazon Bedrock Mantle (zgodnych z OpenAI) z OpenClaw
title: Amazon Bedrock Mantle
x-i18n:
generated_at: "2026-04-06T03:10:50Z"
generated_at: "2026-04-12T23:29:40Z"
model: gpt-5.4
provider: openai
source_hash: 4e5b33ede4067fb7de02a046f3e375cbd2af4bf68e7751c8dd687447f1a78c86
source_hash: 27e602b6f6a3ae92427de135cb9df6356e0daaea6b6fe54723a7542dd0d5d21e
source_path: providers/bedrock-mantle.md
workflow: 15
---
# Amazon Bedrock Mantle
OpenClaw zawiera wbudowanego providera **Amazon Bedrock Mantle**, który łączy się z
endpointem Mantle zgodnym z OpenAI. Mantle hostuje modele open source i
OpenClaw zawiera dołączonego dostawcę **Amazon Bedrock Mantle**, który łączy się z
kompatybilnym z OpenAI endpointem Mantle. Mantle hostuje modele open source i
zewnętrzne (GPT-OSS, Qwen, Kimi, GLM i podobne) przez standardową
powierzchnię `/v1/chat/completions` opartą na infrastrukturze Bedrock.
powierzchnię ` /v1/chat/completions` opartą na infrastrukturze Bedrock.
## Co obsługuje OpenClaw
| Właściwość | Wartość |
| ------------- | ---------------------------------------------------------------------------------- |
| Identyfikator dostawcy | `amazon-bedrock-mantle` |
| API | `openai-completions` (zgodne z OpenAI) |
| Uwierzytelnianie | Jawny `AWS_BEARER_TOKEN_BEDROCK` lub generowanie bearer tokenu z łańcucha poświadczeń IAM |
| Domyślny region | `us-east-1` (nadpisz przez `AWS_REGION` lub `AWS_DEFAULT_REGION`) |
- Provider: `amazon-bedrock-mantle`
- API: `openai-completions` (zgodne z OpenAI)
- Auth: jawny `AWS_BEARER_TOKEN_BEDROCK` lub generowanie bearer tokena z łańcucha poświadczeń IAM
- Region: `AWS_REGION` lub `AWS_DEFAULT_REGION` (domyślnie: `us-east-1`)
## Pierwsze kroki
Wybierz preferowaną metodę uwierzytelniania i wykonaj kroki konfiguracji.
<Tabs>
<Tab title="Jawny bearer token">
**Najlepsze dla:** środowisk, w których masz już bearer token Mantle.
<Steps>
<Step title="Ustaw bearer token na hoście Gateway">
```bash
export AWS_BEARER_TOKEN_BEDROCK="..."
```
Opcjonalnie ustaw region (domyślnie `us-east-1`):
```bash
export AWS_REGION="us-west-2"
```
</Step>
<Step title="Sprawdź, czy modele są wykrywane">
```bash
openclaw models list
```
Wykryte modele pojawiają się pod dostawcą `amazon-bedrock-mantle`. Nie jest
wymagana dodatkowa konfiguracja, chyba że chcesz nadpisać ustawienia domyślne.
</Step>
</Steps>
</Tab>
<Tab title="Poświadczenia IAM">
**Najlepsze dla:** używania poświadczeń zgodnych z AWS SDK (współdzielona konfiguracja, SSO, tożsamość webowa, role instancji lub zadań).
<Steps>
<Step title="Skonfiguruj poświadczenia AWS na hoście Gateway">
Działa dowolne źródło uwierzytelniania zgodne z AWS SDK:
```bash
export AWS_PROFILE="default"
export AWS_REGION="us-west-2"
```
</Step>
<Step title="Sprawdź, czy modele są wykrywane">
```bash
openclaw models list
```
OpenClaw automatycznie generuje bearer token Mantle z łańcucha poświadczeń.
</Step>
</Steps>
<Tip>
Gdy `AWS_BEARER_TOKEN_BEDROCK` nie jest ustawione, OpenClaw sam generuje bearer token z domyślnego łańcucha poświadczeń AWS, w tym współdzielonych profili poświadczeń/konfiguracji, SSO, tożsamości webowej oraz ról instancji lub zadań.
</Tip>
</Tab>
</Tabs>
## Automatyczne wykrywanie modeli
Gdy ustawiono `AWS_BEARER_TOKEN_BEDROCK`, OpenClaw używa go bezpośrednio. W przeciwnym razie
Gdy `AWS_BEARER_TOKEN_BEDROCK` jest ustawione, OpenClaw używa go bezpośrednio. W przeciwnym razie
OpenClaw próbuje wygenerować bearer token Mantle z domyślnego
łańcucha poświadczeń AWS, w tym współdzielonych profili credentials/config, SSO, web
identity oraz ról instancji lub zadań. Następnie wykrywa dostępne modele Mantle
przez odpytywanie endpointu `/v1/models` dla danego regionu. Wyniki wykrywania są
przechowywane w cache przez 1 godzinę, a bearery tokeny pochodzące z IAM są odświeżane co godzinę.
łańcucha poświadczeń AWS. Następnie wykrywa dostępne modele Mantle, wysyłając zapytanie do
endpointu `/v1/models` dla danego regionu.
Obsługiwane regiony: `us-east-1`, `us-east-2`, `us-west-2`, `ap-northeast-1`,
| Zachowanie | Szczegóły |
| ---------------- | -------------------------- |
| Pamięć podręczna wykrywania | Wyniki buforowane przez 1 godzinę |
| Odświeżanie tokenu IAM | Co godzinę |
<Note>
Bearer token to ten sam `AWS_BEARER_TOKEN_BEDROCK`, którego używa standardowy dostawca [Amazon Bedrock](/pl/providers/bedrock).
</Note>
### Obsługiwane regiony
`us-east-1`, `us-east-2`, `us-west-2`, `ap-northeast-1`,
`ap-south-1`, `ap-southeast-3`, `eu-central-1`, `eu-west-1`, `eu-west-2`,
`eu-south-1`, `eu-north-1`, `sa-east-1`.
## Onboarding
1. Wybierz jedną ścieżkę auth na **hoście gatewaya**:
Jawny bearer token:
```bash
export AWS_BEARER_TOKEN_BEDROCK="..."
# Opcjonalnie (domyślnie `us-east-1`):
export AWS_REGION="us-west-2"
```
Poświadczenia IAM:
```bash
# Działa tutaj dowolne źródło auth zgodne z AWS SDK, na przykład:
export AWS_PROFILE="default"
export AWS_REGION="us-west-2"
```
2. Zweryfikuj, że modele zostały wykryte:
```bash
openclaw models list
```
Wykryte modele pojawią się pod providerem `amazon-bedrock-mantle`. Nie jest
wymagana dodatkowa konfiguracja, chyba że chcesz nadpisać wartości domyślne.
## Konfiguracja ręczna
Jeśli wolisz jawną konfigurację zamiast automatycznego wykrywania:
@ -99,13 +139,46 @@ Jeśli wolisz jawną konfigurację zamiast automatycznego wykrywania:
}
```
## Uwagi
## Uwagi zaawansowane
- OpenClaw może wygenerować bearer token Mantle za Ciebie z poświadczeń IAM
zgodnych z AWS SDK, gdy `AWS_BEARER_TOKEN_BEDROCK` nie jest ustawiony.
- Bearer token to ten sam `AWS_BEARER_TOKEN_BEDROCK`, którego używa standardowy
provider [Amazon Bedrock](/pl/providers/bedrock).
- Obsługa reasoning jest wywnioskowana z identyfikatorów modeli zawierających wzorce takie jak
`thinking`, `reasoner` lub `gpt-oss-120b`.
- Jeśli endpoint Mantle jest niedostępny lub nie zwraca modeli, provider jest
pomijany bezgłośnie.
<AccordionGroup>
<Accordion title="Obsługa rozumowania">
Obsługa rozumowania jest wywnioskowana z identyfikatorów modeli zawierających wzorce takie jak
`thinking`, `reasoner` lub `gpt-oss-120b`. OpenClaw automatycznie ustawia `reasoning: true`
dla pasujących modeli podczas wykrywania.
</Accordion>
<Accordion title="Niedostępność endpointu">
Jeśli endpoint Mantle jest niedostępny lub nie zwraca modeli, dostawca jest
po cichu pomijany. OpenClaw nie zgłasza błędu; inni skonfigurowani dostawcy
nadal działają normalnie.
</Accordion>
<Accordion title="Relacja z dostawcą Amazon Bedrock">
Bedrock Mantle to oddzielny dostawca względem standardowego
dostawcy [Amazon Bedrock](/pl/providers/bedrock). Mantle używa
kompatybilnej z OpenAI powierzchni `/v1`, podczas gdy standardowy dostawca Bedrock używa
natywnego API Bedrock.
Obaj dostawcy współdzielą te same poświadczenia `AWS_BEARER_TOKEN_BEDROCK`, gdy
są dostępne.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Amazon Bedrock" href="/pl/providers/bedrock" icon="cloud">
Natywny dostawca Bedrock dla Anthropic Claude, Titan i innych modeli.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="OAuth i uwierzytelnianie" href="/pl/gateway/authentication" icon="key">
Szczegóły uwierzytelniania i zasady ponownego użycia poświadczeń.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Typowe problemy i sposoby ich rozwiązania.
</Card>
</CardGroup>

View File

@ -1,171 +1,208 @@
---
read_when:
- Chcesz używać modeli Amazon Bedrock z OpenClaw
- Potrzebujesz konfiguracji poświadczeń/regionu AWS do wywołań modeli
- Potrzebujesz konfiguracji poświadczeń AWS i regionu do wywołań modeli
summary: Używaj modeli Amazon Bedrock (Converse API) z OpenClaw
title: Amazon Bedrock
x-i18n:
generated_at: "2026-04-06T03:11:26Z"
generated_at: "2026-04-12T23:29:40Z"
model: gpt-5.4
provider: openai
source_hash: 70bb29fe9199084b1179ced60935b5908318f5b80ced490bf44a45e0467c4929
source_hash: 88e7e24907ec26af098b648e2eeca32add090a9e381c818693169ab80aeccc47
source_path: providers/bedrock.md
workflow: 15
---
# Amazon Bedrock
OpenClaw może używać modeli **Amazon Bedrock** przez provider strumieniowy **Bedrock Converse**
z piai. Uwierzytelnianie Bedrock używa **domyślnego łańcucha poświadczeń AWS SDK**,
a nie klucza API.
OpenClaw może używać modeli **Amazon Bedrock** przez dostawcę strumieniowego **Bedrock Converse** z pi-ai. Uwierzytelnianie Bedrock używa **domyślnego łańcucha poświadczeń AWS SDK**, a nie klucza API.
## Co obsługuje pi-ai
| Właściwość | Wartość |
| ---------- | ------------------------------------------------------------ |
| Dostawca | `amazon-bedrock` |
| API | `bedrock-converse-stream` |
| Uwierzytelnianie | Poświadczenia AWS (zmienne środowiskowe, współdzielona konfiguracja lub rola instancji) |
| Region | `AWS_REGION` lub `AWS_DEFAULT_REGION` (domyślnie: `us-east-1`) |
- Provider: `amazon-bedrock`
- API: `bedrock-converse-stream`
- Auth: poświadczenia AWS (zmienne środowiskowe, współdzielona konfiguracja lub rola instancji)
- Region: `AWS_REGION` lub `AWS_DEFAULT_REGION` (domyślnie: `us-east-1`)
## Pierwsze kroki
Wybierz preferowaną metodę uwierzytelniania i wykonaj kroki konfiguracji.
<Tabs>
<Tab title="Klucze dostępu / zmienne środowiskowe">
**Najlepsze do:** maszyn deweloperskich, CI lub hostów, na których bezpośrednio zarządzasz poświadczeniami AWS.
<Steps>
<Step title="Ustaw poświadczenia AWS na hoście Gateway">
```bash
export AWS_ACCESS_KEY_ID="AKIA..."
export AWS_SECRET_ACCESS_KEY="..."
export AWS_REGION="us-east-1"
# Opcjonalnie:
export AWS_SESSION_TOKEN="..."
export AWS_PROFILE="your-profile"
# Opcjonalnie (klucz API/token bearer Bedrock):
export AWS_BEARER_TOKEN_BEDROCK="..."
```
</Step>
<Step title="Dodaj dostawcę Bedrock i model do swojej konfiguracji">
`apiKey` nie jest wymagany. Skonfiguruj dostawcę z `auth: "aws-sdk"`:
```json5
{
models: {
providers: {
"amazon-bedrock": {
baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
api: "bedrock-converse-stream",
auth: "aws-sdk",
models: [
{
id: "us.anthropic.claude-opus-4-6-v1:0",
name: "Claude Opus 4.6 (Bedrock)",
reasoning: true,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 200000,
maxTokens: 8192,
},
],
},
},
},
agents: {
defaults: {
model: { primary: "amazon-bedrock/us.anthropic.claude-opus-4-6-v1:0" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list
```
</Step>
</Steps>
<Tip>
Przy uwierzytelnianiu opartym na znacznikach środowiskowych (`AWS_ACCESS_KEY_ID`, `AWS_PROFILE` lub `AWS_BEARER_TOKEN_BEDROCK`) OpenClaw automatycznie włącza niejawnnego dostawcę Bedrock do wykrywania modeli bez dodatkowej konfiguracji.
</Tip>
</Tab>
<Tab title="Role instancji EC2 (IMDS)">
**Najlepsze do:** instancji EC2 z przypisaną rolą IAM, używających usługi metadanych instancji do uwierzytelniania.
<Steps>
<Step title="Włącz wykrywanie jawnie">
Przy korzystaniu z IMDS OpenClaw nie może wykryć uwierzytelniania AWS tylko na podstawie znaczników środowiskowych, więc musisz jawnie się zapisać:
```bash
openclaw config set plugins.entries.amazon-bedrock.config.discovery.enabled true
openclaw config set plugins.entries.amazon-bedrock.config.discovery.region us-east-1
```
</Step>
<Step title="Opcjonalnie dodaj znacznik środowiskowy dla trybu auto">
Jeśli chcesz też, aby działała ścieżka automatycznego wykrywania oparta na znacznikach środowiskowych (na przykład dla powierzchni `openclaw status`):
```bash
export AWS_PROFILE=default
export AWS_REGION=us-east-1
```
Nie potrzebujesz fałszywego klucza API.
</Step>
<Step title="Sprawdź, czy modele są wykrywane">
```bash
openclaw models list
```
</Step>
</Steps>
<Warning>
Rola IAM przypisana do Twojej instancji EC2 musi mieć następujące uprawnienia:
- `bedrock:InvokeModel`
- `bedrock:InvokeModelWithResponseStream`
- `bedrock:ListFoundationModels` (dla automatycznego wykrywania)
- `bedrock:ListInferenceProfiles` (dla wykrywania profili inferencji)
Albo przypnij zarządzaną politykę `AmazonBedrockFullAccess`.
</Warning>
<Note>
`AWS_PROFILE=default` jest potrzebne tylko wtedy, gdy konkretnie chcesz mieć znacznik środowiskowy dla trybu auto lub powierzchni statusu. Faktyczna ścieżka uwierzytelniania środowiska wykonawczego Bedrock używa domyślnego łańcucha AWS SDK, więc uwierzytelnianie rolą instancji przez IMDS działa nawet bez znaczników środowiskowych.
</Note>
</Tab>
</Tabs>
## Automatyczne wykrywanie modeli
OpenClaw może automatycznie wykrywać modele Bedrock, które obsługują **streaming**
i **wyjście tekstowe**. Wykrywanie używa `bedrock:ListFoundationModels` oraz
`bedrock:ListInferenceProfiles`, a wyniki są przechowywane w cache (domyślnie: 1 godzina).
OpenClaw może automatycznie wykrywać modele Bedrock obsługujące **streaming**
i **wyjście tekstowe**. Wykrywanie używa `bedrock:ListFoundationModels` i
`bedrock:ListInferenceProfiles`, a wyniki są cacheowane (domyślnie: 1 godzina).
Jak włączany jest niejawny provider:
Jak włączany jest niejawny dostawca:
- Jeśli `plugins.entries.amazon-bedrock.config.discovery.enabled` ma wartość `true`,
OpenClaw spróbuje wykrywania nawet wtedy, gdy nie ma żadnego znacznika środowiskowego AWS.
- Jeśli `plugins.entries.amazon-bedrock.config.discovery.enabled` nie jest ustawione,
OpenClaw automatycznie dodaje
niejawnego providera Bedrock tylko wtedy, gdy widzi jeden z tych znaczników auth AWS:
niejawnego dostawcę Bedrock tylko wtedy, gdy widzi jeden z tych znaczników uwierzytelniania AWS:
`AWS_BEARER_TOKEN_BEDROCK`, `AWS_ACCESS_KEY_ID` +
`AWS_SECRET_ACCESS_KEY` lub `AWS_PROFILE`.
- Rzeczywista ścieżka auth Bedrock w runtime nadal używa domyślnego łańcucha AWS SDK, więc
współdzielona konfiguracja, SSO oraz auth roli instancji IMDS mogą działać nawet wtedy, gdy wykrywanie
wymagało ustawienia `enabled: true`, aby się włączyć.
- Faktyczna ścieżka uwierzytelniania środowiska wykonawczego Bedrock nadal używa domyślnego łańcucha AWS SDK, więc
współdzielona konfiguracja, SSO i uwierzytelnianie rolą instancji IMDS mogą działać nawet wtedy, gdy do wykrywania
trzeba było jawnie ustawić `enabled: true`.
Opcje konfiguracji znajdują się pod `plugins.entries.amazon-bedrock.config.discovery`:
<Note>
Dla jawnych wpisów `models.providers["amazon-bedrock"]` OpenClaw nadal może wcześnie rozwiązywać uwierzytelnianie Bedrock oparte na znacznikach środowiskowych z takich znaczników AWS jak `AWS_BEARER_TOKEN_BEDROCK`, bez wymuszania pełnego ładowania uwierzytelniania środowiska wykonawczego. Faktyczna ścieżka uwierzytelniania wywołań modelu nadal używa domyślnego łańcucha AWS SDK.
</Note>
```json5
{
plugins: {
entries: {
"amazon-bedrock": {
config: {
discovery: {
enabled: true,
region: "us-east-1",
providerFilter: ["anthropic", "amazon"],
refreshInterval: 3600,
defaultContextWindow: 32000,
defaultMaxTokens: 4096,
<AccordionGroup>
<Accordion title="Opcje konfiguracji wykrywania">
Opcje konfiguracji znajdują się pod `plugins.entries.amazon-bedrock.config.discovery`:
```json5
{
plugins: {
entries: {
"amazon-bedrock": {
config: {
discovery: {
enabled: true,
region: "us-east-1",
providerFilter: ["anthropic", "amazon"],
refreshInterval: 3600,
defaultContextWindow: 32000,
defaultMaxTokens: 4096,
},
},
},
},
},
},
},
}
```
}
```
Uwagi:
| Opcja | Domyślnie | Opis |
| ------ | --------- | ---- |
| `enabled` | auto | W trybie auto OpenClaw włącza niejawnego dostawcę Bedrock tylko wtedy, gdy widzi obsługiwany znacznik środowiskowy AWS. Ustaw `true`, aby wymusić wykrywanie. |
| `region` | `AWS_REGION` / `AWS_DEFAULT_REGION` / `us-east-1` | Region AWS używany do wywołań API wykrywania. |
| `providerFilter` | (wszystkie) | Dopasowuje nazwy dostawców Bedrock (na przykład `anthropic`, `amazon`). |
| `refreshInterval` | `3600` | Czas trwania cache w sekundach. Ustaw `0`, aby wyłączyć cache. |
| `defaultContextWindow` | `32000` | Okno kontekstu używane dla wykrytych modeli (nadpisz, jeśli znasz limity swojego modelu). |
| `defaultMaxTokens` | `4096` | Maksymalna liczba tokenów wyjściowych używana dla wykrytych modeli (nadpisz, jeśli znasz limity swojego modelu). |
- `enabled` domyślnie działa w trybie auto. W trybie auto OpenClaw włącza
niejawnego providera Bedrock tylko wtedy, gdy widzi obsługiwany znacznik środowiskowy AWS.
- `region` domyślnie używa `AWS_REGION` lub `AWS_DEFAULT_REGION`, a następnie `us-east-1`.
- `providerFilter` dopasowuje nazwy providerów Bedrock (na przykład `anthropic`).
- `refreshInterval` podaje się w sekundach; ustaw `0`, aby wyłączyć cache.
- `defaultContextWindow` (domyślnie: `32000`) i `defaultMaxTokens` (domyślnie: `4096`)
są używane dla wykrytych modeli (nadpisz je, jeśli znasz limity swojego modelu).
- Dla jawnych wpisów `models.providers["amazon-bedrock"]` OpenClaw nadal może
wcześnie rozwiązać auth znaczników środowiskowych Bedrock z takich znaczników AWS jak
`AWS_BEARER_TOKEN_BEDROCK`, bez wymuszania pełnego ładowania auth w runtime. Rzeczywista
ścieżka auth dla wywołań modeli nadal używa domyślnego łańcucha AWS SDK.
## Onboarding
1. Upewnij się, że poświadczenia AWS są dostępne na **hoście gatewaya**:
```bash
export AWS_ACCESS_KEY_ID="AKIA..."
export AWS_SECRET_ACCESS_KEY="..."
export AWS_REGION="us-east-1"
# Opcjonalnie:
export AWS_SESSION_TOKEN="..."
export AWS_PROFILE="your-profile"
# Opcjonalnie (klucz API/token bearer Bedrock):
export AWS_BEARER_TOKEN_BEDROCK="..."
```
2. Dodaj providera Bedrock i model do swojej konfiguracji (bez wymaganego `apiKey`):
```json5
{
models: {
providers: {
"amazon-bedrock": {
baseUrl: "https://bedrock-runtime.us-east-1.amazonaws.com",
api: "bedrock-converse-stream",
auth: "aws-sdk",
models: [
{
id: "us.anthropic.claude-opus-4-6-v1:0",
name: "Claude Opus 4.6 (Bedrock)",
reasoning: true,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 200000,
maxTokens: 8192,
},
],
},
},
},
agents: {
defaults: {
model: { primary: "amazon-bedrock/us.anthropic.claude-opus-4-6-v1:0" },
},
},
}
```
## Role instancji EC2
Gdy OpenClaw działa na instancji EC2 z dołączoną rolą IAM, AWS SDK
może używać usługi metadanych instancji (IMDS) do uwierzytelniania. W przypadku wykrywania modeli Bedrock
OpenClaw automatycznie włącza niejawnego providera tylko na podstawie znaczników środowiskowych AWS,
chyba że jawnie ustawisz
`plugins.entries.amazon-bedrock.config.discovery.enabled: true`.
Zalecana konfiguracja dla hostów opartych na IMDS:
- Ustaw `plugins.entries.amazon-bedrock.config.discovery.enabled` na `true`.
- Ustaw `plugins.entries.amazon-bedrock.config.discovery.region` (lub wyeksportuj `AWS_REGION`).
- **Nie** potrzebujesz fałszywego klucza API.
- `AWS_PROFILE=default` potrzebujesz tylko wtedy, gdy chcesz mieć znacznik środowiskowy
dla trybu auto lub powierzchni statusu.
```bash
# Zalecane: jawne włączenie wykrywania + region
openclaw config set plugins.entries.amazon-bedrock.config.discovery.enabled true
openclaw config set plugins.entries.amazon-bedrock.config.discovery.region us-east-1
# Opcjonalnie: dodaj znacznik środowiskowy, jeśli chcesz używać trybu auto bez jawnego włączenia
export AWS_PROFILE=default
export AWS_REGION=us-east-1
```
**Wymagane uprawnienia IAM** dla roli instancji EC2:
- `bedrock:InvokeModel`
- `bedrock:InvokeModelWithResponseStream`
- `bedrock:ListFoundationModels` (dla automatycznego wykrywania)
- `bedrock:ListInferenceProfiles` (dla wykrywania profili inferencyjnych)
Lub dołącz zarządzaną politykę `AmazonBedrockFullAccess`.
</Accordion>
</AccordionGroup>
## Szybka konfiguracja (ścieżka AWS)
Ten przewodnik tworzy rolę IAM, przypina uprawnienia Bedrock, wiąże
profil instancji i włącza wykrywanie OpenClaw na hoście EC2.
```bash
# 1. Utwórz rolę IAM i profil instancji
aws iam create-role --role-name EC2-Bedrock-Access \
@ -186,124 +223,144 @@ aws iam add-role-to-instance-profile \
--instance-profile-name EC2-Bedrock-Access \
--role-name EC2-Bedrock-Access
# 2. Dołącz do swojej instancji EC2
# 2. Przypnij do swojej instancji EC2
aws ec2 associate-iam-instance-profile \
--instance-id i-xxxxx \
--iam-instance-profile Name=EC2-Bedrock-Access
# 3. Na instancji EC2 jawnie włącz wykrywanie
# 3. Na instancji EC2 włącz wykrywanie jawnie
openclaw config set plugins.entries.amazon-bedrock.config.discovery.enabled true
openclaw config set plugins.entries.amazon-bedrock.config.discovery.region us-east-1
# 4. Opcjonalnie: dodaj znacznik środowiskowy, jeśli chcesz używać trybu auto bez jawnego włączenia
# 4. Opcjonalnie: dodaj znacznik środowiskowy, jeśli chcesz tryb auto bez jawnego włączenia
echo 'export AWS_PROFILE=default' >> ~/.bashrc
echo 'export AWS_REGION=us-east-1' >> ~/.bashrc
source ~/.bashrc
# 5. Zweryfikuj, że modele zostały wykryte
# 5. Sprawdź, czy modele są wykrywane
openclaw models list
```
## Profile inferencyjne
## Konfiguracja zaawansowana
OpenClaw wykrywa **regionalne i globalne profile inferencyjne** obok
modeli foundation. Gdy profil mapuje się na znany model foundation,
profil dziedziczy możliwości tego modelu (okno kontekstu, maksymalna liczba tokenów,
reasoning, vision), a poprawny region żądania Bedrock jest wstrzykiwany
automatycznie. Oznacza to, że międzyregionalne profile Claude działają bez ręcznego
nadpisywania providera.
<AccordionGroup>
<Accordion title="Profile inferencji">
OpenClaw wykrywa **regionalne i globalne profile inferencji** razem z
modelami bazowymi. Gdy profil mapuje się na znany model bazowy,
profil dziedziczy możliwości tego modelu (okno kontekstu, maksymalna liczba tokenów,
reasoning, vision), a poprawny region żądania Bedrock jest wstrzykiwany
automatycznie. Oznacza to, że międzyregionalne profile Claude działają bez ręcznych
nadpisań dostawcy.
Identyfikatory profili inferencyjnych wyglądają jak `us.anthropic.claude-opus-4-6-v1:0` (regionalny)
lub `anthropic.claude-opus-4-6-v1:0` (globalny). Jeśli model bazowy jest już
obecny w wynikach wykrywania, profil dziedziczy pełny zestaw jego możliwości;
w przeciwnym razie stosowane są bezpieczne wartości domyślne.
Identyfikatory profili inferencji wyglądają jak `us.anthropic.claude-opus-4-6-v1:0` (regionalne)
albo `anthropic.claude-opus-4-6-v1:0` (globalne). Jeśli model bazowy jest już
obecny w wynikach wykrywania, profil dziedziczy jego pełny zestaw możliwości;
w przeciwnym razie stosowane są bezpieczne wartości domyślne.
Nie jest wymagana dodatkowa konfiguracja. Dopóki wykrywanie jest włączone, a podmiot IAM
ma uprawnienie `bedrock:ListInferenceProfiles`, profile pojawiają się obok
modeli foundation w `openclaw models list`.
Nie jest potrzebna dodatkowa konfiguracja. O ile wykrywanie jest włączone, a podmiot IAM
ma uprawnienie `bedrock:ListInferenceProfiles`, profile pojawiają się obok
modeli bazowych w `openclaw models list`.
## Uwagi
</Accordion>
- Bedrock wymaga **włączonego dostępu do modeli** na Twoim koncie/regionie AWS.
- Automatyczne wykrywanie wymaga uprawnień `bedrock:ListFoundationModels` oraz
`bedrock:ListInferenceProfiles`.
- Jeśli polegasz na trybie auto, ustaw jeden z obsługiwanych znaczników środowiskowych auth AWS na
hoście gatewaya. Jeśli wolisz auth IMDS/współdzielonej konfiguracji bez znaczników środowiskowych, ustaw
`plugins.entries.amazon-bedrock.config.discovery.enabled: true`.
- OpenClaw pokazuje źródło poświadczeń w tej kolejności: `AWS_BEARER_TOKEN_BEDROCK`,
następnie `AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY`, potem `AWS_PROFILE`, a następnie
domyślny łańcuch AWS SDK.
- Obsługa reasoning zależy od modelu; sprawdź kartę modelu Bedrock pod kątem
bieżących możliwości.
- Jeśli wolisz zarządzany przepływ kluczy, możesz także umieścić zgodne z OpenAI
proxy przed Bedrock i skonfigurować je zamiast tego jako providera OpenAI.
<Accordion title="Guardrails">
Możesz zastosować [Amazon Bedrock Guardrails](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html)
do wszystkich wywołań modeli Bedrock, dodając obiekt `guardrail` do
konfiguracji Plugin `amazon-bedrock`. Guardrails pozwalają wymuszać filtrowanie treści,
blokowanie tematów, filtry słów, filtry informacji wrażliwych oraz kontrole
ugruntowania kontekstowego.
## Guardrails
Możesz stosować [Amazon Bedrock Guardrails](https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html)
do wszystkich wywołań modeli Bedrock, dodając obiekt `guardrail` do
konfiguracji pluginu `amazon-bedrock`. Guardrails pozwalają egzekwować filtrowanie treści,
blokowanie tematów, filtry słów, filtry informacji wrażliwych i kontrole
oparcia kontekstowego.
```json5
{
plugins: {
entries: {
"amazon-bedrock": {
config: {
guardrail: {
guardrailIdentifier: "abc123", // guardrail ID or full ARN
guardrailVersion: "1", // version number or "DRAFT"
streamProcessingMode: "sync", // optional: "sync" or "async"
trace: "enabled", // optional: "enabled", "disabled", or "enabled_full"
```json5
{
plugins: {
entries: {
"amazon-bedrock": {
config: {
guardrail: {
guardrailIdentifier: "abc123", // ID guardrail lub pełny ARN
guardrailVersion: "1", // numer wersji lub "DRAFT"
streamProcessingMode: "sync", // opcjonalnie: "sync" lub "async"
trace: "enabled", // opcjonalnie: "enabled", "disabled" lub "enabled_full"
},
},
},
},
},
},
},
}
```
}
```
- `guardrailIdentifier` (wymagane) akceptuje identyfikator guardrail (np. `abc123`) lub
pełny ARN (np. `arn:aws:bedrock:us-east-1:123456789012:guardrail/abc123`).
- `guardrailVersion` (wymagane) określa, której opublikowanej wersji użyć, albo
`"DRAFT"` dla roboczej wersji.
- `streamProcessingMode` (opcjonalne) kontroluje, czy ocena guardrail działa
synchronicznie (`"sync"`) czy asynchronicznie (`"async"`) podczas streamingu. Jeśli
zostanie pominięte, Bedrock użyje swojego domyślnego zachowania.
- `trace` (opcjonalne) włącza ślad guardrail w odpowiedzi API. Ustaw na
`"enabled"` lub `"enabled_full"` do debugowania; pomiń albo ustaw `"disabled"` w
środowisku produkcyjnym.
| Opcja | Wymagana | Opis |
| ------ | -------- | ---- |
| `guardrailIdentifier` | Tak | ID guardrail (np. `abc123`) lub pełny ARN (np. `arn:aws:bedrock:us-east-1:123456789012:guardrail/abc123`). |
| `guardrailVersion` | Tak | Numer opublikowanej wersji lub `"DRAFT"` dla wersji roboczej. |
| `streamProcessingMode` | Nie | `"sync"` lub `"async"` dla oceny guardrail podczas streamingu. Jeśli pominięte, Bedrock używa wartości domyślnej. |
| `trace` | Nie | `"enabled"` lub `"enabled_full"` do debugowania; w środowisku produkcyjnym pomiń albo ustaw `"disabled"`. |
Podmiot IAM używany przez gateway musi mieć uprawnienie `bedrock:ApplyGuardrail`
oprócz standardowych uprawnień wywołań.
<Warning>
Podmiot IAM używany przez Gateway musi mieć uprawnienie `bedrock:ApplyGuardrail` oprócz standardowych uprawnień wywołania.
</Warning>
## Embeddingi do wyszukiwania pamięci
</Accordion>
Bedrock może również służyć jako provider embeddingów dla
[wyszukiwania pamięci](/pl/concepts/memory-search). To ustawia się osobno od
providera inferencji — ustaw `agents.defaults.memorySearch.provider` na `"bedrock"`:
<Accordion title="Embeddingi do wyszukiwania pamięci">
Bedrock może też służyć jako dostawca embeddingów dla
[wyszukiwania pamięci](/pl/concepts/memory-search). Konfiguruje się to oddzielnie od
dostawcy inferencji — ustaw `agents.defaults.memorySearch.provider` na `"bedrock"`:
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "bedrock",
model: "amazon.titan-embed-text-v2:0", // default
```json5
{
agents: {
defaults: {
memorySearch: {
provider: "bedrock",
model: "amazon.titan-embed-text-v2:0", // domyślnie
},
},
},
},
},
}
```
}
```
Embeddingi Bedrock używają tego samego łańcucha poświadczeń AWS SDK co inferencja (role
instancji, SSO, klucze dostępu, współdzielona konfiguracja i web identity). Klucz API nie
jest potrzebny. Gdy `provider` ma wartość `"auto"`, Bedrock jest wykrywany automatycznie, jeśli ten
łańcuch poświadczeń zostanie pomyślnie rozwiązany.
Embeddingi Bedrock używają tego samego łańcucha poświadczeń AWS SDK co inferencja (role
instancji, SSO, klucze dostępu, współdzielona konfiguracja i web identity). Klucz API
nie jest potrzebny. Gdy `provider` ma wartość `"auto"`, Bedrock jest wykrywany automatycznie, jeśli ten
łańcuch poświadczeń zostanie pomyślnie rozwiązany.
Obsługiwane modele embeddingów obejmują Amazon Titan Embed (v1, v2), Amazon Nova
Embed, Cohere Embed (v3, v4) oraz TwelveLabs Marengo. Zobacz
[Dokumentacja konfiguracji pamięci — Bedrock](/pl/reference/memory-config#bedrock-embedding-config),
aby uzyskać pełną listę modeli i opcji wymiarów.
Obsługiwane modele embeddingów obejmują Amazon Titan Embed (v1, v2), Amazon Nova
Embed, Cohere Embed (v3, v4) oraz TwelveLabs Marengo. Pełną listę modeli i opcje wymiarów znajdziesz w
[referencji konfiguracji pamięci -- Bedrock](/pl/reference/memory-config#bedrock-embedding-config).
</Accordion>
<Accordion title="Uwagi i zastrzeżenia">
- Bedrock wymaga włączenia **dostępu do modelu** w Twoim koncie/regionie AWS.
- Automatyczne wykrywanie wymaga uprawnień `bedrock:ListFoundationModels` i
`bedrock:ListInferenceProfiles`.
- Jeśli polegasz na trybie auto, ustaw na
hoście Gateway jeden z obsługiwanych znaczników środowiskowych uwierzytelniania AWS. Jeśli wolisz uwierzytelnianie IMDS/współdzieloną konfiguracją bez znaczników środowiskowych, ustaw
`plugins.entries.amazon-bedrock.config.discovery.enabled: true`.
- OpenClaw pokazuje źródło poświadczeń w tej kolejności: `AWS_BEARER_TOKEN_BEDROCK`,
następnie `AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY`, potem `AWS_PROFILE`, a na końcu
domyślny łańcuch AWS SDK.
- Obsługa reasoning zależy od modelu; sprawdź kartę modelu Bedrock, aby poznać
aktualne możliwości.
- Jeśli wolisz zarządzany przepływ kluczy, możesz też umieścić zgodne z OpenAI
proxy przed Bedrock i zamiast tego skonfigurować je jako dostawcę OpenAI.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Wyszukiwanie pamięci" href="/pl/concepts/memory-search" icon="magnifying-glass">
Konfiguracja embeddingów Bedrock dla wyszukiwania pamięci.
</Card>
<Card title="Referencja konfiguracji pamięci" href="/pl/reference/memory-config#bedrock-embedding-config" icon="database">
Pełna lista modeli embeddingów Bedrock i opcje wymiarów.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Ogólne rozwiązywanie problemów i FAQ.
</Card>
</CardGroup>

View File

@ -2,89 +2,108 @@
read_when:
- Chcesz używać Chutes z OpenClaw
- Potrzebujesz ścieżki konfiguracji OAuth lub klucza API
- Chcesz poznać model domyślny, aliasy lub zachowanie wykrywania
- Chcesz poznać model domyślny, aliasy lub zachowanie wykrywania modeli
summary: Konfiguracja Chutes (OAuth lub klucz API, wykrywanie modeli, aliasy)
title: Chutes
x-i18n:
generated_at: "2026-04-05T14:02:27Z"
generated_at: "2026-04-12T23:29:54Z"
model: gpt-5.4
provider: openai
source_hash: e275f32e7a19fa5b4c64ffabfb4bf116dd5c9ab95bfa25bd3b1a15d15e237674
source_hash: 07c52b1d1d2792412e6daabc92df5310434b3520116d9e0fd2ad26bfa5297e1c
source_path: providers/chutes.md
workflow: 15
---
# Chutes
[Chutes](https://chutes.ai) udostępnia katalogi modeli open-source przez API
zgodne z OpenAI. OpenClaw obsługuje zarówno OAuth przez przeglądarkę, jak i
bezpośrednie uwierzytelnianie kluczem API dla dołączonego providera `chutes`.
[Chutes](https://chutes.ai) udostępnia katalogi modeli open source przez API
zgodne z OpenAI. OpenClaw obsługuje zarówno OAuth w przeglądarce, jak i
bezpośrednie uwierzytelnianie kluczem API dla dołączonego dostawcy `chutes`.
- Provider: `chutes`
- API: zgodne z OpenAI
- Base URL: `https://llm.chutes.ai/v1`
- Uwierzytelnianie:
- OAuth przez `openclaw onboard --auth-choice chutes`
- Klucz API przez `openclaw onboard --auth-choice chutes-api-key`
- Zmienne env runtime: `CHUTES_API_KEY`, `CHUTES_OAUTH_TOKEN`
| Właściwość | Wartość |
| ---------- | -------------------------- |
| Dostawca | `chutes` |
| API | zgodne z OpenAI |
| Bazowy URL | `https://llm.chutes.ai/v1` |
| Uwierzytelnianie | OAuth lub klucz API (zobacz poniżej) |
## Szybki start
## Pierwsze kroki
### OAuth
<Tabs>
<Tab title="OAuth">
<Steps>
<Step title="Uruchom przepływ onboarding OAuth">
```bash
openclaw onboard --auth-choice chutes
```
OpenClaw uruchamia lokalnie przepływ w przeglądarce albo pokazuje URL + przepływ
wklejenia przekierowania na hostach zdalnych lub bezgłowych. Tokeny OAuth są automatycznie
odświeżane przez profile uwierzytelniania OpenClaw.
</Step>
<Step title="Zweryfikuj model domyślny">
Po onboardingu model domyślny jest ustawiany na
`chutes/zai-org/GLM-4.7-TEE`, a dołączony katalog Chutes zostaje
zarejestrowany.
</Step>
</Steps>
</Tab>
<Tab title="Klucz API">
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz na
[chutes.ai/settings/api-keys](https://chutes.ai/settings/api-keys).
</Step>
<Step title="Uruchom przepływ onboarding klucza API">
```bash
openclaw onboard --auth-choice chutes-api-key
```
</Step>
<Step title="Zweryfikuj model domyślny">
Po onboardingu model domyślny jest ustawiany na
`chutes/zai-org/GLM-4.7-TEE`, a dołączony katalog Chutes zostaje
zarejestrowany.
</Step>
</Steps>
</Tab>
</Tabs>
```bash
openclaw onboard --auth-choice chutes
```
OpenClaw uruchamia lokalnie przepływ przez przeglądarkę albo pokazuje URL + przepływ
wklejania przekierowania na hostach zdalnych/headless. Tokeny OAuth są automatycznie odświeżane przez profile
auth OpenClaw.
Opcjonalne nadpisania OAuth:
- `CHUTES_CLIENT_ID`
- `CHUTES_CLIENT_SECRET`
- `CHUTES_OAUTH_REDIRECT_URI`
- `CHUTES_OAUTH_SCOPES`
### Klucz API
```bash
openclaw onboard --auth-choice chutes-api-key
```
Pobierz swój klucz na
[chutes.ai/settings/api-keys](https://chutes.ai/settings/api-keys).
Obie ścieżki uwierzytelniania rejestrują dołączony katalog Chutes i ustawiają model domyślny
na `chutes/zai-org/GLM-4.7-TEE`.
<Note>
Obie ścieżki uwierzytelniania rejestrują dołączony katalog Chutes i ustawiają model domyślny na
`chutes/zai-org/GLM-4.7-TEE`. Zmienne środowiskowe runtime: `CHUTES_API_KEY`,
`CHUTES_OAUTH_TOKEN`.
</Note>
## Zachowanie wykrywania
Gdy dostępne jest uwierzytelnianie Chutes, OpenClaw odpytuje katalog Chutes przy użyciu tych
poświadczeń i korzysta z wykrytych modeli. Jeśli wykrywanie się nie powiedzie, OpenClaw wraca
do dołączonego statycznego katalogu, aby onboarding i start nadal działały.
Gdy uwierzytelnianie Chutes jest dostępne, OpenClaw odpytuje katalog Chutes przy użyciu
tych poświadczeń i korzysta z wykrytych modeli. Jeśli wykrywanie się nie powiedzie, OpenClaw
przechodzi do dołączonego statycznego katalogu zapasowego, dzięki czemu onboarding i uruchamianie
nadal działają.
## Domyślne aliasy
OpenClaw rejestruje też trzy wygodne aliasy dla dołączonego katalogu Chutes:
OpenClaw rejestruje trzy wygodne aliasy dla dołączonego katalogu Chutes:
- `chutes-fast` -> `chutes/zai-org/GLM-4.7-FP8`
- `chutes-pro` -> `chutes/deepseek-ai/DeepSeek-V3.2-TEE`
- `chutes-vision` -> `chutes/chutesai/Mistral-Small-3.2-24B-Instruct-2506`
| Alias | Model docelowy |
| --------------- | ----------------------------------------------------- |
| `chutes-fast` | `chutes/zai-org/GLM-4.7-FP8` |
| `chutes-pro` | `chutes/deepseek-ai/DeepSeek-V3.2-TEE` |
| `chutes-vision` | `chutes/chutesai/Mistral-Small-3.2-24B-Instruct-2506` |
## Wbudowany katalog startowy
Dołączony katalog fallback zawiera bieżące referencje Chutes, takie jak:
Dołączony katalog zapasowy obejmuje bieżące referencje Chutes:
- `chutes/zai-org/GLM-4.7-TEE`
- `chutes/zai-org/GLM-5-TEE`
- `chutes/deepseek-ai/DeepSeek-V3.2-TEE`
- `chutes/deepseek-ai/DeepSeek-R1-0528-TEE`
- `chutes/moonshotai/Kimi-K2.5-TEE`
- `chutes/chutesai/Mistral-Small-3.2-24B-Instruct-2506`
- `chutes/Qwen/Qwen3-Coder-Next-TEE`
- `chutes/openai/gpt-oss-120b-TEE`
| Ref modelu |
| ----------------------------------------------------- |
| `chutes/zai-org/GLM-4.7-TEE` |
| `chutes/zai-org/GLM-5-TEE` |
| `chutes/deepseek-ai/DeepSeek-V3.2-TEE` |
| `chutes/deepseek-ai/DeepSeek-R1-0528-TEE` |
| `chutes/moonshotai/Kimi-K2.5-TEE` |
| `chutes/chutesai/Mistral-Small-3.2-24B-Instruct-2506` |
| `chutes/Qwen/Qwen3-Coder-Next-TEE` |
| `chutes/openai/gpt-oss-120b-TEE` |
## Przykład konfiguracji
@ -102,8 +121,42 @@ Dołączony katalog fallback zawiera bieżące referencje Chutes, takie jak:
}
```
## Uwagi
<AccordionGroup>
<Accordion title="Nadpisania OAuth">
Możesz dostosować przepływ OAuth za pomocą opcjonalnych zmiennych środowiskowych:
- Pomoc OAuth i wymagania aplikacji przekierowania: [dokumentacja OAuth Chutes](https://chutes.ai/docs/sign-in-with-chutes/overview)
- Wykrywanie klucza API i OAuth używa tego samego identyfikatora providera `chutes`.
- Modele Chutes są rejestrowane jako `chutes/<model-id>`.
| Zmienna | Cel |
| -------- | ------- |
| `CHUTES_CLIENT_ID` | Niestandardowy identyfikator klienta OAuth |
| `CHUTES_CLIENT_SECRET` | Niestandardowy sekret klienta OAuth |
| `CHUTES_OAUTH_REDIRECT_URI` | Niestandardowy URI przekierowania |
| `CHUTES_OAUTH_SCOPES` | Niestandardowe zakresy OAuth |
Zobacz [dokumentację OAuth Chutes](https://chutes.ai/docs/sign-in-with-chutes/overview),
aby poznać wymagania dotyczące aplikacji przekierowującej i uzyskać pomoc.
</Accordion>
<Accordion title="Uwagi">
- Wykrywanie przy użyciu klucza API i OAuth używa tego samego identyfikatora dostawcy `chutes`.
- Modele Chutes są rejestrowane jako `chutes/<model-id>`.
- Jeśli wykrywanie nie powiedzie się przy uruchamianiu, dołączony statyczny katalog jest używany automatycznie.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Reguły dostawców, referencje modeli i zachowanie failover.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji, w tym ustawienia dostawców.
</Card>
<Card title="Chutes" href="https://chutes.ai" icon="arrow-up-right-from-square">
Panel Chutes i dokumentacja API.
</Card>
<Card title="Klucze API Chutes" href="https://chutes.ai/settings/api-keys" icon="key">
Tworzenie i zarządzanie kluczami API Chutes.
</Card>
</CardGroup>

View File

@ -1,170 +1,197 @@
---
read_when:
- Chcesz używać subskrypcji Claude Max z narzędziami zgodnymi z OpenAI
- Chcesz lokalnego serwera API, który opakowuje Claude Code CLI
- Chcesz ocenić dostęp do Anthropic oparty na subskrypcji vs na kluczu API
summary: Społecznościowy proxy wystawiający poświadczenia subskrypcji Claude jako endpoint zgodny z OpenAI
title: Claude Max API Proxy
- Chcesz lokalnego serwera API, który opakowuje CLI Claude Code
- Chcesz ocenić dostęp do Anthropic oparty na subskrypcji w porównaniu z dostępem opartym na kluczu API
summary: Społecznościowy serwer proxy do udostępniania poświadczeń subskrypcji Claude jako endpointu zgodnego z OpenAI
title: Serwer proxy API Claude Max
x-i18n:
generated_at: "2026-04-05T14:02:41Z"
generated_at: "2026-04-12T23:30:06Z"
model: gpt-5.4
provider: openai
source_hash: 2e125a6a46e48371544adf1331137a1db51e93e905b8c44da482cf2fba180a09
source_hash: 534bc3d189e68529fb090258eb0d6db6d367eb7e027ad04b1f0be55f6aa7d889
source_path: providers/claude-max-api-proxy.md
workflow: 15
---
# Claude Max API Proxy
# Serwer proxy API Claude Max
**claude-max-api-proxy** to narzędzie społecznościowe, które wystawia twoją subskrypcję Claude Max/Pro jako endpoint API zgodny z OpenAI. Dzięki temu możesz używać swojej subskrypcji z dowolnym narzędziem obsługującym format OpenAI API.
**claude-max-api-proxy** to narzędzie społecznościowe, które udostępnia Twoją subskrypcję Claude Max/Pro jako endpoint API zgodny z OpenAI. Dzięki temu możesz używać swojej subskrypcji z dowolnym narzędziem obsługującym format API OpenAI.
<Warning>
Ta ścieżka zapewnia wyłącznie zgodność techniczną. Anthropic w przeszłości blokował część użycia subskrypcji
poza Claude Code. Musisz samodzielnie zdecydować, czy chcesz z tego korzystać,
i sprawdzić aktualne warunki Anthropic, zanim zaczniesz na tym polegać.
poza Claude Code. Musisz samodzielnie zdecydować, czy chcesz z niej korzystać,
i sprawdzić aktualne warunki Anthropic, zanim zaczniesz na niej polegać.
</Warning>
## Dlaczego warto tego używać?
## Dlaczego warto z tego korzystać?
| Approach | Cost | Best For |
| ----------------------- | --------------------------------------------------- | ------------------------------------------ |
| Anthropic API | Płatność za token (~$15/M wejścia, $75/M wyjścia dla Opus) | Aplikacje produkcyjne, duży wolumen |
| Claude Max subscription | $200/miesiąc stałej opłaty | Użycie osobiste, development, nielimitowane użycie |
| Podejście | Koszt | Najlepsze dla |
| ------------------------ | --------------------------------------------------- | ------------------------------------------ |
| API Anthropic | Płatność za token (~15 USD/M wejścia, 75 USD/M wyjścia dla Opus) | Aplikacje produkcyjne, duży wolumen |
| Subskrypcja Claude Max | Stała opłata 200 USD/miesiąc | Użytek osobisty, rozwój, nieograniczone użycie |
Jeśli masz subskrypcję Claude Max i chcesz używać jej z narzędziami zgodnymi z OpenAI, ten proxy może obniżyć koszty w niektórych przepływach pracy. Klucze API pozostają bardziej jednoznaczną ścieżką polityki dla użycia produkcyjnego.
Jeśli masz subskrypcję Claude Max i chcesz używać jej z narzędziami zgodnymi z OpenAI, ten serwer proxy może obniżyć koszty w niektórych przepływach pracy. Klucze API pozostają wyraźniej zgodną z zasadami ścieżką dla zastosowań produkcyjnych.
## Jak to działa
```
Twoja aplikacja → claude-max-api-proxy → Claude Code CLI → Anthropic (przez subskrypcję)
(format OpenAI) (konwersja formatu) (używa twojego logowania)
Twoja aplikacja → claude-max-api-proxy → CLI Claude Code → Anthropic (przez subskrypcję)
(format OpenAI) (konwersja formatu) (używa Twojego logowania)
```
Ten proxy:
Serwer proxy:
1. Akceptuje żądania w formacie OpenAI pod `http://localhost:3456/v1/chat/completions`
2. Konwertuje je do poleceń Claude Code CLI
3. Zwraca odpowiedzi w formacie OpenAI (streaming jest obsługiwany)
1. Przyjmuje żądania w formacie OpenAI pod adresem `http://localhost:3456/v1/chat/completions`
2. Konwertuje je na polecenia CLI Claude Code
3. Zwraca odpowiedzi w formacie OpenAI (obsługiwane jest przesyłanie strumieniowe)
## Instalacja
## Pierwsze kroki
```bash
# Wymaga Node.js 20+ i Claude Code CLI
npm install -g claude-max-api-proxy
<Steps>
<Step title="Zainstaluj serwer proxy">
Wymaga Node.js 20+ oraz CLI Claude Code.
# Zweryfikuj, że Claude CLI jest uwierzytelnione
claude --version
```
```bash
npm install -g claude-max-api-proxy
## Użycie
# Sprawdź, czy CLI Claude jest uwierzytelnione
claude --version
```
### Uruchom serwer
</Step>
<Step title="Uruchom serwer">
```bash
claude-max-api
# Serwer działa pod adresem http://localhost:3456
```
</Step>
<Step title="Przetestuj serwer proxy">
```bash
# Kontrola stanu
curl http://localhost:3456/health
```bash
claude-max-api
# Serwer działa pod http://localhost:3456
```
# Lista modeli
curl http://localhost:3456/v1/models
### Przetestuj go
# Uzupełnianie czatu
curl http://localhost:3456/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-4",
"messages": [{"role": "user", "content": "Hello!"}]
}'
```
```bash
# Kontrola stanu
curl http://localhost:3456/health
</Step>
<Step title="Skonfiguruj OpenClaw">
Skieruj OpenClaw na serwer proxy jako niestandardowy endpoint zgodny z OpenAI:
# Lista modeli
curl http://localhost:3456/v1/models
```json5
{
env: {
OPENAI_API_KEY: "not-needed",
OPENAI_BASE_URL: "http://localhost:3456/v1",
},
agents: {
defaults: {
model: { primary: "openai/claude-opus-4" },
},
},
}
```
# Uzupełnianie czatu
curl http://localhost:3456/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "claude-opus-4",
"messages": [{"role": "user", "content": "Hello!"}]
}'
```
### Z OpenClaw
Możesz skierować OpenClaw na ten proxy jako niestandardowy endpoint zgodny z OpenAI:
```json5
{
env: {
OPENAI_API_KEY: "not-needed",
OPENAI_BASE_URL: "http://localhost:3456/v1",
},
agents: {
defaults: {
model: { primary: "openai/claude-opus-4" },
},
},
}
```
Ta ścieżka używa tej samej trasy proxy w stylu OpenAI-compatible co inne niestandardowe
backendy `/v1`:
- natywne kształtowanie żądań tylko dla OpenAI nie ma zastosowania
- brak `service_tier`, brak Responses `store`, brak wskazówek cache promptów i brak
kształtowania payloadów zgodności rozumowania OpenAI
- ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane dla URL proxy
</Step>
</Steps>
## Dostępne modele
| Model ID | Maps To |
| ----------------- | --------------- |
| `claude-opus-4` | Claude Opus 4 |
| `claude-sonnet-4` | Claude Sonnet 4 |
| `claude-haiku-4` | Claude Haiku 4 |
| Identyfikator modelu | Mapowanie do |
| -------------------- | ---------------- |
| `claude-opus-4` | Claude Opus 4 |
| `claude-sonnet-4` | Claude Sonnet 4 |
| `claude-haiku-4` | Claude Haiku 4 |
## Automatyczne uruchamianie na macOS
## Zaawansowane
Utwórz LaunchAgent, aby automatycznie uruchamiać proxy:
<AccordionGroup>
<Accordion title="Uwagi o stylu proxy zgodnym z OpenAI">
Ta ścieżka używa tej samej trasy proxy zgodnej z OpenAI co inne niestandardowe
backendy `/v1`:
```bash
cat > ~/Library/LaunchAgents/com.claude-max-api.plist << 'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.claude-max-api</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/node</string>
<string>/usr/local/lib/node_modules/claude-max-api-proxy/dist/server/standalone.js</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/local/bin:/opt/homebrew/bin:~/.local/bin:/usr/bin:/bin</string>
</dict>
</dict>
</plist>
EOF
- Natywne kształtowanie żądań tylko dla OpenAI nie ma tu zastosowania
- Brak `service_tier`, brak `store` w Responses, brak wskazówek prompt-cache i brak
kształtowania ładunku zgodności rozumowania OpenAI
- Ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane do adresu URL serwera proxy
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.claude-max-api.plist
```
</Accordion>
<Accordion title="Automatyczne uruchamianie na macOS za pomocą LaunchAgent">
Utwórz LaunchAgent, aby automatycznie uruchamiać serwer proxy:
```bash
cat > ~/Library/LaunchAgents/com.claude-max-api.plist << 'EOF'
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.claude-max-api</string>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/node</string>
<string>/usr/local/lib/node_modules/claude-max-api-proxy/dist/server/standalone.js</string>
</array>
<key>EnvironmentVariables</key>
<dict>
<key>PATH</key>
<string>/usr/local/bin:/opt/homebrew/bin:~/.local/bin:/usr/bin:/bin</string>
</dict>
</dict>
</plist>
EOF
launchctl bootstrap gui/$(id -u) ~/Library/LaunchAgents/com.claude-max-api.plist
```
</Accordion>
</AccordionGroup>
## Linki
- **npm:** [https://www.npmjs.com/package/claude-max-api-proxy](https://www.npmjs.com/package/claude-max-api-proxy)
- **GitHub:** [https://github.com/atalovesyou/claude-max-api-proxy](https://github.com/atalovesyou/claude-max-api-proxy)
- **Issues:** [https://github.com/atalovesyou/claude-max-api-proxy/issues](https://github.com/atalovesyou/claude-max-api-proxy/issues)
- **Zgłoszenia:** [https://github.com/atalovesyou/claude-max-api-proxy/issues](https://github.com/atalovesyou/claude-max-api-proxy/issues)
## Uwagi
- To **narzędzie społecznościowe**, oficjalnie niewspierane przez Anthropic ani OpenClaw
- Wymaga aktywnej subskrypcji Claude Max/Pro z uwierzytelnionym Claude Code CLI
- Proxy działa lokalnie i nie wysyła danych do żadnych serwerów firm trzecich
- To **narzędzie społecznościowe**, nie jest oficjalnie wspierane przez Anthropic ani OpenClaw
- Wymaga aktywnej subskrypcji Claude Max/Pro z uwierzytelnionym CLI Claude Code
- Serwer proxy działa lokalnie i nie wysyła danych do żadnych serwerów zewnętrznych
- Odpowiedzi strumieniowe są w pełni obsługiwane
## Zobacz także
<Note>
Aby używać natywnej integracji Anthropic z CLI Claude lub kluczami API, zobacz [dostawca Anthropic](/pl/providers/anthropic). W przypadku subskrypcji OpenAI/Codex zobacz [dostawca OpenAI](/pl/providers/openai).
</Note>
- [Provider Anthropic](/providers/anthropic) - Natywna integracja OpenClaw z Claude CLI lub kluczami API
- [Provider OpenAI](/providers/openai) - Dla subskrypcji OpenAI/Codex
## Powiązane
<CardGroup cols={2}>
<Card title="Anthropic provider" href="/pl/providers/anthropic" icon="bolt">
Natywna integracja OpenClaw z CLI Claude lub kluczami API.
</Card>
<Card title="OpenAI provider" href="/pl/providers/openai" icon="robot">
Dla subskrypcji OpenAI/Codex.
</Card>
<Card title="Model providers" href="/pl/concepts/model-providers" icon="layers">
Omówienie wszystkich dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Configuration" href="/pl/gateway/configuration" icon="gear">
Pełna dokumentacja konfiguracji.
</Card>
</CardGroup>

View File

@ -1,51 +1,71 @@
---
read_when:
- Chcesz używać Cloudflare AI Gateway z OpenClaw
- Potrzebujesz ID konta, ID gateway albo zmiennej env klucza API
summary: Konfiguracja Cloudflare AI Gateway (auth + wybór modelu)
- Potrzebujesz identyfikatora konta, identyfikatora Gateway lub zmiennej środowiskowej klucza API
summary: Konfiguracja Cloudflare AI Gateway (uwierzytelnianie + wybór modelu)
title: Cloudflare AI Gateway
x-i18n:
generated_at: "2026-04-05T14:02:34Z"
generated_at: "2026-04-12T23:30:18Z"
model: gpt-5.4
provider: openai
source_hash: db77652c37652ca20f7c50f32382dbaeaeb50ea5bdeaf1d4fd17dc394e58950c
source_hash: 12e9589fe74e6a6335370b9cf2361a464876a392a33f8317d7fd30c3f163b2e5
source_path: providers/cloudflare-ai-gateway.md
workflow: 15
---
# Cloudflare AI Gateway
Cloudflare AI Gateway działa przed API providerów i pozwala dodać analitykę, cache oraz kontrolę. W przypadku Anthropic OpenClaw używa Anthropic Messages API przez endpoint Twojej Gateway.
Cloudflare AI Gateway znajduje się przed API dostawców i umożliwia dodanie analityki, cache oraz mechanizmów kontrolnych. W przypadku Anthropic OpenClaw używa Anthropic Messages API przez endpoint Twojego Gateway.
- Provider: `cloudflare-ai-gateway`
- Base URL: `https://gateway.ai.cloudflare.com/v1/<account_id>/<gateway_id>/anthropic`
- Model domyślny: `cloudflare-ai-gateway/claude-sonnet-4-5`
- Klucz API: `CLOUDFLARE_AI_GATEWAY_API_KEY` (Twój klucz API providera dla żądań przechodzących przez Gateway)
| Właściwość | Wartość |
| ------------ | --------------------------------------------------------------------------------------- |
| Dostawca | `cloudflare-ai-gateway` |
| Bazowy URL | `https://gateway.ai.cloudflare.com/v1/<account_id>/<gateway_id>/anthropic` |
| Model domyślny | `cloudflare-ai-gateway/claude-sonnet-4-5` |
| Klucz API | `CLOUDFLARE_AI_GATEWAY_API_KEY` (Twój klucz API dostawcy dla żądań przez Gateway) |
Dla modeli Anthropic użyj swojego klucza API Anthropic.
<Note>
W przypadku modeli Anthropic routowanych przez Cloudflare AI Gateway używaj swojego **klucza API Anthropic** jako klucza dostawcy.
</Note>
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API providera i szczegóły Gateway:
<Steps>
<Step title="Ustaw klucz API dostawcy i szczegóły Gateway">
Uruchom onboarding i wybierz opcję uwierzytelniania Cloudflare AI Gateway:
```bash
openclaw onboard --auth-choice cloudflare-ai-gateway-api-key
```
```bash
openclaw onboard --auth-choice cloudflare-ai-gateway-api-key
```
2. Ustaw model domyślny:
To poprosi o identyfikator konta, identyfikator Gateway i klucz API.
```json5
{
agents: {
defaults: {
model: { primary: "cloudflare-ai-gateway/claude-sonnet-4-5" },
},
},
}
```
</Step>
<Step title="Ustaw model domyślny">
Dodaj model do swojej konfiguracji OpenClaw:
```json5
{
agents: {
defaults: {
model: { primary: "cloudflare-ai-gateway/claude-sonnet-4-5" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider cloudflare-ai-gateway
```
</Step>
</Steps>
## Przykład nieinteraktywny
W przypadku konfiguracji skryptowych lub CI przekaż wszystkie wartości w wierszu poleceń:
```bash
openclaw onboard --non-interactive \
--mode local \
@ -55,24 +75,49 @@ openclaw onboard --non-interactive \
--cloudflare-ai-gateway-api-key "$CLOUDFLARE_AI_GATEWAY_API_KEY"
```
## Gateway z uwierzytelnianiem
## Konfiguracja zaawansowana
Jeśli włączyłeś uwierzytelnianie Gateway w Cloudflare, dodaj nagłówek `cf-aig-authorization` (oprócz klucza API providera).
<AccordionGroup>
<Accordion title="Gateway z uwierzytelnianiem">
Jeśli włączyłeś uwierzytelnianie Gateway w Cloudflare, dodaj nagłówek `cf-aig-authorization`. Jest to **dodatkowe** względem klucza API dostawcy.
```json5
{
models: {
providers: {
"cloudflare-ai-gateway": {
headers: {
"cf-aig-authorization": "Bearer <cloudflare-ai-gateway-token>",
```json5
{
models: {
providers: {
"cloudflare-ai-gateway": {
headers: {
"cf-aig-authorization": "Bearer <cloudflare-ai-gateway-token>",
},
},
},
},
},
},
}
```
}
```
## Uwaga dotycząca środowiska
<Tip>
Nagłówek `cf-aig-authorization` uwierzytelnia wobec samego Cloudflare Gateway, podczas gdy klucz API dostawcy (na przykład Twój klucz Anthropic) uwierzytelnia wobec dostawcy upstream.
</Tip>
Jeśli Gateway działa jako daemon (launchd/systemd), upewnij się, że `CLOUDFLARE_AI_GATEWAY_API_KEY` jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` albo przez `env.shellEnv`).
</Accordion>
<Accordion title="Uwaga dotycząca środowiska">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `CLOUDFLARE_AI_GATEWAY_API_KEY` jest dostępny dla tego procesu.
<Warning>
Klucz znajdujący się wyłącznie w `~/.profile` nie pomoże demonowi launchd/systemd, chyba że to środowisko również zostanie tam zaimportowane. Ustaw klucz w `~/.openclaw/.env` lub przez `env.shellEnv`, aby mieć pewność, że proces gateway może go odczytać.
</Warning>
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Ogólne rozwiązywanie problemów i FAQ.
</Card>
</CardGroup>

View File

@ -1,46 +1,174 @@
---
read_when:
- Chcesz używać lokalnych workflow ComfyUI z OpenClaw
- Chcesz używać Comfy Cloud z workflow obrazów, wideo lub muzyki
- Potrzebujesz kluczy konfiguracji dla wbudowanego pluginu comfy
summary: Konfiguracja generowania obrazów, wideo i muzyki z workflow ComfyUI w OpenClaw
- Chcesz używać lokalnych przepływów pracy ComfyUI z OpenClaw
- Chcesz używać Comfy Cloud z przepływami pracy obrazów, wideo lub muzyki
- Potrzebujesz kluczy konfiguracji bundlowego Pluginu comfy
summary: Konfiguracja generowania obrazów, wideo i muzyki w przepływie pracy ComfyUI w OpenClaw
title: ComfyUI
x-i18n:
generated_at: "2026-04-06T03:11:21Z"
generated_at: "2026-04-12T23:30:29Z"
model: gpt-5.4
provider: openai
source_hash: e645f32efdffdf4cd498684f1924bb953a014d3656b48f4b503d64e38c61ba9c
source_hash: 85db395b171f37f80b34b22f3e7707bffc1fd9138e7d10687eef13eaaa55cf24
source_path: providers/comfy.md
workflow: 15
---
# ComfyUI
OpenClaw dostarcza wbudowany plugin `comfy` do uruchamiania ComfyUI sterowanego workflow.
OpenClaw dostarcza bundlowy Plugin `comfy` do uruchamiania ComfyUI sterowanego przepływami pracy. Plugin jest w pełni sterowany przepływem pracy, więc OpenClaw nie próbuje mapować ogólnych ustawień `size`, `aspectRatio`, `resolution`, `durationSeconds` ani kontrolek w stylu TTS na Twój graf.
- Dostawca: `comfy`
- Modele: `comfy/workflow`
- Współdzielone powierzchnie: `image_generate`, `video_generate`, `music_generate`
- Uwierzytelnianie: brak dla lokalnego ComfyUI; `COMFY_API_KEY` lub `COMFY_CLOUD_API_KEY` dla Comfy Cloud
- API: ComfyUI `/prompt` / `/history` / `/view` oraz Comfy Cloud `/api/*`
| Właściwość | Szczegóły |
| ---------------- | -------------------------------------------------------------------------------- |
| Dostawca | `comfy` |
| Modele | `comfy/workflow` |
| Wspólne powierzchnie | `image_generate`, `video_generate`, `music_generate` |
| Auth | Brak dla lokalnego ComfyUI; `COMFY_API_KEY` lub `COMFY_CLOUD_API_KEY` dla Comfy Cloud |
| API | ComfyUI `/prompt` / `/history` / `/view` oraz Comfy Cloud `/api/*` |
## Co jest obsługiwane
- Generowanie obrazów z pliku JSON workflow
- Generowanie obrazów z JSON przepływu pracy
- Edycja obrazów z 1 przesłanym obrazem referencyjnym
- Generowanie wideo z pliku JSON workflow
- Generowanie wideo z JSON przepływu pracy
- Generowanie wideo z 1 przesłanym obrazem referencyjnym
- Generowanie muzyki lub audio przez współdzielone narzędzie `music_generate`
- Pobieranie wyników z skonfigurowanego node albo ze wszystkich pasujących node wyjściowych
- Generowanie muzyki lub audio przez wspólne narzędzie `music_generate`
- Pobieranie danych wyjściowych ze skonfigurowanego węzła lub ze wszystkich pasujących węzłów wyjściowych
Wbudowany plugin jest sterowany workflow, więc OpenClaw nie próbuje mapować ogólnych parametrów
`size`, `aspectRatio`, `resolution`, `durationSeconds` ani ustawień w stylu TTS
na Twój graf.
## Pierwsze kroki
## Układ konfiguracji
Wybierz między uruchamianiem ComfyUI na własnym komputerze a użyciem Comfy Cloud.
Comfy obsługuje współdzielone ustawienia połączenia na najwyższym poziomie oraz sekcje workflow
dla poszczególnych zdolności:
<Tabs>
<Tab title="Lokalnie">
**Najlepsze do:** uruchamiania własnej instancji ComfyUI na komputerze lub w sieci LAN.
<Steps>
<Step title="Uruchom ComfyUI lokalnie">
Upewnij się, że lokalna instancja ComfyUI jest uruchomiona (domyślnie `http://127.0.0.1:8188`).
</Step>
<Step title="Przygotuj JSON przepływu pracy">
Wyeksportuj lub utwórz plik JSON przepływu pracy ComfyUI. Zanotuj identyfikatory węzłów dla węzła wejścia promptu i węzła wyjściowego, z którego OpenClaw ma odczytywać dane.
</Step>
<Step title="Skonfiguruj dostawcę">
Ustaw `mode: "local"` i wskaż plik przepływu pracy. Oto minimalny przykład dla obrazu:
```json5
{
models: {
providers: {
comfy: {
mode: "local",
baseUrl: "http://127.0.0.1:8188",
image: {
workflowPath: "./workflows/flux-api.json",
promptNodeId: "6",
outputNodeId: "9",
},
},
},
},
}
```
</Step>
<Step title="Ustaw model domyślny">
Skieruj OpenClaw na model `comfy/workflow` dla skonfigurowanej capability:
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "comfy/workflow",
},
},
},
}
```
</Step>
<Step title="Zweryfikuj">
```bash
openclaw models list --provider comfy
```
</Step>
</Steps>
</Tab>
<Tab title="Comfy Cloud">
**Najlepsze do:** uruchamiania przepływów pracy w Comfy Cloud bez zarządzania lokalnymi zasobami GPU.
<Steps>
<Step title="Pobierz klucz API">
Zarejestruj się na [comfy.org](https://comfy.org) i wygeneruj klucz API w panelu konta.
</Step>
<Step title="Ustaw klucz API">
Podaj klucz jedną z poniższych metod:
```bash
# Zmienna środowiskowa (zalecane)
export COMFY_API_KEY="your-key"
# Alternatywna zmienna środowiskowa
export COMFY_CLOUD_API_KEY="your-key"
# Albo bezpośrednio w konfiguracji
openclaw config set models.providers.comfy.apiKey "your-key"
```
</Step>
<Step title="Przygotuj JSON przepływu pracy">
Wyeksportuj lub utwórz plik JSON przepływu pracy ComfyUI. Zanotuj identyfikatory węzłów dla węzła wejścia promptu i węzła wyjściowego.
</Step>
<Step title="Skonfiguruj dostawcę">
Ustaw `mode: "cloud"` i wskaż plik przepływu pracy:
```json5
{
models: {
providers: {
comfy: {
mode: "cloud",
image: {
workflowPath: "./workflows/flux-api.json",
promptNodeId: "6",
outputNodeId: "9",
},
},
},
},
}
```
<Tip>
W trybie chmurowym `baseUrl` domyślnie ma wartość `https://cloud.comfy.org`. `baseUrl` trzeba ustawić tylko wtedy, gdy używasz niestandardowego endpointu chmurowego.
</Tip>
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "comfy/workflow",
},
},
},
}
```
</Step>
<Step title="Zweryfikuj">
```bash
openclaw models list --provider comfy
```
</Step>
</Steps>
</Tab>
</Tabs>
## Konfiguracja
Comfy obsługuje wspólne ustawienia połączenia najwyższego poziomu oraz sekcje przepływów pracy per capability (`image`, `video`, `music`):
```json5
{
@ -70,139 +198,164 @@ dla poszczególnych zdolności:
}
```
Współdzielone klucze:
### Wspólne klucze
- `mode`: `local` lub `cloud`
- `baseUrl`: domyślnie `http://127.0.0.1:8188` dla trybu local lub `https://cloud.comfy.org` dla trybu cloud
- `apiKey`: opcjonalna alternatywa dla klucza w zmiennych env
- `allowPrivateNetwork`: zezwala na prywatny/LAN `baseUrl` w trybie cloud
| Klucz | Typ | Opis |
| --------------------- | ---------------------- | ---------------------------------------------------------------------------------------- |
| `mode` | `"local"` or `"cloud"` | Tryb połączenia. |
| `baseUrl` | string | Domyślnie `http://127.0.0.1:8188` dla trybu lokalnego albo `https://cloud.comfy.org` dla trybu chmurowego. |
| `apiKey` | string | Opcjonalny klucz podany bezpośrednio, alternatywa dla zmiennych env `COMFY_API_KEY` / `COMFY_CLOUD_API_KEY`. |
| `allowPrivateNetwork` | boolean | Zezwala na prywatny/LAN `baseUrl` w trybie chmurowym. |
Klucze dla poszczególnych zdolności w `image`, `video` lub `music`:
### Klucze per capability
- `workflow` lub `workflowPath`: wymagane
- `promptNodeId`: wymagane
- `promptInputName`: domyślnie `text`
- `outputNodeId`: opcjonalne
- `pollIntervalMs`: opcjonalne
- `timeoutMs`: opcjonalne
Te klucze obowiązują wewnątrz sekcji `image`, `video` albo `music`:
Sekcje obrazów i wideo obsługują także:
| Klucz | Wymagane | Domyślnie | Opis |
| ---------------------------- | -------- | --------- | ---------------------------------------------------------------------------- |
| `workflow` lub `workflowPath` | Tak | -- | Ścieżka do pliku JSON przepływu pracy ComfyUI. |
| `promptNodeId` | Tak | -- | Identyfikator węzła odbierającego prompt tekstowy. |
| `promptInputName` | Nie | `"text"` | Nazwa wejścia w węźle promptu. |
| `outputNodeId` | Nie | -- | Identyfikator węzła, z którego należy odczytać dane wyjściowe. Jeśli zostanie pominięty, używane są wszystkie pasujące węzły wyjściowe. |
| `pollIntervalMs` | Nie | -- | Interwał odpytywania w milisekundach dla ukończenia zadania. |
| `timeoutMs` | Nie | -- | Limit czasu w milisekundach dla uruchomienia przepływu pracy. |
- `inputImageNodeId`: wymagane, gdy przekazujesz obraz referencyjny
- `inputImageInputName`: domyślnie `image`
Sekcje `image` i `video` obsługują także:
## Zgodność wsteczna
| Klucz | Wymagane | Domyślnie | Opis |
| --------------------- | ------------------------------------- | --------- | -------------------------------------------------------- |
| `inputImageNodeId` | Tak (przy przekazywaniu obrazu referencyjnego) | -- | Identyfikator węzła odbierającego przesłany obraz referencyjny. |
| `inputImageInputName` | Nie | `"image"` | Nazwa wejścia w węźle obrazu. |
Istniejąca konfiguracja obrazu na najwyższym poziomie nadal działa:
## Szczegóły przepływu pracy
```json5
{
models: {
providers: {
comfy: {
workflowPath: "./workflows/flux-api.json",
promptNodeId: "6",
outputNodeId: "9",
},
},
},
}
```
<AccordionGroup>
<Accordion title="Przepływy pracy obrazów">
Ustaw domyślny model obrazu na `comfy/workflow`:
OpenClaw traktuje ten starszy kształt jako konfigurację workflow obrazu.
## Workflow obrazów
Ustaw domyślny model obrazu:
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "comfy/workflow",
},
},
},
}
```
Przykład edycji z obrazem referencyjnym:
```json5
{
models: {
providers: {
comfy: {
image: {
workflowPath: "./workflows/edit-api.json",
promptNodeId: "6",
inputImageNodeId: "7",
inputImageInputName: "image",
outputNodeId: "9",
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "comfy/workflow",
},
},
},
},
},
}
```
}
```
## Workflow wideo
**Przykład edycji z obrazem referencyjnym:**
Ustaw domyślny model wideo:
Aby włączyć edycję obrazów z użyciem przesłanego obrazu referencyjnego, dodaj `inputImageNodeId` do konfiguracji obrazu:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "comfy/workflow",
```json5
{
models: {
providers: {
comfy: {
image: {
workflowPath: "./workflows/edit-api.json",
promptNodeId: "6",
inputImageNodeId: "7",
inputImageInputName: "image",
outputNodeId: "9",
},
},
},
},
},
},
}
```
}
```
Workflow wideo Comfy obecnie obsługują text-to-video i image-to-video przez
skonfigurowany graf. OpenClaw nie przekazuje wejściowych plików wideo do workflow Comfy.
</Accordion>
## Workflow muzyki
<Accordion title="Przepływy pracy wideo">
Ustaw domyślny model wideo na `comfy/workflow`:
Wbudowany plugin rejestruje dostawcę generowania muzyki dla wyjść audio lub muzycznych
zdefiniowanych przez workflow, udostępnianego przez współdzielone narzędzie `music_generate`:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "comfy/workflow",
},
},
},
}
```
```text
/tool music_generate prompt="Warm ambient synth loop with soft tape texture"
```
Przepływy pracy wideo Comfy obsługują text-to-video i image-to-video przez skonfigurowany graf.
Użyj sekcji konfiguracji `music`, aby wskazać plik JSON workflow audio i
node wyjściowy.
<Note>
OpenClaw nie przekazuje wejściowych plików wideo do przepływów pracy Comfy. Jako dane wejściowe obsługiwane są tylko prompty tekstowe i pojedyncze obrazy referencyjne.
</Note>
## Comfy Cloud
</Accordion>
Użyj `mode: "cloud"` oraz jednego z poniższych:
<Accordion title="Przepływy pracy muzyki">
Bundlowy Plugin rejestruje dostawcę generowania muzyki dla wyjść audio lub muzyki zdefiniowanych w przepływie pracy, udostępnianych przez wspólne narzędzie `music_generate`:
- `COMFY_API_KEY`
- `COMFY_CLOUD_API_KEY`
- `models.providers.comfy.apiKey`
```text
/tool music_generate prompt="Ciepła ambientowa pętla syntezatorowa z miękką fakturą taśmy"
```
Tryb cloud nadal używa tych samych sekcji workflow `image`, `video` i `music`.
Użyj sekcji konfiguracji `music`, aby wskazać JSON przepływu pracy audio i węzeł wyjściowy.
## Testy live
</Accordion>
Dla wbudowanego pluginu istnieje opcjonalne pokrycie live:
<Accordion title="Zgodność wsteczna">
Istniejąca konfiguracja obrazu najwyższego poziomu (bez zagnieżdżonej sekcji `image`) nadal działa:
```bash
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts
```
```json5
{
models: {
providers: {
comfy: {
workflowPath: "./workflows/flux-api.json",
promptNodeId: "6",
outputNodeId: "9",
},
},
},
}
```
Test live pomija poszczególne przypadki obrazów, wideo lub muzyki, jeśli odpowiadająca im
sekcja workflow Comfy nie jest skonfigurowana.
OpenClaw traktuje ten starszy kształt jako konfigurację przepływu pracy obrazu. Nie musisz migrować od razu, ale dla nowych konfiguracji zalecane są zagnieżdżone sekcje `image` / `video` / `music`.
<Tip>
Jeśli używasz tylko generowania obrazów, starsza płaska konfiguracja i nowa zagnieżdżona sekcja `image` są funkcjonalnie równoważne.
</Tip>
</Accordion>
<Accordion title="Testy live">
Dla bundlowego Pluginu istnieje opcjonalne pokrycie live:
```bash
OPENCLAW_LIVE_TEST=1 COMFY_LIVE_TEST=1 pnpm test:live -- extensions/comfy/comfy.live.test.ts
```
Test live pomija poszczególne przypadki obrazów, wideo lub muzyki, chyba że skonfigurowana jest odpowiadająca im sekcja przepływu pracy Comfy.
</Accordion>
</AccordionGroup>
## Powiązane
- [Generowanie obrazów](/pl/tools/image-generation)
- [Generowanie wideo](/tools/video-generation)
- [Generowanie muzyki](/tools/music-generation)
- [Katalog dostawców](/pl/providers/index)
- [Dokumentacja konfiguracji](/pl/gateway/configuration-reference#agent-defaults)
<CardGroup cols={2}>
<Card title="Generowanie obrazów" href="/pl/tools/image-generation" icon="image">
Konfiguracja i użycie narzędzia do generowania obrazów.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Konfiguracja i użycie narzędzia do generowania wideo.
</Card>
<Card title="Generowanie muzyki" href="/pl/tools/music-generation" icon="music">
Konfiguracja generowania muzyki i audio.
</Card>
<Card title="Katalog dostawców" href="/pl/providers/index" icon="layers">
Przegląd wszystkich dostawców i odwołań do modeli.
</Card>
<Card title="Informacje o konfiguracji" href="/pl/gateway/configuration-reference#agent-defaults" icon="gear">
Pełne informacje o konfiguracji, w tym ustawienia domyślne agenta.
</Card>
</CardGroup>

View File

@ -1,100 +1,148 @@
---
read_when:
- Chcesz używać Deepgram speech-to-text dla załączników audio
- Chcesz używać Deepgram speech-to-text do załączników audio
- Potrzebujesz szybkiego przykładu konfiguracji Deepgram
summary: Transkrypcja Deepgram dla przychodzących notatek głosowych
title: Deepgram
x-i18n:
generated_at: "2026-04-05T14:02:43Z"
generated_at: "2026-04-12T23:30:28Z"
model: gpt-5.4
provider: openai
source_hash: dabd1f6942c339fbd744fbf38040b6a663b06ddf4d9c9ee31e3ac034de9e79d9
source_hash: 091523d6669e3d258f07c035ec756bd587299b6c7025520659232b1b2c1e21a5
source_path: providers/deepgram.md
workflow: 15
---
# Deepgram (transkrypcja audio)
# Deepgram (Transkrypcja audio)
Deepgram to API speech-to-text. W OpenClaw jest używane do **transkrypcji przychodzącego audio/notatek głosowych**
przez `tools.media.audio`.
Deepgram to API speech-to-text. W OpenClaw jest używane do **transkrypcji przychodzącego audio/notatek głosowych** przez `tools.media.audio`.
Po włączeniu OpenClaw przesyła plik audio do Deepgram i wstrzykuje transkrypcję
do pipelineu odpowiedzi (`{{Transcript}}` + blok `[Audio]`). To **nie jest streaming**;
do pipeline odpowiedzi (`{{Transcript}}` + blok `[Audio]`). To **nie jest streaming**;
używany jest endpoint transkrypcji nagrań wstępnie zarejestrowanych.
Strona: [https://deepgram.com](https://deepgram.com)
Dokumentacja: [https://developers.deepgram.com](https://developers.deepgram.com)
| Szczegół | Wartość |
| ------------- | ---------------------------------------------------------- |
| Strona | [deepgram.com](https://deepgram.com) |
| Dokumentacja | [developers.deepgram.com](https://developers.deepgram.com) |
| Uwierzytelnianie | `DEEPGRAM_API_KEY` |
| Model domyślny | `nova-3` |
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
<Steps>
<Step title="Ustaw klucz API">
Dodaj klucz API Deepgram do środowiska:
```
DEEPGRAM_API_KEY=dg_...
```
```
DEEPGRAM_API_KEY=dg_...
```
2. Włącz providera:
```json5
{
tools: {
media: {
audio: {
enabled: true,
models: [{ provider: "deepgram", model: "nova-3" }],
},
},
},
}
```
## Opcje
- `model`: identyfikator modelu Deepgram (domyślnie: `nova-3`)
- `language`: wskazówka językowa (opcjonalnie)
- `tools.media.audio.providerOptions.deepgram.detect_language`: włącz wykrywanie języka (opcjonalnie)
- `tools.media.audio.providerOptions.deepgram.punctuate`: włącz interpunkcję (opcjonalnie)
- `tools.media.audio.providerOptions.deepgram.smart_format`: włącz inteligentne formatowanie (opcjonalnie)
Przykład z językiem:
```json5
{
tools: {
media: {
audio: {
enabled: true,
models: [{ provider: "deepgram", model: "nova-3", language: "en" }],
},
},
},
}
```
Przykład z opcjami Deepgram:
```json5
{
tools: {
media: {
audio: {
enabled: true,
providerOptions: {
deepgram: {
detect_language: true,
punctuate: true,
smart_format: true,
</Step>
<Step title="Włącz dostawcę audio">
```json5
{
tools: {
media: {
audio: {
enabled: true,
models: [{ provider: "deepgram", model: "nova-3" }],
},
},
models: [{ provider: "deepgram", model: "nova-3" }],
},
},
},
}
```
}
```
</Step>
<Step title="Wyślij notatkę głosową">
Wyślij wiadomość audio przez dowolny podłączony kanał. OpenClaw transkrybuje ją
przez Deepgram i wstrzykuje transkrypcję do pipeline odpowiedzi.
</Step>
</Steps>
## Opcje konfiguracji
| Opcja | Ścieżka | Opis |
| ---------------- | ------------------------------------------------------------ | ----------------------------------------- |
| `model` | `tools.media.audio.models[].model` | ID modelu Deepgram (domyślnie: `nova-3`) |
| `language` | `tools.media.audio.models[].language` | Wskazówka języka (opcjonalnie) |
| `detect_language` | `tools.media.audio.providerOptions.deepgram.detect_language` | Włącza wykrywanie języka (opcjonalnie) |
| `punctuate` | `tools.media.audio.providerOptions.deepgram.punctuate` | Włącza interpunkcję (opcjonalnie) |
| `smart_format` | `tools.media.audio.providerOptions.deepgram.smart_format` | Włącza inteligentne formatowanie (opcjonalnie) |
<Tabs>
<Tab title="Ze wskazówką języka">
```json5
{
tools: {
media: {
audio: {
enabled: true,
models: [{ provider: "deepgram", model: "nova-3", language: "en" }],
},
},
},
}
```
</Tab>
<Tab title="Z opcjami Deepgram">
```json5
{
tools: {
media: {
audio: {
enabled: true,
providerOptions: {
deepgram: {
detect_language: true,
punctuate: true,
smart_format: true,
},
},
models: [{ provider: "deepgram", model: "nova-3" }],
},
},
},
}
```
</Tab>
</Tabs>
## Uwagi
- Uwierzytelnianie podąża za standardową kolejnością auth providerów; `DEEPGRAM_API_KEY` to najprostsza ścieżka.
- Nadpisuj endpointy lub nagłówki przez `tools.media.audio.baseUrl` i `tools.media.audio.headers`, gdy używasz proxy.
- Wynik podlega tym samym regułom audio co u innych providerów (limity rozmiaru, timeouty, wstrzykiwanie transkryptu).
<AccordionGroup>
<Accordion title="Uwierzytelnianie">
Uwierzytelnianie przebiega według standardowej kolejności dostawców. `DEEPGRAM_API_KEY` to
najprostsza ścieżka.
</Accordion>
<Accordion title="Proxy i niestandardowe endpointy">
Nadpisz endpointy lub nagłówki za pomocą `tools.media.audio.baseUrl` i
`tools.media.audio.headers`, gdy używasz proxy.
</Accordion>
<Accordion title="Zachowanie wyjścia">
Wyjście podlega tym samym zasadom audio co u innych dostawców (limity rozmiaru, timeouty,
wstrzykiwanie transkrypcji).
</Accordion>
</AccordionGroup>
<Note>
Transkrypcja Deepgram działa **tylko dla nagrań wstępnie zarejestrowanych** (nie dla streamingu w czasie rzeczywistym). OpenClaw
przesyła cały plik audio i czeka na pełną transkrypcję, zanim wstrzyknie
ją do rozmowy.
</Note>
## Powiązane
<CardGroup cols={2}>
<Card title="Narzędzia mediów" href="/tools/media" icon="photo-film">
Przegląd pipeline przetwarzania audio, obrazów i wideo.
</Card>
<Card title="Konfiguracja" href="/pl/gateway/configuration" icon="gear">
Pełna referencja konfiguracji, w tym ustawienia narzędzi mediów.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Typowe problemy i kroki debugowania.
</Card>
<Card title="FAQ" href="/pl/help/faq" icon="circle-question">
Najczęściej zadawane pytania dotyczące konfiguracji OpenClaw.
</Card>
</CardGroup>

View File

@ -1,60 +1,103 @@
---
read_when:
- Chcesz używać DeepSeek z OpenClaw
- Potrzebujesz zmiennej środowiskowej klucza API lub opcji uwierzytelniania CLI
- Potrzebujesz zmiennej środowiskowej klucza API lub wyboru uwierzytelniania w CLI
summary: Konfiguracja DeepSeek (uwierzytelnianie + wybór modelu)
title: DeepSeek
x-i18n:
generated_at: "2026-04-05T14:02:53Z"
generated_at: "2026-04-12T23:30:33Z"
model: gpt-5.4
provider: openai
source_hash: 35f339ca206399496ce094eb8350e0870029ce9605121bcf86c4e9b94f3366c6
source_hash: ad06880bd1ab89f72f9e31f4927e2c099dcf6b4e0ff2b3fcc91a24468fbc089d
source_path: providers/deepseek.md
workflow: 15
---
# DeepSeek
[DeepSeek](https://www.deepseek.com) oferuje potężne modele AI z interfejsem API zgodnym z OpenAI.
[DeepSeek](https://www.deepseek.com) oferuje zaawansowane modele AI z API zgodnym z OpenAI.
- Provider: `deepseek`
- Uwierzytelnianie: `DEEPSEEK_API_KEY`
- API: zgodne z OpenAI
- Base URL: `https://api.deepseek.com`
| Właściwość | Wartość |
| ---------- | ------------------------- |
| Dostawca | `deepseek` |
| Uwierzytelnianie | `DEEPSEEK_API_KEY` |
| API | zgodne z OpenAI |
| Base URL | `https://api.deepseek.com` |
## Szybki start
## Pierwsze kroki
Ustaw klucz API (zalecane: zapisz go dla Gateway):
<Steps>
<Step title="Pobierz swój klucz API">
Utwórz klucz API na stronie [platform.deepseek.com](https://platform.deepseek.com/api_keys).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice deepseek-api-key
```
```bash
openclaw onboard --auth-choice deepseek-api-key
```
To poprosi o Twój klucz API i ustawi `deepseek/deepseek-chat` jako model domyślny.
To poprosi o podanie klucza API i ustawi `deepseek/deepseek-chat` jako model domyślny.
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider deepseek
```
</Step>
</Steps>
## Przykład nieinteraktywny
<AccordionGroup>
<Accordion title="Konfiguracja nieinteraktywna">
W przypadku instalacji skryptowych lub bezobsługowych przekaż wszystkie flagi bezpośrednio:
```bash
openclaw onboard --non-interactive \
--mode local \
--auth-choice deepseek-api-key \
--deepseek-api-key "$DEEPSEEK_API_KEY" \
--skip-health \
--accept-risk
```
```bash
openclaw onboard --non-interactive \
--mode local \
--auth-choice deepseek-api-key \
--deepseek-api-key "$DEEPSEEK_API_KEY" \
--skip-health \
--accept-risk
```
## Uwaga dotycząca środowiska
</Accordion>
</AccordionGroup>
<Warning>
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `DEEPSEEK_API_KEY`
jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
jest dostępne dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
`env.shellEnv`).
</Warning>
## Wbudowany katalog
| Odwołanie do modelu | Nazwa | Wejście | Kontekst | Maks. wyjście | Uwagi |
| ---------------------------- | ----------------- | ------- | -------- | ------------- | ------------------------------------------------- |
| `deepseek/deepseek-chat` | DeepSeek Chat | text | 131,072 | 8,192 | Model domyślny; powierzchnia DeepSeek V3.2 bez trybu myślenia |
| `deepseek/deepseek-reasoner` | DeepSeek Reasoner | text | 131,072 | 65,536 | Powierzchnia V3.2 z obsługą rozumowania |
| Odwołanie do modelu | Nazwa | Wejście | Kontekst | Maks. wyjście | Uwagi |
| ---------------------------- | ----------------- | ------- | -------- | ------------- | ------------------------------------------------ |
| `deepseek/deepseek-chat` | DeepSeek Chat | text | 131,072 | 8,192 | Model domyślny; powierzchnia DeepSeek V3.2 bez myślenia |
| `deepseek/deepseek-reasoner` | DeepSeek Reasoner | text | 131,072 | 65,536 | Powierzchnia V3.2 z obsługą rozumowania |
Oba dołączone modele obecnie deklarują w kodzie źródłowym zgodność ze strumieniowaniem użycia.
<Tip>
Oba dołączone modele obecnie deklarują w źródle zgodność z użyciem strumieniowym.
</Tip>
Pobierz swój klucz API na stronie [platform.deepseek.com](https://platform.deepseek.com/api_keys).
## Przykład konfiguracji
```json5
{
env: { DEEPSEEK_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "deepseek/deepseek-chat" },
},
},
}
```
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełna dokumentacja konfiguracji agentów, modeli i dostawców.
</Card>
</CardGroup>

View File

@ -1,60 +1,70 @@
---
read_when:
- Chcesz używać generowania obrazów fal w OpenClaw
- Potrzebujesz przepływu auth `FAL_KEY`
- Chcesz używać domyślnych ustawień fal dla `image_generate` lub `video_generate`
summary: Konfiguracja generowania obrazów i wideo fal w OpenClaw
- Potrzebujesz przepływu uwierzytelniania `FAL_KEY`
- Chcesz poznać domyślne ustawienia fal dla `image_generate` lub `video_generate`
summary: konfiguracja generowania obrazów i wideo fal w OpenClaw
title: fal
x-i18n:
generated_at: "2026-04-11T02:47:24Z"
generated_at: "2026-04-12T23:30:35Z"
model: gpt-5.4
provider: openai
source_hash: 9bfe4f69124e922a79a516a1bd78f0c00f7a45f3c6f68b6d39e0d196fa01beb3
source_hash: ff275233179b4808d625383efe04189ad9e92af09944ba39f1e953e77378e347
source_path: providers/fal.md
workflow: 15
---
# fal
OpenClaw zawiera wbudowanego providera `fal` do hostowanego generowania obrazów i wideo.
OpenClaw dostarcza dołączonego dostawcę `fal` do hostowanego generowania obrazów i wideo.
- Provider: `fal`
- Auth: `FAL_KEY` (kanoniczne; `FAL_API_KEY` działa również jako fallback)
- API: endpointy modeli fal
| Właściwość | Wartość |
| ---------- | -------------------------------------------------------------- |
| Dostawca | `fal` |
| Uwierzytelnianie | `FAL_KEY` (kanoniczne; `FAL_API_KEY` działa także jako fallback) |
| API | endpointy modeli fal |
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
```bash
openclaw onboard --auth-choice fal-api-key
```
2. Ustaw domyślny model obrazów:
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "fal/fal-ai/flux/dev",
<Steps>
<Step title="Ustaw klucz API">
```bash
openclaw onboard --auth-choice fal-api-key
```
</Step>
<Step title="Ustaw domyślny model obrazu">
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "fal/fal-ai/flux/dev",
},
},
},
},
},
}
```
}
```
</Step>
</Steps>
## Generowanie obrazów
Wbudowany provider generowania obrazów `fal` domyślnie używa
Dołączony dostawca generowania obrazów `fal` domyślnie używa
`fal/fal-ai/flux/dev`.
- Generowanie: do 4 obrazów na żądanie
- Tryb edycji: włączony, 1 obraz referencyjny
- Obsługuje `size`, `aspectRatio` i `resolution`
- Aktualne zastrzeżenie dotyczące edycji: endpoint edycji obrazów fal **nie** obsługuje nadpisań `aspectRatio`
| Możliwość | Wartość |
| ------------- | -------------------------- |
| Maks. liczba obrazów | 4 na żądanie |
| Tryb edycji | Włączony, 1 obraz referencyjny |
| Nadpisania rozmiaru | Obsługiwane |
| Proporcje obrazu | Obsługiwane |
| Rozdzielczość | Obsługiwana |
Aby używać fal jako domyślnego providera obrazów:
<Warning>
Endpoint edycji obrazów fal **nie** obsługuje nadpisań `aspectRatio`.
</Warning>
Aby używać fal jako domyślnego dostawcy obrazów:
```json5
{
@ -70,49 +80,73 @@ Aby używać fal jako domyślnego providera obrazów:
## Generowanie wideo
Wbudowany provider generowania wideo `fal` domyślnie używa
Dołączony dostawca generowania wideo `fal` domyślnie używa
`fal/fal-ai/minimax/video-01-live`.
- Tryby: text-to-video i przepływy z pojedynczym obrazem referencyjnym
- Runtime: przepływ submit/status/result oparty na kolejce dla długotrwałych zadań
- Odwołanie do modelu HeyGen video-agent:
- `fal/fal-ai/heygen/v2/video-agent`
- Odwołania do modeli Seedance 2.0:
- `fal/bytedance/seedance-2.0/fast/text-to-video`
- `fal/bytedance/seedance-2.0/fast/image-to-video`
- `fal/bytedance/seedance-2.0/text-to-video`
- `fal/bytedance/seedance-2.0/image-to-video`
| Możliwość | Wartość |
| --------- | ------------------------------------------------------------ |
| Tryby | Tekst-na-wideo, pojedynczy obraz referencyjny |
| Runtime | Przepływ submit/status/result oparty na kolejce dla długotrwałych zadań |
Aby używać Seedance 2.0 jako domyślnego modelu wideo:
<AccordionGroup>
<Accordion title="Dostępne modele wideo">
**HeyGen video-agent:**
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "fal/bytedance/seedance-2.0/fast/text-to-video",
- `fal/fal-ai/heygen/v2/video-agent`
**Seedance 2.0:**
- `fal/bytedance/seedance-2.0/fast/text-to-video`
- `fal/bytedance/seedance-2.0/fast/image-to-video`
- `fal/bytedance/seedance-2.0/text-to-video`
- `fal/bytedance/seedance-2.0/image-to-video`
</Accordion>
<Accordion title="Przykład konfiguracji Seedance 2.0">
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "fal/bytedance/seedance-2.0/fast/text-to-video",
},
},
},
},
},
}
```
}
```
</Accordion>
Aby używać HeyGen video-agent jako domyślnego modelu wideo:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "fal/fal-ai/heygen/v2/video-agent",
<Accordion title="Przykład konfiguracji HeyGen video-agent">
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "fal/fal-ai/heygen/v2/video-agent",
},
},
},
},
},
}
```
}
```
</Accordion>
</AccordionGroup>
<Tip>
Użyj `openclaw models list --provider fal`, aby zobaczyć pełną listę dostępnych modeli fal,
w tym wszelkie ostatnio dodane pozycje.
</Tip>
## Powiązane
- [Generowanie obrazów](/pl/tools/image-generation)
- [Generowanie wideo](/pl/tools/video-generation)
- [Dokumentacja konfiguracji](/pl/gateway/configuration-reference#agent-defaults)
<CardGroup cols={2}>
<Card title="Generowanie obrazów" href="/pl/tools/image-generation" icon="image">
Wspólne parametry narzędzia obrazów i wybór dostawcy.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Wspólne parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference#agent-defaults" icon="gear">
Domyślne ustawienia agenta, w tym wybór modelu obrazu i wideo.
</Card>
</CardGroup>

View File

@ -1,39 +1,52 @@
---
read_when:
- Chcesz używać Fireworks z OpenClaw
- Potrzebujesz zmiennej env z kluczem API Fireworks lub domyślnego identyfikatora modelu
- Potrzebujesz zmiennej środowiskowej z kluczem API Fireworks albo domyślnego ID modelu
summary: Konfiguracja Fireworks (uwierzytelnianie + wybór modelu)
title: Fireworks
x-i18n:
generated_at: "2026-04-05T14:02:52Z"
generated_at: "2026-04-12T23:30:49Z"
model: gpt-5.4
provider: openai
source_hash: 20083d5c248abd9a7223e6d188f0265ae27381940ee0067dff6d1d46d908c552
source_hash: 1a85d9507c19e275fdd846a303d844eda8045d008774d4dde1eae408e8716b6f
source_path: providers/fireworks.md
workflow: 15
---
# Fireworks
[Fireworks](https://fireworks.ai) udostępnia modele open-weight i routowane przez API zgodne z OpenAI. OpenClaw zawiera teraz dołączony plugin providera Fireworks.
[Fireworks](https://fireworks.ai) udostępnia modele open-weight i routowane przez API zgodne z OpenAI. OpenClaw zawiera dołączony Plugin dostawcy Fireworks.
- Provider: `fireworks`
- Uwierzytelnianie: `FIREWORKS_API_KEY`
- API: zgodne z OpenAI chat/completions
- Base URL: `https://api.fireworks.ai/inference/v1`
- Model domyślny: `fireworks/accounts/fireworks/routers/kimi-k2p5-turbo`
| Właściwość | Wartość |
| -------------- | ------------------------------------------------------ |
| Dostawca | `fireworks` |
| Uwierzytelnianie | `FIREWORKS_API_KEY` |
| API | Zgodne z OpenAI chat/completions |
| Bazowy URL | `https://api.fireworks.ai/inference/v1` |
| Model domyślny | `fireworks/accounts/fireworks/routers/kimi-k2p5-turbo` |
## Szybki start
## Pierwsze kroki
Skonfiguruj uwierzytelnianie Fireworks przez onboarding:
<Steps>
<Step title="Skonfiguruj uwierzytelnianie Fireworks przez onboarding">
```bash
openclaw onboard --auth-choice fireworks-api-key
```
```bash
openclaw onboard --auth-choice fireworks-api-key
```
To zapisuje Twój klucz Fireworks w konfiguracji OpenClaw i ustawia model startowy Fire Pass jako domyślny.
To zapisuje twój klucz Fireworks w config OpenClaw i ustawia startowy model Fire Pass jako domyślny.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider fireworks
```
</Step>
</Steps>
## Przykład nieinteraktywny
W przypadku konfiguracji skryptowych lub CI przekaż wszystkie wartości w wierszu poleceń:
```bash
openclaw onboard --non-interactive \
--mode local \
@ -43,23 +56,19 @@ openclaw onboard --non-interactive \
--accept-risk
```
## Uwaga dotycząca środowiska
Jeśli Gateway działa poza twoją interaktywną powłoką, upewnij się, że `FIREWORKS_API_KEY`
jest dostępne również dla tego procesu. Klucz znajdujący się tylko w `~/.profile`
nie pomoże demonowi launchd/systemd, chyba że to środowisko również zostanie tam zaimportowane.
## Wbudowany katalog
| Model ref | Name | Input | Context | Max output | Notes |
| ------------------------------------------------------ | --------------------------- | ---------- | ------- | ---------- | ------------------------------------------ |
| `fireworks/accounts/fireworks/routers/kimi-k2p5-turbo` | Kimi K2.5 Turbo (Fire Pass) | text,image | 256,000 | 256,000 | Domyślny dołączony model startowy w Fireworks |
| Odwołanie modelu | Nazwa | Wejście | Kontekst | Maks. wyjście | Uwagi |
| ----------------------------------------------------- | --------------------------- | ---------- | -------- | ------------- | ------------------------------------------ |
| `fireworks/accounts/fireworks/routers/kimi-k2p5-turbo` | Kimi K2.5 Turbo (Fire Pass) | text,image | 256,000 | 256,000 | Domyślny dołączony model startowy w Fireworks |
## Niestandardowe identyfikatory modeli Fireworks
<Tip>
Jeśli Fireworks opublikuje nowszy model, taki jak świeże wydanie Qwen lub Gemma, możesz przełączyć się na niego bezpośrednio, używając jego ID modelu Fireworks bez czekania na aktualizację dołączonego katalogu.
</Tip>
OpenClaw akceptuje również dynamiczne identyfikatory modeli Fireworks. Użyj dokładnego identyfikatora modelu lub routera pokazywanego przez Fireworks i poprzedź go prefiksem `fireworks/`.
## Niestandardowe ID modeli Fireworks
Przykład:
OpenClaw akceptuje również dynamiczne ID modeli Fireworks. Użyj dokładnego ID modelu lub routera pokazanego przez Fireworks i poprzedź je `fireworks/`.
```json5
{
@ -73,4 +82,34 @@ Przykład:
}
```
Jeśli Fireworks opublikuje nowszy model, taki jak świeże wydanie Qwen lub Gemma, możesz przełączyć się na niego bezpośrednio, używając jego identyfikatora modelu Fireworks, bez czekania na aktualizację dołączonego katalogu.
<AccordionGroup>
<Accordion title="Jak działa prefiksowanie ID modelu">
Każde odwołanie do modelu Fireworks w OpenClaw zaczyna się od `fireworks/`, po którym następuje dokładne ID lub ścieżka routera z platformy Fireworks. Na przykład:
- Model routera: `fireworks/accounts/fireworks/routers/kimi-k2p5-turbo`
- Model bezpośredni: `fireworks/accounts/fireworks/models/<model-name>`
OpenClaw usuwa prefiks `fireworks/` podczas budowania żądania API i wysyła pozostałą ścieżkę do endpointu Fireworks.
</Accordion>
<Accordion title="Uwaga o środowisku">
Jeśli Gateway działa poza Twoją interaktywną powłoką, upewnij się, że `FIREWORKS_API_KEY` jest dostępne również dla tego procesu.
<Warning>
Klucz zapisany tylko w `~/.profile` nie pomoże demonowi launchd/systemd, jeśli to środowisko nie zostanie tam również zaimportowane. Ustaw klucz w `~/.openclaw/.env` albo przez `env.shellEnv`, aby proces gateway mógł go odczytać.
</Warning>
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Ogólne rozwiązywanie problemów i FAQ.
</Card>
</CardGroup>

View File

@ -1,87 +1,138 @@
---
read_when:
- Chcesz używać GitHub Copilot jako providera modeli
- Chcesz używać GitHub Copilot jako dostawcy modeli
- Potrzebujesz przepływu `openclaw models auth login-github-copilot`
summary: Zaloguj się do GitHub Copilot z OpenClaw za pomocą przepływu device flow
summary: Zaloguj się do GitHub Copilot z OpenClaw przy użyciu device flow
title: GitHub Copilot
x-i18n:
generated_at: "2026-04-05T14:03:04Z"
generated_at: "2026-04-12T23:31:02Z"
model: gpt-5.4
provider: openai
source_hash: 92857c119c314e698f922dbdbbc15d21b64d33a25979a2ec0ac1e82e586db6d6
source_hash: 51fee006e7d4e78e37b0c29356b0090b132de727d99b603441767d3fb642140b
source_path: providers/github-copilot.md
workflow: 15
---
# GitHub Copilot
## Czym jest GitHub Copilot?
GitHub Copilot to asystent programowania AI od GitHub. Zapewnia dostęp do modeli
GitHub Copilot to asystent kodowania AI od GitHub. Zapewnia dostęp do modeli
Copilot dla Twojego konta i planu GitHub. OpenClaw może używać Copilot jako
providera modeli na dwa różne sposoby.
dostawcy modeli na dwa różne sposoby.
## Dwa sposoby używania Copilot w OpenClaw
### 1) Wbudowany provider GitHub Copilot (`github-copilot`)
<Tabs>
<Tab title="Wbudowany dostawca (github-copilot)">
Użyj natywnego przepływu logowania przez urządzenie, aby uzyskać token GitHub, a następnie wymieniaj go na
tokeny API Copilot podczas działania OpenClaw. To **domyślna** i najprostsza ścieżka,
ponieważ nie wymaga VS Code.
Użyj natywnego przepływu logowania urządzenia, aby uzyskać token GitHub, a następnie wymienić go na
tokeny API Copilot podczas działania OpenClaw. To **domyślna** i najprostsza ścieżka,
ponieważ nie wymaga VS Code.
<Steps>
<Step title="Uruchom polecenie logowania">
```bash
openclaw models auth login-github-copilot
```
### 2) Wtyczka Copilot Proxy (`copilot-proxy`)
Zostaniesz poproszony o przejście pod URL i wpisanie jednorazowego kodu. Pozostaw
terminal otwarty do czasu zakończenia procesu.
</Step>
<Step title="Ustaw model domyślny">
```bash
openclaw models set github-copilot/gpt-4o
```
Użyj rozszerzenia VS Code **Copilot Proxy** jako lokalnego mostu. OpenClaw komunikuje się z
endpointem `/v1` proxy i używa listy modeli skonfigurowanej w tym miejscu. Wybierz tę opcję,
jeśli już używasz Copilot Proxy w VS Code lub musisz kierować ruch przez nie.
Musisz włączyć wtyczkę i utrzymywać uruchomione rozszerzenie VS Code.
Albo w konfiguracji:
Używaj GitHub Copilot jako providera modeli (`github-copilot`). Polecenie logowania uruchamia
przepływ device flow GitHub, zapisuje profil uwierzytelniania i aktualizuje konfigurację tak, aby używała tego
profilu.
```json5
{
agents: { defaults: { model: { primary: "github-copilot/gpt-4o" } } },
}
```
</Step>
</Steps>
## Konfiguracja CLI
```bash
openclaw models auth login-github-copilot
```
Pojawi się prośba o odwiedzenie adresu URL i wprowadzenie jednorazowego kodu. Pozostaw terminal
otwarty do czasu zakończenia procesu.
### Opcjonalne skrypty
</Tab>
<Tab title="Plugin Copilot Proxy (copilot-proxy)">
Użyj rozszerzenia VS Code **Copilot Proxy** jako lokalnego mostu. OpenClaw komunikuje się z
endpointem `/v1` serwera proxy i używa listy modeli skonfigurowanej tam przez Ciebie.
<Note>
Wybierz to, jeśli już uruchamiasz Copilot Proxy w VS Code lub potrzebujesz kierować ruch
przez niego. Musisz włączyć Plugin i utrzymywać uruchomione rozszerzenie VS Code.
</Note>
</Tab>
</Tabs>
## Opcjonalne flagi
| Flaga | Opis |
| -------------- | ----------------------------------------------------- |
| `--yes` | Pomija monit o potwierdzenie |
| `--set-default` | Ustawia także zalecany domyślny model tego dostawcy |
```bash
# Pomiń potwierdzenie
openclaw models auth login-github-copilot --yes
```
Aby w jednym kroku zastosować również zalecany domyślny model providera, użyj zamiast tego
ogólnego polecenia uwierzytelniania:
```bash
# Zaloguj się i ustaw model domyślny w jednym kroku
openclaw models auth login --provider github-copilot --method device --set-default
```
## Ustaw model domyślny
<AccordionGroup>
<Accordion title="Wymagany interaktywny TTY">
Przepływ logowania przez urządzenie wymaga interaktywnego TTY. Uruchom go bezpośrednio w
terminalu, a nie w nieinteraktywnym skrypcie ani potoku CI.
</Accordion>
```bash
openclaw models set github-copilot/gpt-4o
```
<Accordion title="Dostępność modeli zależy od Twojego planu">
Dostępność modeli Copilot zależy od Twojego planu GitHub. Jeśli model
zostanie odrzucony, spróbuj innego identyfikatora (na przykład `github-copilot/gpt-4.1`).
</Accordion>
### Fragment konfiguracji
<Accordion title="Wybór transportu">
Identyfikatory modeli Claude automatycznie używają transportu Anthropic Messages. Modele GPT,
serii o i Gemini zachowują transport OpenAI Responses. OpenClaw
wybiera właściwy transport na podstawie odwołania do modelu.
</Accordion>
```json5
{
agents: { defaults: { model: { primary: "github-copilot/gpt-4o" } } },
}
```
<Accordion title="Kolejność rozpoznawania zmiennych środowiskowych">
OpenClaw rozpoznaje uwierzytelnianie Copilot ze zmiennych środowiskowych w następującej
kolejności priorytetów:
## Uwagi
| Priorytet | Zmienna | Uwagi |
| --------- | -------------------- | ------------------------------------- |
| 1 | `COPILOT_GITHUB_TOKEN` | Najwyższy priorytet, specyficzna dla Copilot |
| 2 | `GH_TOKEN` | Token GitHub CLI (awaryjnie) |
| 3 | `GITHUB_TOKEN` | Standardowy token GitHub (najniższy) |
- Wymaga interaktywnego TTY; uruchom polecenie bezpośrednio w terminalu.
- Dostępność modeli Copilot zależy od Twojego planu; jeśli model zostanie odrzucony, spróbuj
innego identyfikatora (na przykład `github-copilot/gpt-4.1`).
- Identyfikatory modeli Claude automatycznie używają transportu Anthropic Messages; modele GPT, o-series
i Gemini nadal używają transportu OpenAI Responses.
- Logowanie zapisuje token GitHub w magazynie profili uwierzytelniania i wymienia go na
token API Copilot podczas działania OpenClaw.
Gdy ustawionych jest kilka zmiennych, OpenClaw używa tej o najwyższym priorytecie.
Przepływ logowania przez urządzenie (`openclaw models auth login-github-copilot`) zapisuje
swój token w magazynie profili uwierzytelniania i ma pierwszeństwo przed wszystkimi
zmiennymi środowiskowymi.
</Accordion>
<Accordion title="Przechowywanie tokenu">
Logowanie zapisuje token GitHub w magazynie profili uwierzytelniania i wymienia go
na token API Copilot podczas działania OpenClaw. Nie musisz zarządzać
tokenem ręcznie.
</Accordion>
</AccordionGroup>
<Warning>
Wymaga interaktywnego TTY. Uruchom polecenie logowania bezpośrednio w terminalu, a nie
wewnątrz bezobsługowego skryptu ani zadania CI.
</Warning>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="OAuth i uwierzytelnianie" href="/pl/gateway/authentication" icon="key">
Szczegóły uwierzytelniania i zasady ponownego użycia poświadczeń.
</Card>
</CardGroup>

View File

@ -2,42 +2,58 @@
read_when:
- Chcesz używać modeli GLM w OpenClaw
- Potrzebujesz konwencji nazewnictwa modeli i konfiguracji
summary: Przegląd rodziny modeli GLM oraz sposób używania ich w OpenClaw
title: Modele GLM
summary: Przegląd rodziny modeli GLM + jak używać jej w OpenClaw
title: GLM (Zhipu)
x-i18n:
generated_at: "2026-04-08T06:00:57Z"
generated_at: "2026-04-12T23:30:54Z"
model: gpt-5.4
provider: openai
source_hash: 79a55acfa139847b4b85dbc09f1068cbd2febb1e49f984a23ea9e3b43bc910eb
source_hash: b38f0896c900fae3cf3458ff99938d73fa46973a057d1dd373ae960cb7d2e9b5
source_path: providers/glm.md
workflow: 15
---
# Modele GLM
GLM to **rodzina modeli** (nie firma) dostępna za pośrednictwem platformy Z.AI. W OpenClaw modele
GLM są dostępne przez dostawcę `zai` i identyfikatory modeli takie jak `zai/glm-5`.
GLM to **rodzina modeli** (nie firma) dostępna przez platformę Z.AI. W OpenClaw modele GLM
są dostępne przez dostawcę `zai` i identyfikatory modeli takie jak `zai/glm-5`.
## Konfiguracja CLI
## Pierwsze kroki
```bash
# Ogólna konfiguracja klucza API z automatycznym wykrywaniem punktu końcowego
openclaw onboard --auth-choice zai-api-key
<Steps>
<Step title="Wybierz ścieżkę uwierzytelniania i uruchom onboarding">
Wybierz opcję onboardingu pasującą do Twojego planu Z.AI i regionu:
# Coding Plan Global, zalecane dla użytkowników Coding Plan
openclaw onboard --auth-choice zai-coding-global
| Opcja uwierzytelniania | Najlepsza dla |
| ---------------------- | ------------- |
| `zai-api-key` | Ogólna konfiguracja klucza API z automatycznym wykrywaniem endpointu |
| `zai-coding-global` | Użytkownicy planu Coding Plan (globalnie) |
| `zai-coding-cn` | Użytkownicy planu Coding Plan (region Chiny) |
| `zai-global` | Ogólne API (globalnie) |
| `zai-cn` | Ogólne API (region Chiny) |
# Coding Plan CN (region Chiny), zalecane dla użytkowników Coding Plan
openclaw onboard --auth-choice zai-coding-cn
```bash
# Przykład: ogólne automatyczne wykrywanie
openclaw onboard --auth-choice zai-api-key
# Ogólne API
openclaw onboard --auth-choice zai-global
# Przykład: Coding Plan global
openclaw onboard --auth-choice zai-coding-global
```
# Ogólne API CN (region Chiny)
openclaw onboard --auth-choice zai-cn
```
</Step>
<Step title="Ustaw GLM jako model domyślny">
```bash
openclaw config set agents.defaults.model.primary "zai/glm-5.1"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider zai
```
</Step>
</Steps>
## Fragment konfiguracji
## Przykład konfiguracji
```json5
{
@ -46,30 +62,56 @@ openclaw onboard --auth-choice zai-cn
}
```
`zai-api-key` pozwala OpenClaw wykryć pasujący punkt końcowy Z.AI na podstawie klucza i
automatycznie zastosować poprawny bazowy URL. Użyj jawnych opcji regionalnych, jeśli
chcesz wymusić konkretny wariant Coding Plan lub ogólnego API.
<Tip>
`zai-api-key` pozwala OpenClaw wykryć pasujący endpoint Z.AI na podstawie klucza i
automatycznie zastosować poprawny bazowy URL. Użyj jawnych opcji regionalnych, gdy
chcesz wymusić konkretny plan Coding Plan lub ogólną powierzchnię API.
</Tip>
## Obecnie dołączone modele GLM
## Dołączone modele GLM
OpenClaw obecnie inicjalizuje dołączonego dostawcę `zai` następującymi odwołaniami GLM:
OpenClaw obecnie inicjalizuje dołączonego dostawcę `zai` następującymi referencjami GLM:
- `glm-5.1`
- `glm-5`
- `glm-5-turbo`
- `glm-5v-turbo`
- `glm-4.7`
- `glm-4.7-flash`
- `glm-4.7-flashx`
- `glm-4.6`
- `glm-4.6v`
- `glm-4.5`
- `glm-4.5-air`
- `glm-4.5-flash`
- `glm-4.5v`
| Model | Model |
| --------------- | ---------------- |
| `glm-5.1` | `glm-4.7` |
| `glm-5` | `glm-4.7-flash` |
| `glm-5-turbo` | `glm-4.7-flashx` |
| `glm-5v-turbo` | `glm-4.6` |
| `glm-4.5` | `glm-4.6v` |
| `glm-4.5-air` | |
| `glm-4.5-flash` | |
| `glm-4.5v` | |
## Uwagi
<Note>
Domyślna dołączona referencja modelu to `zai/glm-5.1`. Wersje GLM i ich dostępność
mogą się zmieniać; sprawdź dokumentację Z.AI, aby uzyskać najnowsze informacje.
</Note>
- Wersje GLM i ich dostępność mogą się zmieniać; sprawdź dokumentację Z.AI, aby uzyskać najnowsze informacje.
- Domyślnym dołączonym odwołaniem do modelu jest `zai/glm-5.1`.
- Szczegóły dostawcy znajdziesz w [/providers/zai](/pl/providers/zai).
## Uwagi zaawansowane
<AccordionGroup>
<Accordion title="Automatyczne wykrywanie endpointu">
Gdy używasz opcji uwierzytelniania `zai-api-key`, OpenClaw analizuje format klucza,
aby określić poprawny bazowy URL Z.AI. Jawne opcje regionalne
(`zai-coding-global`, `zai-coding-cn`, `zai-global`, `zai-cn`) zastępują
automatyczne wykrywanie i przypinają endpoint bezpośrednio.
</Accordion>
<Accordion title="Szczegóły dostawcy">
Modele GLM są obsługiwane przez dostawcę runtime `zai`. Pełną konfigurację dostawcy,
regionalne endpointy i dodatkowe możliwości znajdziesz w
[dokumentacji dostawcy Z.AI](/pl/providers/zai).
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Dostawca Z.AI" href="/pl/providers/zai" icon="server">
Pełna konfiguracja dostawcy Z.AI i regionalne endpointy.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
</CardGroup>

View File

@ -1,14 +1,14 @@
---
read_when:
- Chcesz używać modeli Google Gemini z OpenClaw
- Potrzebujesz klucza API lub przepływu uwierzytelniania OAuth
summary: Konfiguracja Google Gemini (klucz API + OAuth, generowanie obrazów, rozumienie multimediów, wyszukiwanie w sieci)
- Potrzebujesz klucza API albo przepływu uwierzytelniania OAuth
summary: Konfiguracja Google Gemini (klucz API + OAuth, generowanie obrazów, rozumienie mediów, wyszukiwanie w sieci)
title: Google (Gemini)
x-i18n:
generated_at: "2026-04-08T09:44:16Z"
generated_at: "2026-04-12T23:31:06Z"
model: gpt-5.4
provider: openai
source_hash: fad2ff68987301bd86145fa6e10de8c7b38d5bd5dbcd13db9c883f7f5b9a4e01
source_hash: 64b848add89061b208a5d6b19d206c433cace5216a0ca4b63d56496aecbde452
source_path: providers/google.md
workflow: 15
---
@ -16,7 +16,7 @@ x-i18n:
# Google (Gemini)
Plugin Google zapewnia dostęp do modeli Gemini przez Google AI Studio, a także
generowanie obrazów, rozumienie multimediów (obraz/audio/wideo) oraz wyszukiwanie w sieci przez
generowanie obrazów, rozumienie mediów (obraz/audio/wideo) oraz wyszukiwanie w sieci przez
Gemini Grounding.
- Dostawca: `google`
@ -24,134 +24,145 @@ Gemini Grounding.
- API: Google Gemini API
- Alternatywny dostawca: `google-gemini-cli` (OAuth)
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
Wybierz preferowaną metodę uwierzytelniania i wykonaj kroki konfiguracji.
```bash
openclaw onboard --auth-choice gemini-api-key
```
<Tabs>
<Tab title="Klucz API">
**Najlepsze do:** standardowego dostępu do Gemini API przez Google AI Studio.
2. Ustaw model domyślny:
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice gemini-api-key
```
```json5
{
agents: {
defaults: {
model: { primary: "google/gemini-3.1-pro-preview" },
},
},
}
```
Albo przekaż klucz bezpośrednio:
## Przykład nieinteraktywny
```bash
openclaw onboard --non-interactive \
--mode local \
--auth-choice gemini-api-key \
--gemini-api-key "$GEMINI_API_KEY"
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "google/gemini-3.1-pro-preview" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider google
```
</Step>
</Steps>
```bash
openclaw onboard --non-interactive \
--mode local \
--auth-choice gemini-api-key \
--gemini-api-key "$GEMINI_API_KEY"
```
<Tip>
Zmienne środowiskowe `GEMINI_API_KEY` i `GOOGLE_API_KEY` są obie akceptowane. Użyj tej, którą masz już skonfigurowaną.
</Tip>
## OAuth (Gemini CLI)
</Tab>
Alternatywny dostawca `google-gemini-cli` używa PKCE OAuth zamiast klucza API.
Jest to nieoficjalna integracja; niektórzy użytkownicy zgłaszają
ograniczenia konta. Używasz na własne ryzyko.
<Tab title="Gemini CLI (OAuth)">
**Najlepsze do:** ponownego wykorzystania istniejącego logowania Gemini CLI przez PKCE OAuth zamiast osobnego klucza API.
- Model domyślny: `google-gemini-cli/gemini-3-flash-preview`
- Alias: `gemini-cli`
- Wymaganie instalacyjne: lokalne Gemini CLI dostępne jako `gemini`
- Homebrew: `brew install gemini-cli`
- npm: `npm install -g @google/gemini-cli`
- Logowanie:
<Warning>
Dostawca `google-gemini-cli` to nieoficjalna integracja. Niektórzy użytkownicy
zgłaszają ograniczenia konta przy takim użyciu OAuth. Korzystasz na własne ryzyko.
</Warning>
```bash
openclaw models auth login --provider google-gemini-cli --set-default
```
<Steps>
<Step title="Zainstaluj Gemini CLI">
Lokalne polecenie `gemini` musi być dostępne w `PATH`.
Zmienne środowiskowe:
```bash
# Homebrew
brew install gemini-cli
- `OPENCLAW_GEMINI_OAUTH_CLIENT_ID`
- `OPENCLAW_GEMINI_OAUTH_CLIENT_SECRET`
# lub npm
npm install -g @google/gemini-cli
```
(Lub warianty `GEMINI_CLI_*`.)
OpenClaw obsługuje zarówno instalacje Homebrew, jak i globalne instalacje npm, w tym
typowe układy Windows/npm.
</Step>
<Step title="Zaloguj się przez OAuth">
```bash
openclaw models auth login --provider google-gemini-cli --set-default
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider google-gemini-cli
```
</Step>
</Steps>
Jeśli żądania OAuth Gemini CLI nie działają po zalogowaniu, ustaw
`GOOGLE_CLOUD_PROJECT` lub `GOOGLE_CLOUD_PROJECT_ID` na hoście gatewaya i
spróbuj ponownie.
- Model domyślny: `google-gemini-cli/gemini-3-flash-preview`
- Alias: `gemini-cli`
Jeśli logowanie nie powiedzie się przed rozpoczęciem przepływu w przeglądarce, upewnij się, że lokalne polecenie `gemini`
jest zainstalowane i dostępne w `PATH`. OpenClaw obsługuje zarówno instalacje Homebrew,
jak i globalne instalacje npm, w tym typowe układy Windows/npm.
**Zmienne środowiskowe:**
Uwagi dotyczące użycia JSON w Gemini CLI:
- `OPENCLAW_GEMINI_OAUTH_CLIENT_ID`
- `OPENCLAW_GEMINI_OAUTH_CLIENT_SECRET`
- Tekst odpowiedzi pochodzi z pola JSON `response` CLI.
- Użycie przełącza się awaryjnie na `stats`, gdy CLI pozostawia `usage` puste.
- `stats.cached` jest normalizowane do OpenClaw `cacheRead`.
- Jeśli brakuje `stats.input`, OpenClaw wylicza tokeny wejściowe z
`stats.input_tokens - stats.cached`.
(Albo warianty `GEMINI_CLI_*`.)
<Note>
Jeśli żądania OAuth Gemini CLI kończą się niepowodzeniem po zalogowaniu, ustaw `GOOGLE_CLOUD_PROJECT` lub
`GOOGLE_CLOUD_PROJECT_ID` na hoście Gateway i spróbuj ponownie.
</Note>
<Note>
Jeśli logowanie kończy się niepowodzeniem przed uruchomieniem przepływu w przeglądarce, upewnij się, że lokalne polecenie `gemini`
jest zainstalowane i dostępne w `PATH`.
</Note>
Dostawca `google-gemini-cli` działający wyłącznie przez OAuth to osobna powierzchnia
inferencji tekstu. Generowanie obrazów, rozumienie mediów i Gemini Grounding pozostają przy
ID dostawcy `google`.
</Tab>
</Tabs>
## Możliwości
| Możliwość | Obsługiwane |
| --------------------- | ----------------- |
| Uzupełnianie czatu | Tak |
| Generowanie obrazów | Tak |
| Generowanie muzyki | Tak |
| Rozumienie obrazów | Tak |
| Transkrypcja audio | Tak |
| Rozumienie wideo | Tak |
| Wyszukiwanie w sieci (Grounding) | Tak |
| Thinking/reasoning | Tak (Gemini 3.1+) |
| Modele Gemma 4 | Tak |
| Możliwość | Obsługiwane |
| --------------------- | ------------------ |
| Chat completions | Tak |
| Generowanie obrazów | Tak |
| Generowanie muzyki | Tak |
| Rozumienie obrazów | Tak |
| Transkrypcja audio | Tak |
| Rozumienie wideo | Tak |
| Wyszukiwanie w sieci (Grounding) | Tak |
| Thinking/reasoning | Tak (Gemini 3.1+) |
| Modele Gemma 4 | Tak |
Modele Gemma 4 (na przykład `gemma-4-26b-a4b-it`) obsługują tryb thinking. OpenClaw przepisuje `thinkingBudget` na obsługiwane przez Google `thinkingLevel` dla Gemma 4. Ustawienie thinking na `off` zachowuje wyłączony thinking zamiast mapowania na `MINIMAL`.
## Bezpośrednie ponowne użycie pamięci podręcznej Gemini
Dla bezpośrednich uruchomień Gemini API (`api: "google-generative-ai"`), OpenClaw teraz
przekazuje skonfigurowany uchwyt `cachedContent` do żądań Gemini.
- Skonfiguruj parametry dla modelu lub globalne za pomocą
`cachedContent` albo starszego `cached_content`
- Jeśli obecne są oba, `cachedContent` ma pierwszeństwo
- Przykładowa wartość: `cachedContents/prebuilt-context`
- Użycie trafienia pamięci podręcznej Gemini jest normalizowane do OpenClaw `cacheRead` z
nadrzędnego `cachedContentTokenCount`
Przykład:
```json5
{
agents: {
defaults: {
models: {
"google/gemini-2.5-pro": {
params: {
cachedContent: "cachedContents/prebuilt-context",
},
},
},
},
},
}
```
<Tip>
Modele Gemma 4 (na przykład `gemma-4-26b-a4b-it`) obsługują tryb thinking. OpenClaw
przepisuje `thinkingBudget` na obsługiwany przez Google `thinkingLevel` dla Gemma 4.
Ustawienie thinking na `off` zachowuje wyłączone thinking zamiast mapować je na
`MINIMAL`.
</Tip>
## Generowanie obrazów
Dołączony dostawca generowania obrazów `google` domyślnie używa
`google/gemini-3.1-flash-image-preview`.
- Obsługuje także `google/gemini-3-pro-image-preview`
- Obsługuje również `google/gemini-3-pro-image-preview`
- Generowanie: do 4 obrazów na żądanie
- Tryb edycji: włączony, do 5 obrazów wejściowych
- Kontrola geometrii: `size`, `aspectRatio` i `resolution`
Dostawca `google-gemini-cli`, dostępny tylko przez OAuth, jest osobną powierzchnią
inferencji tekstowej. Generowanie obrazów, rozumienie multimediów i Gemini Grounding pozostają na
identyfikatorze dostawcy `google`.
- Kontrolki geometrii: `size`, `aspectRatio` i `resolution`
Aby używać Google jako domyślnego dostawcy obrazów:
@ -167,18 +178,19 @@ Aby używać Google jako domyślnego dostawcy obrazów:
}
```
Zobacz [Generowanie obrazów](/pl/tools/image-generation), aby poznać wspólne
parametry narzędzia, wybór dostawcy i zachowanie awaryjne.
<Note>
Zobacz [Generowanie obrazów](/pl/tools/image-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
## Generowanie wideo
Dołączony plugin `google` rejestruje także generowanie wideo przez współdzielone
Dołączony Plugin `google` rejestruje również generowanie wideo przez współdzielone
narzędzie `video_generate`.
- Domyślny model wideo: `google/veo-3.1-fast-generate-preview`
- Tryby: tekst-na-wideo, obraz-na-wideo oraz przepływy z odniesieniem do pojedynczego wideo
- Tryby: tekst na wideo, obraz na wideo i przepływy pojedynczego wideo referencyjnego
- Obsługuje `aspectRatio`, `resolution` i `audio`
- Bieżące ograniczenie czasu trwania: **od 4 do 8 sekund**
- Obecne ograniczenie czasu trwania: **od 4 do 8 sekund**
Aby używać Google jako domyślnego dostawcy wideo:
@ -194,20 +206,21 @@ Aby używać Google jako domyślnego dostawcy wideo:
}
```
Zobacz [Generowanie wideo](/pl/tools/video-generation), aby poznać wspólne
parametry narzędzia, wybór dostawcy i zachowanie awaryjne.
<Note>
Zobacz [Generowanie wideo](/pl/tools/video-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
## Generowanie muzyki
Dołączony plugin `google` rejestruje także generowanie muzyki przez współdzielone
Dołączony Plugin `google` rejestruje również generowanie muzyki przez współdzielone
narzędzie `music_generate`.
- Domyślny model muzyki: `google/lyria-3-clip-preview`
- Obsługuje także `google/lyria-3-pro-preview`
- Domyślny model muzyczny: `google/lyria-3-clip-preview`
- Obsługuje również `google/lyria-3-pro-preview`
- Kontrolki promptu: `lyrics` i `instrumental`
- Format wyjściowy: domyślnie `mp3`, a także `wav` w `google/lyria-3-pro-preview`
- Wejścia referencyjne: do 10 obrazów
- Uruchomienia oparte na sesji są odłączane przez współdzielony przepływ zadań/statusu, w tym `action: "status"`
- Uruchomienia oparte na sesji odłączają się przez współdzielony przepływ task/status, w tym `action: "status"`
Aby używać Google jako domyślnego dostawcy muzyki:
@ -223,11 +236,74 @@ Aby używać Google jako domyślnego dostawcy muzyki:
}
```
Zobacz [Generowanie muzyki](/pl/tools/music-generation), aby poznać wspólne
parametry narzędzia, wybór dostawcy i zachowanie awaryjne.
<Note>
Zobacz [Generowanie muzyki](/pl/tools/music-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
## Uwaga dotycząca środowiska
## Konfiguracja zaawansowana
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `GEMINI_API_KEY`
jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
`env.shellEnv`).
<AccordionGroup>
<Accordion title="Bezpośrednie ponowne użycie cache Gemini">
Dla bezpośrednich uruchomień Gemini API (`api: "google-generative-ai"`), OpenClaw
przekazuje skonfigurowany uchwyt `cachedContent` do żądań Gemini.
- Skonfiguruj parametry per model lub globalnie za pomocą
`cachedContent` albo starszego `cached_content`
- Jeśli obecne są oba, `cachedContent` ma pierwszeństwo
- Przykładowa wartość: `cachedContents/prebuilt-context`
- Zużycie cache-hit Gemini jest normalizowane do `cacheRead` w OpenClaw z
nadrzędnego `cachedContentTokenCount`
```json5
{
agents: {
defaults: {
models: {
"google/gemini-2.5-pro": {
params: {
cachedContent: "cachedContents/prebuilt-context",
},
},
},
},
},
}
```
</Accordion>
<Accordion title="Uwagi o użyciu JSON Gemini CLI">
Przy użyciu dostawcy OAuth `google-gemini-cli` OpenClaw normalizuje
wyjście JSON CLI w następujący sposób:
- Tekst odpowiedzi pochodzi z pola `response` w JSON CLI.
- Zużycie wraca do `stats`, gdy CLI pozostawia `usage` puste.
- `stats.cached` jest normalizowane do `cacheRead` w OpenClaw.
- Jeśli brakuje `stats.input`, OpenClaw wyprowadza tokeny wejściowe z
`stats.input_tokens - stats.cached`.
</Accordion>
<Accordion title="Konfiguracja środowiska i demona">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `GEMINI_API_KEY`
jest dostępne dla tego procesu (na przykład w `~/.openclaw/.env` albo przez
`env.shellEnv`).
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Generowanie obrazów" href="/pl/tools/image-generation" icon="image">
Wspólne parametry narzędzia obrazów i wybór dostawcy.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Wspólne parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Generowanie muzyki" href="/pl/tools/music-generation" icon="music">
Wspólne parametry narzędzia muzyki i wybór dostawcy.
</Card>
</CardGroup>

View File

@ -1,51 +1,55 @@
---
read_when:
- Chcesz używać Groq z OpenClaw
- Potrzebujesz zmiennej środowiskowej klucza API albo wyboru auth w CLI
- Potrzebujesz zmiennej env klucza API albo wyboru auth w CLI
summary: Konfiguracja Groq (auth + wybór modelu)
title: Groq
x-i18n:
generated_at: "2026-04-05T14:03:00Z"
generated_at: "2026-04-12T23:31:10Z"
model: gpt-5.4
provider: openai
source_hash: 7e27532cafcdaf1ac336fa310e08e4e3245d2d0eb0e94e0bcf42c532c6a9a80b
source_hash: 613289efc36fedd002e1ebf9366e0e7119ea1f9e14a1dae773b90ea57100baee
source_path: providers/groq.md
workflow: 15
---
# Groq
[Groq](https://groq.com) zapewnia ultraszybką inferencję na modelach open-source
(Llama, Gemma, Mistral i innych) przy użyciu własnego sprzętu LPU. OpenClaw łączy
się z Groq przez jego API zgodne z OpenAI.
[Groq](https://groq.com) zapewnia ultraszybkie wnioskowanie na modelach open source
(Llama, Gemma, Mistral i innych) z użyciem niestandardowego sprzętu LPU. OpenClaw łączy się
z Groq przez jego API zgodne z OpenAI.
- Dostawca: `groq`
- Auth: `GROQ_API_KEY`
- API: zgodne z OpenAI
| Właściwość | Wartość |
| ---------- | ----------------- |
| Dostawca | `groq` |
| Auth | `GROQ_API_KEY` |
| API | zgodne z OpenAI |
## Szybki start
## Pierwsze kroki
1. Pobierz klucz API z [console.groq.com/keys](https://console.groq.com/keys).
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API na stronie [console.groq.com/keys](https://console.groq.com/keys).
</Step>
<Step title="Ustaw klucz API">
```bash
export GROQ_API_KEY="gsk_..."
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "groq/llama-3.3-70b-versatile" },
},
},
}
```
</Step>
</Steps>
2. Ustaw klucz API:
```bash
export GROQ_API_KEY="gsk_..."
```
3. Ustaw model domyślny:
```json5
{
agents: {
defaults: {
model: { primary: "groq/llama-3.3-70b-versatile" },
},
},
}
```
## Przykład pliku konfiguracyjnego
### Przykład pliku konfiguracji
```json5
{
@ -58,11 +62,29 @@ export GROQ_API_KEY="gsk_..."
}
```
## Dostępne modele
Katalog modeli Groq często się zmienia. Uruchom `openclaw models list | grep groq`,
aby zobaczyć aktualnie dostępne modele, albo sprawdź
[console.groq.com/docs/models](https://console.groq.com/docs/models).
| Model | Uwagi |
| ----------------------------- | ---------------------------------- |
| **Llama 3.3 70B Versatile** | Ogólnego przeznaczenia, duży kontekst |
| **Llama 3.1 8B Instant** | Szybki, lekki |
| **Gemma 2 9B** | Kompaktowy, wydajny |
| **Mixtral 8x7B** | Architektura MoE, dobre rozumowanie |
<Tip>
Użyj `openclaw models list --provider groq`, aby uzyskać najbardziej aktualną listę
modeli dostępnych na Twoim koncie.
</Tip>
## Transkrypcja audio
Groq zapewnia także szybką transkrypcję audio opartą na Whisper. Gdy jest skonfigurowany jako dostawca
media-understanding, OpenClaw używa modelu `whisper-large-v3-turbo` Groq
do transkrypcji wiadomości głosowych przez współdzieloną powierzchnię `tools.media.audio`.
Groq zapewnia także szybką transkrypcję audio opartą na Whisper. Gdy jest skonfigurowany jako
dostawca media-understanding, OpenClaw używa modelu Groq `whisper-large-v3-turbo`
do transkrypcji wiadomości głosowych przez wspólną powierzchnię `tools.media.audio`.
```json5
{
@ -76,35 +98,42 @@ do transkrypcji wiadomości głosowych przez współdzieloną powierzchnię `too
}
```
## Uwaga dotycząca środowiska
<AccordionGroup>
<Accordion title="Szczegóły transkrypcji audio">
| Właściwość | Wartość |
|----------|-------|
| Wspólna ścieżka konfiguracji | `tools.media.audio` |
| Domyślny adres URL bazowy | `https://api.groq.com/openai/v1` |
| Model domyślny | `whisper-large-v3-turbo` |
| Endpoint API | zgodny z OpenAI `/audio/transcriptions` |
</Accordion>
Jeśli Gateway działa jako daemon (launchd/systemd), upewnij się, że `GROQ_API_KEY`
jest dostępne dla tego procesu (na przykład w `~/.openclaw/.env` albo przez
`env.shellEnv`).
<Accordion title="Uwaga dotycząca środowiska">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `GROQ_API_KEY` jest
dostępny dla tego procesu (na przykład w `~/.openclaw/.env` albo przez
`env.shellEnv`).
## Uwagi o audio
<Warning>
Klucze ustawione tylko w interaktywnej powłoce nie są widoczne dla procesów
Gateway zarządzanych przez demona. Aby zapewnić trwałą dostępność, użyj `~/.openclaw/.env` albo konfiguracji `env.shellEnv`.
</Warning>
- Współdzielona ścieżka konfiguracji: `tools.media.audio`
- Domyślny podstawowy URL audio Groq: `https://api.groq.com/openai/v1`
- Domyślny model audio Groq: `whisper-large-v3-turbo`
- Transkrypcja audio Groq używa zgodnej z OpenAI ścieżki `/audio/transcriptions`
</Accordion>
</AccordionGroup>
## Dostępne modele
## Powiązane
Katalog modeli Groq często się zmienia. Uruchom `openclaw models list | grep groq`,
aby zobaczyć aktualnie dostępne modele, albo sprawdź
[console.groq.com/docs/models](https://console.groq.com/docs/models).
Popularne opcje obejmują:
- **Llama 3.3 70B Versatile** - ogólnego przeznaczenia, duży kontekst
- **Llama 3.1 8B Instant** - szybki, lekki
- **Gemma 2 9B** - kompaktowy, wydajny
- **Mixtral 8x7B** - architektura MoE, mocne reasoning
## Linki
- [Groq Console](https://console.groq.com)
- [Dokumentacja API](https://console.groq.com/docs)
- [Lista modeli](https://console.groq.com/docs/models)
- [Cennik](https://groq.com/pricing)
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Informacje o konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji, w tym ustawienia dostawcy i audio.
</Card>
<Card title="Konsola Groq" href="https://console.groq.com" icon="arrow-up-right-from-square">
Panel Groq, dokumentacja API i ceny.
</Card>
<Card title="Lista modeli Groq" href="https://console.groq.com/docs/models" icon="list">
Oficjalny katalog modeli Groq.
</Card>
</CardGroup>

View File

@ -1,50 +1,70 @@
---
read_when:
- Chcesz używać Hugging Face Inference z OpenClaw
- Potrzebujesz zmiennej środowiskowej tokena HF lub opcji uwierzytelniania CLI
- Potrzebujesz zmiennej środowiskowej tokenu HF lub opcji uwierzytelniania w CLI
summary: Konfiguracja Hugging Face Inference (uwierzytelnianie + wybór modelu)
title: Hugging Face (Inference)
x-i18n:
generated_at: "2026-04-05T14:03:32Z"
generated_at: "2026-04-12T23:31:15Z"
model: gpt-5.4
provider: openai
source_hash: 692d2caffbaf991670260da393c67ae7e6349b9e1e3ed5cb9a514f8a77192e86
source_hash: 7787fce1acfe81adb5380ab1c7441d661d03c574da07149c037d3b6ba3c8e52a
source_path: providers/huggingface.md
workflow: 15
---
# Hugging Face (Inference)
[Hugging Face Inference Providers](https://huggingface.co/docs/inference-providers) oferują zgodne z OpenAI chat completions przez pojedyncze API routera. Otrzymujesz dostęp do wielu modeli (DeepSeek, Llama i innych) za pomocą jednego tokena. OpenClaw używa **endpointu zgodnego z OpenAI** (tylko chat completions); do text-to-image, embeddingów lub mowy użyj bezpośrednio [klientów HF inference](https://huggingface.co/docs/api-inference/quicktour).
[Dostawcy Hugging Face Inference](https://huggingface.co/docs/inference-providers) oferują zgodne z OpenAI chat completions przez jedno API routera. Otrzymujesz dostęp do wielu modeli (DeepSeek, Llama i innych) za pomocą jednego tokenu. OpenClaw używa **endpointu zgodnego z OpenAI** (tylko chat completions); do text-to-image, embeddings lub mowy używaj bezpośrednio [klientów HF inference](https://huggingface.co/docs/api-inference/quicktour).
- Provider: `huggingface`
- Dostawca: `huggingface`
- Uwierzytelnianie: `HUGGINGFACE_HUB_TOKEN` lub `HF_TOKEN` (token o szczegółowych uprawnieniach z uprawnieniem **Make calls to Inference Providers**)
- API: zgodne z OpenAI (`https://router.huggingface.co/v1`)
- Rozliczenia: jeden token HF; [cennik](https://huggingface.co/docs/inference-providers/pricing) opiera się na stawkach providerów i obejmuje darmowy poziom.
- Rozliczanie: jeden token HF; [cennik](https://huggingface.co/docs/inference-providers/pricing) opiera się na stawkach dostawców i obejmuje darmowy poziom.
## Szybki start
## Pierwsze kroki
1. Utwórz token o szczegółowych uprawnieniach na stronie [Hugging Face → Settings → Tokens](https://huggingface.co/settings/tokens/new?ownUserPermissions=inference.serverless.write&tokenType=fineGrained) z uprawnieniem **Make calls to Inference Providers**.
2. Uruchom onboarding i wybierz **Hugging Face** z listy rozwijanej providerów, a następnie wprowadź klucz API, gdy pojawi się monit:
<Steps>
<Step title="Utwórz token o szczegółowych uprawnieniach">
Przejdź do [Hugging Face Settings Tokens](https://huggingface.co/settings/tokens/new?ownUserPermissions=inference.serverless.write&tokenType=fineGrained) i utwórz nowy token o szczegółowych uprawnieniach.
```bash
openclaw onboard --auth-choice huggingface-api-key
```
<Warning>
Token musi mieć włączone uprawnienie **Make calls to Inference Providers**, w przeciwnym razie żądania API będą odrzucane.
</Warning>
3. Na liście rozwijanej **Default Hugging Face model** wybierz model, którego chcesz używać (lista jest ładowana z Inference API, gdy masz prawidłowy token; w przeciwnym razie wyświetlana jest wbudowana lista). Twój wybór zostanie zapisany jako model domyślny.
4. Możesz też ustawić lub zmienić model domyślny później w konfiguracji:
</Step>
<Step title="Uruchom onboarding">
Wybierz **Hugging Face** z listy rozwijanej dostawców, a następnie podaj klucz API, gdy pojawi się monit:
```json5
{
agents: {
defaults: {
model: { primary: "huggingface/deepseek-ai/DeepSeek-R1" },
},
},
}
```
```bash
openclaw onboard --auth-choice huggingface-api-key
```
## Przykład nieinteraktywny
</Step>
<Step title="Wybierz model domyślny">
Z listy rozwijanej **Default Hugging Face model** wybierz model, którego chcesz używać. Lista jest wczytywana z Inference API, gdy masz prawidłowy token; w przeciwnym razie pokazywana jest wbudowana lista. Twój wybór jest zapisywany jako model domyślny.
Możesz też ustawić lub zmienić model domyślny później w konfiguracji:
```json5
{
agents: {
defaults: {
model: { primary: "huggingface/deepseek-ai/DeepSeek-R1" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider huggingface
```
</Step>
</Steps>
### Konfiguracja nieinteraktywna
```bash
openclaw onboard --non-interactive \
@ -55,55 +75,9 @@ openclaw onboard --non-interactive \
To ustawi `huggingface/deepseek-ai/DeepSeek-R1` jako model domyślny.
## Uwaga dotycząca środowiska
## Identyfikatory modeli
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `HUGGINGFACE_HUB_TOKEN` lub `HF_TOKEN`
jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
`env.shellEnv`).
## Wykrywanie modeli i lista rozwijana onboardingu
OpenClaw wykrywa modele, wywołując **endpoint Inference bezpośrednio**:
```bash
GET https://router.huggingface.co/v1/models
```
(Opcjonalnie: wyślij `Authorization: Bearer $HUGGINGFACE_HUB_TOKEN` lub `$HF_TOKEN`, aby uzyskać pełną listę; niektóre endpointy bez uwierzytelniania zwracają tylko podzbiór.) Odpowiedź ma styl OpenAI: `{ "object": "list", "data": [ { "id": "Qwen/Qwen3-8B", "owned_by": "Qwen", ... }, ... ] }`.
Gdy skonfigurujesz klucz API Hugging Face (przez onboarding, `HUGGINGFACE_HUB_TOKEN` lub `HF_TOKEN`), OpenClaw użyje tego żądania GET do wykrycia dostępnych modeli chat-completion. Podczas **konfiguracji interaktywnej**, po wprowadzeniu tokena zobaczysz listę rozwijaną **Default Hugging Face model** wypełnioną na podstawie tej listy (lub wbudowanego katalogu, jeśli żądanie się nie powiedzie). W czasie działania (np. przy uruchamianiu Gateway), gdy klucz jest dostępny, OpenClaw ponownie wywołuje **GET** `https://router.huggingface.co/v1/models`, aby odświeżyć katalog. Lista jest scalana z wbudowanym katalogiem (dla metadanych, takich jak okno kontekstu i koszt). Jeśli żądanie się nie powiedzie lub nie ustawiono klucza, używany jest tylko wbudowany katalog.
## Nazwy modeli i opcje edytowalne
- **Nazwa z API:** Wyświetlana nazwa modelu jest **uzupełniana z GET /v1/models**, gdy API zwraca `name`, `title` lub `display_name`; w przeciwnym razie jest wyprowadzana z identyfikatora modelu (np. `deepseek-ai/DeepSeek-R1` → „DeepSeek R1”).
- **Nadpisanie nazwy wyświetlanej:** Możesz ustawić własną etykietę dla każdego modelu w konfiguracji, aby był wyświetlany tak, jak chcesz w CLI i UI:
```json5
{
agents: {
defaults: {
models: {
"huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1 (fast)" },
"huggingface/deepseek-ai/DeepSeek-R1:cheapest": { alias: "DeepSeek R1 (cheap)" },
},
},
},
}
```
- **Sufiksy polityk:** Dołączona dokumentacja i helpery Hugging Face w OpenClaw obecnie traktują te dwa sufiksy jako wbudowane warianty polityk:
- **`:fastest`** — najwyższa przepustowość.
- **`:cheapest`** — najniższy koszt na token wyjściowy.
Możesz dodać je jako osobne wpisy w `models.providers.huggingface.models` lub ustawić `model.primary` z tym sufiksem. Możesz też ustawić domyślną kolejność providerów w [ustawieniach Inference Providers](https://hf.co/settings/inference-providers) (brak sufiksu = użyj tej kolejności).
- **Scalanie konfiguracji:** Istniejące wpisy w `models.providers.huggingface.models` (np. w `models.json`) są zachowywane podczas scalania konfiguracji. Oznacza to, że wszystkie ustawione tam własne `name`, `alias` lub opcje modelu zostaną zachowane.
## Identyfikatory modeli i przykłady konfiguracji
Odwołania do modeli mają postać `huggingface/<org>/<model>` (identyfikatory w stylu Hub). Lista poniżej pochodzi z **GET** `https://router.huggingface.co/v1/models`; Twój katalog może zawierać więcej pozycji.
**Przykładowe identyfikatory (z endpointu inference):**
Referencje modeli używają formatu `huggingface/<org>/<model>` (identyfikatory w stylu Hub). Poniższa lista pochodzi z **GET** `https://router.huggingface.co/v1/models`; Twój katalog może zawierać więcej.
| Model | Ref (z prefiksem `huggingface/`) |
| ---------------------- | ----------------------------------- |
@ -118,83 +92,153 @@ Odwołania do modeli mają postać `huggingface/<org>/<model>` (identyfikatory w
| GLM 4.7 | `zai-org/GLM-4.7` |
| Kimi K2.5 | `moonshotai/Kimi-K2.5` |
Możesz dodać `:fastest` lub `:cheapest` do identyfikatora modelu. Ustaw domyślną kolejność w [ustawieniach Inference Providers](https://hf.co/settings/inference-providers); pełną listę znajdziesz w [Inference Providers](https://huggingface.co/docs/inference-providers) oraz pod **GET** `https://router.huggingface.co/v1/models`.
<Tip>
Możesz dodać `:fastest` lub `:cheapest` do dowolnego identyfikatora modelu. Ustaw domyślną kolejność w [ustawieniach Inference Provider](https://hf.co/settings/inference-providers); pełną listę znajdziesz w [Inference Providers](https://huggingface.co/docs/inference-providers) oraz pod **GET** `https://router.huggingface.co/v1/models`.
</Tip>
### Pełne przykłady konfiguracji
## Szczegóły zaawansowane
**Główny model DeepSeek R1 z fallbackiem do Qwen:**
<AccordionGroup>
<Accordion title="Wykrywanie modeli i lista rozwijana onboardingu">
OpenClaw wykrywa modele, wywołując **bezpośrednio endpoint Inference**:
```json5
{
agents: {
defaults: {
model: {
primary: "huggingface/deepseek-ai/DeepSeek-R1",
fallbacks: ["huggingface/Qwen/Qwen3-8B"],
```bash
GET https://router.huggingface.co/v1/models
```
(Opcjonalnie: wyślij `Authorization: Bearer $HUGGINGFACE_HUB_TOKEN` lub `$HF_TOKEN`, aby uzyskać pełną listę; niektóre endpointy bez uwierzytelniania zwracają podzbiór). Odpowiedź ma format w stylu OpenAI: `{ "object": "list", "data": [ { "id": "Qwen/Qwen3-8B", "owned_by": "Qwen", ... }, ... ] }`.
Gdy skonfigurujesz klucz API Hugging Face (przez onboarding, `HUGGINGFACE_HUB_TOKEN` lub `HF_TOKEN`), OpenClaw używa tego żądania GET do wykrywania dostępnych modeli chat-completion. Podczas **konfiguracji interaktywnej**, po podaniu tokenu zobaczysz listę rozwijaną **Default Hugging Face model** wypełnioną tą listą (lub wbudowanym katalogiem, jeśli żądanie się nie powiedzie). W runtime (na przykład przy uruchamianiu Gateway), gdy klucz jest obecny, OpenClaw ponownie wywołuje **GET** `https://router.huggingface.co/v1/models`, aby odświeżyć katalog. Lista jest łączona z wbudowanym katalogiem (dla metadanych, takich jak okno kontekstu i koszt). Jeśli żądanie się nie powiedzie lub klucz nie jest ustawiony, używany jest tylko wbudowany katalog.
</Accordion>
<Accordion title="Nazwy modeli, aliasy i sufiksy polityk">
- **Nazwa z API:** Wyświetlana nazwa modelu jest **uzupełniana z GET /v1/models**, gdy API zwraca `name`, `title` lub `display_name`; w przeciwnym razie jest wyprowadzana z identyfikatora modelu (na przykład `deepseek-ai/DeepSeek-R1` staje się „DeepSeek R1”).
- **Nadpisanie wyświetlanej nazwy:** Możesz ustawić niestandardową etykietę dla każdego modelu w konfiguracji, aby była wyświetlana tak, jak chcesz w CLI i UI:
```json5
{
agents: {
defaults: {
models: {
"huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1 (fast)" },
"huggingface/deepseek-ai/DeepSeek-R1:cheapest": { alias: "DeepSeek R1 (cheap)" },
},
},
},
models: {
"huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1" },
"huggingface/Qwen/Qwen3-8B": { alias: "Qwen3 8B" },
}
```
- **Sufiksy polityk:** Dołączona dokumentacja i helpery OpenClaw dla Hugging Face obecnie traktują te dwa sufiksy jako wbudowane warianty polityk:
- **`:fastest`** — najwyższa przepustowość.
- **`:cheapest`** — najniższy koszt na token wyjściowy.
Możesz dodać je jako osobne wpisy w `models.providers.huggingface.models` albo ustawić `model.primary` z sufiksem. Możesz też ustawić domyślną kolejność dostawców w [ustawieniach Inference Provider](https://hf.co/settings/inference-providers) (brak sufiksu = użyj tej kolejności).
- **Łączenie konfiguracji:** Istniejące wpisy w `models.providers.huggingface.models` (na przykład w `models.json`) są zachowywane podczas łączenia konfiguracji. Oznacza to, że wszelkie niestandardowe `name`, `alias` lub opcje modelu, które tam ustawisz, zostaną zachowane.
</Accordion>
<Accordion title="Konfiguracja środowiska i demona">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `HUGGINGFACE_HUB_TOKEN` lub `HF_TOKEN` jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` lub przez `env.shellEnv`).
<Note>
OpenClaw akceptuje zarówno `HUGGINGFACE_HUB_TOKEN`, jak i `HF_TOKEN` jako aliasy zmiennych środowiskowych. Każda z nich działa; jeśli ustawione są obie, pierwszeństwo ma `HUGGINGFACE_HUB_TOKEN`.
</Note>
</Accordion>
<Accordion title="Konfiguracja: DeepSeek R1 z fallbackiem Qwen">
```json5
{
agents: {
defaults: {
model: {
primary: "huggingface/deepseek-ai/DeepSeek-R1",
fallbacks: ["huggingface/Qwen/Qwen3-8B"],
},
models: {
"huggingface/deepseek-ai/DeepSeek-R1": { alias: "DeepSeek R1" },
"huggingface/Qwen/Qwen3-8B": { alias: "Qwen3 8B" },
},
},
},
},
},
}
```
}
```
</Accordion>
**Qwen jako domyślny, z wariantami `:cheapest` i `:fastest`:**
```json5
{
agents: {
defaults: {
model: { primary: "huggingface/Qwen/Qwen3-8B" },
models: {
"huggingface/Qwen/Qwen3-8B": { alias: "Qwen3 8B" },
"huggingface/Qwen/Qwen3-8B:cheapest": { alias: "Qwen3 8B (cheapest)" },
"huggingface/Qwen/Qwen3-8B:fastest": { alias: "Qwen3 8B (fastest)" },
<Accordion title="Konfiguracja: Qwen z wariantami cheapest i fastest">
```json5
{
agents: {
defaults: {
model: { primary: "huggingface/Qwen/Qwen3-8B" },
models: {
"huggingface/Qwen/Qwen3-8B": { alias: "Qwen3 8B" },
"huggingface/Qwen/Qwen3-8B:cheapest": { alias: "Qwen3 8B (cheapest)" },
"huggingface/Qwen/Qwen3-8B:fastest": { alias: "Qwen3 8B (fastest)" },
},
},
},
},
},
}
```
}
```
</Accordion>
**DeepSeek + Llama + GPT-OSS z aliasami:**
```json5
{
agents: {
defaults: {
model: {
primary: "huggingface/deepseek-ai/DeepSeek-V3.2",
fallbacks: [
"huggingface/meta-llama/Llama-3.3-70B-Instruct",
"huggingface/openai/gpt-oss-120b",
],
<Accordion title="Konfiguracja: DeepSeek + Llama + GPT-OSS z aliasami">
```json5
{
agents: {
defaults: {
model: {
primary: "huggingface/deepseek-ai/DeepSeek-V3.2",
fallbacks: [
"huggingface/meta-llama/Llama-3.3-70B-Instruct",
"huggingface/openai/gpt-oss-120b",
],
},
models: {
"huggingface/deepseek-ai/DeepSeek-V3.2": { alias: "DeepSeek V3.2" },
"huggingface/meta-llama/Llama-3.3-70B-Instruct": { alias: "Llama 3.3 70B" },
"huggingface/openai/gpt-oss-120b": { alias: "GPT-OSS 120B" },
},
},
},
models: {
"huggingface/deepseek-ai/DeepSeek-V3.2": { alias: "DeepSeek V3.2" },
"huggingface/meta-llama/Llama-3.3-70B-Instruct": { alias: "Llama 3.3 70B" },
"huggingface/openai/gpt-oss-120b": { alias: "GPT-OSS 120B" },
},
},
},
}
```
}
```
</Accordion>
**Wiele modeli Qwen i DeepSeek z sufiksami polityk:**
```json5
{
agents: {
defaults: {
model: { primary: "huggingface/Qwen/Qwen2.5-7B-Instruct:cheapest" },
models: {
"huggingface/Qwen/Qwen2.5-7B-Instruct": { alias: "Qwen2.5 7B" },
"huggingface/Qwen/Qwen2.5-7B-Instruct:cheapest": { alias: "Qwen2.5 7B (cheap)" },
"huggingface/deepseek-ai/DeepSeek-R1:fastest": { alias: "DeepSeek R1 (fast)" },
"huggingface/meta-llama/Llama-3.1-8B-Instruct": { alias: "Llama 3.1 8B" },
<Accordion title="Konfiguracja: Wiele modeli Qwen i DeepSeek z sufiksami polityk">
```json5
{
agents: {
defaults: {
model: { primary: "huggingface/Qwen/Qwen2.5-7B-Instruct:cheapest" },
models: {
"huggingface/Qwen/Qwen2.5-7B-Instruct": { alias: "Qwen2.5 7B" },
"huggingface/Qwen/Qwen2.5-7B-Instruct:cheapest": { alias: "Qwen2.5 7B (cheap)" },
"huggingface/deepseek-ai/DeepSeek-R1:fastest": { alias: "DeepSeek R1 (fast)" },
"huggingface/meta-llama/Llama-3.1-8B-Instruct": { alias: "Llama 3.1 8B" },
},
},
},
},
},
}
```
}
```
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Przegląd wszystkich dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/models" icon="brain">
Jak wybierać i konfigurować modele.
</Card>
<Card title="Dokumentacja Inference Providers" href="https://huggingface.co/docs/inference-providers" icon="book">
Oficjalna dokumentacja Hugging Face Inference Providers.
</Card>
<Card title="Konfiguracja" href="/pl/gateway/configuration" icon="gear">
Pełna dokumentacja konfiguracji.
</Card>
</CardGroup>

View File

@ -1,49 +1,49 @@
---
read_when:
- Chcesz uruchomić OpenClaw z lokalnym serwerem inferrs
- Chcesz uruchamiać OpenClaw z lokalnym serwerem inferrs
- Udostępniasz Gemma lub inny model przez inferrs
- Potrzebujesz dokładnych flag zgodności OpenClaw dla inferrs
summary: Uruchamiaj OpenClaw przez inferrs (lokalny serwer zgodny z OpenAI)
title: inferrs
x-i18n:
generated_at: "2026-04-09T01:29:49Z"
generated_at: "2026-04-12T23:31:26Z"
model: gpt-5.4
provider: openai
source_hash: 03b9d5a9935c75fd369068bacb7807a5308cd0bd74303b664227fb664c3a2098
source_hash: 847dcc131fe51dfe163dcd60075dbfaa664662ea2a5c3986ccb08ddd37e8c31f
source_path: providers/inferrs.md
workflow: 15
---
# inferrs
[inferrs](https://github.com/ericcurtin/inferrs) może udostępniać lokalne modele za
interfejsem API `/v1` zgodnym z OpenAI. OpenClaw współpracuje z `inferrs` przez ogólną
[inferrs](https://github.com/ericcurtin/inferrs) może udostępniać modele lokalne za
zgodnym z OpenAI API `/v1`. OpenClaw współpracuje z `inferrs` przez ogólną
ścieżkę `openai-completions`.
`inferrs` najlepiej obecnie traktować jako niestandardowy, self-hosted
backend zgodny z OpenAI, a nie dedykowaną wtyczkę dostawcy OpenClaw.
`inferrs` obecnie najlepiej traktować jako niestandardowy samohostowany backend
zgodny z OpenAI, a nie jako dedykowany Plugin dostawcy OpenClaw.
## Szybki start
## Pierwsze kroki
1. Uruchom `inferrs` z modelem.
Przykład:
```bash
inferrs serve google/gemma-4-E2B-it \
--host 127.0.0.1 \
--port 8080 \
--device metal
```
2. Sprawdź, czy serwer jest osiągalny.
```bash
curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8080/v1/models
```
3. Dodaj jawny wpis dostawcy OpenClaw i skieruj na niego swój domyślny model.
<Steps>
<Step title="Uruchom inferrs z modelem">
```bash
inferrs serve google/gemma-4-E2B-it \
--host 127.0.0.1 \
--port 8080 \
--device metal
```
</Step>
<Step title="Sprawdź, czy serwer jest osiągalny">
```bash
curl http://127.0.0.1:8080/health
curl http://127.0.0.1:8080/v1/models
```
</Step>
<Step title="Dodaj wpis dostawcy OpenClaw">
Dodaj jawny wpis dostawcy i skieruj na niego swój model domyślny. Zobacz pełny przykład konfiguracji poniżej.
</Step>
</Steps>
## Pełny przykład konfiguracji
@ -88,93 +88,129 @@ Ten przykład używa Gemma 4 na lokalnym serwerze `inferrs`.
}
```
## Dlaczego `requiresStringContent` ma znaczenie
## Zaawansowane
Niektóre trasy Chat Completions w `inferrs` akceptują tylko ciąg znaków w
`messages[].content`, a nie ustrukturyzowane tablice części treści.
<AccordionGroup>
<Accordion title="Dlaczego requiresStringContent ma znaczenie">
Niektóre trasy `inferrs` Chat Completions akceptują tylko ciąg znaków w
`messages[].content`, a nie ustrukturyzowane tablice części treści.
Jeśli uruchomienia OpenClaw kończą się błędem takim jak:
<Warning>
Jeśli uruchomienia OpenClaw kończą się błędem takim jak:
```text
messages[1].content: invalid type: sequence, expected a string
```
```text
messages[1].content: invalid type: sequence, expected a string
```
ustaw:
ustaw `compat.requiresStringContent: true` we wpisie modelu.
</Warning>
```json5
compat: {
requiresStringContent: true
}
```
```json5
compat: {
requiresStringContent: true
}
```
OpenClaw spłaszczy części treści zawierające wyłącznie tekst do zwykłych ciągów
przed wysłaniem żądania.
OpenClaw spłaszczy części treści zawierające wyłącznie tekst do zwykłych ciągów znaków przed wysłaniem
żądania.
## Zastrzeżenie dotyczące Gemma i schematu narzędzi
</Accordion>
Niektóre obecne kombinacje `inferrs` + Gemma akceptują małe, bezpośrednie
żądania do `/v1/chat/completions`, ale nadal kończą się błędem przy pełnych turnach
runtime agenta OpenClaw.
<Accordion title="Zastrzeżenie dotyczące Gemma i schematu narzędzi">
Niektóre obecne kombinacje `inferrs` + Gemma akceptują małe bezpośrednie
żądania `/v1/chat/completions`, ale nadal zawodzą przy pełnych turach środowiska uruchomieniowego agenta OpenClaw.
Jeśli tak się dzieje, najpierw spróbuj tego:
Jeśli tak się stanie, najpierw spróbuj tego:
```json5
compat: {
requiresStringContent: true,
supportsTools: false
}
```
```json5
compat: {
requiresStringContent: true,
supportsTools: false
}
```
To wyłącza powierzchnię schematu narzędzi OpenClaw dla modelu i może zmniejszyć nacisk promptu
na bardziej restrykcyjnych lokalnych backendach.
To wyłącza powierzchnię schematu narzędzi OpenClaw dla modelu i może zmniejszyć obciążenie promptu
w bardziej rygorystycznych lokalnych backendach.
Jeśli małe bezpośrednie żądania nadal działają, ale zwykłe turny agenta OpenClaw dalej
powodują awarie wewnątrz `inferrs`, pozostały problem zwykle dotyczy zachowania
upstream modelu/serwera, a nie warstwy transportu OpenClaw.
Jeśli małe bezpośrednie żądania nadal działają, ale zwykłe tury agenta OpenClaw dalej
powodują awarie w `inferrs`, pozostały problem zwykle leży po stronie zachowania modelu/serwera
wyżej w stosie, a nie warstwy transportowej OpenClaw.
## Ręczny test smoke
</Accordion>
Po skonfigurowaniu przetestuj obie warstwy:
<Accordion title="Ręczny test smoke">
Po skonfigurowaniu przetestuj obie warstwy:
```bash
curl http://127.0.0.1:8080/v1/chat/completions \
-H 'content-type: application/json' \
-d '{"model":"google/gemma-4-E2B-it","messages":[{"role":"user","content":"What is 2 + 2?"}],"stream":false}'
```bash
curl http://127.0.0.1:8080/v1/chat/completions \
-H 'content-type: application/json' \
-d '{"model":"google/gemma-4-E2B-it","messages":[{"role":"user","content":"What is 2 + 2?"}],"stream":false}'
```
openclaw infer model run \
--model inferrs/google/gemma-4-E2B-it \
--prompt "What is 2 + 2? Reply with one short sentence." \
--json
```
```bash
openclaw infer model run \
--model inferrs/google/gemma-4-E2B-it \
--prompt "What is 2 + 2? Reply with one short sentence." \
--json
```
Jeśli pierwsze polecenie działa, ale drugie kończy się błędem, skorzystaj z poniższych
wskazówek rozwiązywania problemów.
Jeśli pierwsze polecenie działa, ale drugie kończy się niepowodzeniem, sprawdź sekcję rozwiązywania problemów poniżej.
</Accordion>
<Accordion title="Zachowanie w stylu proxy">
`inferrs` jest traktowany jako backend `/v1` zgodny z OpenAI w stylu proxy, a nie
natywny endpoint OpenAI.
- Natywne kształtowanie żądań tylko dla OpenAI nie ma tu zastosowania
- Brak `service_tier`, brak `store` w Responses, brak wskazówek prompt-cache i brak
kształtowania ładunku zgodności rozumowania OpenAI
- Ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane do niestandardowych `baseUrl` inferrs
</Accordion>
</AccordionGroup>
## Rozwiązywanie problemów
- `curl /v1/models` kończy się błędem: `inferrs` nie działa, nie jest osiągalny lub nie
jest zbindowany do oczekiwanego hosta/portu.
- `messages[].content ... expected a string`: ustaw
`compat.requiresStringContent: true`.
- Bezpośrednie małe wywołania `/v1/chat/completions` przechodzą, ale `openclaw infer model run`
kończy się błędem: spróbuj `compat.supportsTools: false`.
- OpenClaw nie dostaje już błędów schematu, ale `inferrs` nadal ulega awarii przy większych
turnach agenta: potraktuj to jako ograniczenie `inferrs` lub modelu upstream i zmniejsz
nacisk promptu albo zmień lokalny backend/model.
<AccordionGroup>
<Accordion title="curl /v1/models kończy się niepowodzeniem">
`inferrs` nie działa, nie jest osiągalny lub nie jest powiązany z oczekiwanym
hostem/portem. Upewnij się, że serwer został uruchomiony i nasłuchuje na adresie, który
skonfigurowałeś.
</Accordion>
## Zachowanie w stylu proxy
<Accordion title="messages[].content oczekuje ciągu znaków">
Ustaw `compat.requiresStringContent: true` we wpisie modelu. Zobacz sekcję
`requiresStringContent` powyżej, aby poznać szczegóły.
</Accordion>
`inferrs` jest traktowany jako backend `/v1` zgodny z OpenAI w stylu proxy, a nie
natywny endpoint OpenAI.
<Accordion title="Bezpośrednie wywołania /v1/chat/completions przechodzą, ale openclaw infer model run kończy się niepowodzeniem">
Spróbuj ustawić `compat.supportsTools: false`, aby wyłączyć powierzchnię schematu narzędzi.
Zobacz zastrzeżenie dotyczące schematu narzędzi Gemma powyżej.
</Accordion>
- natywne kształtowanie żądań wyłącznie dla OpenAI nie ma tu zastosowania
- brak `service_tier`, brak `store` dla Responses, brak wskazówek cache promptów i brak
kształtowania payload zgodności reasoning OpenAI
- ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane dla niestandardowych base URL `inferrs`
<Accordion title="inferrs nadal ulega awarii przy większych turach agenta">
Jeśli OpenClaw nie otrzymuje już błędów schematu, ale `inferrs` nadal ulega awarii przy większych
turach agenta, potraktuj to jako ograniczenie `inferrs` lub modelu wyżej w stosie. Zmniejsz
obciążenie promptu albo przełącz się na inny lokalny backend lub model.
</Accordion>
</AccordionGroup>
## Zobacz też
<Tip>
Aby uzyskać ogólną pomoc, zobacz [Rozwiązywanie problemów](/pl/help/troubleshooting) i [FAQ](/pl/help/faq).
</Tip>
- [Local models](/pl/gateway/local-models)
- [Gateway troubleshooting](/pl/gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail)
- [Model providers](/pl/concepts/model-providers)
## Zobacz także
<CardGroup cols={2}>
<Card title="Modele lokalne" href="/pl/gateway/local-models" icon="server">
Uruchamianie OpenClaw z lokalnymi serwerami modeli.
</Card>
<Card title="Rozwiązywanie problemów z Gateway" href="/pl/gateway/troubleshooting#local-openai-compatible-backend-passes-direct-probes-but-agent-runs-fail" icon="wrench">
Debugowanie lokalnych backendów zgodnych z OpenAI, które przechodzą sondy bezpośrednie, ale kończą niepowodzeniem przy uruchomieniach agentów.
</Card>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Omówienie wszystkich dostawców, odwołań do modeli i zachowania failover.
</Card>
</CardGroup>

View File

@ -1,42 +1,90 @@
---
read_when:
- Chcesz jednego klucza API do wielu LLM-ów
- Chcesz uruchamiać modele przez Kilo Gateway w OpenClaw
summary: Używaj zunifikowanego API Kilo Gateway, aby uzyskać dostęp do wielu modeli w OpenClaw
title: Kilo Gateway
- Chcesz mieć jeden klucz API do wielu LLM-ów
- Chcesz uruchamiać modele przez Gateway Kilo w OpenClaw
summary: Użyj ujednoliconego API Gateway Kilo, aby uzyskać dostęp do wielu modeli w OpenClaw
title: Kilocode
x-i18n:
generated_at: "2026-04-05T14:03:05Z"
generated_at: "2026-04-12T23:31:32Z"
model: gpt-5.4
provider: openai
source_hash: 857266967b4a7553d501990631df2bae0f849d061521dc9f34e29687ecb94884
source_hash: 32946f2187f3933115341cbe81006718b10583abc4deea7440b5e56366025f4a
source_path: providers/kilocode.md
workflow: 15
---
# Kilo Gateway
# Gateway Kilo
Kilo Gateway udostępnia **zunifikowane API**, które kieruje żądania do wielu modeli za jednym
endpointem i kluczem API. Jest zgodne z OpenAI, więc większość SDK OpenAI działa po zmianie base URL.
Gateway Kilo udostępnia **ujednolicone API**, które kieruje żądania do wielu modeli za pojedynczym
endpointem i kluczem API. Jest zgodne z OpenAI, więc większość SDK OpenAI działa po zmianie bazowego URL.
## Uzyskanie klucza API
| Właściwość | Wartość |
| ---------- | ---------------------------------- |
| Dostawca | `kilocode` |
| Auth | `KILOCODE_API_KEY` |
| API | zgodne z OpenAI |
| Bazowy URL | `https://api.kilo.ai/api/gateway/` |
1. Przejdź do [app.kilo.ai](https://app.kilo.ai)
2. Zaloguj się lub utwórz konto
3. Przejdź do API Keys i wygeneruj nowy klucz
## Pierwsze kroki
## Konfiguracja CLI
<Steps>
<Step title="Utwórz konto">
Przejdź do [app.kilo.ai](https://app.kilo.ai), zaloguj się lub utwórz konto, a następnie przejdź do API Keys i wygeneruj nowy klucz.
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice kilocode-api-key
```
```bash
openclaw onboard --auth-choice kilocode-api-key
```
Albo ustaw zmienną środowiskową bezpośrednio:
Albo ustaw zmienną środowiskową:
```bash
export KILOCODE_API_KEY="<your-kilocode-api-key>" # pragma: allowlist secret
```
```bash
export KILOCODE_API_KEY="<your-kilocode-api-key>" # pragma: allowlist secret
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider kilocode
```
</Step>
</Steps>
## Fragment config
## Model domyślny
Domyślnym modelem jest `kilocode/kilo/auto`, inteligentny model routingu należący do dostawcy,
zarządzany przez Gateway Kilo.
<Note>
OpenClaw traktuje `kilocode/kilo/auto` jako stabilne domyślne odwołanie, ale nie
publikuje mapowania zadanie → model upstream opartego na źródle dla tej trasy. Dokładne
routowanie upstream za `kilocode/kilo/auto` należy do Gateway Kilo, a nie jest
zakodowane na sztywno w OpenClaw.
</Note>
## Dostępne modele
OpenClaw dynamicznie wykrywa dostępne modele z Gateway Kilo przy uruchamianiu. Użyj
`/models kilocode`, aby zobaczyć pełną listę modeli dostępnych na Twoim koncie.
Każdy model dostępny w Gateway można użyć z prefiksem `kilocode/`:
| Odwołanie do modelu | Uwagi |
| -------------------------------------- | --------------------------------- |
| `kilocode/kilo/auto` | Domyślny — inteligentne routowanie |
| `kilocode/anthropic/claude-sonnet-4` | Anthropic przez Kilo |
| `kilocode/openai/gpt-5.4` | OpenAI przez Kilo |
| `kilocode/google/gemini-3-pro-preview` | Google przez Kilo |
| ...i wiele innych | Użyj `/models kilocode`, aby wyświetlić wszystkie |
<Tip>
Przy uruchamianiu OpenClaw wykonuje zapytanie `GET https://api.kilo.ai/api/gateway/models` i scala
wykryte modele przed statycznym katalogiem awaryjnym. Bundlowy fallback zawsze
zawiera `kilocode/kilo/auto` (`Kilo Auto`) z `input: ["text", "image"]`,
`reasoning: true`, `contextWindow: 1000000` i `maxTokens: 128000`.
</Tip>
## Przykład konfiguracji
```json5
{
@ -49,48 +97,47 @@ export KILOCODE_API_KEY="<your-kilocode-api-key>" # pragma: allowlist secret
}
```
## Model domyślny
<AccordionGroup>
<Accordion title="Transport i zgodność">
Gateway Kilo jest opisany w kodzie źródłowym jako zgodny z OpenRouter, więc pozostaje na
ścieżce zgodnej z OpenAI w stylu proxy, zamiast natywnego kształtowania żądań OpenAI.
Domyślnym modelem jest `kilocode/kilo/auto`, model smart-routing
należący do providera i zarządzany przez Kilo Gateway.
- Odwołania Kilo oparte na Gemini pozostają na ścieżce proxy-Gemini, więc OpenClaw zachowuje
tam sanityzację thought signature Gemini bez włączania natywnej walidacji replay Gemini
ani przepisywania bootstrap.
- Gateway Kilo wewnętrznie używa tokenu Bearer z Twoim kluczem API.
OpenClaw traktuje `kilocode/kilo/auto` jako stabilną domyślną referencję, ale nie
publikuje mapowania zadanie-do-modelu-upstream opartego na źródle dla tej trasy.
</Accordion>
## Dostępne modele
<Accordion title="Wrapper strumienia i rozumowanie">
Wspólny wrapper strumienia Kilo dodaje nagłówek aplikacji dostawcy i normalizuje
payloady rozumowania proxy dla obsługiwanych konkretnych odwołań do modeli.
OpenClaw dynamicznie wykrywa dostępne modele z Kilo Gateway przy starcie. Użyj
`/models kilocode`, aby zobaczyć pełną listę modeli dostępnych dla twojego konta.
<Warning>
`kilocode/kilo/auto` i inne wskazówki bez obsługi proxy reasoning pomijają wstrzykiwanie rozumowania.
Jeśli potrzebujesz obsługi rozumowania, użyj konkretnego odwołania do modelu, takiego jak
`kilocode/anthropic/claude-sonnet-4`.
</Warning>
Każdy model dostępny w gateway można używać z prefiksem `kilocode/`:
</Accordion>
```
kilocode/kilo/auto (domyślny - smart routing)
kilocode/anthropic/claude-sonnet-4
kilocode/openai/gpt-5.4
kilocode/google/gemini-3-pro-preview
...i wiele innych
```
<Accordion title="Rozwiązywanie problemów">
- Jeśli wykrywanie modeli nie powiedzie się przy uruchamianiu, OpenClaw wraca do bundlowego statycznego katalogu zawierającego `kilocode/kilo/auto`.
- Potwierdź, że Twój klucz API jest prawidłowy i że na koncie Kilo włączono żądane modele.
- Gdy Gateway działa jako demon, upewnij się, że `KILOCODE_API_KEY` jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` albo przez `env.shellEnv`).
</Accordion>
</AccordionGroup>
## Uwagi
## Powiązane
- Referencje modeli mają postać `kilocode/<model-id>` (np. `kilocode/anthropic/claude-sonnet-4`).
- Model domyślny: `kilocode/kilo/auto`
- Base URL: `https://api.kilo.ai/api/gateway/`
- Dołączony katalog fallback zawsze zawiera `kilocode/kilo/auto` (`Kilo Auto`) z
`input: ["text", "image"]`, `reasoning: true`, `contextWindow: 1000000`
oraz `maxTokens: 128000`
- Przy starcie OpenClaw próbuje `GET https://api.kilo.ai/api/gateway/models` i
scala wykryte modele przed statycznym katalogiem fallback
- Dokładny routing upstream za `kilocode/kilo/auto` należy do Kilo Gateway,
a nie jest zakodowany na stałe w OpenClaw
- Kilo Gateway jest udokumentowany w źródłach jako zgodny z OpenRouter, więc pozostaje na
ścieżce proxy-style OpenAI-compatible zamiast natywnego kształtowania żądań OpenAI
- Referencje Kilo oparte na Gemini pozostają na ścieżce proxy-Gemini, więc OpenClaw zachowuje tam
sanityzację sygnatur myśli Gemini bez włączania natywnej walidacji odtwarzania Gemini
ani przepisywania bootstrapu.
- Współdzielony wrapper strumieni Kilo dodaje nagłówek aplikacji providera i normalizuje
proxy reasoning payloads dla obsługiwanych referencji konkretnych modeli. `kilocode/kilo/auto`
oraz inne wskazówki bez obsługi proxy-reasoning pomijają to wstrzykiwanie rozumowania.
- Więcej opcji modeli/providerów znajdziesz w [/concepts/model-providers](/concepts/model-providers).
- Kilo Gateway pod spodem używa Bearer tokena z twoim kluczem API.
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Informacje o konfiguracji" href="/pl/gateway/configuration" icon="gear">
Pełne informacje o konfiguracji OpenClaw.
</Card>
<Card title="Gateway Kilo" href="https://app.kilo.ai" icon="arrow-up-right-from-square">
Panel Gateway Kilo, klucze API i zarządzanie kontem.
</Card>
</CardGroup>

View File

@ -5,52 +5,67 @@ read_when:
summary: Uruchamiaj OpenClaw przez LiteLLM Proxy, aby uzyskać ujednolicony dostęp do modeli i śledzenie kosztów
title: LiteLLM
x-i18n:
generated_at: "2026-04-05T14:03:25Z"
generated_at: "2026-04-12T23:31:39Z"
model: gpt-5.4
provider: openai
source_hash: 4e8ca73458186285bc06967b397b8a008791dc58eea1159d6c358e1a794982d1
source_hash: 766692eb83a1be83811d8e09a970697530ffdd4f3392247cfb2927fd590364a0
source_path: providers/litellm.md
workflow: 15
---
# LiteLLM
[LiteLLM](https://litellm.ai) to bramka LLM typu open source, która zapewnia ujednolicone API do ponad 100 dostawców modeli. Kieruj OpenClaw przez LiteLLM, aby uzyskać scentralizowane śledzenie kosztów, logowanie i elastyczność przełączania backendów bez zmiany konfiguracji OpenClaw.
[LiteLLM](https://litellm.ai) to open-sourceowa brama LLM, która zapewnia ujednolicone API do ponad 100 dostawców modeli. Kieruj OpenClaw przez LiteLLM, aby uzyskać scentralizowane śledzenie kosztów, logowanie oraz elastyczność przełączania backendów bez zmiany konfiguracji OpenClaw.
## Dlaczego warto używać LiteLLM z OpenClaw?
<Tip>
**Dlaczego warto używać LiteLLM z OpenClaw?**
- **Śledzenie kosztów** — dokładnie sprawdzisz, ile OpenClaw wydaje na wszystkie modele
- **Routing modeli** — przełączanie między Claude, GPT-4, Gemini i Bedrock bez zmian konfiguracji
- **Śledzenie kosztów** — dokładnie widzisz, ile OpenClaw wydaje na wszystkie modele
- **Routing modeli** — przełączaj się między Claude, GPT-4, Gemini, Bedrock bez zmian konfiguracji
- **Klucze wirtualne** — twórz klucze z limitami wydatków dla OpenClaw
- **Logowanie** — pełne logi żądań/odpowiedzi do debugowania
- **Przełączanie awaryjne** — automatyczny failover, jeśli główny dostawca jest niedostępny
- **Przełączenia awaryjne** — automatyczny failover, jeśli Twój główny dostawca jest niedostępny
</Tip>
## Szybki start
### Przez onboarding
<Tabs>
<Tab title="Onboarding (zalecane)">
**Najlepsze do:** najszybszej ścieżki do działającej konfiguracji LiteLLM.
```bash
openclaw onboard --auth-choice litellm-api-key
```
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice litellm-api-key
```
</Step>
</Steps>
### Konfiguracja ręczna
</Tab>
1. Uruchom LiteLLM Proxy:
<Tab title="Konfiguracja ręczna">
**Najlepsze do:** pełnej kontroli nad instalacją i konfiguracją.
```bash
pip install 'litellm[proxy]'
litellm --model claude-opus-4-6
```
<Steps>
<Step title="Uruchom LiteLLM Proxy">
```bash
pip install 'litellm[proxy]'
litellm --model claude-opus-4-6
```
</Step>
<Step title="Skieruj OpenClaw do LiteLLM">
```bash
export LITELLM_API_KEY="your-litellm-key"
2. Skieruj OpenClaw do LiteLLM:
openclaw
```
```bash
export LITELLM_API_KEY="your-litellm-key"
To wszystko. OpenClaw teraz kieruje ruch przez LiteLLM.
</Step>
</Steps>
openclaw
```
To wszystko. OpenClaw teraz kieruje ruch przez LiteLLM.
</Tab>
</Tabs>
## Konfiguracja
@ -99,67 +114,90 @@ export LITELLM_API_KEY="sk-litellm-key"
}
```
## Klucze wirtualne
## Tematy zaawansowane
Utwórz dedykowany klucz dla OpenClaw z limitami wydatków:
<AccordionGroup>
<Accordion title="Klucze wirtualne">
Utwórz dedykowany klucz dla OpenClaw z limitami wydatków:
```bash
curl -X POST "http://localhost:4000/key/generate" \
-H "Authorization: Bearer $LITELLM_MASTER_KEY" \
-H "Content-Type: application/json" \
-d '{
"key_alias": "openclaw",
"max_budget": 50.00,
"budget_duration": "monthly"
}'
```
```bash
curl -X POST "http://localhost:4000/key/generate" \
-H "Authorization: Bearer $LITELLM_MASTER_KEY" \
-H "Content-Type: application/json" \
-d '{
"key_alias": "openclaw",
"max_budget": 50.00,
"budget_duration": "monthly"
}'
```
Użyj wygenerowanego klucza jako `LITELLM_API_KEY`.
Użyj wygenerowanego klucza jako `LITELLM_API_KEY`.
## Routing modeli
</Accordion>
LiteLLM może kierować żądania modeli do różnych backendów. Skonfiguruj to w `config.yaml` LiteLLM:
<Accordion title="Routing modeli">
LiteLLM może kierować żądania modeli do różnych backendów. Skonfiguruj to w `config.yaml` LiteLLM:
```yaml
model_list:
- model_name: claude-opus-4-6
litellm_params:
model: claude-opus-4-6
api_key: os.environ/ANTHROPIC_API_KEY
```yaml
model_list:
- model_name: claude-opus-4-6
litellm_params:
model: claude-opus-4-6
api_key: os.environ/ANTHROPIC_API_KEY
- model_name: gpt-4o
litellm_params:
model: gpt-4o
api_key: os.environ/OPENAI_API_KEY
```
- model_name: gpt-4o
litellm_params:
model: gpt-4o
api_key: os.environ/OPENAI_API_KEY
```
OpenClaw nadal wysyła żądania do `claude-opus-4-6`routing obsługuje LiteLLM.
OpenClaw nadal wysyła żądania do `claude-opus-4-6`LiteLLM obsługuje routing.
## Wyświetlanie użycia
</Accordion>
Sprawdź panel LiteLLM lub API:
<Accordion title="Wyświetlanie użycia">
Sprawdź dashboard albo API LiteLLM:
```bash
# Informacje o kluczu
curl "http://localhost:4000/key/info" \
-H "Authorization: Bearer sk-litellm-key"
```bash
# Informacje o kluczu
curl "http://localhost:4000/key/info" \
-H "Authorization: Bearer sk-litellm-key"
# Logi wydatków
curl "http://localhost:4000/spend/logs" \
-H "Authorization: Bearer $LITELLM_MASTER_KEY"
```
# Logi wydatków
curl "http://localhost:4000/spend/logs" \
-H "Authorization: Bearer $LITELLM_MASTER_KEY"
```
## Uwagi
</Accordion>
- LiteLLM domyślnie działa pod adresem `http://localhost:4000`
- OpenClaw łączy się przez endpoint `/v1` zgodny z OpenAI w stylu proxy LiteLLM
- Natywne formatowanie żądań wyłącznie dla OpenAI nie ma zastosowania przez LiteLLM:
brak `service_tier`, brak `store` dla Responses, brak wskazówek pamięci podręcznej promptów i brak
formatowania payloadów zgodności reasoning OpenAI
- Ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane dla niestandardowych adresów base URL LiteLLM
<Accordion title="Uwagi o zachowaniu proxy">
- LiteLLM domyślnie działa na `http://localhost:4000`
- OpenClaw łączy się przez kompatybilny z OpenAI endpoint `/v1` w stylu proxy LiteLLM
- Natywne formatowanie żądań specyficzne dla OpenAI nie ma zastosowania przez LiteLLM:
brak `service_tier`, brak `store` dla Responses, brak wskazówek cache promptów i brak
formatowania payloadu zgodności reasoning OpenAI
- Ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane dla niestandardowych bazowych URL LiteLLM
</Accordion>
</AccordionGroup>
## Zobacz także
<Note>
Aby uzyskać ogólne informacje o konfiguracji dostawców i zachowaniu failover, zobacz [Dostawcy modeli](/pl/concepts/model-providers).
</Note>
- [Dokumentacja LiteLLM](https://docs.litellm.ai)
- [Dostawcy modeli](/pl/concepts/model-providers)
## Powiązane
<CardGroup cols={2}>
<Card title="Dokumentacja LiteLLM" href="https://docs.litellm.ai" icon="book">
Oficjalna dokumentacja LiteLLM i referencja API.
</Card>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Przegląd wszystkich dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Konfiguracja" href="/pl/gateway/configuration" icon="gear">
Pełna referencja konfiguracji.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/models" icon="brain">
Jak wybierać i konfigurować modele.
</Card>
</CardGroup>

View File

@ -2,13 +2,13 @@
read_when:
- Chcesz używać modeli MiniMax w OpenClaw
- Potrzebujesz wskazówek dotyczących konfiguracji MiniMax
summary: Używanie modeli MiniMax w OpenClaw
summary: Używaj modeli MiniMax w OpenClaw
title: MiniMax
x-i18n:
generated_at: "2026-04-06T03:12:19Z"
generated_at: "2026-04-12T23:31:53Z"
model: gpt-5.4
provider: openai
source_hash: 9ca35c43cdde53f6f09d9e12d48ce09e4c099cf8cbe1407ac6dbb45b1422507e
source_hash: ee9c89faf57384feb66cda30934000e5746996f24b59122db309318f42c22389
source_path: providers/minimax.md
workflow: 15
---
@ -17,33 +17,214 @@ x-i18n:
Dostawca MiniMax w OpenClaw domyślnie używa **MiniMax M2.7**.
MiniMax udostępnia także:
MiniMax zapewnia także:
- wbudowaną syntezę mowy przez T2A v2
- wbudowane rozumienie obrazów przez `MiniMax-VL-01`
- wbudowane generowanie muzyki przez `music-2.5+`
- wbudowane `web_search` przez API wyszukiwania MiniMax Coding Plan
- Bundlową syntezę mowy przez T2A v2
- Bundlowe rozumienie obrazów przez `MiniMax-VL-01`
- Bundlowe generowanie muzyki przez `music-2.5+`
- Bundlowe `web_search` przez API wyszukiwania MiniMax Coding Plan
Podział dostawców:
- `minimax`: dostawca tekstu z kluczem API oraz wbudowane generowanie obrazów, rozumienie obrazów, mowa i wyszukiwanie w sieci
- `minimax-portal`: dostawca tekstu OAuth oraz wbudowane generowanie obrazów i rozumienie obrazów
| ID dostawcy | Auth | Capabilities |
| ---------------- | -------- | -------------------------------------------------------------- |
| `minimax` | Klucz API | Tekst, generowanie obrazów, rozumienie obrazów, mowa, web search |
| `minimax-portal` | OAuth | Tekst, generowanie obrazów, rozumienie obrazów |
## Zestaw modeli
- `MiniMax-M2.7`: domyślny hostowany model rozumowania.
- `MiniMax-M2.7-highspeed`: szybszy poziom rozumowania M2.7.
- `image-01`: model generowania obrazów (generowanie oraz edycja obraz-do-obrazu).
| Model | Typ | Opis |
| ------------------------ | ----------------- | ----------------------------------------- |
| `MiniMax-M2.7` | Czat (rozumowanie) | Domyślny hostowany model rozumowania |
| `MiniMax-M2.7-highspeed` | Czat (rozumowanie) | Szybszy poziom rozumowania M2.7 |
| `MiniMax-VL-01` | Vision | Model rozumienia obrazów |
| `image-01` | Generowanie obrazów | Text-to-image i edycja image-to-image |
| `music-2.5+` | Generowanie muzyki | Domyślny model muzyczny |
| `music-2.5` | Generowanie muzyki | Poprzedni poziom generowania muzyki |
| `music-2.0` | Generowanie muzyki | Starszy poziom generowania muzyki |
| `MiniMax-Hailuo-2.3` | Generowanie wideo | Przepływy text-to-video i z obrazem referencyjnym |
## Generowanie obrazów
## Pierwsze kroki
Plugin MiniMax rejestruje model `image-01` dla narzędzia `image_generate`. Obsługuje on:
Wybierz preferowaną metodę auth i wykonaj kroki konfiguracji.
- **Generowanie tekst-do-obrazu** z kontrolą proporcji.
- **Edycję obraz-do-obrazu** (odniesienie do obiektu) z kontrolą proporcji.
- Do **9 obrazów wyjściowych** na żądanie.
- Do **1 obrazu referencyjnego** na żądanie edycji.
- Obsługiwane proporcje: `1:1`, `16:9`, `4:3`, `3:2`, `2:3`, `3:4`, `9:16`, `21:9`.
<Tabs>
<Tab title="OAuth (Coding Plan)">
**Najlepsze do:** szybkiej konfiguracji z MiniMax Coding Plan przez OAuth, bez wymaganego klucza API.
<Tabs>
<Tab title="Międzynarodowy">
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice minimax-global-oauth
```
To uwierzytelnia względem `api.minimax.io`.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider minimax-portal
```
</Step>
</Steps>
</Tab>
<Tab title="Chiny">
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice minimax-cn-oauth
```
To uwierzytelnia względem `api.minimaxi.com`.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider minimax-portal
```
</Step>
</Steps>
</Tab>
</Tabs>
<Note>
Konfiguracje OAuth używają identyfikatora dostawcy `minimax-portal`. Odwołania do modeli mają postać `minimax-portal/MiniMax-M2.7`.
</Note>
<Tip>
Link polecający do MiniMax Coding Plan (10% zniżki): [MiniMax Coding Plan](https://platform.minimax.io/subscribe/coding-plan?code=DbXJTRClnb&source=link)
</Tip>
</Tab>
<Tab title="Klucz API">
**Najlepsze do:** hostowanego MiniMax z API zgodnym z Anthropic.
<Tabs>
<Tab title="Międzynarodowy">
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice minimax-global-api
```
To konfiguruje `api.minimax.io` jako bazowy URL.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider minimax
```
</Step>
</Steps>
</Tab>
<Tab title="Chiny">
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice minimax-cn-api
```
To konfiguruje `api.minimaxi.com` jako bazowy URL.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider minimax
```
</Step>
</Steps>
</Tab>
</Tabs>
### Przykład konfiguracji
```json5
{
env: { MINIMAX_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "minimax/MiniMax-M2.7" } } },
models: {
mode: "merge",
providers: {
minimax: {
baseUrl: "https://api.minimax.io/anthropic",
apiKey: "${MINIMAX_API_KEY}",
api: "anthropic-messages",
models: [
{
id: "MiniMax-M2.7",
name: "MiniMax M2.7",
reasoning: true,
input: ["text", "image"],
cost: { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
},
{
id: "MiniMax-M2.7-highspeed",
name: "MiniMax M2.7 Highspeed",
reasoning: true,
input: ["text", "image"],
cost: { input: 0.6, output: 2.4, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
},
],
},
},
},
}
```
<Warning>
Na ścieżce strumieniowania zgodnej z Anthropic OpenClaw domyślnie wyłącza thinking MiniMax, chyba że jawnie ustawisz `thinking` samodzielnie. Endpoint strumieniowania MiniMax emituje `reasoning_content` w fragmentach delta w stylu OpenAI zamiast natywnych bloków thinking Anthropic, co może ujawniać wewnętrzne rozumowanie w widocznym wyjściu, jeśli pozostanie domyślnie włączone.
</Warning>
<Note>
Konfiguracje z kluczem API używają identyfikatora dostawcy `minimax`. Odwołania do modeli mają postać `minimax/MiniMax-M2.7`.
</Note>
</Tab>
</Tabs>
## Konfiguracja przez `openclaw configure`
Użyj interaktywnego kreatora konfiguracji, aby ustawić MiniMax bez edytowania JSON:
<Steps>
<Step title="Uruchom kreator">
```bash
openclaw configure
```
</Step>
<Step title="Wybierz Model/auth">
Wybierz w menu **Model/auth**.
</Step>
<Step title="Wybierz opcję auth MiniMax">
Wybierz jedną z dostępnych opcji MiniMax:
| Wybór auth | Opis |
| --- | --- |
| `minimax-global-oauth` | Międzynarodowy OAuth (Coding Plan) |
| `minimax-cn-oauth` | OAuth dla Chin (Coding Plan) |
| `minimax-global-api` | Międzynarodowy klucz API |
| `minimax-cn-api` | Klucz API dla Chin |
</Step>
<Step title="Wybierz model domyślny">
Po wyświetleniu monitu wybierz model domyślny.
</Step>
</Steps>
## Capabilities
### Generowanie obrazów
Plugin MiniMax rejestruje model `image-01` dla narzędzia `image_generate`. Obsługuje:
- **Generowanie text-to-image** z kontrolą proporcji
- **Edycja image-to-image** (odwołanie do obiektu) z kontrolą proporcji
- Do **9 obrazów wyjściowych** na żądanie
- Do **1 obrazu referencyjnego** na żądanie edycji
- Obsługiwane proporcje: `1:1`, `16:9`, `4:3`, `3:2`, `2:3`, `3:4`, `9:16`, `21:9`
Aby używać MiniMax do generowania obrazów, ustaw go jako dostawcę generowania obrazów:
@ -57,33 +238,34 @@ Aby używać MiniMax do generowania obrazów, ustaw go jako dostawcę generowani
}
```
Plugin używa tego samego `MINIMAX_API_KEY` albo uwierzytelniania OAuth co modele tekstowe. Jeśli MiniMax jest już skonfigurowany, nie jest wymagana żadna dodatkowa konfiguracja.
Plugin używa tego samego auth `MINIMAX_API_KEY` lub OAuth co modele tekstowe. Jeśli MiniMax jest już skonfigurowany, nie jest wymagana dodatkowa konfiguracja.
Zarówno `minimax`, jak i `minimax-portal` rejestrują `image_generate` z tym samym
modelem `image-01`. Konfiguracje z kluczem API używają `MINIMAX_API_KEY`; konfiguracje OAuth mogą używać
zamiast tego wbudowanej ścieżki uwierzytelniania `minimax-portal`.
zamiast tego bundlowej ścieżki auth `minimax-portal`.
Gdy onboarding albo konfiguracja z kluczem API zapisuje jawne wpisy
`models.providers.minimax`, OpenClaw materializuje `MiniMax-M2.7` i
Gdy onboarding albo konfiguracja z kluczem API zapisuje jawne wpisy `models.providers.minimax`,
OpenClaw materializuje `MiniMax-M2.7` i
`MiniMax-M2.7-highspeed` z `input: ["text", "image"]`.
Sam wbudowany katalog tekstowy MiniMax pozostaje metadanymi tylko tekstowymi, dopóki
nie istnieje jawna konfiguracja tego dostawcy. Rozumienie obrazów jest udostępniane osobno
przez należącego do pluginu dostawcę mediów `MiniMax-VL-01`.
Sam wbudowany bundlowy katalog tekstowy MiniMax pozostaje metadanymi tylko dla tekstu, dopóki
nie pojawi się jawna konfiguracja dostawcy. Rozumienie obrazów jest udostępniane osobno
przez należącego do Pluginu dostawcę mediów `MiniMax-VL-01`.
Zobacz [Image Generation](/pl/tools/image-generation), aby poznać współdzielone parametry
narzędzia, wybór dostawcy i zachowanie failover.
<Note>
Zobacz [Generowanie obrazów](/pl/tools/image-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
## Generowanie muzyki
### Generowanie muzyki
Wbudowany plugin `minimax` rejestruje także generowanie muzyki przez współdzielone
Bundlowy Plugin `minimax` rejestruje także generowanie muzyki przez wspólne
narzędzie `music_generate`.
- Domyślny model muzyczny: `minimax/music-2.5+`
- Obsługuje także `minimax/music-2.5` i `minimax/music-2.0`
- Kontrolki promptu: `lyrics`, `instrumental`, `durationSeconds`
- Format wyjściowy: `mp3`
- Uruchomienia powiązane z sesją są odłączane przez współdzielony przepływ zadanie/status, w tym `action: "status"`
- Przebiegi oparte na sesji są odłączane przez wspólny przepływ zadania/statusu, w tym `action: "status"`
Aby używać MiniMax jako domyślnego dostawcy muzyki:
@ -99,16 +281,17 @@ Aby używać MiniMax jako domyślnego dostawcy muzyki:
}
```
Zobacz [Music Generation](/tools/music-generation), aby poznać współdzielone parametry
narzędzia, wybór dostawcy i zachowanie failover.
<Note>
Zobacz [Generowanie muzyki](/pl/tools/music-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
## Generowanie wideo
### Generowanie wideo
Wbudowany plugin `minimax` rejestruje także generowanie wideo przez współdzielone
Bundlowy Plugin `minimax` rejestruje także generowanie wideo przez wspólne
narzędzie `video_generate`.
- Domyślny model wideo: `minimax/MiniMax-Hailuo-2.3`
- Tryby: tekst-do-wideo i przepływy z pojedynczym obrazem referencyjnym
- Tryby: text-to-video i przepływy z pojedynczym obrazem referencyjnym
- Obsługuje `aspectRatio` i `resolution`
Aby używać MiniMax jako domyślnego dostawcy wideo:
@ -125,223 +308,165 @@ Aby używać MiniMax jako domyślnego dostawcy wideo:
}
```
Zobacz [Video Generation](/tools/video-generation), aby poznać współdzielone parametry
narzędzia, wybór dostawcy i zachowanie failover.
<Note>
Zobacz [Generowanie wideo](/pl/tools/video-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
## Rozumienie obrazów
### Rozumienie obrazów
Plugin MiniMax rejestruje rozumienie obrazów oddzielnie od katalogu
Plugin MiniMax rejestruje rozumienie obrazów osobno od katalogu
tekstowego:
- `minimax`: domyślny model obrazów `MiniMax-VL-01`
- `minimax-portal`: domyślny model obrazów `MiniMax-VL-01`
| ID dostawcy | Domyślny model obrazu |
| ---------------- | --------------------- |
| `minimax` | `MiniMax-VL-01` |
| `minimax-portal` | `MiniMax-VL-01` |
Dlatego automatyczny routing mediów może używać rozumienia obrazów MiniMax nawet
wtedy, gdy wbudowany katalog dostawcy tekstu nadal pokazuje odwołania do czatu M2.7
jako metadane tylko tekstowe.
Dlatego automatyczne routowanie mediów może używać rozumienia obrazów MiniMax nawet
wtedy, gdy bundlowy katalog dostawcy tekstu nadal pokazuje wyłącznie tekstowe odwołania czatu M2.7.
## Wyszukiwanie w sieci
### Web search
Plugin MiniMax rejestruje także `web_search` przez API wyszukiwania
MiniMax Coding Plan.
Plugin MiniMax rejestruje także `web_search` przez API wyszukiwania MiniMax Coding Plan.
- ID dostawcy: `minimax`
- Wyniki strukturalne: tytuły, URL-e, snippety, powiązane zapytania
- Identyfikator dostawcy: `minimax`
- Wyniki strukturalne: tytuły, URL-e, fragmenty, powiązane zapytania
- Preferowana zmienna env: `MINIMAX_CODE_PLAN_KEY`
- Akceptowany alias env: `MINIMAX_CODING_API_KEY`
- Fallback zgodności: `MINIMAX_API_KEY`, gdy już wskazuje na token coding-plan
- Ponowne użycie regionu: `plugins.entries.minimax.config.webSearch.region`, potem `MINIMAX_API_HOST`, potem bazowe URL-e dostawców MiniMax
- Wyszukiwanie pozostaje przy ID dostawcy `minimax`; konfiguracja OAuth CN/global może nadal pośrednio sterować regionem przez `models.providers.minimax-portal.baseUrl`
- Ponowne użycie regionu: `plugins.entries.minimax.config.webSearch.region`, następnie `MINIMAX_API_HOST`, a potem bazowe URL-e dostawcy MiniMax
- Wyszukiwanie pozostaje przy identyfikatorze dostawcy `minimax`; konfiguracja OAuth CN/global nadal może pośrednio sterować regionem przez `models.providers.minimax-portal.baseUrl`
Konfiguracja znajduje się pod `plugins.entries.minimax.config.webSearch.*`.
Zobacz [MiniMax Search](/pl/tools/minimax-search).
## Wybierz konfigurację
<Note>
Zobacz [Wyszukiwanie MiniMax](/pl/tools/minimax-search), aby poznać pełną konfigurację i użycie web search.
</Note>
### MiniMax OAuth (Coding Plan) - zalecane
## Konfiguracja zaawansowana
**Najlepsze dla:** szybkiej konfiguracji MiniMax Coding Plan przez OAuth, bez wymaganego klucza API.
<AccordionGroup>
<Accordion title="Opcje konfiguracji">
| Opcja | Opis |
| --- | --- |
| `models.providers.minimax.baseUrl` | Preferuj `https://api.minimax.io/anthropic` (zgodne z Anthropic); `https://api.minimax.io/v1` jest opcjonalne dla payloadów zgodnych z OpenAI |
| `models.providers.minimax.api` | Preferuj `anthropic-messages`; `openai-completions` jest opcjonalne dla payloadów zgodnych z OpenAI |
| `models.providers.minimax.apiKey` | Klucz API MiniMax (`MINIMAX_API_KEY`) |
| `models.providers.minimax.models` | Zdefiniuj `id`, `name`, `reasoning`, `contextWindow`, `maxTokens`, `cost` |
| `agents.defaults.models` | Modele aliasów, które chcesz umieścić na allowlist |
| `models.mode` | Zachowaj `merge`, jeśli chcesz dodać MiniMax obok wbudowanych |
</Accordion>
Uwierzytelnij się za pomocą jawnego regionalnego wyboru OAuth:
<Accordion title="Domyślne ustawienia thinking">
Przy `api: "anthropic-messages"` OpenClaw wstrzykuje `thinking: { type: "disabled" }`, chyba że thinking jest już jawnie ustawione w parametrach/konfiguracji.
```bash
openclaw onboard --auth-choice minimax-global-oauth
# or
openclaw onboard --auth-choice minimax-cn-oauth
```
Zapobiega to emitowaniu przez endpoint strumieniowania MiniMax `reasoning_content` w fragmentach delta w stylu OpenAI, co ujawniałoby wewnętrzne rozumowanie w widocznym wyjściu.
Mapowanie opcji:
</Accordion>
- `minimax-global-oauth`: użytkownicy międzynarodowi (`api.minimax.io`)
- `minimax-cn-oauth`: użytkownicy w Chinach (`api.minimaxi.com`)
<Accordion title="Tryb szybki">
`/fast on` albo `params.fastMode: true` przepisuje `MiniMax-M2.7` na `MiniMax-M2.7-highspeed` na ścieżce strumieniowania zgodnej z Anthropic.
</Accordion>
Szczegóły znajdziesz w README pakietu pluginu MiniMax w repozytorium OpenClaw.
<Accordion title="Przykład fallback">
**Najlepsze do:** zachowania najmocniejszego modelu najnowszej generacji jako podstawowego i przejścia awaryjnego na MiniMax M2.7. Poniższy przykład używa Opus jako konkretnego modelu podstawowego; zamień go na preferowany model podstawowy najnowszej generacji.
### MiniMax M2.7 (klucz API)
**Najlepsze dla:** hostowanego MiniMax z API zgodnym z Anthropic.
Skonfiguruj przez CLI:
- Interaktywny onboarding:
```bash
openclaw onboard --auth-choice minimax-global-api
# or
openclaw onboard --auth-choice minimax-cn-api
```
- `minimax-global-api`: użytkownicy międzynarodowi (`api.minimax.io`)
- `minimax-cn-api`: użytkownicy w Chinach (`api.minimaxi.com`)
```json5
{
env: { MINIMAX_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "minimax/MiniMax-M2.7" } } },
models: {
mode: "merge",
providers: {
minimax: {
baseUrl: "https://api.minimax.io/anthropic",
apiKey: "${MINIMAX_API_KEY}",
api: "anthropic-messages",
models: [
{
id: "MiniMax-M2.7",
name: "MiniMax M2.7",
reasoning: true,
input: ["text", "image"],
cost: { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
```json5
{
env: { MINIMAX_API_KEY: "sk-..." },
agents: {
defaults: {
models: {
"anthropic/claude-opus-4-6": { alias: "primary" },
"minimax/MiniMax-M2.7": { alias: "minimax" },
},
{
id: "MiniMax-M2.7-highspeed",
name: "MiniMax M2.7 Highspeed",
reasoning: true,
input: ["text", "image"],
cost: { input: 0.6, output: 2.4, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
model: {
primary: "anthropic/claude-opus-4-6",
fallbacks: ["minimax/MiniMax-M2.7"],
},
],
},
},
},
},
}
```
}
```
W ścieżce strumieniowania zgodnej z Anthropic OpenClaw teraz domyślnie wyłącza
thinking dla MiniMax, chyba że jawnie ustawisz `thinking` samodzielnie. Punkt końcowy
strumieniowania MiniMax emituje `reasoning_content` w fragmentach delta w stylu OpenAI
zamiast natywnych bloków thinking Anthropic, co może ujawniać wewnętrzne rozumowanie
w widocznym wyjściu, jeśli pozostanie to niejawnie włączone.
</Accordion>
### MiniMax M2.7 jako fallback (przykład)
**Najlepsze dla:** zachowania najmocniejszego modelu najnowszej generacji jako głównego i przełączania awaryjnego na MiniMax M2.7.
Poniższy przykład używa Opus jako konkretnego modelu głównego; zamień go na preferowany model główny najnowszej generacji.
```json5
{
env: { MINIMAX_API_KEY: "sk-..." },
agents: {
defaults: {
models: {
"anthropic/claude-opus-4-6": { alias: "primary" },
"minimax/MiniMax-M2.7": { alias: "minimax" },
},
model: {
primary: "anthropic/claude-opus-4-6",
fallbacks: ["minimax/MiniMax-M2.7"],
},
},
},
}
```
## Konfiguracja przez `openclaw configure`
Użyj interaktywnego kreatora konfiguracji, aby ustawić MiniMax bez edytowania JSON:
1. Uruchom `openclaw configure`.
2. Wybierz **Model/auth**.
3. Wybierz opcję uwierzytelniania **MiniMax**.
4. Po wyświetleniu monitu wybierz swój domyślny model.
Aktualne opcje uwierzytelniania MiniMax w kreatorze/CLI:
- `minimax-global-oauth`
- `minimax-cn-oauth`
- `minimax-global-api`
- `minimax-cn-api`
## Opcje konfiguracji
- `models.providers.minimax.baseUrl`: preferowane `https://api.minimax.io/anthropic` (zgodne z Anthropic); `https://api.minimax.io/v1` jest opcjonalne dla ładunków zgodnych z OpenAI.
- `models.providers.minimax.api`: preferowane `anthropic-messages`; `openai-completions` jest opcjonalne dla ładunków zgodnych z OpenAI.
- `models.providers.minimax.apiKey`: klucz API MiniMax (`MINIMAX_API_KEY`).
- `models.providers.minimax.models`: zdefiniuj `id`, `name`, `reasoning`, `contextWindow`, `maxTokens`, `cost`.
- `agents.defaults.models`: aliasuj modele, które chcesz mieć na liście dozwolonych.
- `models.mode`: pozostaw `merge`, jeśli chcesz dodać MiniMax obok wbudowanych dostawców.
<Accordion title="Szczegóły użycia Coding Plan">
- API użycia Coding Plan: `https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains` (wymaga klucza coding plan).
- OpenClaw normalizuje użycie MiniMax coding plan do tego samego formatu wyświetlania `% pozostało`, co u innych dostawców. Surowe pola MiniMax `usage_percent` / `usagePercent` oznaczają pozostały limit, a nie wykorzystany limit, więc OpenClaw je odwraca. Pola oparte na liczbie mają pierwszeństwo, jeśli są obecne.
- Gdy API zwraca `model_remains`, OpenClaw preferuje wpis modelu czatu, w razie potrzeby wyprowadza etykietę okna z `start_time` / `end_time` i uwzględnia wybraną nazwę modelu w etykiecie planu, aby łatwiej odróżniać okna coding plan.
- Snapshoty użycia traktują `minimax`, `minimax-cn` i `minimax-portal` jako tę samą powierzchnię limitu MiniMax oraz preferują zapisany OAuth MiniMax, zanim przejdą do fallbacku do zmiennych env klucza Coding Plan.
</Accordion>
</AccordionGroup>
## Uwagi
- Odwołania do modeli podążają za ścieżką uwierzytelniania:
- Odwołania do modeli zależą od ścieżki auth:
- konfiguracja z kluczem API: `minimax/<model>`
- konfiguracja OAuth: `minimax-portal/<model>`
- Domyślny model czatu: `MiniMax-M2.7`
- Alternatywny model czatu: `MiniMax-M2.7-highspeed`
- Przy `api: "anthropic-messages"` OpenClaw wstrzykuje
`thinking: { type: "disabled" }`, chyba że thinking jest już jawnie ustawione w
params/config.
- `/fast on` lub `params.fastMode: true` przepisuje `MiniMax-M2.7` na
`MiniMax-M2.7-highspeed` w ścieżce strumienia zgodnej z Anthropic.
- Onboarding i bezpośrednia konfiguracja z kluczem API zapisują jawne definicje modeli z
`input: ["text", "image"]` dla obu wariantów M2.7
- Wbudowany katalog dostawców obecnie udostępnia odwołania czatu jako
metadane tylko tekstowe, dopóki nie istnieje jawna konfiguracja dostawcy MiniMax
- API użycia Coding Plan: `https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains` (wymaga klucza coding plan).
- OpenClaw normalizuje użycie MiniMax coding-plan do tego samego wyświetlania `% left`,
którego używają inni dostawcy. Surowe pola `usage_percent` / `usagePercent` MiniMax
oznaczają pozostały limit, a nie zużyty limit, więc OpenClaw je odwraca.
Jeśli są obecne, pierwszeństwo mają pola liczbowe. Gdy API zwraca `model_remains`,
OpenClaw preferuje wpis modelu czatu, w razie potrzeby wyprowadza etykietę okna z
`start_time` / `end_time` i dołącza wybraną nazwę modelu
do etykiety planu, aby okna coding-plan były łatwiejsze do odróżnienia.
- Migawki użycia traktują `minimax`, `minimax-cn` i `minimax-portal` jako
tę samą powierzchnię limitu MiniMax i preferują zapisany OAuth MiniMax przed
fallbackiem do zmiennych env klucza Coding Plan.
- Zaktualizuj wartości cen w `models.json`, jeśli potrzebujesz dokładnego śledzenia kosztów.
- Link polecający do MiniMax Coding Plan (10% zniżki): [https://platform.minimax.io/subscribe/coding-plan?code=DbXJTRClnb&source=link](https://platform.minimax.io/subscribe/coding-plan?code=DbXJTRClnb&source=link)
- Zobacz [/concepts/model-providers](/pl/concepts/model-providers), aby poznać zasady dostawców.
- Użyj `openclaw models list`, aby potwierdzić bieżące ID dostawcy, a następnie przełącz za pomocą
`openclaw models set minimax/MiniMax-M2.7` lub
`openclaw models set minimax-portal/MiniMax-M2.7`.
- Onboarding i bezpośrednia konfiguracja klucza API zapisują jawne definicje modeli z `input: ["text", "image"]` dla obu wariantów M2.7
- Bundlowy katalog dostawcy obecnie udostępnia odwołania czatu jako metadane wyłącznie tekstowe, dopóki nie pojawi się jawna konfiguracja dostawcy MiniMax
- Zaktualizuj wartości cen w `models.json`, jeśli potrzebujesz dokładnego śledzenia kosztów
- Użyj `openclaw models list`, aby potwierdzić bieżący identyfikator dostawcy, a następnie przełącz się przez `openclaw models set minimax/MiniMax-M2.7` albo `openclaw models set minimax-portal/MiniMax-M2.7`
<Tip>
Link polecający do MiniMax Coding Plan (10% zniżki): [MiniMax Coding Plan](https://platform.minimax.io/subscribe/coding-plan?code=DbXJTRClnb&source=link)
</Tip>
<Note>
Zobacz [Dostawcy modeli](/pl/concepts/model-providers), aby poznać zasady dotyczące dostawców.
</Note>
## Rozwiązywanie problemów
### "Unknown model: minimax/MiniMax-M2.7"
<AccordionGroup>
<Accordion title='"Nieznany model: minimax/MiniMax-M2.7"'>
Zwykle oznacza to, że **dostawca MiniMax nie jest skonfigurowany** (brak pasującego wpisu dostawcy i brak klucza env/profilu auth MiniMax). Poprawka dla tego wykrywania znajduje się w wersji **2026.1.12**. Napraw to przez:
To zwykle oznacza, że **dostawca MiniMax nie jest skonfigurowany** (brak pasującego
wpisu dostawcy i brak profilu uwierzytelniania/env key MiniMax). Poprawka tego
wykrywania znajduje się w wersji **2026.1.12**. Napraw to przez:
- aktualizację do wersji **2026.1.12** (albo uruchomienie ze źródła z `main`), a następnie ponowne uruchomienie gateway;
- uruchomienie `openclaw configure` i wybranie opcji auth **MiniMax**, albo
- ręczne dodanie pasującego bloku `models.providers.minimax` albo `models.providers.minimax-portal`, albo
- ustawienie `MINIMAX_API_KEY`, `MINIMAX_OAUTH_TOKEN` albo profilu auth MiniMax, aby można było wstrzyknąć pasującego dostawcę.
- aktualizację do **2026.1.12** (albo uruchomienie ze źródła `main`), a następnie ponowne uruchomienie bramy.
- uruchomienie `openclaw configure` i wybranie opcji uwierzytelniania **MiniMax**, albo
- ręczne dodanie pasującego bloku `models.providers.minimax` lub
`models.providers.minimax-portal`, albo
- ustawienie `MINIMAX_API_KEY`, `MINIMAX_OAUTH_TOKEN` albo profilu uwierzytelniania MiniMax,
aby odpowiedni dostawca mógł zostać wstrzyknięty.
Upewnij się, że identyfikator modelu jest **rozróżniający wielkość liter**:
Upewnij się, że ID modelu jest **wrażliwe na wielkość liter**:
- ścieżka z kluczem API: `minimax/MiniMax-M2.7` albo `minimax/MiniMax-M2.7-highspeed`
- ścieżka OAuth: `minimax-portal/MiniMax-M2.7` albo `minimax-portal/MiniMax-M2.7-highspeed`
- ścieżka klucza API: `minimax/MiniMax-M2.7` lub `minimax/MiniMax-M2.7-highspeed`
- ścieżka OAuth: `minimax-portal/MiniMax-M2.7` lub
`minimax-portal/MiniMax-M2.7-highspeed`
Następnie sprawdź ponownie przez:
Następnie sprawdź ponownie za pomocą:
```bash
openclaw models list
```
```bash
openclaw models list
```
</Accordion>
</AccordionGroup>
<Note>
Więcej pomocy: [Rozwiązywanie problemów](/pl/help/troubleshooting) i [FAQ](/pl/help/faq).
</Note>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Generowanie obrazów" href="/pl/tools/image-generation" icon="image">
Wspólne parametry narzędzia obrazu i wybór dostawcy.
</Card>
<Card title="Generowanie muzyki" href="/pl/tools/music-generation" icon="music">
Wspólne parametry narzędzia muzyki i wybór dostawcy.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Wspólne parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Wyszukiwanie MiniMax" href="/pl/tools/minimax-search" icon="magnifying-glass">
Konfiguracja web search przez MiniMax Coding Plan.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Ogólne rozwiązywanie problemów i FAQ.
</Card>
</CardGroup>

View File

@ -1,14 +1,14 @@
---
read_when:
- Chcesz używać modeli Mistral w OpenClaw
- Potrzebujesz onboardingu klucza API Mistral i odwołań do modeli
- Potrzebujesz onboardingu z kluczem API Mistral i referencji modeli
summary: Używaj modeli Mistral i transkrypcji Voxtral z OpenClaw
title: Mistral
x-i18n:
generated_at: "2026-04-07T09:49:07Z"
generated_at: "2026-04-12T23:31:53Z"
model: gpt-5.4
provider: openai
source_hash: 4e32a0eb2a37dba6383ba338b06a8d0be600e7443aa916225794ccb0fdf46aee
source_hash: 0474f55587909ce9bbdd47b881262edbeb1b07eb3ed52de1090a8ec4d260c97b
source_path: providers/mistral.md
workflow: 15
---
@ -16,41 +16,63 @@ x-i18n:
# Mistral
OpenClaw obsługuje Mistral zarówno do routingu modeli tekstowych/obrazowych (`mistral/...`), jak i
do transkrypcji audio przez Voxtral w media understanding.
Mistral może być również używany do embeddingów pamięci (`memorySearch.provider = "mistral"`).
transkrypcji audio przez Voxtral w media understanding.
Mistral może być także używany do embeddings pamięci (`memorySearch.provider = "mistral"`).
## Konfiguracja CLI
- Dostawca: `mistral`
- Uwierzytelnianie: `MISTRAL_API_KEY`
- API: Mistral Chat Completions (`https://api.mistral.ai/v1`)
```bash
openclaw onboard --auth-choice mistral-api-key
# or non-interactive
openclaw onboard --mistral-api-key "$MISTRAL_API_KEY"
```
## Pierwsze kroki
## Fragment konfiguracji (dostawca LLM)
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API w [Mistral Console](https://console.mistral.ai/).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice mistral-api-key
```
```json5
{
env: { MISTRAL_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "mistral/mistral-large-latest" } } },
}
```
Lub przekaż klucz bezpośrednio:
```bash
openclaw onboard --mistral-api-key "$MISTRAL_API_KEY"
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
env: { MISTRAL_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "mistral/mistral-large-latest" } } },
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider mistral
```
</Step>
</Steps>
## Wbudowany katalog LLM
OpenClaw obecnie udostępnia ten dołączony katalog Mistral:
OpenClaw obecnie dostarcza ten dołączony katalog Mistral:
| Model ref | Wejście | Kontekst | Maks. wyjście | Uwagi |
| -------------------------------- | ------------ | -------- | ------------- | ---------------------------------------------------------------- |
| `mistral/mistral-large-latest` | tekst, obraz | 262,144 | 16,384 | Model domyślny |
| `mistral/mistral-medium-2508` | tekst, obraz | 262,144 | 8,192 | Mistral Medium 3.1 |
| `mistral/mistral-small-latest` | tekst, obraz | 128,000 | 16,384 | Mistral Small 4; regulowane reasoning przez API `reasoning_effort` |
| `mistral/pixtral-large-latest` | tekst, obraz | 128,000 | 32,768 | Pixtral |
| `mistral/codestral-latest` | tekst | 256,000 | 4,096 | Kodowanie |
| `mistral/devstral-medium-latest` | tekst | 262,144 | 32,768 | Devstral 2 |
| `mistral/magistral-small` | tekst | 128,000 | 40,000 | Z włączonym reasoning |
| Ref modelu | Wejście | Kontekst | Maks. wyjście | Uwagi |
| -------------------------------- | ----------- | -------- | ------------- | ---------------------------------------------------------------- |
| `mistral/mistral-large-latest` | text, image | 262,144 | 16,384 | Model domyślny |
| `mistral/mistral-medium-2508` | text, image | 262,144 | 8,192 | Mistral Medium 3.1 |
| `mistral/mistral-small-latest` | text, image | 128,000 | 16,384 | Mistral Small 4; regulowane rozumowanie przez API `reasoning_effort` |
| `mistral/pixtral-large-latest` | text, image | 128,000 | 32,768 | Pixtral |
| `mistral/codestral-latest` | text | 256,000 | 4,096 | Kodowanie |
| `mistral/devstral-medium-latest` | text | 262,144 | 32,768 | Devstral 2 |
| `mistral/magistral-small` | text | 128,000 | 40,000 | Rozumowanie włączone |
## Fragment konfiguracji (transkrypcja audio z Voxtral)
## Transkrypcja audio (Voxtral)
Używaj Voxtral do transkrypcji audio przez pipeline media understanding.
```json5
{
@ -65,22 +87,55 @@ OpenClaw obecnie udostępnia ten dołączony katalog Mistral:
}
```
## Regulowane reasoning (`mistral-small-latest`)
<Tip>
Ścieżka transkrypcji mediów używa `/v1/audio/transcriptions`. Domyślny model audio dla Mistral to `voxtral-mini-latest`.
</Tip>
`mistral/mistral-small-latest` odpowiada Mistral Small 4 i obsługuje [regulowane reasoning](https://docs.mistral.ai/capabilities/reasoning/adjustable) w API Chat Completions przez `reasoning_effort` (`none` minimalizuje dodatkowe myślenie w wyniku; `high` ujawnia pełne ślady myślenia przed końcową odpowiedzią).
## Konfiguracja zaawansowana
OpenClaw mapuje poziom **thinking** sesji na API Mistral:
<AccordionGroup>
<Accordion title="Regulowane rozumowanie (`mistral-small-latest`)">
`mistral/mistral-small-latest` mapuje do Mistral Small 4 i obsługuje [regulowane rozumowanie](https://docs.mistral.ai/capabilities/reasoning/adjustable) w Chat Completions API przez `reasoning_effort` (`none` minimalizuje dodatkowe myślenie w odpowiedzi; `high` pokazuje pełne ślady myślenia przed odpowiedzią końcową).
- **off** / **minimal**`none`
- **low** / **medium** / **high** / **xhigh** / **adaptive**`high`
OpenClaw mapuje poziom **thinking** sesji na API Mistral:
Inne modele z dołączonego katalogu Mistral nie używają tego parametru; nadal używaj modeli `magistral-*`, gdy chcesz uzyskać natywne dla Mistral zachowanie z priorytetem reasoning.
| Poziom thinking w OpenClaw | Mistral `reasoning_effort` |
| ----------------------------------------------- | -------------------------- |
| **off** / **minimal** | `none` |
| **low** / **medium** / **high** / **xhigh** / **adaptive** | `high` |
## Uwagi
<Note>
Pozostałe modele z dołączonego katalogu Mistral nie używają tego parametru. Nadal używaj modeli `magistral-*`, gdy chcesz korzystać z natywnego dla Mistral zachowania nastawionego na rozumowanie.
</Note>
- Uwierzytelnianie Mistral używa `MISTRAL_API_KEY`.
- Bazowy URL dostawcy domyślnie to `https://api.mistral.ai/v1`.
- Domyślny model onboardingu to `mistral/mistral-large-latest`.
- Domyślny model audio dla media-understanding w Mistral to `voxtral-mini-latest`.
- Ścieżka transkrypcji mediów używa `/v1/audio/transcriptions`.
- Ścieżka embeddingów pamięci używa `/v1/embeddings` (model domyślny: `mistral-embed`).
</Accordion>
<Accordion title="Embeddings pamięci">
Mistral może udostępniać embeddings pamięci przez `/v1/embeddings` (model domyślny: `mistral-embed`).
```json5
{
memorySearch: { provider: "mistral" },
}
```
</Accordion>
<Accordion title="Uwierzytelnianie i bazowy URL">
- Uwierzytelnianie Mistral używa `MISTRAL_API_KEY`.
- Bazowy URL dostawcy domyślnie to `https://api.mistral.ai/v1`.
- Domyślnym modelem w onboardingu jest `mistral/mistral-large-latest`.
- Z.AI używa uwierzytelniania Bearer z Twoim kluczem API.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Media understanding" href="/tools/media-understanding" icon="microphone">
Konfiguracja transkrypcji audio i wybór dostawcy.
</Card>
</CardGroup>

View File

@ -1,15 +1,15 @@
---
read_when:
- Chcesz skonfigurować Moonshot K2 (Moonshot Open Platform) lub Kimi Coding
- Musisz zrozumieć oddzielne endpointy, klucze i referencje modeli
- Chcesz mieć gotową do skopiowania konfigurację dla jednego z dostawców
- Chcesz skonfigurować Moonshot K2 (Moonshot Open Platform) oraz Kimi Coding
- Musisz zrozumieć oddzielne endpointy, klucze i odwołania do modeli
- Chcesz konfigurację do skopiowania i wklejenia dla dowolnego z dostawców
summary: Skonfiguruj Moonshot K2 i Kimi Coding (oddzielni dostawcy + klucze)
title: Moonshot AI
x-i18n:
generated_at: "2026-04-05T14:03:41Z"
generated_at: "2026-04-12T23:32:05Z"
model: gpt-5.4
provider: openai
source_hash: a80c71ef432b778e296bd60b7d9ec7c72d025d13fd9bdae474b3d58436d15695
source_hash: 3f261f83a9b37e4fffb0cd0803e0c64f27eae8bae91b91d8a781a030663076f8
source_path: providers/moonshot.md
workflow: 15
---
@ -17,140 +17,217 @@ x-i18n:
# Moonshot AI (Kimi)
Moonshot udostępnia API Kimi z endpointami zgodnymi z OpenAI. Skonfiguruj
dostawcę i ustaw model domyślny na `moonshot/kimi-k2.5`, albo użyj
dostawcę i ustaw domyślny model na `moonshot/kimi-k2.5`, albo użyj
Kimi Coding z `kimi/kimi-code`.
Aktualne identyfikatory modeli Kimi K2:
<Warning>
Moonshot i Kimi Coding to **oddzielni dostawcy**. Klucze nie są zamienne, endpointy są różne, a odwołania do modeli też się różnią (`moonshot/...` vs `kimi/...`).
</Warning>
## Wbudowany katalog modeli
[//]: # "moonshot-kimi-k2-ids:start"
- `kimi-k2.5`
- `kimi-k2-thinking`
- `kimi-k2-thinking-turbo`
- `kimi-k2-turbo`
| Odwołanie modelu | Nazwa | Reasoning | Wejście | Kontekst | Maks. wyjście |
| -------------------------------- | ---------------------- | --------- | ----------- | -------- | ------------- |
| `moonshot/kimi-k2.5` | Kimi K2.5 | Nie | text, image | 262,144 | 262,144 |
| `moonshot/kimi-k2-thinking` | Kimi K2 Thinking | Tak | text | 262,144 | 262,144 |
| `moonshot/kimi-k2-thinking-turbo`| Kimi K2 Thinking Turbo | Tak | text | 262,144 | 262,144 |
| `moonshot/kimi-k2-turbo` | Kimi K2 Turbo | Nie | text | 256,000 | 16,384 |
[//]: # "moonshot-kimi-k2-ids:end"
```bash
openclaw onboard --auth-choice moonshot-api-key
# lub
openclaw onboard --auth-choice moonshot-api-key-cn
```
## Pierwsze kroki
Kimi Coding:
Wybierz dostawcę i wykonaj kroki konfiguracji.
```bash
openclaw onboard --auth-choice kimi-code-api-key
```
<Tabs>
<Tab title="Moonshot API">
**Najlepsze do:** modeli Kimi K2 przez Moonshot Open Platform.
Uwaga: Moonshot i Kimi Coding to oddzielni dostawcy. Klucze nie są zamienne, endpointy są różne, a referencje modeli się różnią (Moonshot używa `moonshot/...`, Kimi Coding używa `kimi/...`).
<Steps>
<Step title="Wybierz region endpointu">
| Wybór uwierzytelniania | Endpoint | Region |
| ------------------------ | ---------------------------- | -------------- |
| `moonshot-api-key` | `https://api.moonshot.ai/v1` | Międzynarodowy |
| `moonshot-api-key-cn` | `https://api.moonshot.cn/v1` | Chiny |
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice moonshot-api-key
```
Wyszukiwanie w sieci Kimi również używa wtyczki Moonshot:
Albo dla endpointu w Chinach:
```bash
openclaw configure --section web
```
```bash
openclaw onboard --auth-choice moonshot-api-key-cn
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "moonshot/kimi-k2.5" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider moonshot
```
</Step>
</Steps>
W sekcji wyszukiwania w sieci wybierz **Kimi**, aby zapisać
`plugins.entries.moonshot.config.webSearch.*`.
### Przykład konfiguracji
## Fragment konfiguracji (API Moonshot)
```json5
{
env: { MOONSHOT_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "moonshot/kimi-k2.5" },
```json5
{
env: { MOONSHOT_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "moonshot/kimi-k2.5" },
models: {
// moonshot-kimi-k2-aliases:start
"moonshot/kimi-k2.5": { alias: "Kimi K2.5" },
"moonshot/kimi-k2-thinking": { alias: "Kimi K2 Thinking" },
"moonshot/kimi-k2-thinking-turbo": { alias: "Kimi K2 Thinking Turbo" },
"moonshot/kimi-k2-turbo": { alias: "Kimi K2 Turbo" },
// moonshot-kimi-k2-aliases:end
},
},
},
models: {
// moonshot-kimi-k2-aliases:start
"moonshot/kimi-k2.5": { alias: "Kimi K2.5" },
"moonshot/kimi-k2-thinking": { alias: "Kimi K2 Thinking" },
"moonshot/kimi-k2-thinking-turbo": { alias: "Kimi K2 Thinking Turbo" },
"moonshot/kimi-k2-turbo": { alias: "Kimi K2 Turbo" },
// moonshot-kimi-k2-aliases:end
mode: "merge",
providers: {
moonshot: {
baseUrl: "https://api.moonshot.ai/v1",
apiKey: "${MOONSHOT_API_KEY}",
api: "openai-completions",
models: [
// moonshot-kimi-k2-models:start
{
id: "kimi-k2.5",
name: "Kimi K2.5",
reasoning: false,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
{
id: "kimi-k2-thinking",
name: "Kimi K2 Thinking",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
{
id: "kimi-k2-thinking-turbo",
name: "Kimi K2 Thinking Turbo",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
{
id: "kimi-k2-turbo",
name: "Kimi K2 Turbo",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 256000,
maxTokens: 16384,
},
// moonshot-kimi-k2-models:end
],
},
},
},
},
},
models: {
mode: "merge",
providers: {
moonshot: {
baseUrl: "https://api.moonshot.ai/v1",
apiKey: "${MOONSHOT_API_KEY}",
api: "openai-completions",
models: [
// moonshot-kimi-k2-models:start
{
id: "kimi-k2.5",
name: "Kimi K2.5",
reasoning: false,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
{
id: "kimi-k2-thinking",
name: "Kimi K2 Thinking",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
{
id: "kimi-k2-thinking-turbo",
name: "Kimi K2 Thinking Turbo",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 262144,
},
{
id: "kimi-k2-turbo",
name: "Kimi K2 Turbo",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 256000,
maxTokens: 16384,
},
// moonshot-kimi-k2-models:end
],
},
},
},
}
```
}
```
## Kimi Coding
</Tab>
```json5
{
env: { KIMI_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "kimi/kimi-code" },
models: {
"kimi/kimi-code": { alias: "Kimi" },
<Tab title="Kimi Coding">
**Najlepsze do:** zadań skoncentrowanych na kodzie przez endpoint Kimi Coding.
<Note>
Kimi Coding używa innego klucza API i prefiksu dostawcy (`kimi/...`) niż Moonshot (`moonshot/...`). Starsze odwołanie do modelu `kimi/k2p5` pozostaje akceptowane jako identyfikator zgodności.
</Note>
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice kimi-code-api-key
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "kimi/kimi-code" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider kimi
```
</Step>
</Steps>
### Przykład konfiguracji
```json5
{
env: { KIMI_API_KEY: "sk-..." },
agents: {
defaults: {
model: { primary: "kimi/kimi-code" },
models: {
"kimi/kimi-code": { alias: "Kimi" },
},
},
},
},
},
}
```
}
```
</Tab>
</Tabs>
## Wyszukiwanie w sieci Kimi
OpenClaw dostarcza też **Kimi** jako dostawcę `web_search`, opartego na wyszukiwaniu w sieci Moonshot.
OpenClaw zawiera też **Kimi** jako dostawcę `web_search`, oparty na wyszukiwaniu w sieci Moonshot.
Konfiguracja interaktywna może pytać o:
<Steps>
<Step title="Uruchom interaktywną konfigurację wyszukiwania w sieci">
```bash
openclaw configure --section web
```
- region API Moonshot:
- `https://api.moonshot.ai/v1`
- `https://api.moonshot.cn/v1`
- domyślny model wyszukiwania w sieci Kimi (domyślnie `kimi-k2.5`)
W sekcji wyszukiwania w sieci wybierz **Kimi**, aby zapisać
`plugins.entries.moonshot.config.webSearch.*`.
</Step>
<Step title="Skonfiguruj region wyszukiwania w sieci i model">
Interaktywna konfiguracja pyta o:
| Ustawienie | Opcje |
| ------------------- | ------------------------------------------------------------------- |
| Region API | `https://api.moonshot.ai/v1` (międzynarodowy) lub `https://api.moonshot.cn/v1` (Chiny) |
| Model wyszukiwania w sieci | Domyślnie `kimi-k2.5` |
</Step>
</Steps>
Konfiguracja znajduje się pod `plugins.entries.moonshot.config.webSearch`:
@ -179,52 +256,82 @@ Konfiguracja znajduje się pod `plugins.entries.moonshot.config.webSearch`:
}
```
## Uwagi
## Zaawansowane
- Referencje modeli Moonshot używają `moonshot/<modelId>`. Referencje modeli Kimi Coding używają `kimi/<modelId>`.
- Aktualna domyślna referencja modelu Kimi Coding to `kimi/kimi-code`. Starsze `kimi/k2p5` nadal jest akceptowane jako zgodny identyfikator modelu.
- Wyszukiwanie w sieci Kimi używa `KIMI_API_KEY` lub `MOONSHOT_API_KEY` i domyślnie korzysta z `https://api.moonshot.ai/v1` z modelem `kimi-k2.5`.
- Natywne endpointy Moonshot (`https://api.moonshot.ai/v1` i
`https://api.moonshot.cn/v1`) deklarują zgodność użycia strumieniowego we
współdzielonym transporcie `openai-completions`. OpenClaw opiera to teraz na możliwościach endpointu,
więc zgodne niestandardowe identyfikatory dostawców kierujące na te same natywne
hosty Moonshot dziedziczą to samo zachowanie użycia strumieniowego.
- W razie potrzeby nadpisz ceny i metadane kontekstu w `models.providers`.
- Jeśli Moonshot opublikuje inne limity kontekstu dla modelu, odpowiednio dostosuj
`contextWindow`.
- Używaj `https://api.moonshot.ai/v1` dla endpointu międzynarodowego oraz `https://api.moonshot.cn/v1` dla endpointu w Chinach.
- Opcje onboardingu:
- `moonshot-api-key` dla `https://api.moonshot.ai/v1`
- `moonshot-api-key-cn` dla `https://api.moonshot.cn/v1`
<AccordionGroup>
<Accordion title="Natywny tryb thinking">
Moonshot Kimi obsługuje binarny natywny tryb thinking:
## Natywny tryb myślenia (Moonshot)
- `thinking: { type: "enabled" }`
- `thinking: { type: "disabled" }`
Moonshot Kimi obsługuje binarny natywny tryb myślenia:
Skonfiguruj go per model przez `agents.defaults.models.<provider/model>.params`:
- `thinking: { type: "enabled" }`
- `thinking: { type: "disabled" }`
Skonfiguruj go dla modelu w `agents.defaults.models.<provider/model>.params`:
```json5
{
agents: {
defaults: {
models: {
"moonshot/kimi-k2.5": {
params: {
thinking: { type: "disabled" },
```json5
{
agents: {
defaults: {
models: {
"moonshot/kimi-k2.5": {
params: {
thinking: { type: "disabled" },
},
},
},
},
},
},
},
}
```
}
```
OpenClaw mapuje też poziomy `/think` w runtime dla Moonshot:
OpenClaw mapuje też poziomy `/think` w czasie działania dla Moonshot:
- `/think off` -> `thinking.type=disabled`
- dowolny poziom myślenia inny niż off -> `thinking.type=enabled`
| Poziom `/think` | Zachowanie Moonshot |
| -------------------- | -------------------------- |
| `/think off` | `thinking.type=disabled` |
| Dowolny poziom inny niż off | `thinking.type=enabled` |
Gdy tryb myślenia Moonshot jest włączony, `tool_choice` musi mieć wartość `auto` lub `none`. OpenClaw normalizuje niezgodne wartości `tool_choice` do `auto` dla zachowania zgodności.
<Warning>
Gdy thinking Moonshot jest włączone, `tool_choice` musi mieć wartość `auto` albo `none`. OpenClaw normalizuje niezgodne wartości `tool_choice` do `auto` dla zgodności.
</Warning>
</Accordion>
<Accordion title="Zgodność użycia streamingu">
Natywne endpointy Moonshot (`https://api.moonshot.ai/v1` i
`https://api.moonshot.cn/v1`) deklarują zgodność użycia streamingu na
współdzielonym transporcie `openai-completions`. OpenClaw opiera się na możliwościach endpointu,
więc zgodne niestandardowe identyfikatory dostawców kierujące na te same natywne
hosty Moonshot dziedziczą to samo zachowanie użycia streamingu.
</Accordion>
<Accordion title="Referencja endpointów i odwołań do modeli">
| Dostawca | Prefiks odwołania modelu | Endpoint | Zmienna środowiskowa uwierzytelniania |
| ------------ | ------------------------ | ---------------------------- | ------------------------------------- |
| Moonshot | `moonshot/` | `https://api.moonshot.ai/v1` | `MOONSHOT_API_KEY` |
| Moonshot CN | `moonshot/` | `https://api.moonshot.cn/v1` | `MOONSHOT_API_KEY` |
| Kimi Coding | `kimi/` | endpoint Kimi Coding | `KIMI_API_KEY` |
| Wyszukiwanie w sieci | N/A | Taki sam jak region API Moonshot | `KIMI_API_KEY` lub `MOONSHOT_API_KEY` |
- Wyszukiwanie w sieci Kimi używa `KIMI_API_KEY` lub `MOONSHOT_API_KEY`, a domyślnie korzysta z `https://api.moonshot.ai/v1` z modelem `kimi-k2.5`.
- W razie potrzeby nadpisz ceny i metadane kontekstowe w `models.providers`.
- Jeśli Moonshot opublikuje inne limity kontekstu dla modelu, odpowiednio dostosuj `contextWindow`.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Wyszukiwanie w sieci" href="/tools/web-search" icon="magnifying-glass">
Konfigurowanie dostawców wyszukiwania w sieci, w tym Kimi.
</Card>
<Card title="Referencja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji dostawców, modeli i Plugin.
</Card>
<Card title="Moonshot Open Platform" href="https://platform.moonshot.ai" icon="globe">
Zarządzanie kluczami API Moonshot i dokumentacja.
</Card>
</CardGroup>

View File

@ -1,35 +1,49 @@
---
read_when:
- Chcesz używać otwartych modeli w OpenClaw za darmo
- Potrzebujesz konfiguracji NVIDIA_API_KEY
summary: Używaj zgodnego z OpenAI API NVIDIA w OpenClaw
- Musisz skonfigurować `NVIDIA_API_KEY`
summary: Używanie zgodnego z OpenAI API NVIDIA w OpenClaw
title: NVIDIA
x-i18n:
generated_at: "2026-04-08T02:17:20Z"
generated_at: "2026-04-12T23:32:07Z"
model: gpt-5.4
provider: openai
source_hash: b00f8cedaf223a33ba9f6a6dd8cf066d88cebeea52d391b871e435026182228a
source_hash: 45048037365138141ee82cefa0c0daaf073a1c2ae3aa7b23815f6ca676fc0d3e
source_path: providers/nvidia.md
workflow: 15
---
# NVIDIA
NVIDIA udostępnia zgodne z OpenAI API pod adresem `https://integrate.api.nvidia.com/v1` dla otwartych modeli za darmo. Uwierzytelnij się za pomocą klucza API z [build.nvidia.com](https://build.nvidia.com/settings/api-keys).
NVIDIA udostępnia zgodne z OpenAI API pod adresem `https://integrate.api.nvidia.com/v1` dla
otwartych modeli za darmo. Uwierzytelnianie odbywa się za pomocą klucza API z
[build.nvidia.com](https://build.nvidia.com/settings/api-keys).
## Konfiguracja CLI
## Pierwsze kroki
Wyeksportuj klucz raz, a następnie uruchom onboarding i ustaw model NVIDIA:
<Steps>
<Step title="Pobierz swój klucz API">
Utwórz klucz API na stronie [build.nvidia.com](https://build.nvidia.com/settings/api-keys).
</Step>
<Step title="Wyeksportuj klucz i uruchom onboarding">
```bash
export NVIDIA_API_KEY="nvapi-..."
openclaw onboard --auth-choice skip
```
</Step>
<Step title="Ustaw model NVIDIA">
```bash
openclaw models set nvidia/nvidia/nemotron-3-super-120b-a12b
```
</Step>
</Steps>
```bash
export NVIDIA_API_KEY="nvapi-..."
openclaw onboard --auth-choice skip
openclaw models set nvidia/nvidia/nemotron-3-super-120b-a12b
```
<Warning>
Jeśli przekażesz `--token` zamiast zmiennej env, wartość trafi do historii powłoki i
wyjścia `ps`. Gdy to możliwe, preferuj zmienną środowiskową `NVIDIA_API_KEY`.
</Warning>
Jeśli nadal przekazujesz `--token`, pamiętaj, że trafia on do historii powłoki i danych wyjściowych `ps`; jeśli to możliwe, preferuj zmienną środowiskową.
## Fragment konfiguracji
## Przykład konfiguracji
```json5
{
@ -50,17 +64,47 @@ Jeśli nadal przekazujesz `--token`, pamiętaj, że trafia on do historii powło
}
```
## Identyfikatory modeli
## Wbudowany katalog
| Model ref | Nazwa | Kontekst | Maks. wynik |
| ------------------------------------------ | ---------------------------- | -------- | ----------- |
| `nvidia/nvidia/nemotron-3-super-120b-a12b` | NVIDIA Nemotron 3 Super 120B | 262,144 | 8,192 |
| `nvidia/moonshotai/kimi-k2.5` | Kimi K2.5 | 262,144 | 8,192 |
| `nvidia/minimaxai/minimax-m2.5` | Minimax M2.5 | 196,608 | 8,192 |
| `nvidia/z-ai/glm5` | GLM 5 | 202,752 | 8,192 |
| Model ref | Nazwa | Kontekst | Maks. wyjście |
| ------------------------------------------ | ---------------------------- | -------- | ------------- |
| `nvidia/nvidia/nemotron-3-super-120b-a12b` | NVIDIA Nemotron 3 Super 120B | 262,144 | 8,192 |
| `nvidia/moonshotai/kimi-k2.5` | Kimi K2.5 | 262,144 | 8,192 |
| `nvidia/minimaxai/minimax-m2.5` | Minimax M2.5 | 196,608 | 8,192 |
| `nvidia/z-ai/glm5` | GLM 5 | 202,752 | 8,192 |
## Uwagi
## Uwagi zaawansowane
- Zgodny z OpenAI punkt końcowy `/v1`; użyj klucza API z [build.nvidia.com](https://build.nvidia.com/).
- Dostawca włącza się automatycznie, gdy ustawiono `NVIDIA_API_KEY`.
- Dołączony katalog jest statyczny; koszty domyślnie wynoszą `0` w źródle.
<AccordionGroup>
<Accordion title="Zachowanie automatycznego włączania">
Dostawca włącza się automatycznie, gdy ustawiona jest zmienna środowiskowa `NVIDIA_API_KEY`.
Poza kluczem nie jest wymagana żadna jawna konfiguracja dostawcy.
</Accordion>
<Accordion title="Katalog i ceny">
Bundlowany katalog jest statyczny. Koszty domyślnie mają wartość `0` w źródle, ponieważ NVIDIA
obecnie oferuje darmowy dostęp do API dla wymienionych modeli.
</Accordion>
<Accordion title="Endpoint zgodny z OpenAI">
NVIDIA używa standardowego endpointu completions `/v1`. Każde narzędzie zgodne z OpenAI
powinno działać od razu z bazowym adresem URL NVIDIA.
</Accordion>
</AccordionGroup>
<Tip>
Modele NVIDIA są obecnie darmowe w użyciu. Sprawdź
[build.nvidia.com](https://build.nvidia.com/) pod kątem aktualnej dostępności i
szczegółów limitów szybkości.
</Tip>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełna dokumentacja konfiguracji agentów, modeli i dostawców.
</Card>
</CardGroup>

View File

@ -1,142 +1,174 @@
---
read_when:
- Chcesz uruchamiać OpenClaw z modelami chmurowymi lub lokalnymi przez Ollama
- Potrzebujesz wskazówek dotyczących konfiguracji i ustawiania Ollama
summary: Uruchamianie OpenClaw z Ollama (modele chmurowe i lokalne)
- Potrzebujesz wskazówek dotyczących konfiguracji i ustawi Ollama
summary: Uruchamiaj OpenClaw z Ollama (modele chmurowe i lokalne)
title: Ollama
x-i18n:
generated_at: "2026-04-08T09:44:32Z"
generated_at: "2026-04-12T23:32:09Z"
model: gpt-5.4
provider: openai
source_hash: d3295a7c879d3636a2ffdec05aea6e670e54a990ef52bd9b0cae253bc24aa3f7
source_hash: ec796241b884ca16ec7077df4f3f1910e2850487bb3ea94f8fdb37c77e02b219
source_path: providers/ollama.md
workflow: 15
---
# Ollama
Ollama to lokalne środowisko uruchomieniowe LLM, które ułatwia uruchamianie modeli open source na Twoim komputerze. OpenClaw integruje się z natywnym API Ollama (`/api/chat`), obsługuje strumieniowanie i wywoływanie narzędzi oraz może automatycznie wykrywać lokalne modele Ollama, gdy włączysz tę opcję za pomocą `OLLAMA_API_KEY` (lub profilu uwierzytelniania) i nie zdefiniujesz jawnego wpisu `models.providers.ollama`.
Ollama to lokalne środowisko uruchomieniowe LLM, które ułatwia uruchamianie modeli open source na Twojej maszynie. OpenClaw integruje się z natywnym API Ollama (`/api/chat`), obsługuje przesyłanie strumieniowe i wywoływanie narzędzi oraz może automatycznie wykrywać lokalne modele Ollama, gdy włączysz to przez `OLLAMA_API_KEY` (lub profil uwierzytelniania) i nie zdefiniujesz jawnego wpisu `models.providers.ollama`.
<Warning>
**Użytkownicy zdalnego Ollama**: Nie używaj adresu URL zgodnego z OpenAI `/v1` (`http://host:11434/v1`) z OpenClaw. Powoduje to problemy z wywoływaniem narzędzi, a modele mogą zwracać surowy JSON narzędzi jako zwykły tekst. Zamiast tego użyj natywnego adresu URL API Ollama: `baseUrl: "http://host:11434"` (bez `/v1`).
**Użytkownicy zdalnego Ollama**: Nie używaj adresu URL `/v1` zgodnego z OpenAI (`http://host:11434/v1`) z OpenClaw. Powoduje to awarie wywoływania narzędzi, a modele mogą zwracać surowy JSON narzędzi jako zwykły tekst. Zamiast tego używaj natywnego adresu URL API Ollama: `baseUrl: "http://host:11434"` (bez `/v1`).
</Warning>
## Szybki start
## Pierwsze kroki
### Onboarding (zalecane)
Wybierz preferowaną metodę konfiguracji i tryb.
Najszybszym sposobem konfiguracji Ollama jest użycie onboardingu:
```bash
openclaw onboard
```
Wybierz **Ollama** z listy dostawców. Onboarding:
1. Poprosi o bazowy adres URL Ollama, pod którym Twoja instancja jest osiągalna (domyślnie `http://127.0.0.1:11434`).
2. Pozwoli wybrać **Cloud + Local** (modele chmurowe i lokalne) lub **Local** (tylko modele lokalne).
3. Otworzy w przeglądarce proces logowania, jeśli wybierzesz **Cloud + Local** i nie jesteś zalogowany w ollama.com.
4. Wykryje dostępne modele i zasugeruje wartości domyślne.
5. Automatycznie pobierze wybrany model, jeśli nie jest dostępny lokalnie.
Obsługiwany jest także tryb nieinteraktywny:
```bash
openclaw onboard --non-interactive \
--auth-choice ollama \
--accept-risk
```
Opcjonalnie możesz podać własny bazowy adres URL lub model:
```bash
openclaw onboard --non-interactive \
--auth-choice ollama \
--custom-base-url "http://ollama-host:11434" \
--custom-model-id "qwen3.5:27b" \
--accept-risk
```
### Konfiguracja ręczna
1. Zainstaluj Ollama: [https://ollama.com/download](https://ollama.com/download)
2. Pobierz model lokalny, jeśli chcesz używać inferencji lokalnej:
```bash
ollama pull gemma4
# lub
ollama pull gpt-oss:20b
# lub
ollama pull llama3.3
```
3. Jeśli chcesz także używać modeli chmurowych, zaloguj się:
```bash
ollama signin
```
4. Uruchom onboarding i wybierz `Ollama`:
```bash
openclaw onboard
```
- `Local`: tylko modele lokalne
- `Cloud + Local`: modele lokalne oraz modele chmurowe
- Modele chmurowe takie jak `kimi-k2.5:cloud`, `minimax-m2.7:cloud` i `glm-5.1:cloud` **nie** wymagają lokalnego `ollama pull`
OpenClaw obecnie sugeruje:
- lokalna wartość domyślna: `gemma4`
- chmurowe wartości domyślne: `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`
5. Jeśli wolisz konfigurację ręczną, włącz Ollama bezpośrednio dla OpenClaw (dowolna wartość działa; Ollama nie wymaga prawdziwego klucza):
```bash
# Ustaw zmienną środowiskową
export OLLAMA_API_KEY="ollama-local"
# Lub skonfiguruj w pliku konfiguracyjnym
openclaw config set models.providers.ollama.apiKey "ollama-local"
```
6. Wyświetl modele lub przełącz model:
```bash
openclaw models list
openclaw models set ollama/gemma4
```
7. Lub ustaw domyślny model w konfiguracji:
```json5
{
agents: {
defaults: {
model: { primary: "ollama/gemma4" },
},
},
}
```
## Wykrywanie modeli (provider niejawny)
Gdy ustawisz `OLLAMA_API_KEY` (lub profil uwierzytelniania) i **nie** zdefiniujesz `models.providers.ollama`, OpenClaw wykrywa modele z lokalnej instancji Ollama pod adresem `http://127.0.0.1:11434`:
- Odpytuje `/api/tags`
- Używa wywołań `/api/show` w trybie best-effort, aby odczytać `contextWindow` i wykrywać możliwości modelu (w tym vision), gdy są dostępne
- Modele z możliwością `vision` zgłoszoną przez `/api/show` są oznaczane jako obsługujące obrazy (`input: ["text", "image"]`), dzięki czemu OpenClaw automatycznie wstrzykuje obrazy do promptu dla tych modeli
- Oznacza `reasoning` na podstawie heurystyki nazwy modelu (`r1`, `reasoning`, `think`)
- Ustawia `maxTokens` na domyślny limit maksymalnej liczby tokenów Ollama używany przez OpenClaw
- Ustawia wszystkie koszty na `0`
Pozwala to uniknąć ręcznego definiowania modeli, a jednocześnie utrzymać katalog zgodny z lokalną instancją Ollama.
Aby zobaczyć, jakie modele są dostępne:
<Tabs>
<Tab title="Onboarding (zalecane)">
**Najlepsze dla:** najszybszej ścieżki do działającej konfiguracji Ollama z automatycznym wykrywaniem modeli.
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard
```
Wybierz **Ollama** z listy dostawców.
</Step>
<Step title="Wybierz tryb">
- **Cloud + Local** — modele hostowane w chmurze i modele lokalne razem
- **Local** — tylko modele lokalne
Jeśli wybierzesz **Cloud + Local** i nie jesteś zalogowany w ollama.com, onboarding otworzy przepływ logowania w przeglądarce.
</Step>
<Step title="Wybierz model">
Onboarding wykrywa dostępne modele i sugeruje ustawienia domyślne. Automatycznie pobiera wybrany model, jeśli nie jest dostępny lokalnie.
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider ollama
```
</Step>
</Steps>
### Tryb nieinteraktywny
```bash
openclaw onboard --non-interactive \
--auth-choice ollama \
--accept-risk
```
Opcjonalnie podaj niestandardowy base URL lub model:
```bash
openclaw onboard --non-interactive \
--auth-choice ollama \
--custom-base-url "http://ollama-host:11434" \
--custom-model-id "qwen3.5:27b" \
--accept-risk
```
</Tab>
<Tab title="Konfiguracja ręczna">
**Najlepsze dla:** pełnej kontroli nad instalacją, pobieraniem modeli i konfiguracją.
<Steps>
<Step title="Zainstaluj Ollama">
Pobierz z [ollama.com/download](https://ollama.com/download).
</Step>
<Step title="Pobierz model lokalny">
```bash
ollama pull gemma4
# lub
ollama pull gpt-oss:20b
# lub
ollama pull llama3.3
```
</Step>
<Step title="Zaloguj się do modeli chmurowych (opcjonalnie)">
Jeśli chcesz także modeli chmurowych:
```bash
ollama signin
```
</Step>
<Step title="Włącz Ollama dla OpenClaw">
Ustaw dowolną wartość klucza API (Ollama nie wymaga prawdziwego klucza):
```bash
# Ustaw zmienną środowiskową
export OLLAMA_API_KEY="ollama-local"
# Albo skonfiguruj w pliku konfiguracyjnym
openclaw config set models.providers.ollama.apiKey "ollama-local"
```
</Step>
<Step title="Sprawdź i ustaw model">
```bash
openclaw models list
openclaw models set ollama/gemma4
```
Albo ustaw model domyślny w konfiguracji:
```json5
{
agents: {
defaults: {
model: { primary: "ollama/gemma4" },
},
},
}
```
</Step>
</Steps>
</Tab>
</Tabs>
## Modele chmurowe
<Tabs>
<Tab title="Cloud + Local">
Modele chmurowe pozwalają uruchamiać modele hostowane w chmurze obok modeli lokalnych. Przykłady obejmują `kimi-k2.5:cloud`, `minimax-m2.7:cloud` i `glm-5.1:cloud` -- te modele **nie** wymagają lokalnego `ollama pull`.
Wybierz tryb **Cloud + Local** podczas konfiguracji. Kreator sprawdza, czy jesteś zalogowany, i w razie potrzeby otwiera przepływ logowania w przeglądarce. Jeśli nie da się zweryfikować uwierzytelnienia, kreator wraca do domyślnych modeli lokalnych.
Możesz też zalogować się bezpośrednio na [ollama.com/signin](https://ollama.com/signin).
OpenClaw obecnie sugeruje następujące domyślne modele chmurowe: `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`.
</Tab>
<Tab title="Tylko lokalne">
W trybie tylko lokalnym OpenClaw wykrywa modele z lokalnej instancji Ollama. Logowanie do chmury nie jest potrzebne.
OpenClaw obecnie sugeruje `gemma4` jako lokalny model domyślny.
</Tab>
</Tabs>
## Wykrywanie modeli (dostawca niejawny)
Gdy ustawisz `OLLAMA_API_KEY` (lub profil uwierzytelniania) i **nie** zdefiniujesz `models.providers.ollama`, OpenClaw wykrywa modele z lokalnej instancji Ollama pod adresem `http://127.0.0.1:11434`.
| Zachowanie | Szczegóły |
| -------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Zapytanie do katalogu | Wysyła zapytania do `/api/tags` |
| Wykrywanie możliwości | Używa możliwie najlepszych odczytów `/api/show`, aby odczytać `contextWindow` i wykryć możliwości (w tym vision) |
| Modele vision | Modele z możliwością `vision` zgłoszoną przez `/api/show` są oznaczane jako obsługujące obrazy (`input: ["text", "image"]`), więc OpenClaw automatycznie wstrzykuje obrazy do promptu |
| Wykrywanie rozumowania | Oznacza `reasoning` za pomocą heurystyki nazwy modelu (`r1`, `reasoning`, `think`) |
| Limity tokenów | Ustawia `maxTokens` na domyślny limit maksymalnej liczby tokenów Ollama używany przez OpenClaw |
| Koszty | Ustawia wszystkie koszty na `0` |
Pozwala to uniknąć ręcznych wpisów modeli, a jednocześnie utrzymać katalog zgodny z lokalną instancją Ollama.
```bash
# Zobacz, jakie modele są dostępne
ollama list
openclaw models list
```
@ -149,74 +181,79 @@ ollama pull mistral
Nowy model zostanie automatycznie wykryty i będzie dostępny do użycia.
Jeśli jawnie ustawisz `models.providers.ollama`, automatyczne wykrywanie zostanie pominięte i musisz zdefiniować modele ręcznie (patrz niżej).
<Note>
Jeśli jawnie ustawisz `models.providers.ollama`, automatyczne wykrywanie zostanie pominięte i modele trzeba będzie definiować ręcznie. Zobacz sekcję jawnej konfiguracji poniżej.
</Note>
## Konfiguracja
### Podstawowa konfiguracja (wykrywanie niejawne)
<Tabs>
<Tab title="Podstawowa (wykrywanie niejawne)">
Najprostszy sposób włączenia Ollama to zmienna środowiskowa:
Najprostszy sposób włączenia Ollama to użycie zmiennej środowiskowej:
```bash
export OLLAMA_API_KEY="ollama-local"
```
```bash
export OLLAMA_API_KEY="ollama-local"
```
<Tip>
Jeśli ustawiono `OLLAMA_API_KEY`, możesz pominąć `apiKey` we wpisie dostawcy, a OpenClaw uzupełni je na potrzeby kontroli dostępności.
</Tip>
### Konfiguracja jawna (modele ręczne)
</Tab>
Użyj konfiguracji jawnej, gdy:
<Tab title="Jawna (modele ręczne)">
Użyj jawnej konfiguracji, gdy Ollama działa na innym hoście/porcie, chcesz wymusić określone okna kontekstu lub listy modeli albo chcesz mieć w pełni ręczne definicje modeli.
- Ollama działa na innym hoście lub porcie.
- Chcesz wymusić określone okna kontekstu lub listy modeli.
- Chcesz w pełni ręcznie definiować modele.
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434",
apiKey: "ollama-local",
api: "ollama",
models: [
{
id: "gpt-oss:20b",
name: "GPT-OSS 20B",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 8192,
maxTokens: 8192 * 10
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434",
apiKey: "ollama-local",
api: "ollama",
models: [
{
id: "gpt-oss:20b",
name: "GPT-OSS 20B",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 8192,
maxTokens: 8192 * 10
}
]
}
]
}
}
}
}
}
```
```
Jeśli ustawiono `OLLAMA_API_KEY`, możesz pominąć `apiKey` we wpisie providera, a OpenClaw uzupełni go na potrzeby kontroli dostępności.
</Tab>
### Niestandardowy bazowy adres URL (konfiguracja jawna)
<Tab title="Niestandardowy base URL">
Jeśli Ollama działa na innym hoście lub porcie (jawna konfiguracja wyłącza automatyczne wykrywanie, więc modele trzeba definiować ręcznie):
Jeśli Ollama działa na innym hoście lub porcie (konfiguracja jawna wyłącza automatyczne wykrywanie, więc zdefiniuj modele ręcznie):
```json5
{
models: {
providers: {
ollama: {
apiKey: "ollama-local",
baseUrl: "http://ollama-host:11434", // Bez /v1 - użyj natywnego adresu URL API Ollama
api: "ollama", // Ustaw jawnie, aby zagwarantować natywne zachowanie wywoływania narzędzi
```json5
{
models: {
providers: {
ollama: {
apiKey: "ollama-local",
baseUrl: "http://ollama-host:11434", // Bez /v1 — użyj natywnego adresu URL API Ollama
api: "ollama", // Ustaw jawnie, aby zagwarantować natywne zachowanie wywoływania narzędzi
},
},
},
},
},
}
```
}
```
<Warning>
Nie dodawaj `/v1` do adresu URL. Ścieżka `/v1` używa trybu zgodnego z OpenAI, w którym wywoływanie narzędzi nie jest niezawodne. Użyj bazowego adresu URL Ollama bez sufiksu ścieżki.
</Warning>
<Warning>
Nie dodawaj `/v1` do adresu URL. Ścieżka `/v1` używa trybu zgodnego z OpenAI, w którym wywoływanie narzędzi nie jest niezawodne. Używaj bazowego adresu URL Ollama bez sufiksu ścieżki.
</Warning>
</Tab>
</Tabs>
### Wybór modelu
@ -235,21 +272,15 @@ Po skonfigurowaniu wszystkie Twoje modele Ollama są dostępne:
}
```
## Modele chmurowe
Modele chmurowe pozwalają uruchamiać modele hostowane w chmurze (na przykład `kimi-k2.5:cloud`, `minimax-m2.7:cloud`, `glm-5.1:cloud`) obok modeli lokalnych.
Aby używać modeli chmurowych, wybierz tryb **Cloud + Local** podczas konfiguracji. Kreator sprawdza, czy jesteś zalogowany, i w razie potrzeby otwiera w przeglądarce proces logowania. Jeśli nie można zweryfikować uwierzytelnienia, kreator przełącza się na domyślne ustawienia modeli lokalnych.
Możesz też zalogować się bezpośrednio na [ollama.com/signin](https://ollama.com/signin).
## Ollama Web Search
OpenClaw obsługuje także **Ollama Web Search** jako wbudowany provider `web_search`.
OpenClaw obsługuje **Ollama Web Search** jako dołączonego dostawcę `web_search`.
- Używa skonfigurowanego hosta Ollama (`models.providers.ollama.baseUrl`, jeśli jest ustawiony, w przeciwnym razie `http://127.0.0.1:11434`).
- Nie wymaga klucza.
- Wymaga uruchomionego Ollama i zalogowania przez `ollama signin`.
| Właściwość | Szczegóły |
| ---------- | -------------------------------------------------------------------------------------------------------------------- |
| Host | Używa skonfigurowanego hosta Ollama (`models.providers.ollama.baseUrl`, jeśli ustawiono, w przeciwnym razie `http://127.0.0.1:11434`) |
| Uwierzytelnianie | Bez klucza |
| Wymaganie | Ollama musi działać i być zalogowane przez `ollama signin` |
Wybierz **Ollama Web Search** podczas `openclaw onboard` lub `openclaw configure --section web`, albo ustaw:
@ -265,120 +296,193 @@ Wybierz **Ollama Web Search** podczas `openclaw onboard` lub `openclaw configure
}
```
Pełne informacje o konfiguracji i szczegółach działania znajdziesz w [Ollama Web Search](/pl/tools/ollama-search).
<Note>
Pełne szczegóły konfiguracji i działania znajdziesz w [Ollama Web Search](/pl/tools/ollama-search).
</Note>
## Zaawansowane
## Konfiguracja zaawansowana
### Modele reasoning
<AccordionGroup>
<Accordion title="Starszy tryb zgodny z OpenAI">
<Warning>
**Wywoływanie narzędzi nie jest niezawodne w trybie zgodnym z OpenAI.** Używaj tego trybu tylko wtedy, gdy potrzebujesz formatu OpenAI dla serwera proxy i nie zależy Ci na natywnym zachowaniu wywoływania narzędzi.
</Warning>
OpenClaw domyślnie traktuje modele o nazwach takich jak `deepseek-r1`, `reasoning` lub `think` jako obsługujące reasoning:
Jeśli zamiast tego musisz używać endpointu zgodnego z OpenAI (na przykład za serwerem proxy obsługującym tylko format OpenAI), ustaw jawnie `api: "openai-completions"`:
```bash
ollama pull deepseek-r1:32b
```
### Koszty modeli
Ollama jest bezpłatne i działa lokalnie, więc wszystkie koszty modeli są ustawione na $0.
### Konfiguracja strumieniowania
Integracja Ollama w OpenClaw domyślnie używa **natywnego API Ollama** (`/api/chat`), które w pełni obsługuje jednocześnie strumieniowanie i wywoływanie narzędzi. Nie jest wymagana żadna specjalna konfiguracja.
#### Starszy tryb zgodny z OpenAI
<Warning>
**Wywoływanie narzędzi nie jest niezawodne w trybie zgodnym z OpenAI.** Używaj tego trybu tylko wtedy, gdy potrzebujesz formatu OpenAI dla proxy i nie polegasz na natywnym zachowaniu wywoływania narzędzi.
</Warning>
Jeśli zamiast tego musisz użyć punktu końcowego zgodnego z OpenAI (np. za proxy obsługującym tylko format OpenAI), ustaw jawnie `api: "openai-completions"`:
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434/v1",
api: "openai-completions",
injectNumCtxForOpenAICompat: true, // domyślnie: true
apiKey: "ollama-local",
models: [...]
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434/v1",
api: "openai-completions",
injectNumCtxForOpenAICompat: true, // domyślnie: true
apiKey: "ollama-local",
models: [...]
}
}
}
}
}
}
```
```
Ten tryb może nie obsługiwać jednocześnie strumieniowania i wywoływania narzędzi. Może być konieczne wyłączenie strumieniowania za pomocą `params: { streaming: false }` w konfiguracji modelu.
Ten tryb może nie obsługiwać jednocześnie przesyłania strumieniowego i wywoływania narzędzi. Może być konieczne wyłączenie przesyłania strumieniowego za pomocą `params: { streaming: false }` w konfiguracji modelu.
Gdy `api: "openai-completions"` jest używane z Ollama, OpenClaw domyślnie wstrzykuje `options.num_ctx`, aby Ollama nie przełączało się po cichu na okno kontekstu 4096. Jeśli Twoje proxy/upstream odrzuca nieznane pola `options`, wyłącz to zachowanie:
Gdy `api: "openai-completions"` jest używane z Ollama, OpenClaw domyślnie wstrzykuje `options.num_ctx`, aby Ollama nie przechodziło po cichu do okna kontekstu 4096. Jeśli Twój serwer proxy/upstream odrzuca nieznane pola `options`, wyłącz to zachowanie:
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434/v1",
api: "openai-completions",
injectNumCtxForOpenAICompat: false,
apiKey: "ollama-local",
models: [...]
```json5
{
models: {
providers: {
ollama: {
baseUrl: "http://ollama-host:11434/v1",
api: "openai-completions",
injectNumCtxForOpenAICompat: false,
apiKey: "ollama-local",
models: [...]
}
}
}
}
}
}
```
```
### Okna kontekstu
</Accordion>
W przypadku modeli wykrywanych automatycznie OpenClaw używa okna kontekstu zgłaszanego przez Ollama, gdy jest dostępne, a w przeciwnym razie przechodzi do domyślnego okna kontekstu Ollama używanego przez OpenClaw. Możesz zastąpić `contextWindow` i `maxTokens` w jawnej konfiguracji providera.
<Accordion title="Okna kontekstu">
W przypadku modeli wykrytych automatycznie OpenClaw używa okna kontekstu zgłoszonego przez Ollama, jeśli jest dostępne, w przeciwnym razie wraca do domyślnego okna kontekstu Ollama używanego przez OpenClaw.
Możesz nadpisać `contextWindow` i `maxTokens` w jawnej konfiguracji dostawcy:
```json5
{
models: {
providers: {
ollama: {
models: [
{
id: "llama3.3",
contextWindow: 131072,
maxTokens: 65536,
}
]
}
}
}
}
```
</Accordion>
<Accordion title="Modele rozumujące">
OpenClaw domyślnie traktuje modele o nazwach takich jak `deepseek-r1`, `reasoning` lub `think` jako zdolne do rozumowania.
```bash
ollama pull deepseek-r1:32b
```
Nie jest potrzebna żadna dodatkowa konfiguracja -- OpenClaw oznacza je automatycznie.
</Accordion>
<Accordion title="Koszty modeli">
Ollama jest darmowe i działa lokalnie, więc wszystkie koszty modeli są ustawione na 0 USD. Dotyczy to zarówno modeli wykrytych automatycznie, jak i zdefiniowanych ręcznie.
</Accordion>
<Accordion title="Osadzania pamięci">
Dołączony Plugin Ollama rejestruje dostawcę osadzań pamięci dla
[wyszukiwania pamięci](/pl/concepts/memory). Używa skonfigurowanego base URL
oraz klucza API Ollama.
| Właściwość | Wartość |
| ------------- | ------------------- |
| Model domyślny | `nomic-embed-text` |
| Auto-pull | Tak — model osadzania jest pobierany automatycznie, jeśli nie jest obecny lokalnie |
Aby wybrać Ollama jako dostawcę osadzań dla wyszukiwania pamięci:
```json5
{
agents: {
defaults: {
memorySearch: { provider: "ollama" },
},
},
}
```
</Accordion>
<Accordion title="Konfiguracja przesyłania strumieniowego">
Integracja Ollama w OpenClaw domyślnie używa **natywnego API Ollama** (`/api/chat`), które w pełni obsługuje jednocześnie przesyłanie strumieniowe i wywoływanie narzędzi. Nie jest potrzebna żadna specjalna konfiguracja.
<Tip>
Jeśli musisz używać endpointu zgodnego z OpenAI, zobacz sekcję „Starszy tryb zgodny z OpenAI” powyżej. W tym trybie przesyłanie strumieniowe i wywoływanie narzędzi mogą nie działać jednocześnie.
</Tip>
</Accordion>
</AccordionGroup>
## Rozwiązywanie problemów
### Ollama nie zostało wykryte
<AccordionGroup>
<Accordion title="Nie wykryto Ollama">
Upewnij się, że Ollama działa, że ustawiono `OLLAMA_API_KEY` (lub profil uwierzytelniania) oraz że **nie** zdefiniowano jawnego wpisu `models.providers.ollama`:
Upewnij się, że Ollama jest uruchomione, że ustawiono `OLLAMA_API_KEY` (lub profil uwierzytelniania) i że **nie** zdefiniowano jawnego wpisu `models.providers.ollama`:
```bash
ollama serve
```
```bash
ollama serve
```
Sprawdź, czy API jest dostępne:
I że API jest dostępne:
```bash
curl http://localhost:11434/api/tags
```
```bash
curl http://localhost:11434/api/tags
```
</Accordion>
### Brak dostępnych modeli
<Accordion title="Brak dostępnych modeli">
Jeśli Twojego modelu nie ma na liście, pobierz go lokalnie albo zdefiniuj jawnie w `models.providers.ollama`.
Jeśli Twojego modelu nie ma na liście, wykonaj jedną z tych czynności:
```bash
ollama list # Zobacz, co jest zainstalowane
ollama pull gemma4
ollama pull gpt-oss:20b
ollama pull llama3.3 # Albo inny model
```
- Pobierz model lokalnie, albo
- Zdefiniuj model jawnie w `models.providers.ollama`.
</Accordion>
Aby dodać modele:
<Accordion title="Połączenie odrzucone">
Sprawdź, czy Ollama działa na właściwym porcie:
```bash
ollama list # Zobacz, co jest zainstalowane
ollama pull gemma4
ollama pull gpt-oss:20b
ollama pull llama3.3 # Lub inny model
```
```bash
# Sprawdź, czy Ollama działa
ps aux | grep ollama
### Połączenie odrzucone
# Albo uruchom Ollama ponownie
ollama serve
```
Sprawdź, czy Ollama działa na właściwym porcie:
</Accordion>
</AccordionGroup>
```bash
# Sprawdź, czy Ollama działa
ps aux | grep ollama
<Note>
Więcej pomocy: [Rozwiązywanie problemów](/pl/help/troubleshooting) i [FAQ](/pl/help/faq).
</Note>
# Lub uruchom Ollama ponownie
ollama serve
```
## Powiązane
## Zobacz także
- [Model Providers](/pl/concepts/model-providers) - Przegląd wszystkich providerów
- [Model Selection](/pl/concepts/models) - Jak wybierać modele
- [Configuration](/pl/gateway/configuration) - Pełna dokumentacja konfiguracji
<CardGroup cols={2}>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Omówienie wszystkich dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/models" icon="brain">
Jak wybierać i konfigurować modele.
</Card>
<Card title="Ollama Web Search" href="/pl/tools/ollama-search" icon="magnifying-glass">
Pełne szczegóły konfiguracji i działania dla wyszukiwania w sieci opartego na Ollama.
</Card>
<Card title="Configuration" href="/pl/gateway/configuration" icon="gear">
Pełna dokumentacja konfiguracji.
</Card>
</CardGroup>

File diff suppressed because it is too large Load Diff

View File

@ -2,38 +2,77 @@
read_when:
- Chcesz używać katalogu OpenCode Go
- Potrzebujesz referencji modeli runtime dla modeli hostowanych przez Go
summary: Używaj katalogu OpenCode Go ze współdzieloną konfiguracją OpenCode
summary: Używanie katalogu OpenCode Go ze współdzieloną konfiguracją OpenCode
title: OpenCode Go
x-i18n:
generated_at: "2026-04-05T14:03:18Z"
generated_at: "2026-04-12T23:32:22Z"
model: gpt-5.4
provider: openai
source_hash: 8650af7c64220c14bab8c22472fff8bebd7abde253e972b6a11784ad833d321c
source_hash: d1f0f182de81729616ccc19125d93ba0445de2349daf7067b52e8c15b9d3539c
source_path: providers/opencode-go.md
workflow: 15
---
# OpenCode Go
OpenCode Go to katalog Go w ramach [OpenCode](/providers/opencode).
OpenCode Go to katalog Go w ramach [OpenCode](/pl/providers/opencode).
Używa tego samego `OPENCODE_API_KEY` co katalog Zen, ale zachowuje identyfikator
providera runtime `opencode-go`, aby routing upstream per model pozostał poprawny.
dostawcy runtime `opencode-go`, aby routing upstream per model pozostawał poprawny.
| Właściwość | Wartość |
| --------------- | ------------------------------ |
| Dostawca runtime | `opencode-go` |
| Uwierzytelnianie | `OPENCODE_API_KEY` |
| Konfiguracja nadrzędna | [OpenCode](/pl/providers/opencode) |
## Obsługiwane modele
- `opencode-go/kimi-k2.5`
- `opencode-go/glm-5`
- `opencode-go/minimax-m2.5`
| Model ref | Nazwa |
| -------------------------- | ------------- |
| `opencode-go/kimi-k2.5` | Kimi K2.5 |
| `opencode-go/glm-5` | GLM 5 |
| `opencode-go/minimax-m2.5` | MiniMax M2.5 |
## Konfiguracja CLI
## Pierwsze kroki
```bash
openclaw onboard --auth-choice opencode-go
# albo nieinteraktywnie
openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
```
<Tabs>
<Tab title="Interaktywnie">
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice opencode-go
```
</Step>
<Step title="Ustaw model Go jako domyślny">
```bash
openclaw config set agents.defaults.model.primary "opencode-go/kimi-k2.5"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider opencode-go
```
</Step>
</Steps>
</Tab>
## Fragment config
<Tab title="Nieinteraktywnie">
<Steps>
<Step title="Przekaż klucz bezpośrednio">
```bash
openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider opencode-go
```
</Step>
</Steps>
</Tab>
</Tabs>
## Przykład konfiguracji
```json5
{
@ -42,11 +81,37 @@ openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
}
```
## Zachowanie routingu
## Uwagi zaawansowane
OpenClaw automatycznie obsługuje routing per model, gdy referencja modelu używa `opencode-go/...`.
<AccordionGroup>
<Accordion title="Zachowanie routingu">
OpenClaw automatycznie obsługuje routing per model, gdy referencja modelu używa
`opencode-go/...`. Nie jest wymagana żadna dodatkowa konfiguracja dostawcy.
</Accordion>
## Uwagi
<Accordion title="Konwencja referencji runtime">
Referencje runtime pozostają jawne: `opencode/...` dla Zen, `opencode-go/...` dla Go.
Dzięki temu routing upstream per model pozostaje poprawny w obu katalogach.
</Accordion>
- Informacje o współdzielonym onboardingu i przeglądzie katalogu znajdziesz w [OpenCode](/providers/opencode).
- Referencje runtime pozostają jawne: `opencode/...` dla Zen, `opencode-go/...` dla Go.
<Accordion title="Współdzielone poświadczenia">
To samo `OPENCODE_API_KEY` jest używane zarówno przez katalog Zen, jak i Go. Wprowadzenie
klucza podczas konfiguracji zapisuje poświadczenia dla obu dostawców runtime.
</Accordion>
</AccordionGroup>
<Tip>
Zobacz [OpenCode](/pl/providers/opencode), aby poznać wspólny przegląd onboardingu oraz pełną
dokumentację katalogów Zen + Go.
</Tip>
## Powiązane
<CardGroup cols={2}>
<Card title="OpenCode (nadrzędne)" href="/pl/providers/opencode" icon="server">
Wspólny onboarding, przegląd katalogu i uwagi zaawansowane.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
</CardGroup>

View File

@ -1,46 +1,94 @@
---
read_when:
- Chcesz dostępu do modeli hostowanych przez OpenCode
- Chcesz wybrać między katalogami Zen i Go
summary: Używaj katalogów OpenCode Zen i Go z OpenClaw
- Chcesz uzyskać dostęp do modeli hostowanych przez OpenCode
- Chcesz wybierać między katalogami Zen i Go
summary: Używanie katalogów OpenCode Zen i Go w OpenClaw
title: OpenCode
x-i18n:
generated_at: "2026-04-05T14:03:22Z"
generated_at: "2026-04-12T23:32:38Z"
model: gpt-5.4
provider: openai
source_hash: c23bc99208d9275afcb1731c28eee250c9f4b7d0578681ace31416135c330865
source_hash: a68444d8c403c3caba4a18ea47f078c7a4c163f874560e1fad0e818afb6e0e60
source_path: providers/opencode.md
workflow: 15
---
# OpenCode
OpenCode udostępnia w OpenClaw dwa hostowane katalogi:
OpenCode udostępnia dwa hostowane katalogi w OpenClaw:
- `opencode/...` dla katalogu **Zen**
- `opencode-go/...` dla katalogu **Go**
| Katalog | Prefiks | Dostawca runtime |
| ------- | ----------------- | ---------------- |
| **Zen** | `opencode/...` | `opencode` |
| **Go** | `opencode-go/...` | `opencode-go` |
Oba katalogi używają tego samego klucza API OpenCode. OpenClaw utrzymuje rozdzielone identyfikatory dostawców runtime,
aby routing upstream per model pozostał poprawny, ale onboarding i dokumentacja traktują je
Oba katalogi używają tego samego klucza API OpenCode. OpenClaw zachowuje rozdzielone identyfikatory
dostawców runtime, aby routing upstream per model pozostawał poprawny, ale onboarding i dokumentacja traktują je
jako jedną konfigurację OpenCode.
## Konfiguracja przez CLI
## Pierwsze kroki
### Katalog Zen
<Tabs>
<Tab title="Katalog Zen">
**Najlepszy do:** wyselekcjonowanego wielomodelowego proxy OpenCode (Claude, GPT, Gemini).
```bash
openclaw onboard --auth-choice opencode-zen
openclaw onboard --opencode-zen-api-key "$OPENCODE_API_KEY"
```
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice opencode-zen
```
### Katalog Go
Lub przekaż klucz bezpośrednio:
```bash
openclaw onboard --auth-choice opencode-go
openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
```
```bash
openclaw onboard --opencode-zen-api-key "$OPENCODE_API_KEY"
```
</Step>
<Step title="Ustaw model Zen jako domyślny">
```bash
openclaw config set agents.defaults.model.primary "opencode/claude-opus-4-6"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider opencode
```
</Step>
</Steps>
## Fragment konfiguracji
</Tab>
<Tab title="Katalog Go">
**Najlepszy do:** linii modeli Kimi, GLM i MiniMax hostowanych przez OpenCode.
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice opencode-go
```
Lub przekaż klucz bezpośrednio:
```bash
openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
```
</Step>
<Step title="Ustaw model Go jako domyślny">
```bash
openclaw config set agents.defaults.model.primary "opencode-go/kimi-k2.5"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider opencode-go
```
</Step>
</Steps>
</Tab>
</Tabs>
## Przykład konfiguracji
```json5
{
@ -53,23 +101,58 @@ openclaw onboard --opencode-go-api-key "$OPENCODE_API_KEY"
### Zen
- Dostawca runtime: `opencode`
- Przykładowe modele: `opencode/claude-opus-4-6`, `opencode/gpt-5.4`, `opencode/gemini-3-pro`
- Najlepszy wybór, gdy chcesz kuratorowany wielomodelowy proxy OpenCode
| Właściwość | Wartość |
| --------------- | ------------------------------------------------------------------------ |
| Dostawca runtime | `opencode` |
| Przykładowe modele | `opencode/claude-opus-4-6`, `opencode/gpt-5.4`, `opencode/gemini-3-pro` |
### Go
- Dostawca runtime: `opencode-go`
- Przykładowe modele: `opencode-go/kimi-k2.5`, `opencode-go/glm-5`, `opencode-go/minimax-m2.5`
- Najlepszy wybór, gdy chcesz linię Kimi/GLM/MiniMax hostowaną przez OpenCode
| Właściwość | Wartość |
| --------------- | ------------------------------------------------------------------------- |
| Dostawca runtime | `opencode-go` |
| Przykładowe modele | `opencode-go/kimi-k2.5`, `opencode-go/glm-5`, `opencode-go/minimax-m2.5` |
## Uwagi
## Uwagi zaawansowane
- `OPENCODE_ZEN_API_KEY` jest również obsługiwane.
- Wprowadzenie jednego klucza OpenCode podczas konfiguracji zapisuje poświadczenia dla obu dostawców runtime.
- Logujesz się do OpenCode, dodajesz dane rozliczeniowe i kopiujesz swój klucz API.
- Billing i dostępność katalogów są zarządzane z panelu OpenCode.
- Referencje OpenCode oparte na Gemini pozostają na ścieżce proxy-Gemini, więc OpenClaw zachowuje
tam sanityzację thought-signature Gemini bez włączania natywnej walidacji replay Gemini
ani przepisywania bootstrap.
- Referencje OpenCode inne niż Gemini zachowują minimalną politykę replay zgodną z OpenAI.
<AccordionGroup>
<Accordion title="Aliasy klucza API">
`OPENCODE_ZEN_API_KEY` jest także obsługiwany jako alias dla `OPENCODE_API_KEY`.
</Accordion>
<Accordion title="Współdzielone poświadczenia">
Wprowadzenie jednego klucza OpenCode podczas konfiguracji zapisuje poświadczenia dla obu
dostawców runtime. Nie musisz przechodzić onboardingu dla każdego katalogu osobno.
</Accordion>
<Accordion title="Rozliczenia i panel">
Logujesz się do OpenCode, dodajesz dane rozliczeniowe i kopiujesz swój klucz API. Rozliczenia
i dostępność katalogów są zarządzane z panelu OpenCode.
</Accordion>
<Accordion title="Zachowanie odtwarzania Gemini">
Referencje OpenCode oparte na Gemini pozostają na ścieżce proxy-Gemini, więc OpenClaw zachowuje tam
sanityzację thought-signature Gemini bez włączania natywnej walidacji odtwarzania Gemini
ani przepisywania bootstrapu.
</Accordion>
<Accordion title="Zachowanie odtwarzania inne niż Gemini">
Referencje OpenCode inne niż Gemini zachowują minimalną politykę odtwarzania zgodną z OpenAI.
</Accordion>
</AccordionGroup>
<Tip>
Wprowadzenie jednego klucza OpenCode podczas konfiguracji zapisuje poświadczenia dla dostawców runtime Zen i
Go, więc onboarding wystarczy przejść tylko raz.
</Tip>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełna dokumentacja konfiguracji agentów, modeli i dostawców.
</Card>
</CardGroup>

View File

@ -1,30 +1,45 @@
---
read_when:
- Chcesz mieć jeden klucz API do wielu LLM-ów
- Chcesz używać jednego klucza API do wielu LLM-ów
- Chcesz uruchamiać modele przez OpenRouter w OpenClaw
summary: Używaj ujednoliconego API OpenRouter, aby uzyskać dostęp do wielu modeli w OpenClaw
title: OpenRouter
x-i18n:
generated_at: "2026-04-05T14:03:37Z"
generated_at: "2026-04-12T23:32:40Z"
model: gpt-5.4
provider: openai
source_hash: 8dd354ba060bcb47724c89ae17c8e2af8caecac4bd996fcddb584716c1840b87
source_hash: 9083c30b9e9846a9d4ef071c350576d4c3083475f4108871eabbef0b9bb9a368
source_path: providers/openrouter.md
workflow: 15
---
# OpenRouter
OpenRouter zapewnia **ujednolicone API**, które kieruje żądania do wielu modeli za jednym
endpointem i kluczem API. Jest zgodne z OpenAI, więc większość SDK OpenAI działa po zmianie base URL.
OpenRouter udostępnia **ujednolicone API**, które kieruje żądania do wielu modeli za jednym
endpointem i kluczem API. Jest zgodne z OpenAI, więc większość SDK OpenAI działa po zmianie bazowego URL.
## Konfiguracja CLI
## Pierwsze kroki
```bash
openclaw onboard --auth-choice openrouter-api-key
```
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API na [openrouter.ai/keys](https://openrouter.ai/keys).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice openrouter-api-key
```
</Step>
<Step title="(Opcjonalnie) Przełącz na konkretny model">
Onboarding domyślnie ustawia `openrouter/auto`. Później wybierz konkretny model:
## Fragment konfiguracji
```bash
openclaw models set openrouter/<provider>/<model>
```
</Step>
</Steps>
## Przykład konfiguracji
```json5
{
@ -37,30 +52,71 @@ openclaw onboard --auth-choice openrouter-api-key
}
```
## Uwagi
## Odwołania do modeli
- Odwołania do modeli mają postać `openrouter/<provider>/<model>`.
- Onboarding domyślnie ustawia `openrouter/auto`. Później przełącz się na konkretny model za pomocą
`openclaw models set openrouter/<provider>/<model>`.
- Więcej opcji modeli/dostawców znajdziesz w [/concepts/model-providers](/pl/concepts/model-providers).
- OpenRouter używa wewnętrznie tokenu Bearer z Twoim kluczem API.
- Przy rzeczywistych żądaniach OpenRouter (`https://openrouter.ai/api/v1`) OpenClaw również
dodaje udokumentowane nagłówki atrybucji aplikacji OpenRouter:
`HTTP-Referer: https://openclaw.ai`, `X-OpenRouter-Title: OpenClaw` oraz
`X-OpenRouter-Categories: cli-agent`.
- Na zweryfikowanych trasach OpenRouter odwołania do modeli Anthropic zachowują również
specyficzne dla OpenRouter znaczniki Anthropic `cache_control`, których OpenClaw używa
do lepszego ponownego wykorzystania pamięci podręcznej promptów w blokach promptów systemowych/developerskich.
- Jeśli przekierujesz dostawcę OpenRouter na inne proxy/base URL, OpenClaw
nie wstrzykuje tych specyficznych dla OpenRouter nagłówków ani znaczników pamięci podręcznej Anthropic.
- OpenRouter nadal działa przez ścieżkę proxy zgodną z OpenAI, więc
natywne formatowanie żądań wyłącznie dla OpenAI, takie jak `serviceTier`, `store` dla Responses,
payloady zgodności reasoning OpenAI i wskazówki pamięci podręcznej promptów, nie są przekazywane dalej.
- Odwołania OpenRouter oparte na Gemini pozostają na ścieżce proxy-Gemini: OpenClaw zachowuje tam
sanityzację sygnatur myślenia Gemini, ale nie włącza natywnej walidacji replay Gemini
ani przepisów bootstrap.
- Na obsługiwanych trasach innych niż `auto` OpenClaw mapuje wybrany poziom thinking na
payloady reasoning proxy OpenRouter. Nieobsługiwane wskazówki modelu oraz
`openrouter/auto` pomijają to wstrzykiwanie reasoning.
- Jeśli przekazujesz routing dostawcy OpenRouter w parametrach modelu, OpenClaw przekazuje
go jako metadane routingu OpenRouter, zanim uruchomione zostaną współdzielone wrappery strumieni.
<Note>
Odwołania do modeli mają postać `openrouter/<provider>/<model>`. Pełną listę
dostępnych dostawców i modeli znajdziesz w [/concepts/model-providers](/pl/concepts/model-providers).
</Note>
## Uwierzytelnianie i nagłówki
OpenRouter używa wewnętrznie tokenu Bearer z Twoim kluczem API.
Przy rzeczywistych żądaniach OpenRouter (`https://openrouter.ai/api/v1`) OpenClaw dodaje też
udokumentowane przez OpenRouter nagłówki atrybucji aplikacji:
| Nagłówek | Wartość |
| ------------------------ | --------------------- |
| `HTTP-Referer` | `https://openclaw.ai` |
| `X-OpenRouter-Title` | `OpenClaw` |
| `X-OpenRouter-Categories`| `cli-agent` |
<Warning>
Jeśli przekierujesz dostawcę OpenRouter na inne proxy lub bazowy URL, OpenClaw
**nie** wstrzykuje tych nagłówków specyficznych dla OpenRouter ani znaczników cache Anthropic.
</Warning>
## Uwagi zaawansowane
<AccordionGroup>
<Accordion title="Znaczniki cache Anthropic">
Na zweryfikowanych trasach OpenRouter odwołania do modeli Anthropic zachowują
specyficzne dla OpenRouter znaczniki Anthropic `cache_control`, których OpenClaw używa do
lepszego ponownego użycia cache promptów w blokach promptów system/developer.
</Accordion>
<Accordion title="Wstrzykiwanie thinking / reasoning">
Na obsługiwanych trasach innych niż `auto` OpenClaw mapuje wybrany poziom thinking na
payloady reasoning proxy OpenRouter. Nieobsługiwane wskazówki modelu oraz
`openrouter/auto` pomijają to wstrzykiwanie reasoning.
</Accordion>
<Accordion title="Formatowanie żądań tylko dla OpenAI">
OpenRouter nadal działa przez kompatybilną z OpenAI ścieżkę w stylu proxy, więc
natywne formatowanie żądań tylko dla OpenAI, takie jak `serviceTier`, `store` dla Responses,
payloady zgodności reasoning OpenAI i wskazówki cache promptów, nie jest przekazywane dalej.
</Accordion>
<Accordion title="Trasy oparte na Gemini">
Odwołania OpenRouter oparte na Gemini pozostają na ścieżce proxy-Gemini: OpenClaw zachowuje tam
sanityzację podpisu myśli Gemini, ale nie włącza natywnej walidacji replay Gemini
ani przepisania bootstrapu.
</Accordion>
<Accordion title="Metadane routingu dostawcy">
Jeśli przekażesz routing dostawcy OpenRouter w parametrach modelu, OpenClaw przekaże
go jako metadane routingu OpenRouter, zanim uruchomią się współdzielone wrappery streamu.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Referencja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełna referencja konfiguracji agentów, modeli i dostawców.
</Card>
</CardGroup>

View File

@ -1,69 +1,132 @@
---
read_when:
- Chcesz skonfigurować Perplexity jako providera web search
- Potrzebujesz klucza API Perplexity lub konfiguracji proxy OpenRouter
summary: Konfiguracja providera web search Perplexity (klucz API, tryby wyszukiwania, filtrowanie)
title: Perplexity (Provider)
- Chcesz skonfigurować Perplexity jako dostawcę wyszukiwania w sieci
- Potrzebujesz klucza API Perplexity albo konfiguracji proxy OpenRouter
summary: Konfiguracja dostawcy wyszukiwania w sieci Perplexity (klucz API, tryby wyszukiwania, filtrowanie)
title: Perplexity
x-i18n:
generated_at: "2026-04-05T14:03:29Z"
generated_at: "2026-04-12T23:32:57Z"
model: gpt-5.4
provider: openai
source_hash: df9082d15d6a36a096e21efe8cee78e4b8643252225520f5b96a0b99cf5a7a4b
source_hash: 55c089e96601ebe05480d305364272c7f0ac721caa79746297c73002a9f20f55
source_path: providers/perplexity-provider.md
workflow: 15
---
# Perplexity (Provider web search)
# Perplexity (dostawca wyszukiwania w sieci)
Plugin Perplexity udostępnia możliwości web search przez Perplexity
Plugin Perplexity udostępnia możliwości wyszukiwania w sieci przez Perplexity
Search API albo Perplexity Sonar przez OpenRouter.
<Note>
Ta strona opisuje konfigurację **providera** Perplexity. Informacje o
**narzędziu** Perplexity (jak agent go używa) znajdziesz w [Perplexity tool](/tools/perplexity-search).
Ta strona dotyczy konfiguracji **dostawcy** Perplexity. Informacje o **narzędziu**
Perplexity (czyli o tym, jak używa go agent) znajdziesz w [narzędziu Perplexity](/pl/tools/perplexity-search).
</Note>
- Typ: provider web search (nie provider modeli)
- Auth: `PERPLEXITY_API_KEY` (bezpośrednio) albo `OPENROUTER_API_KEY` (przez OpenRouter)
- Ścieżka konfiguracji: `plugins.entries.perplexity.config.webSearch.apiKey`
| Właściwość | Wartość |
| ---------- | --------------------------------------------------------------------- |
| Typ | Dostawca wyszukiwania w sieci (nie dostawca modeli) |
| Auth | `PERPLEXITY_API_KEY` (bezpośrednio) lub `OPENROUTER_API_KEY` (przez OpenRouter) |
| Ścieżka konfiguracji | `plugins.entries.perplexity.config.webSearch.apiKey` |
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
<Steps>
<Step title="Ustaw klucz API">
Uruchom interaktywny przepływ konfiguracji wyszukiwania w sieci:
```bash
openclaw configure --section web
```
```bash
openclaw configure --section web
```
Albo ustaw go bezpośrednio:
Albo ustaw klucz bezpośrednio:
```bash
openclaw config set plugins.entries.perplexity.config.webSearch.apiKey "pplx-xxxxxxxxxxxx"
```
```bash
openclaw config set plugins.entries.perplexity.config.webSearch.apiKey "pplx-xxxxxxxxxxxx"
```
2. Agent będzie automatycznie używać Perplexity do web search, gdy zostanie skonfigurowany.
</Step>
<Step title="Rozpocznij wyszukiwanie">
Agent będzie automatycznie używać Perplexity do wyszukiwań w sieci, gdy klucz
zostanie skonfigurowany. Nie są wymagane żadne dodatkowe kroki.
</Step>
</Steps>
## Tryby wyszukiwania
Plugin automatycznie wybiera transport na podstawie prefiksu klucza API:
<Tabs>
<Tab title="Natywne Perplexity API (pplx-)">
Gdy Twój klucz zaczyna się od `pplx-`, OpenClaw używa natywnego Perplexity Search
API. Ten transport zwraca uporządkowane wyniki i obsługuje filtry domen, języka
oraz daty (zobacz opcje filtrowania poniżej).
</Tab>
<Tab title="OpenRouter / Sonar (sk-or-)">
Gdy Twój klucz zaczyna się od `sk-or-`, OpenClaw kieruje ruch przez OpenRouter, używając
modelu Perplexity Sonar. Ten transport zwraca odpowiedzi syntetyzowane przez AI wraz z
cytowaniami.
</Tab>
</Tabs>
| Prefiks klucza | Transport | Funkcje |
| -------------- | ----------------------------- | ------------------------------------------------ |
| `pplx-` | Natywne Perplexity Search API | Ustrukturyzowane wyniki, filtry domen/języka/daty |
| `pplx-` | Natywne Perplexity Search API | Uporządkowane wyniki, filtry domen/języka/daty |
| `sk-or-` | OpenRouter (Sonar) | Odpowiedzi syntetyzowane przez AI z cytowaniami |
## Filtrowanie natywnego API
## Filtrowanie w natywnym API
Przy użyciu natywnego API Perplexity (klucz `pplx-`) wyszukiwania obsługują:
<Note>
Opcje filtrowania są dostępne tylko podczas korzystania z natywnego Perplexity API
(klucz `pplx-`). Wyszukiwania OpenRouter/Sonar nie obsługują tych parametrów.
</Note>
- **Kraj**: 2-literowy kod kraju
- **Język**: kod języka ISO 639-1
- **Zakres dat**: day, week, month, year
- **Filtry domen**: allowlist/denylist (maks. 20 domen)
- **Budżet treści**: `max_tokens`, `max_tokens_per_page`
Podczas korzystania z natywnego Perplexity API wyszukiwania obsługują następujące filtry:
## Uwaga dotycząca środowiska
| Filtr | Opis | Przykład |
| -------------- | ----------------------------------------- | ----------------------------------- |
| Kraj | 2-literowy kod kraju | `us`, `de`, `jp` |
| Język | Kod języka ISO 639-1 | `en`, `fr`, `zh` |
| Zakres dat | Okno świeżości | `day`, `week`, `month`, `year` |
| Filtry domen | Allowlist lub denylist (maks. 20 domen) | `example.com` |
| Budżet treści | Limity tokenów na odpowiedź / na stronę | `max_tokens`, `max_tokens_per_page` |
Jeśli Gateway działa jako daemon (launchd/systemd), upewnij się, że
`PERPLEXITY_API_KEY` jest dostępny dla tego procesu (na przykład w
`~/.openclaw/.env` albo przez `env.shellEnv`).
## Uwagi zaawansowane
<AccordionGroup>
<Accordion title="Zmienna środowiskowa dla procesów daemon">
Jeśli Gateway OpenClaw działa jako daemon (`launchd`/`systemd`), upewnij się,
że `PERPLEXITY_API_KEY` jest dostępny dla tego procesu.
<Warning>
Klucz ustawiony tylko w `~/.profile` nie będzie widoczny dla daemona `launchd`/`systemd`,
chyba że to środowisko zostanie jawnie zaimportowane. Ustaw klucz w
`~/.openclaw/.env` albo przez `env.shellEnv`, aby proces Gateway mógł go
odczytać.
</Warning>
</Accordion>
<Accordion title="Konfiguracja proxy OpenRouter">
Jeśli wolisz kierować wyszukiwania Perplexity przez OpenRouter, ustaw
`OPENROUTER_API_KEY` (prefiks `sk-or-`) zamiast natywnego klucza Perplexity.
OpenClaw wykryje prefiks i automatycznie przełączy się na transport Sonar.
<Tip>
Transport OpenRouter jest przydatny, jeśli masz już konto OpenRouter
i chcesz mieć skonsolidowane rozliczenia dla wielu dostawców.
</Tip>
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Narzędzie wyszukiwania Perplexity" href="/pl/tools/perplexity-search" icon="magnifying-glass">
Jak agent wywołuje wyszukiwania Perplexity i interpretuje wyniki.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełna dokumentacja konfiguracji, w tym wpisów pluginów.
</Card>
</CardGroup>

View File

@ -2,42 +2,62 @@
read_when:
- Chcesz używać jednego klucza API do wielu LLM-ów
- Potrzebujesz wskazówek dotyczących konfiguracji Baidu Qianfan
summary: Używaj zunifikowanego API Qianfan, aby uzyskać dostęp do wielu modeli w OpenClaw
summary: Używaj ujednoliconego API Qianfan, aby uzyskać dostęp do wielu modeli w OpenClaw
title: Qianfan
x-i18n:
generated_at: "2026-04-05T14:03:41Z"
generated_at: "2026-04-12T23:32:57Z"
model: gpt-5.4
provider: openai
source_hash: 965d83dd968563447ce3571a73bd71c6876275caff8664311a852b2f9827e55b
source_hash: 1d0eeee9ec24b335c2fb8ac5e985a9edc35cfc5b2641c545cb295dd2de619f50
source_path: providers/qianfan.md
workflow: 15
---
# Przewodnik po providerze Qianfan
# Qianfan
Qianfan to platforma MaaS firmy Baidu, która udostępnia **zunifikowane API** kierujące żądania do wielu modeli za jednym
endpointem i kluczem API. Jest zgodna z OpenAI, więc większość SDK OpenAI działa po zmianie base URL.
Qianfan to platforma MaaS firmy Baidu, zapewniająca **ujednolicone API**, które kieruje żądania do wielu modeli za jednym
endpointem i kluczem API. Jest zgodne z OpenAI, więc większość SDK OpenAI działa po zmianie bazowego URL.
## Wymagania wstępne
| Właściwość | Wartość |
| ---------- | -------------------------------- |
| Dostawca | `qianfan` |
| Uwierzytelnianie | `QIANFAN_API_KEY` |
| API | Zgodne z OpenAI |
| Bazowy URL | `https://qianfan.baidubce.com/v2` |
1. Konto Baidu Cloud z dostępem do API Qianfan
2. Klucz API z konsoli Qianfan
3. OpenClaw zainstalowany w systemie
## Pierwsze kroki
## Uzyskanie klucza API
<Steps>
<Step title="Utwórz konto Baidu Cloud">
Zarejestruj się lub zaloguj w [Qianfan Console](https://console.bce.baidu.com/qianfan/ais/console/apiKey) i upewnij się, że masz włączony dostęp do API Qianfan.
</Step>
<Step title="Wygeneruj klucz API">
Utwórz nową aplikację albo wybierz istniejącą, a następnie wygeneruj klucz API. Format klucza to `bce-v3/ALTAK-...`.
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice qianfan-api-key
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider qianfan
```
</Step>
</Steps>
1. Odwiedź [konsolę Qianfan](https://console.bce.baidu.com/qianfan/ais/console/apiKey)
2. Utwórz nową aplikację lub wybierz istniejącą
3. Wygeneruj klucz API (format: `bce-v3/ALTAK-...`)
4. Skopiuj klucz API do użycia z OpenClaw
## Dostępne modele
## Konfiguracja CLI
| Odwołanie modelu | Wejście | Kontekst | Maks. wyjście | Reasoning | Uwagi |
| ----------------------------------- | ----------- | -------- | ------------- | --------- | ---------------- |
| `qianfan/deepseek-v3.2` | text | 98,304 | 32,768 | Tak | Model domyślny |
| `qianfan/ernie-5.0-thinking-preview`| text, image | 119,000 | 64,000 | Tak | Multimodalny |
```bash
openclaw onboard --auth-choice qianfan-api-key
```
<Tip>
Domyślnym dołączonym odwołaniem do modelu jest `qianfan/deepseek-v3.2`. `models.providers.qianfan` trzeba nadpisywać tylko wtedy, gdy potrzebujesz niestandardowego bazowego URL albo metadanych modelu.
</Tip>
## Fragment konfiguracji
## Przykład konfiguracji
```json5
{
@ -81,17 +101,40 @@ openclaw onboard --auth-choice qianfan-api-key
}
```
## Uwagi
<AccordionGroup>
<Accordion title="Transport i zgodność">
Qianfan działa przez ścieżkę transportu zgodną z OpenAI, a nie przez natywne formatowanie żądań OpenAI. Oznacza to, że standardowe funkcje SDK OpenAI działają, ale parametry specyficzne dla dostawcy mogą nie być przekazywane dalej.
</Accordion>
- Domyślne odwołanie do dołączonego modelu: `qianfan/deepseek-v3.2`
- Domyślny base URL: `https://qianfan.baidubce.com/v2`
- Dołączony katalog obecnie zawiera `deepseek-v3.2` i `ernie-5.0-thinking-preview`
- Dodawaj lub nadpisuj `models.providers.qianfan` tylko wtedy, gdy potrzebujesz niestandardowego base URL lub metadanych modelu
- Qianfan działa przez ścieżkę transportu zgodną z OpenAI, a nie przez natywne kształtowanie żądań OpenAI
<Accordion title="Katalog i nadpisania">
Dołączony katalog zawiera obecnie `deepseek-v3.2` i `ernie-5.0-thinking-preview`. Dodawaj lub nadpisuj `models.providers.qianfan` tylko wtedy, gdy potrzebujesz niestandardowego bazowego URL albo metadanych modelu.
## Powiązana dokumentacja
<Note>
Odwołania do modeli używają prefiksu `qianfan/` (na przykład `qianfan/deepseek-v3.2`).
</Note>
- [Konfiguracja OpenClaw](/pl/gateway/configuration)
- [Providerzy modeli](/pl/concepts/model-providers)
- [Konfiguracja agenta](/pl/concepts/agent)
- [Dokumentacja API Qianfan](https://cloud.baidu.com/doc/qianfan-api/s/3m7of64lb)
</Accordion>
<Accordion title="Rozwiązywanie problemów">
- Upewnij się, że Twój klucz API zaczyna się od `bce-v3/ALTAK-` i ma włączony dostęp do API Qianfan w konsoli Baidu Cloud.
- Jeśli modele nie są wyświetlane, potwierdź, że na Twoim koncie usługa Qianfan jest aktywna.
- Domyślny bazowy URL to `https://qianfan.baidubce.com/v2`. Zmieniaj go tylko wtedy, gdy używasz niestandardowego endpointu albo proxy.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Referencja konfiguracji" href="/pl/gateway/configuration" icon="gear">
Pełna referencja konfiguracji OpenClaw.
</Card>
<Card title="Konfiguracja agenta" href="/pl/concepts/agent" icon="robot">
Konfigurowanie domyślnych ustawień agenta i przypisań modeli.
</Card>
<Card title="Dokumentacja API Qianfan" href="https://cloud.baidu.com/doc/qianfan-api/s/3m7of64lb" icon="arrow-up-right-from-square">
Oficjalna dokumentacja API Qianfan.
</Card>
</CardGroup>

View File

@ -1,14 +1,14 @@
---
read_when:
- Chcesz używać Qwen z OpenClaw
- Wcześniej używałeś OAuth Qwen
- Wcześniej używałeś Qwen OAuth
summary: Używaj Qwen Cloud przez dołączonego dostawcę qwen w OpenClaw
title: Qwen
x-i18n:
generated_at: "2026-04-09T01:30:16Z"
generated_at: "2026-04-12T23:33:03Z"
model: gpt-5.4
provider: openai
source_hash: 4786df2cb6ec1ab29d191d012c61dcb0e5468bf0f8561fbbb50eed741efad325
source_hash: 5247f851ef891645df6572d748ea15deeea47cd1d75858bc0d044a2930065106
source_path: providers/qwen.md
workflow: 15
---
@ -17,80 +17,141 @@ x-i18n:
<Warning>
**OAuth Qwen został usunięty.** Integracja OAuth w bezpłatnym planie
**Qwen OAuth zostało usunięte.** Integracja darmowej warstwy OAuth
(`qwen-portal`), która używała endpointów `portal.qwen.ai`, nie jest już dostępna.
Kontekst znajdziesz w [Issue #49557](https://github.com/openclaw/openclaw/issues/49557).
Tło znajdziesz w [Issue #49557](https://github.com/openclaw/openclaw/issues/49557).
</Warning>
## Zalecane: Qwen Cloud
OpenClaw traktuje teraz Qwen jako pełnoprawnego dołączonego dostawcę z kanonicznym identyfikatorem
`qwen`. Dołączony dostawca obsługuje endpointy Qwen Cloud / Alibaba DashScope oraz
Coding Plan i zachowuje działanie starszych identyfikatorów `modelstudio` jako
aliasu zgodności.
`qwen`. Dołączony dostawca kieruje ruch do endpointów Qwen Cloud / Alibaba DashScope oraz
Coding Plan i zachowuje starsze identyfikatory `modelstudio` jako alias zgodności.
- Dostawca: `qwen`
- Preferowana zmienna env: `QWEN_API_KEY`
- Preferowana zmienna środowiskowa: `QWEN_API_KEY`
- Akceptowane także dla zgodności: `MODELSTUDIO_API_KEY`, `DASHSCOPE_API_KEY`
- Styl API: zgodny z OpenAI
<Tip>
Jeśli chcesz używać `qwen3.6-plus`, wybierz endpoint **Standard (pay-as-you-go)**.
Obsługa Coding Plan może być opóźniona względem publicznego katalogu.
Obsługa Coding Plan może pozostawać w tyle za publicznym katalogiem.
</Tip>
```bash
# Globalny endpoint Coding Plan
openclaw onboard --auth-choice qwen-api-key
## Pierwsze kroki
# Chiński endpoint Coding Plan
openclaw onboard --auth-choice qwen-api-key-cn
Wybierz typ planu i wykonaj kroki konfiguracji.
# Globalny endpoint Standard (pay-as-you-go)
openclaw onboard --auth-choice qwen-standard-api-key
<Tabs>
<Tab title="Coding Plan (subskrypcja)">
**Najlepsze dla:** dostępu opartego na subskrypcji przez Qwen Coding Plan.
# Chiński endpoint Standard (pay-as-you-go)
openclaw onboard --auth-choice qwen-standard-api-key-cn
```
<Steps>
<Step title="Pobierz swój klucz API">
Utwórz lub skopiuj klucz API z [home.qwencloud.com/api-keys](https://home.qwencloud.com/api-keys).
</Step>
<Step title="Uruchom onboarding">
Dla endpointu **Global**:
Starsze identyfikatory `auth-choice` `modelstudio-*` oraz referencje modeli `modelstudio/...`
nadal działają jako aliasy zgodności, ale nowe przepływy konfiguracji powinny preferować kanoniczne
identyfikatory `auth-choice` z rodziny `qwen-*` oraz referencje modeli `qwen/...`.
```bash
openclaw onboard --auth-choice qwen-api-key
```
Po onboardingu ustaw model domyślny:
Dla endpointu **China**:
```json5
{
agents: {
defaults: {
model: { primary: "qwen/qwen3.5-plus" },
},
},
}
```
```bash
openclaw onboard --auth-choice qwen-api-key-cn
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "qwen/qwen3.5-plus" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider qwen
```
</Step>
</Steps>
<Note>
Starsze identyfikatory `auth-choice` z rodziny `modelstudio-*` oraz odwołania do modeli `modelstudio/...` nadal
działają jako aliasy zgodności, ale nowe przepływy konfiguracji powinny preferować kanoniczne
identyfikatory `auth-choice` z rodziny `qwen-*` oraz odwołania do modeli `qwen/...`.
</Note>
</Tab>
<Tab title="Standard (pay-as-you-go)">
**Najlepsze dla:** dostępu pay-as-you-go przez endpoint Standard Model Studio, w tym modeli takich jak `qwen3.6-plus`, które mogą nie być dostępne w Coding Plan.
<Steps>
<Step title="Pobierz swój klucz API">
Utwórz lub skopiuj klucz API z [home.qwencloud.com/api-keys](https://home.qwencloud.com/api-keys).
</Step>
<Step title="Uruchom onboarding">
Dla endpointu **Global**:
```bash
openclaw onboard --auth-choice qwen-standard-api-key
```
Dla endpointu **China**:
```bash
openclaw onboard --auth-choice qwen-standard-api-key-cn
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "qwen/qwen3.5-plus" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider qwen
```
</Step>
</Steps>
<Note>
Starsze identyfikatory `auth-choice` z rodziny `modelstudio-*` oraz odwołania do modeli `modelstudio/...` nadal
działają jako aliasy zgodności, ale nowe przepływy konfiguracji powinny preferować kanoniczne
identyfikatory `auth-choice` z rodziny `qwen-*` oraz odwołania do modeli `qwen/...`.
</Note>
</Tab>
</Tabs>
## Typy planów i endpointy
| Plan | Region | Wybór auth | Endpoint |
| Plan | Region | Auth choice | Endpoint |
| -------------------------- | ------ | -------------------------- | ------------------------------------------------ |
| Standard (pay-as-you-go) | China | `qwen-standard-api-key-cn` | `dashscope.aliyuncs.com/compatible-mode/v1` |
| Standard (pay-as-you-go) | Global | `qwen-standard-api-key` | `dashscope-intl.aliyuncs.com/compatible-mode/v1` |
| Coding Plan (subscription) | China | `qwen-api-key-cn` | `coding.dashscope.aliyuncs.com/v1` |
| Coding Plan (subscription) | Global | `qwen-api-key` | `coding-intl.dashscope.aliyuncs.com/v1` |
| Coding Plan (subskrypcja) | China | `qwen-api-key-cn` | `coding.dashscope.aliyuncs.com/v1` |
| Coding Plan (subskrypcja) | Global | `qwen-api-key` | `coding-intl.dashscope.aliyuncs.com/v1` |
Dostawca automatycznie wybiera endpoint na podstawie wybranego auth. Kanoniczne
opcje używają rodziny `qwen-*`; `modelstudio-*` pozostaje wyłącznie dla zgodności.
Możesz nadpisać to własnym `baseUrl` w konfiguracji.
Dostawca automatycznie wybiera endpoint na podstawie Twojego `auth choice`. Kanoniczne
wybory używają rodziny `qwen-*`; `modelstudio-*` pozostaje tylko dla zgodności.
Możesz nadpisać to przez niestandardowe `baseUrl` w konfiguracji.
Natywne endpointy Model Studio deklarują zgodność użycia strumieniowego na
współdzielonym transporcie `openai-completions`. OpenClaw opiera to teraz na możliwościach endpointu,
więc niestandardowe identyfikatory dostawców zgodnych z DashScope, kierujące na te same
natywne hosty, dziedziczą to samo zachowanie użycia strumieniowego zamiast
wymagać konkretnie wbudowanego identyfikatora dostawcy `qwen`.
## Pobierz swój klucz API
- **Zarządzanie kluczami**: [home.qwencloud.com/api-keys](https://home.qwencloud.com/api-keys)
- **Dokumentacja**: [docs.qwencloud.com](https://docs.qwencloud.com/developer-guides/getting-started/introduction)
<Tip>
**Zarządzanie kluczami:** [home.qwencloud.com/api-keys](https://home.qwencloud.com/api-keys) |
**Dokumentacja:** [docs.qwencloud.com](https://docs.qwencloud.com/developer-guides/getting-started/introduction)
</Tip>
## Wbudowany katalog
@ -98,82 +159,32 @@ OpenClaw obecnie dostarcza ten dołączony katalog Qwen. Skonfigurowany katalog
świadomy endpointu: konfiguracje Coding Plan pomijają modele, o których wiadomo, że działają
tylko na endpointach Standard.
| Referencja modelu | Wejście | Kontekst | Uwagi |
| -------------------------- | ----------- | --------- | -------------------------------------------------- |
| `qwen/qwen3.5-plus` | text, image | 1,000,000 | Model domyślny |
| `qwen/qwen3.6-plus` | text, image | 1,000,000 | Przy tym modelu preferuj endpointy Standard |
| `qwen/qwen3-max-2026-01-23`| text | 262,144 | Linia Qwen Max |
| `qwen/qwen3-coder-next` | text | 262,144 | Coding |
| `qwen/qwen3-coder-plus` | text | 1,000,000 | Coding |
| `qwen/MiniMax-M2.5` | text | 1,000,000 | Reasoning włączony |
| `qwen/glm-5` | text | 202,752 | GLM |
| `qwen/glm-4.7` | text | 202,752 | GLM |
| `qwen/kimi-k2.5` | text, image | 262,144 | Moonshot AI przez Alibaba |
| Odwołanie do modelu | Wejście | Kontekst | Uwagi |
| -------------------------- | ----------- | --------- | --------------------------------------------------- |
| `qwen/qwen3.5-plus` | text, image | 1,000,000 | Model domyślny |
| `qwen/qwen3.6-plus` | text, image | 1,000,000 | Gdy potrzebujesz tego modelu, preferuj endpointy Standard |
| `qwen/qwen3-max-2026-01-23`| text | 262,144 | Linia Qwen Max |
| `qwen/qwen3-coder-next` | text | 262,144 | Kodowanie |
| `qwen/qwen3-coder-plus` | text | 1,000,000 | Kodowanie |
| `qwen/MiniMax-M2.5` | text | 1,000,000 | Obsługa rozumowania włączona |
| `qwen/glm-5` | text | 202,752 | GLM |
| `qwen/glm-4.7` | text | 202,752 | GLM |
| `qwen/kimi-k2.5` | text, image | 262,144 | Moonshot AI przez Alibaba |
Dostępność może nadal zależeć od endpointu i planu rozliczeniowego, nawet jeśli model
jest obecny w dołączonym katalogu.
Zgodność użycia natywnego strumieniowania dotyczy zarówno hostów Coding Plan, jak i
hostów Standard zgodnych z DashScope:
- `https://coding.dashscope.aliyuncs.com/v1`
- `https://coding-intl.dashscope.aliyuncs.com/v1`
- `https://dashscope.aliyuncs.com/compatible-mode/v1`
- `https://dashscope-intl.aliyuncs.com/compatible-mode/v1`
## Dostępność Qwen 3.6 Plus
`qwen3.6-plus` jest dostępny na endpointach Model Studio Standard (pay-as-you-go):
- China: `dashscope.aliyuncs.com/compatible-mode/v1`
- Global: `dashscope-intl.aliyuncs.com/compatible-mode/v1`
Jeśli endpointy Coding Plan zwracają błąd „unsupported model” dla
`qwen3.6-plus`, przełącz się na Standard (pay-as-you-go) zamiast używać pary
endpoint/klucz Coding Plan.
## Plan możliwości
Rozszerzenie `qwen` jest pozycjonowane jako dom producenta dla pełnej powierzchni Qwen
Cloud, a nie tylko modeli coding/text.
- Modele text/chat: dołączone już teraz
- Wywoływanie narzędzi, output strukturalny, thinking: dziedziczone z transportu zgodnego z OpenAI
- Generowanie obrazów: planowane na warstwie wtyczki dostawcy
- Rozumienie obrazów/wideo: dołączone już teraz na endpointach Standard
- Speech/audio: planowane na warstwie wtyczki dostawcy
- Embeddingi pamięci/reranking: planowane przez powierzchnię adaptera embeddingów
- Generowanie wideo: dołączone już teraz przez współdzieloną możliwość generowania wideo
<Note>
Dostępność nadal może się różnić w zależności od endpointu i planu rozliczeniowego, nawet jeśli model
występuje w dołączonym katalogu.
</Note>
## Dodatki multimodalne
Rozszerzenie `qwen` udostępnia teraz także:
Rozszerzenie `qwen` udostępnia także możliwości multimodalne na endpointach **Standard**
DashScope (nie na endpointach Coding Plan):
- Rozumienie wideo przez `qwen-vl-max-latest`
- Generowanie wideo Wan przez:
- `wan2.6-t2v` (domyślnie)
- `wan2.6-i2v`
- `wan2.6-r2v`
- `wan2.6-r2v-flash`
- `wan2.7-r2v`
- **Rozumienie wideo** przez `qwen-vl-max-latest`
- **Generowanie wideo Wan** przez `wan2.6-t2v` (domyślnie), `wan2.6-i2v`, `wan2.6-r2v`, `wan2.6-r2v-flash`, `wan2.7-r2v`
Te powierzchnie multimodalne używają endpointów DashScope **Standard**, a nie
endpointów Coding Plan.
- Global/Intl Standard base URL: `https://dashscope-intl.aliyuncs.com/compatible-mode/v1`
- China Standard base URL: `https://dashscope.aliyuncs.com/compatible-mode/v1`
Dla generowania wideo OpenClaw mapuje skonfigurowany region Qwen na odpowiadający
mu host DashScope AIGC przed wysłaniem zadania:
- Global/Intl: `https://dashscope-intl.aliyuncs.com`
- China: `https://dashscope.aliyuncs.com`
Oznacza to, że zwykłe `models.providers.qwen.baseUrl` wskazujące na hosty Qwen
Coding Plan lub Standard nadal utrzymuje generowanie wideo na poprawnym
regionalnym endpointcie wideo DashScope.
Dla generowania wideo ustaw jawnie model domyślny:
Aby używać Qwen jako domyślnego dostawcy wideo:
```json5
{
@ -185,22 +196,124 @@ Dla generowania wideo ustaw jawnie model domyślny:
}
```
Obecne limity generowania wideo dla dołączonego Qwen:
<Note>
Zobacz [Video Generation](/pl/tools/video-generation), aby poznać wspólne parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
- Maksymalnie **1** wyjściowe wideo na żądanie
- Maksymalnie **1** obraz wejściowy
- Maksymalnie **4** wejściowe wideo
- Maksymalny czas trwania **10 sekund**
- Obsługuje `size`, `aspectRatio`, `resolution`, `audio` i `watermark`
- Tryb obrazu/wideo referencyjnego obecnie wymaga **zdalnych adresów URL http(s)**. Lokalne
ścieżki plików są odrzucane od razu, ponieważ endpoint wideo DashScope nie
akceptuje przesyłanych lokalnych buforów dla takich referencji.
## Zaawansowane
Zobacz [Video Generation](/pl/tools/video-generation), aby poznać współdzielone parametry
narzędzia, wybór dostawcy i zachowanie failover.
<AccordionGroup>
<Accordion title="Rozumienie obrazów i wideo">
Dołączony Plugin Qwen rejestruje rozumienie mediów dla obrazów i wideo
na endpointach **Standard** DashScope (nie na endpointach Coding Plan).
## Uwaga dotycząca środowiska
| Właściwość | Wartość |
| --------------- | -------------------- |
| Model | `qwen-vl-max-latest` |
| Obsługiwane wejście | Obrazy, wideo |
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `QWEN_API_KEY` jest
dostępne dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
`env.shellEnv`).
Rozumienie mediów jest automatycznie rozpoznawane na podstawie skonfigurowanego uwierzytelniania Qwen — nie
jest potrzebna żadna dodatkowa konfiguracja. Upewnij się, że używasz endpointu Standard (pay-as-you-go),
jeśli chcesz obsługi rozumienia mediów.
</Accordion>
<Accordion title="Dostępność Qwen 3.6 Plus">
`qwen3.6-plus` jest dostępny na endpointach Standard (pay-as-you-go) Model Studio:
- China: `dashscope.aliyuncs.com/compatible-mode/v1`
- Global: `dashscope-intl.aliyuncs.com/compatible-mode/v1`
Jeśli endpointy Coding Plan zwracają błąd „unsupported model” dla
`qwen3.6-plus`, przełącz się na Standard (pay-as-you-go) zamiast pary
endpoint/klucz Coding Plan.
</Accordion>
<Accordion title="Plan możliwości">
Rozszerzenie `qwen` jest pozycjonowane jako dom dostawcy dla pełnej powierzchni Qwen
Cloud, a nie tylko modeli do kodowania/tekstu.
- **Modele tekstowe/czatowe:** dołączone teraz
- **Wywoływanie narzędzi, strukturalne wyjście, myślenie:** dziedziczone z transportu zgodnego z OpenAI
- **Generowanie obrazów:** planowane na warstwie Pluginu dostawcy
- **Rozumienie obrazów/wideo:** dołączone teraz na endpointach Standard
- **Mowa/audio:** planowane na warstwie Pluginu dostawcy
- **Osadzania/reranking pamięci:** planowane przez powierzchnię adaptera osadzania
- **Generowanie wideo:** dołączone teraz przez współdzieloną możliwość generowania wideo
</Accordion>
<Accordion title="Szczegóły generowania wideo">
W przypadku generowania wideo OpenClaw mapuje skonfigurowany region Qwen na pasujący
host DashScope AIGC przed wysłaniem zadania:
- Global/Intl: `https://dashscope-intl.aliyuncs.com`
- China: `https://dashscope.aliyuncs.com`
Oznacza to, że zwykłe `models.providers.qwen.baseUrl` wskazujące na hosty Qwen
Coding Plan lub Standard nadal utrzymuje generowanie wideo na prawidłowym
regionalnym endpointcie wideo DashScope.
Bieżące limity dołączonego generowania wideo Qwen:
- Maksymalnie **1** wyjściowe wideo na żądanie
- Maksymalnie **1** obraz wejściowy
- Maksymalnie **4** wejściowe wideo
- Maksymalnie **10 sekund** czasu trwania
- Obsługuje `size`, `aspectRatio`, `resolution`, `audio` i `watermark`
- Tryb obrazu/wideo referencyjnego obecnie wymaga **zdalnych URL-i http(s)**. Lokalne
ścieżki plików są odrzucane od razu, ponieważ endpoint wideo DashScope nie
akceptuje przesłanych lokalnych buforów dla takich odniesień.
</Accordion>
<Accordion title="Zgodność użycia strumieniowego">
Natywne endpointy Model Studio deklarują zgodność użycia strumieniowego na
współdzielonym transporcie `openai-completions`. OpenClaw opiera to teraz na możliwościach endpointu,
więc niestandardowe identyfikatory dostawców zgodnych z DashScope kierujące na
te same natywne hosty dziedziczą to samo zachowanie użycia strumieniowego zamiast
wymagać konkretnie wbudowanego identyfikatora dostawcy `qwen`.
Zgodność natywnego użycia strumieniowego dotyczy zarówno hostów Coding Plan, jak i
hostów Standard zgodnych z DashScope:
- `https://coding.dashscope.aliyuncs.com/v1`
- `https://coding-intl.dashscope.aliyuncs.com/v1`
- `https://dashscope.aliyuncs.com/compatible-mode/v1`
- `https://dashscope-intl.aliyuncs.com/compatible-mode/v1`
</Accordion>
<Accordion title="Regiony endpointów multimodalnych">
Powierzchnie multimodalne (rozumienie wideo i generowanie wideo Wan) używają
endpointów **Standard** DashScope, a nie endpointów Coding Plan:
- Global/Intl Standard base URL: `https://dashscope-intl.aliyuncs.com/compatible-mode/v1`
- China Standard base URL: `https://dashscope.aliyuncs.com/compatible-mode/v1`
</Accordion>
<Accordion title="Konfiguracja środowiska i demona">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że `QWEN_API_KEY` jest
dostępny dla tego procesu (na przykład w `~/.openclaw/.env` lub przez
`env.shellEnv`).
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Video generation" href="/pl/tools/video-generation" icon="video">
Wspólne parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Alibaba (ModelStudio)" href="/pl/providers/alibaba" icon="cloud">
Starszy dostawca ModelStudio i uwagi dotyczące migracji.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Ogólne rozwiązywanie problemów i FAQ.
</Card>
</CardGroup>

View File

@ -1,54 +1,63 @@
---
read_when:
- Chcesz używać generowania wideo Runway w OpenClaw
- Potrzebujesz konfiguracji klucza API / env dla Runway
- Potrzebujesz konfiguracji klucza API/env Runway
- Chcesz ustawić Runway jako domyślnego dostawcę wideo
summary: Konfiguracja generowania wideo Runway w OpenClaw
title: Runway
x-i18n:
generated_at: "2026-04-06T03:11:49Z"
generated_at: "2026-04-12T23:33:02Z"
model: gpt-5.4
provider: openai
source_hash: bc615d1a26f7a4b890d29461e756690c858ecb05024cf3c4d508218022da6e76
source_hash: fb9a2d26687920544222b0769f314743af245629fd45b7f456c0161a47476176
source_path: providers/runway.md
workflow: 15
---
# Runway
OpenClaw zawiera dołączonego dostawcę `runway` do hostowanego generowania wideo.
OpenClaw zawiera bundlowanego dostawcę `runway` do hostowanej generacji wideo.
- Identyfikator dostawcy: `runway`
- Uwierzytelnianie: `RUNWAYML_API_SECRET` (kanoniczne) lub `RUNWAY_API_KEY`
- API: generowanie wideo oparte na zadaniach Runway (odpytywanie `GET /v1/tasks/{id}`)
| Właściwość | Wartość |
| ------------ | ----------------------------------------------------------------- |
| Id dostawcy | `runway` |
| Uwierzytelnianie | `RUNWAYML_API_SECRET` (kanoniczne) lub `RUNWAY_API_KEY` |
| API | Oparta na zadaniach generacja wideo Runway (odpytywanie `GET /v1/tasks/{id}`) |
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
```bash
openclaw onboard --auth-choice runway-api-key
```
2. Ustaw Runway jako domyślnego dostawcę wideo:
```bash
openclaw config set agents.defaults.videoGenerationModel.primary "runway/gen4.5"
```
3. Poproś agenta o wygenerowanie wideo. Runway zostanie użyty automatycznie.
<Steps>
<Step title="Ustaw klucz API">
```bash
openclaw onboard --auth-choice runway-api-key
```
</Step>
<Step title="Ustaw Runway jako domyślnego dostawcę wideo">
```bash
openclaw config set agents.defaults.videoGenerationModel.primary "runway/gen4.5"
```
</Step>
<Step title="Wygeneruj wideo">
Poproś agenta o wygenerowanie wideo. Runway zostanie użyty automatycznie.
</Step>
</Steps>
## Obsługiwane tryby
| Tryb | Model | Wejście referencyjne |
| -------------- | ------------------ | --------------------------- |
| Text-to-video | `gen4.5` (domyślny) | Brak |
| Image-to-video | `gen4.5` | 1 obraz lokalny lub zdalny |
| Video-to-video | `gen4_aleph` | 1 wideo lokalne lub zdalne |
| Tryb | Model | Wejście referencyjne |
| -------------- | ------------------ | ------------------------- |
| Tekst na wideo | `gen4.5` (domyślny) | Brak |
| Obraz na wideo | `gen4.5` | 1 lokalny lub zdalny obraz |
| Wideo na wideo | `gen4_aleph` | 1 lokalne lub zdalne wideo |
- Lokalne obrazy i wideo referencyjne są obsługiwane przez URI danych.
- Video-to-video obecnie wymaga konkretnie `runway/gen4_aleph`.
- Uruchomienia tylko tekstowe obecnie udostępniają proporcje `16:9` i `9:16`.
<Note>
Lokalne odwołania do obrazów i wideo są obsługiwane przez URI danych. Uruchomienia tylko tekstowe
obecnie udostępniają proporcje `16:9` i `9:16`.
</Note>
<Warning>
Wideo na wideo obecnie wymaga konkretnie `runway/gen4_aleph`.
</Warning>
## Konfiguracja
@ -64,7 +73,28 @@ openclaw config set agents.defaults.videoGenerationModel.primary "runway/gen4.5"
}
```
## Uwagi zaawansowane
<AccordionGroup>
<Accordion title="Aliasy zmiennych środowiskowych">
OpenClaw rozpoznaje zarówno `RUNWAYML_API_SECRET` (kanoniczne), jak i `RUNWAY_API_KEY`.
Dowolna z tych zmiennych uwierzytelni dostawcę Runway.
</Accordion>
<Accordion title="Odpytywanie zadań">
Runway używa API opartego na zadaniach. Po wysłaniu żądania generowania OpenClaw
odpytuje `GET /v1/tasks/{id}`, aż wideo będzie gotowe. Żadna dodatkowa
konfiguracja zachowania odpytywania nie jest potrzebna.
</Accordion>
</AccordionGroup>
## Powiązane
- [Generowanie wideo](/tools/video-generation) -- współdzielone parametry narzędzia, wybór dostawcy i zachowanie asynchroniczne
- [Dokumentacja konfiguracji](/pl/gateway/configuration-reference#agent-defaults)
<CardGroup cols={2}>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Współdzielone parametry narzędzia, wybór dostawcy i zachowanie asynchroniczne.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference#agent-defaults" icon="gear">
Ustawienia domyślne agenta, w tym model generowania wideo.
</Card>
</CardGroup>

View File

@ -2,68 +2,78 @@
read_when:
- Chcesz uruchomić OpenClaw z lokalnym serwerem SGLang
- Chcesz używać endpointów `/v1` zgodnych z OpenAI z własnymi modelami
summary: Uruchamianie OpenClaw z SGLang (samodzielnie hostowany serwer zgodny z OpenAI)
summary: Uruchamiaj OpenClaw z SGLang (samodzielnie hostowany serwer zgodny z OpenAI)
title: SGLang
x-i18n:
generated_at: "2026-04-05T14:03:54Z"
generated_at: "2026-04-12T23:33:11Z"
model: gpt-5.4
provider: openai
source_hash: 9850277c6c5e318e60237688b4d8a5b1387d4e9586534ae2eb6ad953abba8948
source_hash: e0a2e50a499c3d25dcdc3af425fb023c6e3f19ed88f533ecf0eb8a2cb7ec8b0d
source_path: providers/sglang.md
workflow: 15
---
# SGLang
SGLang może udostępniać modele open source przez **interfejs HTTP zgodny z OpenAI**.
SGLang może udostępniać modele open source przez **API HTTP zgodne z OpenAI**.
OpenClaw może łączyć się z SGLang przy użyciu API `openai-completions`.
OpenClaw może t **automatycznie wykrywać** dostępne modele z SGLang, gdy jawnie
to włączysz przez `SGLANG_API_KEY` (dowolna wartość działa, jeśli Twój serwer nie wymusza uwierzytelniania)
OpenClaw może także **automatycznie wykrywać** dostępne modele z SGLang, gdy
jawnie to włączysz przez `SGLANG_API_KEY` (dowolna wartość działa, jeśli Twój serwer nie wymusza auth)
i nie zdefiniujesz jawnego wpisu `models.providers.sglang`.
## Szybki start
## Pierwsze kroki
1. Uruchom SGLang z serwerem zgodnym z OpenAI.
<Steps>
<Step title="Uruchom SGLang">
Uruchom SGLang z serwerem zgodnym z OpenAI. Twój bazowy URL powinien udostępniać
endpointy `/v1` (na przykład `/v1/models`, `/v1/chat/completions`). SGLang
często działa pod adresem:
Twój `baseUrl` powinien udostępniać endpointy `/v1` (na przykład `/v1/models`,
`/v1/chat/completions`). SGLang zwykle działa pod adresem:
- `http://127.0.0.1:30000/v1`
- `http://127.0.0.1:30000/v1`
</Step>
<Step title="Ustaw klucz API">
Dowolna wartość działa, jeśli na serwerze nie skonfigurowano auth:
2. Włącz to jawnie (dowolna wartość działa, jeśli uwierzytelnianie nie jest skonfigurowane):
```bash
export SGLANG_API_KEY="sglang-local"
```
```bash
export SGLANG_API_KEY="sglang-local"
```
</Step>
<Step title="Uruchom onboarding albo ustaw model bezpośrednio">
```bash
openclaw onboard
```
3. Uruchom onboarding i wybierz `SGLang` albo ustaw model bezpośrednio:
Albo skonfiguruj model ręcznie:
```bash
openclaw onboard
```
```json5
{
agents: {
defaults: {
model: { primary: "sglang/your-model-id" },
},
},
}
```
```json5
{
agents: {
defaults: {
model: { primary: "sglang/your-model-id" },
},
},
}
```
</Step>
</Steps>
## Wykrywanie modeli (niejawny dostawca)
Gdy `SGLANG_API_KEY` jest ustawione (lub istnieje profil uwierzytelniania) i **nie**
zdefiniujesz `models.providers.sglang`, OpenClaw wykona zapytanie do:
Gdy `SGLANG_API_KEY` jest ustawione (albo istnieje profil auth) i **nie**
zdefiniujesz `models.providers.sglang`, OpenClaw wykona zapytanie:
- `GET http://127.0.0.1:30000/v1/models`
i przekształci zwrócone identyfikatory w wpisy modeli.
Jeśli jawnie ustawisz `models.providers.sglang`, automatyczne wykrywanie zostanie pominięte
i musisz zdefiniować modele ręcznie.
<Note>
Jeśli jawnie ustawisz `models.providers.sglang`, automatyczne wykrywanie zostanie pominięte i
musisz ręcznie zdefiniować modele.
</Note>
## Jawna konfiguracja (modele ręczne)
@ -98,25 +108,52 @@ Użyj jawnej konfiguracji, gdy:
}
```
## Rozwiązywanie problemów
## Konfiguracja zaawansowana
- Sprawdź, czy serwer jest osiągalny:
<AccordionGroup>
<Accordion title="Zachowanie w stylu proxy">
SGLang jest traktowany jako backend `/v1` zgodny z OpenAI w stylu proxy, a nie
natywny endpoint OpenAI.
```bash
curl http://127.0.0.1:30000/v1/models
```
| Zachowanie | SGLang |
|----------|--------|
| Kształtowanie żądań tylko dla OpenAI | Nie jest stosowane |
| `service_tier`, `store` w Responses, wskazówki prompt-cache | Nie są wysyłane |
| Kształtowanie payloadów zgodności reasoning | Nie jest stosowane |
| Ukryte nagłówki atrybucji (`originator`, `version`, `User-Agent`) | Nie są wstrzykiwane przy niestandardowych bazowych URL-ach SGLang |
- Jeśli żądania kończą się błędami uwierzytelniania, ustaw prawdziwe `SGLANG_API_KEY` zgodne
z konfiguracją Twojego serwera albo skonfiguruj dostawcę jawnie w
`models.providers.sglang`.
</Accordion>
## Zachowanie w stylu proxy
<Accordion title="Rozwiązywanie problemów">
**Nie można połączyć się z serwerem**
SGLang jest traktowany jako backend `/v1` zgodny z OpenAI w stylu proxy, a nie
natywny endpoint OpenAI.
Sprawdź, czy serwer działa i odpowiada:
- nie stosuje się tutaj kształtowania żądań wyłącznie dla natywnego OpenAI
- brak `service_tier`, brak `store` z Responses, brak hintów cache promptu i brak
kształtowania payloadu zgodności reasoning dla OpenAI
- ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane do niestandardowych `baseUrl` SGLang
```bash
curl http://127.0.0.1:30000/v1/models
```
**Błędy auth**
Jeśli żądania kończą się błędami auth, ustaw prawdziwe `SGLANG_API_KEY`, które odpowiada
konfiguracji serwera, albo skonfiguruj dostawcę jawnie pod
`models.providers.sglang`.
<Tip>
Jeśli uruchamiasz SGLang bez uwierzytelniania, dowolna niepusta wartość
`SGLANG_API_KEY` wystarczy, aby włączyć wykrywanie modeli.
</Tip>
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Informacje o konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji, w tym wpisy dostawców.
</Card>
</CardGroup>

View File

@ -1,159 +1,237 @@
---
read_when:
- Chcesz używać modeli StepFun w OpenClaw
- Potrzebujesz wskazówek dotyczących konfiguracji StepFun
summary: Używanie modeli StepFun z OpenClaw
- Potrzebujesz wskazówek konfiguracji StepFun
summary: Używaj modeli StepFun z OpenClaw
title: StepFun
x-i18n:
generated_at: "2026-04-05T14:03:46Z"
generated_at: "2026-04-12T23:33:14Z"
model: gpt-5.4
provider: openai
source_hash: 3154852556577b4cfb387a2de281559f2b173c774bfbcaea996abe5379ae684a
source_hash: a463bed0951d33802dcdb3a7784406272ee206b731e9864ea020323e67b4d159
source_path: providers/stepfun.md
workflow: 15
---
# StepFun
OpenClaw zawiera dołączony plugin providera StepFun z dwoma identyfikatorami providerów:
OpenClaw zawiera dołączony Plugin dostawcy StepFun z dwoma identyfikatorami dostawców:
- `stepfun` dla standardowego endpointu
- `stepfun-plan` dla endpointu Step Plan
Wbudowane katalogi obecnie różnią się powierzchnią:
- Standard: `step-3.5-flash`
- Step Plan: `step-3.5-flash`, `step-3.5-flash-2603`
<Warning>
Standard i Step Plan to **oddzielni dostawcy** z różnymi endpointami i prefiksami referencji modeli (`stepfun/...` vs `stepfun-plan/...`). Używaj klucza China z endpointami `.com`, a klucza globalnego z endpointami `.ai`.
</Warning>
## Przegląd regionów i endpointów
- Chiński standardowy endpoint: `https://api.stepfun.com/v1`
- Globalny standardowy endpoint: `https://api.stepfun.ai/v1`
- Chiński endpoint Step Plan: `https://api.stepfun.com/step_plan/v1`
- Globalny endpoint Step Plan: `https://api.stepfun.ai/step_plan/v1`
- Zmienna env auth: `STEPFUN_API_KEY`
| Endpoint | Chiny (`.com`) | Globalny (`.ai`) |
| --------- | ------------------------------------- | ------------------------------------- |
| Standard | `https://api.stepfun.com/v1` | `https://api.stepfun.ai/v1` |
| Step Plan | `https://api.stepfun.com/step_plan/v1` | `https://api.stepfun.ai/step_plan/v1` |
Używaj chińskiego klucza z endpointami `.com`, a globalnego klucza z
endpointami `.ai`.
## Konfiguracja przez CLI
Konfiguracja interaktywna:
```bash
openclaw onboard
```
Wybierz jedną z tych opcji auth:
- `stepfun-standard-api-key-cn`
- `stepfun-standard-api-key-intl`
- `stepfun-plan-api-key-cn`
- `stepfun-plan-api-key-intl`
Przykłady nieinteraktywne:
```bash
openclaw onboard --auth-choice stepfun-standard-api-key-intl --stepfun-api-key "$STEPFUN_API_KEY"
openclaw onboard --auth-choice stepfun-plan-api-key-intl --stepfun-api-key "$STEPFUN_API_KEY"
```
## Referencje modeli
- Standardowy model domyślny: `stepfun/step-3.5-flash`
- Domyślny model Step Plan: `stepfun-plan/step-3.5-flash`
- Alternatywny model Step Plan: `stepfun-plan/step-3.5-flash-2603`
Zmienna środowiskowa uwierzytelniania: `STEPFUN_API_KEY`
## Wbudowane katalogi
Standard (`stepfun`):
| Referencja modelu | Kontekst | Maks. wyjście | Uwagi |
| ------------------------ | -------- | ------------- | -------------------------- |
| Ref modelu | Kontekst | Maks. wyjście | Uwagi |
| ------------------------ | -------- | ------------- | ------------------------ |
| `stepfun/step-3.5-flash` | 262,144 | 65,536 | Domyślny model standardowy |
Step Plan (`stepfun-plan`):
| Referencja modelu | Kontekst | Maks. wyjście | Uwagi |
| Ref modelu | Kontekst | Maks. wyjście | Uwagi |
| ---------------------------------- | -------- | ------------- | ---------------------------- |
| `stepfun-plan/step-3.5-flash` | 262,144 | 65,536 | Domyślny model Step Plan |
| `stepfun-plan/step-3.5-flash-2603` | 262,144 | 65,536 | Dodatkowy model Step Plan |
## Fragmenty konfiguracji
## Pierwsze kroki
Provider standardowy:
Wybierz powierzchnię dostawcy i wykonaj kroki konfiguracji.
```json5
{
env: { STEPFUN_API_KEY: "your-key" },
agents: { defaults: { model: { primary: "stepfun/step-3.5-flash" } } },
models: {
mode: "merge",
providers: {
stepfun: {
baseUrl: "https://api.stepfun.ai/v1",
api: "openai-completions",
apiKey: "${STEPFUN_API_KEY}",
models: [
{
id: "step-3.5-flash",
name: "Step 3.5 Flash",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 65536,
<Tabs>
<Tab title="Standard">
**Najlepsze dla:** ogólnego użycia przez standardowy endpoint StepFun.
<Steps>
<Step title="Wybierz region endpointu">
| Opcja uwierzytelniania | Endpoint | Region |
| -------------------------------- | ------------------------------ | -------------- |
| `stepfun-standard-api-key-intl` | `https://api.stepfun.ai/v1` | Międzynarodowy |
| `stepfun-standard-api-key-cn` | `https://api.stepfun.com/v1` | Chiny |
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice stepfun-standard-api-key-intl
```
Lub dla endpointu China:
```bash
openclaw onboard --auth-choice stepfun-standard-api-key-cn
```
</Step>
<Step title="Alternatywa nieinteraktywna">
```bash
openclaw onboard --auth-choice stepfun-standard-api-key-intl \
--stepfun-api-key "$STEPFUN_API_KEY"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider stepfun
```
</Step>
</Steps>
### Referencje modeli
- Model domyślny: `stepfun/step-3.5-flash`
</Tab>
<Tab title="Step Plan">
**Najlepsze dla:** endpointu rozumowania Step Plan.
<Steps>
<Step title="Wybierz region endpointu">
| Opcja uwierzytelniania | Endpoint | Region |
| ----------------------------- | -------------------------------------- | -------------- |
| `stepfun-plan-api-key-intl` | `https://api.stepfun.ai/step_plan/v1` | Międzynarodowy |
| `stepfun-plan-api-key-cn` | `https://api.stepfun.com/step_plan/v1` | Chiny |
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice stepfun-plan-api-key-intl
```
Lub dla endpointu China:
```bash
openclaw onboard --auth-choice stepfun-plan-api-key-cn
```
</Step>
<Step title="Alternatywa nieinteraktywna">
```bash
openclaw onboard --auth-choice stepfun-plan-api-key-intl \
--stepfun-api-key "$STEPFUN_API_KEY"
```
</Step>
<Step title="Sprawdź, czy modele są dostępne">
```bash
openclaw models list --provider stepfun-plan
```
</Step>
</Steps>
### Referencje modeli
- Model domyślny: `stepfun-plan/step-3.5-flash`
- Model alternatywny: `stepfun-plan/step-3.5-flash-2603`
</Tab>
</Tabs>
## Zaawansowane
<AccordionGroup>
<Accordion title="Pełna konfiguracja: dostawca Standard">
```json5
{
env: { STEPFUN_API_KEY: "your-key" },
agents: { defaults: { model: { primary: "stepfun/step-3.5-flash" } } },
models: {
mode: "merge",
providers: {
stepfun: {
baseUrl: "https://api.stepfun.ai/v1",
api: "openai-completions",
apiKey: "${STEPFUN_API_KEY}",
models: [
{
id: "step-3.5-flash",
name: "Step 3.5 Flash",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 65536,
},
],
},
],
},
},
},
},
}
```
}
```
</Accordion>
Provider Step Plan:
```json5
{
env: { STEPFUN_API_KEY: "your-key" },
agents: { defaults: { model: { primary: "stepfun-plan/step-3.5-flash" } } },
models: {
mode: "merge",
providers: {
"stepfun-plan": {
baseUrl: "https://api.stepfun.ai/step_plan/v1",
api: "openai-completions",
apiKey: "${STEPFUN_API_KEY}",
models: [
{
id: "step-3.5-flash",
name: "Step 3.5 Flash",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 65536,
<Accordion title="Pełna konfiguracja: dostawca Step Plan">
```json5
{
env: { STEPFUN_API_KEY: "your-key" },
agents: { defaults: { model: { primary: "stepfun-plan/step-3.5-flash" } } },
models: {
mode: "merge",
providers: {
"stepfun-plan": {
baseUrl: "https://api.stepfun.ai/step_plan/v1",
api: "openai-completions",
apiKey: "${STEPFUN_API_KEY}",
models: [
{
id: "step-3.5-flash",
name: "Step 3.5 Flash",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 65536,
},
{
id: "step-3.5-flash-2603",
name: "Step 3.5 Flash 2603",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 65536,
},
],
},
{
id: "step-3.5-flash-2603",
name: "Step 3.5 Flash 2603",
reasoning: true,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 262144,
maxTokens: 65536,
},
],
},
},
},
},
}
```
}
```
</Accordion>
## Uwagi
<Accordion title="Uwagi">
- Dostawca jest dołączony do OpenClaw, więc nie ma osobnego kroku instalacji Pluginu.
- `step-3.5-flash-2603` jest obecnie udostępniany tylko przez `stepfun-plan`.
- Jeden przepływ uwierzytelniania zapisuje profile dopasowane do regionu zarówno dla `stepfun`, jak i `stepfun-plan`, dzięki czemu obie powierzchnie mogą być wykrywane razem.
- Użyj `openclaw models list` oraz `openclaw models set <provider/model>`, aby sprawdzać lub przełączać modele.
</Accordion>
</AccordionGroup>
- Provider jest dołączony do OpenClaw, więc nie ma osobnego kroku instalacji pluginu.
- `step-3.5-flash-2603` jest obecnie udostępniany tylko w `stepfun-plan`.
- Jeden przepływ auth zapisuje profile dopasowane do regionu zarówno dla `stepfun`, jak i `stepfun-plan`, dzięki czemu obie powierzchnie mogą być wykrywane razem.
- Użyj `openclaw models list` oraz `openclaw models set <provider/model>`, aby sprawdzić lub przełączyć modele.
- Szerszy przegląd providerów znajdziesz w [Model providers](/concepts/model-providers).
<Note>
Szerszy przegląd dostawców znajdziesz w [Model providers](/pl/concepts/model-providers).
</Note>
## Powiązane
<CardGroup cols={2}>
<Card title="Model providers" href="/pl/concepts/model-providers" icon="layers">
Przegląd wszystkich dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Configuration reference" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji dostawców, modeli i Pluginów.
</Card>
<Card title="Model selection" href="/pl/concepts/models" icon="brain">
Jak wybierać i konfigurować modele.
</Card>
<Card title="StepFun Platform" href="https://platform.stepfun.com" icon="globe">
Zarządzanie kluczami API StepFun i dokumentacja.
</Card>
</CardGroup>

View File

@ -1,37 +1,56 @@
---
read_when:
- Chcesz używać Synthetic jako dostawcy modeli
- Potrzebujesz klucza API Synthetic albo konfiguracji base URL
- Potrzebujesz konfiguracji klucza API lub bazowego URL-a Synthetic
summary: Używaj zgodnego z Anthropic API Synthetic w OpenClaw
title: Synthetic
x-i18n:
generated_at: "2026-04-05T14:03:49Z"
generated_at: "2026-04-12T23:33:16Z"
model: gpt-5.4
provider: openai
source_hash: 3495bca5cb134659cf6c54e31fa432989afe0cc04f53cf3e3146ce80a5e8af49
source_hash: 1c4d2c6635482e09acaf603a75c8a85f0782e42a4a68ef6166f423a48d184ffa
source_path: providers/synthetic.md
workflow: 15
---
# Synthetic
Synthetic udostępnia endpointy zgodne z Anthropic. OpenClaw rejestruje go jako
dostawcę `synthetic` i używa API Anthropic Messages.
[Synthetic](https://synthetic.new) udostępnia punkty końcowe zgodne z Anthropic.
OpenClaw rejestruje go jako dostawcę `synthetic` i używa
Anthropic Messages API.
## Szybka konfiguracja
| Właściwość | Wartość |
| ---------- | ------------------------------------- |
| Dostawca | `synthetic` |
| Uwierzytelnianie | `SYNTHETIC_API_KEY` |
| API | Anthropic Messages |
| Bazowy URL | `https://api.synthetic.new/anthropic` |
1. Ustaw `SYNTHETIC_API_KEY` (albo uruchom kreator poniżej).
2. Uruchom onboarding:
## Pierwsze kroki
```bash
openclaw onboard --auth-choice synthetic-api-key
```
<Steps>
<Step title="Pobierz klucz API">
Uzyskaj `SYNTHETIC_API_KEY` ze swojego konta Synthetic lub pozwól,
aby kreator onboardingu poprosił cię o jego podanie.
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice synthetic-api-key
```
</Step>
<Step title="Sprawdź model domyślny">
Po onboardingu domyślny model jest ustawiony na:
```
synthetic/hf:MiniMaxAI/MiniMax-M2.5
```
</Step>
</Steps>
Domyślny model jest ustawiany na:
```
synthetic/hf:MiniMaxAI/MiniMax-M2.5
```
<Warning>
Klient Anthropic w OpenClaw automatycznie dodaje `/v1` do bazowego URL-a, więc użyj
`https://api.synthetic.new/anthropic` (nie `/anthropic/v1`). Jeśli Synthetic
zmieni swój bazowy URL, nadpisz `models.providers.synthetic.baseUrl`.
</Warning>
## Przykład konfiguracji
@ -68,41 +87,77 @@ synthetic/hf:MiniMaxAI/MiniMax-M2.5
}
```
Uwaga: klient Anthropic w OpenClaw dopisuje `/v1` do base URL, więc używaj
`https://api.synthetic.new/anthropic` (a nie `/anthropic/v1`). Jeśli Synthetic zmieni
swój base URL, nadpisz `models.providers.synthetic.baseUrl`.
## Katalog modeli
Wszystkie poniższe modele używają kosztu `0` (input/output/cache).
Wszystkie modele Synthetic używają kosztu `0` (wejście/wyjście/cache).
| Model ID | Okno kontekstu | Maks. tokenów | Reasoning | Input |
| ------------------------------------------------------ | -------------- | ------------- | --------- | ------------ |
| `hf:MiniMaxAI/MiniMax-M2.5` | 192000 | 65536 | false | text |
| `hf:moonshotai/Kimi-K2-Thinking` | 256000 | 8192 | true | text |
| `hf:zai-org/GLM-4.7` | 198000 | 128000 | false | text |
| `hf:deepseek-ai/DeepSeek-R1-0528` | 128000 | 8192 | false | text |
| `hf:deepseek-ai/DeepSeek-V3-0324` | 128000 | 8192 | false | text |
| `hf:deepseek-ai/DeepSeek-V3.1` | 128000 | 8192 | false | text |
| `hf:deepseek-ai/DeepSeek-V3.1-Terminus` | 128000 | 8192 | false | text |
| `hf:deepseek-ai/DeepSeek-V3.2` | 159000 | 8192 | false | text |
| `hf:meta-llama/Llama-3.3-70B-Instruct` | 128000 | 8192 | false | text |
| `hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8` | 524000 | 8192 | false | text |
| `hf:moonshotai/Kimi-K2-Instruct-0905` | 256000 | 8192 | false | text |
| `hf:moonshotai/Kimi-K2.5` | 256000 | 8192 | true | text + image |
| `hf:openai/gpt-oss-120b` | 128000 | 8192 | false | text |
| `hf:Qwen/Qwen3-235B-A22B-Instruct-2507` | 256000 | 8192 | false | text |
| `hf:Qwen/Qwen3-Coder-480B-A35B-Instruct` | 256000 | 8192 | false | text |
| `hf:Qwen/Qwen3-VL-235B-A22B-Instruct` | 250000 | 8192 | false | text + image |
| `hf:zai-org/GLM-4.5` | 128000 | 128000 | false | text |
| `hf:zai-org/GLM-4.6` | 198000 | 128000 | false | text |
| `hf:zai-org/GLM-5` | 256000 | 128000 | true | text + image |
| `hf:deepseek-ai/DeepSeek-V3` | 128000 | 8192 | false | text |
| `hf:Qwen/Qwen3-235B-A22B-Thinking-2507` | 256000 | 8192 | true | text |
| Id modelu | Okno kontekstu | Maks. tokenów | Rozumowanie | Wejście |
| ------------------------------------------------------ | -------------- | ------------- | ----------- | ------------- |
| `hf:MiniMaxAI/MiniMax-M2.5` | 192,000 | 65,536 | nie | tekst |
| `hf:moonshotai/Kimi-K2-Thinking` | 256,000 | 8,192 | tak | tekst |
| `hf:zai-org/GLM-4.7` | 198,000 | 128,000 | nie | tekst |
| `hf:deepseek-ai/DeepSeek-R1-0528` | 128,000 | 8,192 | nie | tekst |
| `hf:deepseek-ai/DeepSeek-V3-0324` | 128,000 | 8,192 | nie | tekst |
| `hf:deepseek-ai/DeepSeek-V3.1` | 128,000 | 8,192 | nie | tekst |
| `hf:deepseek-ai/DeepSeek-V3.1-Terminus` | 128,000 | 8,192 | nie | tekst |
| `hf:deepseek-ai/DeepSeek-V3.2` | 159,000 | 8,192 | nie | tekst |
| `hf:meta-llama/Llama-3.3-70B-Instruct` | 128,000 | 8,192 | nie | tekst |
| `hf:meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8` | 524,000 | 8,192 | nie | tekst |
| `hf:moonshotai/Kimi-K2-Instruct-0905` | 256,000 | 8,192 | nie | tekst |
| `hf:moonshotai/Kimi-K2.5` | 256,000 | 8,192 | tak | tekst + obraz |
| `hf:openai/gpt-oss-120b` | 128,000 | 8,192 | nie | tekst |
| `hf:Qwen/Qwen3-235B-A22B-Instruct-2507` | 256,000 | 8,192 | nie | tekst |
| `hf:Qwen/Qwen3-Coder-480B-A35B-Instruct` | 256,000 | 8,192 | nie | tekst |
| `hf:Qwen/Qwen3-VL-235B-A22B-Instruct` | 250,000 | 8,192 | nie | tekst + obraz |
| `hf:zai-org/GLM-4.5` | 128,000 | 128,000 | nie | tekst |
| `hf:zai-org/GLM-4.6` | 198,000 | 128,000 | nie | tekst |
| `hf:zai-org/GLM-5` | 256,000 | 128,000 | tak | tekst + obraz |
| `hf:deepseek-ai/DeepSeek-V3` | 128,000 | 8,192 | nie | tekst |
| `hf:Qwen/Qwen3-235B-A22B-Thinking-2507` | 256,000 | 8,192 | tak | tekst |
## Uwagi
<Tip>
Odwołania do modeli mają postać `synthetic/<modelId>`. Użyj
`openclaw models list --provider synthetic`, aby zobaczyć wszystkie modele dostępne na twoim
koncie.
</Tip>
- Referencje modeli używają formatu `synthetic/<modelId>`.
- Jeśli włączysz allowlistę modeli (`agents.defaults.models`), dodaj każdy model,
którego planujesz używać.
- Zobacz [Model providers](/concepts/model-providers), aby poznać zasady dotyczące dostawców.
<AccordionGroup>
<Accordion title="Allowlista modeli">
Jeśli włączysz allowlistę modeli (`agents.defaults.models`), dodaj każdy
model Synthetic, którego planujesz używać. Modele nieobecne na allowliście będą ukryte
przed agentem.
</Accordion>
<Accordion title="Nadpisanie bazowego URL-a">
Jeśli Synthetic zmieni swój punkt końcowy API, nadpisz bazowy URL w konfiguracji:
```json5
{
models: {
providers: {
synthetic: {
baseUrl: "https://new-api.synthetic.new/anthropic",
},
},
},
}
```
Pamiętaj, że OpenClaw automatycznie dodaje `/v1`.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Zasady dostawców, odwołania do modeli i zachowanie failover.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji, w tym ustawienia dostawców.
</Card>
<Card title="Synthetic" href="https://synthetic.new" icon="arrow-up-right-from-square">
Panel Synthetic i dokumentacja API.
</Card>
</CardGroup>

View File

@ -1,48 +1,56 @@
---
read_when:
- Chcesz używać Together AI z OpenClaw
- Potrzebujesz zmiennej środowiskowej klucza API lub opcji uwierzytelniania w CLI
- Potrzebujesz zmiennej środowiskowej z kluczem API albo opcji uwierzytelniania w CLI
summary: Konfiguracja Together AI (uwierzytelnianie + wybór modelu)
title: Together AI
x-i18n:
generated_at: "2026-04-06T03:11:57Z"
generated_at: "2026-04-12T23:33:16Z"
model: gpt-5.4
provider: openai
source_hash: b68fdc15bfcac8d59e3e0c06a39162abd48d9d41a9a64a0ac622cd8e3f80a595
source_hash: 33531a1646443ac2e46ee1fbfbb60ec71093611b022618106e8e5435641680ac
source_path: providers/together.md
workflow: 15
---
# Together AI
[Together AI](https://together.ai) zapewnia dostęp do czołowych modeli open source, w tym Llama, DeepSeek, Kimi i innych, przez ujednolicone API.
[Together AI](https://together.ai) zapewnia dostęp do czołowych modeli
open-source, w tym Llama, DeepSeek, Kimi i innych, przez ujednolicone API.
- Dostawca: `together`
- Uwierzytelnianie: `TOGETHER_API_KEY`
- API: zgodne z OpenAI
- Bazowy URL: `https://api.together.xyz/v1`
| Właściwość | Wartość |
| ---------- | ---------------------------- |
| Dostawca | `together` |
| Uwierzytelnianie | `TOGETHER_API_KEY` |
| API | Zgodne z OpenAI |
| Bazowy URL | `https://api.together.xyz/v1` |
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API (zalecane: zapisz go dla Gateway):
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API na
[api.together.ai/settings/api-keys](https://api.together.ai/settings/api-keys).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice together-api-key
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "together/moonshotai/Kimi-K2.5" },
},
},
}
```
</Step>
</Steps>
```bash
openclaw onboard --auth-choice together-api-key
```
2. Ustaw model domyślny:
```json5
{
agents: {
defaults: {
model: { primary: "together/moonshotai/Kimi-K2.5" },
},
},
}
```
## Przykład nieinteraktywny
### Przykład nieinteraktywny
```bash
openclaw onboard --non-interactive \
@ -51,39 +59,36 @@ openclaw onboard --non-interactive \
--together-api-key "$TOGETHER_API_KEY"
```
Spowoduje to ustawienie `together/moonshotai/Kimi-K2.5` jako modelu domyślnego.
## Uwaga dotycząca środowiska
Jeśli Gateway działa jako demon (`launchd/systemd`), upewnij się, że `TOGETHER_API_KEY`
jest dostępne dla tego procesu (na przykład w `~/.openclaw/.env` albo przez
`env.shellEnv`).
<Note>
Preset onboardingu ustawia `together/moonshotai/Kimi-K2.5` jako model
domyślny.
</Note>
## Wbudowany katalog
OpenClaw obecnie dostarcza ten wbudowany katalog Together:
OpenClaw zawiera ten dołączony katalog Together:
| Model ref | Nazwa | Wejście | Kontekst | Uwagi |
| ------------------------------------------------------------ | -------------------------------------- | ----------- | ---------- | -------------------------------- |
| `together/moonshotai/Kimi-K2.5` | Kimi K2.5 | tekst, obraz | 262,144 | Model domyślny; reasoning włączony |
| `together/zai-org/GLM-4.7` | GLM 4.7 Fp8 | tekst | 202,752 | Model tekstowy ogólnego przeznaczenia |
| `together/meta-llama/Llama-3.3-70B-Instruct-Turbo` | Llama 3.3 70B Instruct Turbo | tekst | 131,072 | Szybki model instrukcyjny |
| `together/meta-llama/Llama-4-Scout-17B-16E-Instruct` | Llama 4 Scout 17B 16E Instruct | tekst, obraz | 10,000,000 | Multimodalny |
| `together/meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8` | Llama 4 Maverick 17B 128E Instruct FP8 | tekst, obraz | 20,000,000 | Multimodalny |
| `together/deepseek-ai/DeepSeek-V3.1` | DeepSeek V3.1 | tekst | 131,072 | Ogólny model tekstowy |
| `together/deepseek-ai/DeepSeek-R1` | DeepSeek R1 | tekst | 131,072 | Model reasoning |
| `together/moonshotai/Kimi-K2-Instruct-0905` | Kimi K2-Instruct 0905 | tekst | 262,144 | Dodatkowy model tekstowy Kimi |
Preset onboardingu ustawia `together/moonshotai/Kimi-K2.5` jako model domyślny.
| Odwołanie modelu | Nazwa | Wejście | Kontekst | Uwagi |
| ---------------------------------------------------------- | -------------------------------------- | ----------- | ---------- | -------------------------------- |
| `together/moonshotai/Kimi-K2.5` | Kimi K2.5 | text, image | 262,144 | Model domyślny; reasoning włączone |
| `together/zai-org/GLM-4.7` | GLM 4.7 Fp8 | text | 202,752 | Model tekstowy ogólnego przeznaczenia |
| `together/meta-llama/Llama-3.3-70B-Instruct-Turbo` | Llama 3.3 70B Instruct Turbo | text | 131,072 | Szybki model instrukcyjny |
| `together/meta-llama/Llama-4-Scout-17B-16E-Instruct` | Llama 4 Scout 17B 16E Instruct | text, image | 10,000,000 | Multimodalny |
| `together/meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8` | Llama 4 Maverick 17B 128E Instruct FP8 | text, image | 20,000,000 | Multimodalny |
| `together/deepseek-ai/DeepSeek-V3.1` | DeepSeek V3.1 | text | 131,072 | Ogólny model tekstowy |
| `together/deepseek-ai/DeepSeek-R1` | DeepSeek R1 | text | 131,072 | Model reasoning |
| `together/moonshotai/Kimi-K2-Instruct-0905` | Kimi K2-Instruct 0905 | text | 262,144 | Dodatkowy model tekstowy Kimi |
## Generowanie wideo
Wbudowany plugin `together` rejestruje także generowanie wideo przez
Dołączony Plugin `together` rejestruje również generowanie wideo przez
współdzielone narzędzie `video_generate`.
- Domyślny model wideo: `together/Wan-AI/Wan2.2-T2V-A14B`
- Tryby: text-to-video oraz przepływy z pojedynczym obrazem referencyjnym
- Obsługuje `aspectRatio` i `resolution`
| Właściwość | Wartość |
| ------------------- | ------------------------------------ |
| Domyślny model wideo| `together/Wan-AI/Wan2.2-T2V-A14B` |
| Tryby | tekst na wideo, referencja pojedynczego obrazu |
| Obsługiwane parametry | `aspectRatio`, `resolution` |
Aby używać Together jako domyślnego dostawcy wideo:
@ -99,5 +104,46 @@ Aby używać Together jako domyślnego dostawcy wideo:
}
```
Zobacz [Generowanie wideo](/tools/video-generation), aby poznać współdzielone
parametry narzędzia, wybór dostawcy i zachowanie failover.
<Tip>
Zobacz [Generowanie wideo](/pl/tools/video-generation), aby poznać wspólne parametry narzędzia,
wybór dostawcy i zachowanie failover.
</Tip>
<AccordionGroup>
<Accordion title="Uwaga o środowisku">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że
`TOGETHER_API_KEY` jest dostępne dla tego procesu (na przykład w
`~/.openclaw/.env` albo przez `env.shellEnv`).
<Warning>
Klucze ustawione tylko w Twojej interaktywnej powłoce nie są widoczne dla
procesów gateway zarządzanych przez demona. Użyj `~/.openclaw/.env` albo konfiguracji `env.shellEnv`, aby
zapewnić trwałą dostępność.
</Warning>
</Accordion>
<Accordion title="Rozwiązywanie problemów">
- Sprawdź, czy Twój klucz działa: `openclaw models list --provider together`
- Jeśli modele się nie pojawiają, potwierdź, że klucz API jest ustawiony we właściwym
środowisku dla procesu Gateway.
- Odwołania do modeli mają postać `together/<model-id>`.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Dostawcy modeli" href="/pl/concepts/model-providers" icon="layers">
Zasady dostawców, odwołania do modeli i zachowanie failover.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Wspólne parametry narzędzia generowania wideo i wybór dostawcy.
</Card>
<Card title="Referencja konfiguracji" href="/pl/gateway/configuration-reference" icon="gear">
Pełny schemat konfiguracji, w tym ustawienia dostawców.
</Card>
<Card title="Together AI" href="https://together.ai" icon="arrow-up-right-from-square">
Dashboard Together AI, dokumentacja API i cennik.
</Card>
</CardGroup>

View File

@ -1,104 +1,108 @@
---
read_when:
- Chcesz korzystać z inferencji nastawionej na prywatność w OpenClaw
- Chcesz uzyskać wskazówki konfiguracji Venice AI
summary: Używanie modeli Venice AI nastawionych na prywatność w OpenClaw
- Chcesz korzystać z inferencji skoncentrowanej na prywatności w OpenClaw
- Potrzebujesz wskazówek dotyczących konfiguracji Venice AI
summary: Używanie modeli Venice AI skoncentrowanych na prywatności w OpenClaw
title: Venice AI
x-i18n:
generated_at: "2026-04-05T14:04:37Z"
generated_at: "2026-04-12T23:33:17Z"
model: gpt-5.4
provider: openai
source_hash: 53313e45e197880feb7e90764ee8fd6bb7f5fd4fe03af46b594201c77fbc8eab
source_hash: 6f8005edb1d7781316ce8b5432bf4f9375c16113594a2a588912dce82234a9e5
source_path: providers/venice.md
workflow: 15
---
# Venice AI (wyróżniona konfiguracja Venice)
# Venice AI
**Venice** to nasza wyróżniona konfiguracja Venice do inferencji nastawionej na prywatność, z opcjonalnym anonimizowanym dostępem do modeli własnościowych.
Venice AI zapewnia inferencję AI skoncentrowaną na prywatności, z obsługą modeli bez cenzury i dostępem do głównych modeli własnościowych przez ich anonimizowane proxy. Cała inferencja jest domyślnie prywatna — brak trenowania na Twoich danych, brak logowania.
Venice AI zapewnia **inferencję AI skoncentrowaną na prywatności** z obsługą nieocenzurowanych modeli oraz dostępem do głównych modeli zamkniętych przez ich anonimizujące proxy. Cała inferencja jest domyślnie prywatna — bez trenowania na Twoich danych i bez logowania.
## Dlaczego Venice w OpenClaw
- **Prywatna inferencja** dla modeli open source (bez logowania).
- **Modele bez cenzury**, gdy ich potrzebujesz.
- **Anonimizowany dostęp** do modeli własnościowych (Opus/GPT/Gemini), gdy liczy się jakość.
- **Nieocenzurowane modele**, gdy ich potrzebujesz.
- **Anonimizowany dostęp** do modeli zamkniętych (Opus/GPT/Gemini), gdy liczy się jakość.
- Endpointy `/v1` zgodne z OpenAI.
## Tryby prywatności
Venice oferuje dwa poziomy prywatności — zrozumienie tego ma kluczowe znaczenie przy wyborze modelu:
Venice oferuje dwa poziomy prywatności — zrozumienie tej różnicy jest kluczowe przy wyborze modelu:
| Tryb | Opis | Modele |
| -------------- | --------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| **Prywatny** | W pełni prywatny. Prompty/odpowiedzi **nigdy nie są przechowywane ani logowane**. Efemeryczny. | Llama, Qwen, DeepSeek, Kimi, MiniMax, Venice Uncensored itd. |
| **Anonimizowany** | Przekazywany przez Venice z usuniętymi metadanymi. Bazowy dostawca (OpenAI, Anthropic, Google, xAI) widzi anonimizowane żądania. | Claude, GPT, Gemini, Grok |
| Tryb | Opis | Modele |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| **Prywatny** | W pełni prywatny. Prompty/odpowiedzi **nigdy nie są przechowywane ani logowane**. Efemeryczny. | Llama, Qwen, DeepSeek, Kimi, MiniMax, Venice Uncensored itd. |
| **Anonimizowany** | Przekazywany przez Venice z usuniętymi metadanymi. Bazowy dostawca (OpenAI, Anthropic, Google, xAI) widzi zanonimizowane żądania. | Claude, GPT, Gemini, Grok |
<Warning>
Modele anonimizowane **nie są** w pełni prywatne. Venice usuwa metadane przed przekazaniem dalej, ale bazowy dostawca (OpenAI, Anthropic, Google, xAI) nadal przetwarza żądanie. Wybieraj modele **Prywatne**, gdy wymagana jest pełna prywatność.
</Warning>
## Funkcje
- **Nastawienie na prywatność**: wybór między trybami „private” (w pełni prywatny) i „anonymized” (przez proxy)
- **Modele bez cenzury**: dostęp do modeli bez ograniczeń treści
- **Dostęp do głównych modeli**: używanie Claude, GPT, Gemini i Grok przez anonimizowane proxy Venice
- **Podejście skoncentrowane na prywatności**: wybór między trybami „prywatnym” (w pełni prywatny) i „anonimizowanym” (przez proxy)
- **Nieocenzurowane modele**: dostęp do modeli bez ograniczeń treści
- **Dostęp do głównych modeli**: używaj Claude, GPT, Gemini i Grok przez anonimizujące proxy Venice
- **API zgodne z OpenAI**: standardowe endpointy `/v1` dla łatwej integracji
- **Strumieniowanie**: ✅ obsługiwane we wszystkich modelach
- **Wywoływanie funkcji**: ✅ obsługiwane w wybranych modelach (sprawdź możliwości modelu)
- **Vision**: ✅ obsługiwane w modelach z funkcją vision
- **Brak sztywnych limitów szybkości**: przy skrajnym użyciu może być stosowane ograniczanie fair-use
- **Streaming**: obsługiwany we wszystkich modelach
- **Function calling**: obsługiwane w wybranych modelach (sprawdź możliwości modelu)
- **Vision**: obsługiwane w modelach z możliwością vision
- **Brak twardych limitów szybkości**: przy skrajnym użyciu może obowiązywać dławienie fair-use
## Konfiguracja
## Pierwsze kroki
### 1. Pobierz klucz API
<Steps>
<Step title="Pobierz swój klucz API">
1. Zarejestruj się na [venice.ai](https://venice.ai)
2. Przejdź do **Settings > API Keys > Create new key**
3. Skopiuj swój klucz API (format: `vapi_xxxxxxxxxxxx`)
</Step>
<Step title="Skonfiguruj OpenClaw">
Wybierz preferowaną metodę konfiguracji:
1. Zarejestruj się na [venice.ai](https://venice.ai)
2. Przejdź do **Settings → API Keys → Create new key**
3. Skopiuj swój klucz API (format: `vapi_xxxxxxxxxxxx`)
<Tabs>
<Tab title="Interaktywnie (zalecane)">
```bash
openclaw onboard --auth-choice venice-api-key
```
### 2. Skonfiguruj OpenClaw
To:
1. Poprosi o Twój klucz API (lub użyje istniejącego `VENICE_API_KEY`)
2. Pokaże wszystkie dostępne modele Venice
3. Pozwoli wybrać domyślny model
4. Automatycznie skonfiguruje dostawcę
</Tab>
<Tab title="Zmienna środowiskowa">
```bash
export VENICE_API_KEY="vapi_xxxxxxxxxxxx"
```
</Tab>
<Tab title="Nieinteraktywnie">
```bash
openclaw onboard --non-interactive \
--auth-choice venice-api-key \
--venice-api-key "vapi_xxxxxxxxxxxx"
```
</Tab>
</Tabs>
**Opcja A: zmienna środowiskowa**
```bash
export VENICE_API_KEY="vapi_xxxxxxxxxxxx"
```
**Opcja B: konfiguracja interaktywna (zalecane)**
```bash
openclaw onboard --auth-choice venice-api-key
```
Spowoduje to:
1. Wyświetlenie prośby o klucz API (lub użycie istniejącego `VENICE_API_KEY`)
2. Pokazanie wszystkich dostępnych modeli Venice
3. Umożliwienie wyboru modelu domyślnego
4. Automatyczne skonfigurowanie dostawcy
**Opcja C: tryb nieinteraktywny**
```bash
openclaw onboard --non-interactive \
--auth-choice venice-api-key \
--venice-api-key "vapi_xxxxxxxxxxxx"
```
### 3. Zweryfikuj konfigurację
```bash
openclaw agent --model venice/kimi-k2-5 --message "Hello, are you working?"
```
</Step>
<Step title="Zweryfikuj konfigurację">
```bash
openclaw agent --model venice/kimi-k2-5 --message "Hello, are you working?"
```
</Step>
</Steps>
## Wybór modelu
Po konfiguracji OpenClaw pokazuje wszystkie dostępne modele Venice. Wybierz według swoich potrzeb:
Po konfiguracji OpenClaw pokazuje wszystkie dostępne modele Venice. Wybierz je zależnie od swoich potrzeb:
- **Model domyślny**: `venice/kimi-k2-5` dla silnego prywatnego reasoning oraz vision.
- **Opcja o wysokich możliwościach**: `venice/claude-opus-4-6` dla najmocniejszej anonimizowanej ścieżki Venice.
- **Model domyślny**: `venice/kimi-k2-5` dla mocnego prywatnego rozumowania plus vision.
- **Opcja o najwyższych możliwościach**: `venice/claude-opus-4-6` dla najmocniejszej anonimizowanej ścieżki Venice.
- **Prywatność**: wybieraj modele „private” dla w pełni prywatnej inferencji.
- **Możliwości**: wybieraj modele „anonymized”, aby uzyskać dostęp do Claude, GPT, Gemini przez proxy Venice.
- **Możliwości**: wybieraj modele „anonymized”, aby uzyskać dostęp do Claude, GPT i Gemini przez proxy Venice.
W dowolnym momencie zmień model domyślny:
W każdej chwili możesz zmienić swój domyślny model:
```bash
openclaw models set venice/kimi-k2-5
@ -111,107 +115,108 @@ Wyświetl wszystkie dostępne modele:
openclaw models list | grep venice
```
## Konfiguracja przez `openclaw configure`
Możesz też uruchomić `openclaw configure`, wybrać **Model/auth** i następnie **Venice AI**.
1. Uruchom `openclaw configure`
2. Wybierz **Model/auth**
3. Wybierz **Venice AI**
<Tip>
Użyj poniższej tabeli, aby wybrać właściwy model do swojego zastosowania.
## Którego modelu powinienem używać?
| Przypadek użycia | Zalecany model | Dlaczego |
| --------------------------- | -------------------------------- | --------------------------------------------- |
| **Ogólny czat (domyślnie)** | `kimi-k2-5` | Silny prywatny reasoning oraz vision |
| **Najlepsza ogólna jakość** | `claude-opus-4-6` | Najmocniejsza anonimizowana opcja Venice |
| Zastosowanie | Zalecany model | Dlaczego |
| --------------------------- | -------------------------------- | -------------------------------------------- |
| **Ogólny czat (domyślnie)** | `kimi-k2-5` | Mocne prywatne rozumowanie plus vision |
| **Najlepsza ogólna jakość** | `claude-opus-4-6` | Najmocniejsza anonimizowana opcja Venice |
| **Prywatność + kodowanie** | `qwen3-coder-480b-a35b-instruct` | Prywatny model do kodowania z dużym kontekstem |
| **Prywatne vision** | `kimi-k2-5` | Obsługa vision bez opuszczania trybu prywatnego |
| **Szybko i tanio** | `qwen3-4b` | Lekki model reasoning |
| **Złożone prywatne zadania**| `deepseek-v3.2` | Silny reasoning, ale bez obsługi narzędzi Venice |
| **Bez cenzury** | `venice-uncensored` | Brak ograniczeń treści |
| **Szybko i tanio** | `qwen3-4b` | Lekki model rozumujący |
| **Złożone zadania prywatne**| `deepseek-v3.2` | Mocne rozumowanie, ale bez obsługi narzędzi Venice |
| **Nieocenzurowany** | `venice-uncensored` | Bez ograniczeń treści |
</Tip>
## Dostępne modele (łącznie 41)
### Modele prywatne (26) — w pełni prywatne, bez logowania
<AccordionGroup>
<Accordion title="Modele prywatne (26) — w pełni prywatne, bez logowania">
| ID modelu | Nazwa | Kontekst | Funkcje |
| -------------------------------------- | ----------------------------------- | -------- | -------------------------- |
| `kimi-k2-5` | Kimi K2.5 | 256k | Domyślny, rozumowanie, vision |
| `kimi-k2-thinking` | Kimi K2 Thinking | 256k | Rozumowanie |
| `llama-3.3-70b` | Llama 3.3 70B | 128k | Ogólne |
| `llama-3.2-3b` | Llama 3.2 3B | 128k | Ogólne |
| `hermes-3-llama-3.1-405b` | Hermes 3 Llama 3.1 405B | 128k | Ogólne, narzędzia wyłączone |
| `qwen3-235b-a22b-thinking-2507` | Qwen3 235B Thinking | 128k | Rozumowanie |
| `qwen3-235b-a22b-instruct-2507` | Qwen3 235B Instruct | 128k | Ogólne |
| `qwen3-coder-480b-a35b-instruct` | Qwen3 Coder 480B | 256k | Kodowanie |
| `qwen3-coder-480b-a35b-instruct-turbo` | Qwen3 Coder 480B Turbo | 256k | Kodowanie |
| `qwen3-5-35b-a3b` | Qwen3.5 35B A3B | 256k | Rozumowanie, vision |
| `qwen3-next-80b` | Qwen3 Next 80B | 256k | Ogólne |
| `qwen3-vl-235b-a22b` | Qwen3 VL 235B (Vision) | 256k | Vision |
| `qwen3-4b` | Venice Small (Qwen3 4B) | 32k | Szybki, rozumowanie |
| `deepseek-v3.2` | DeepSeek V3.2 | 160k | Rozumowanie, narzędzia wyłączone |
| `venice-uncensored` | Venice Uncensored (Dolphin-Mistral) | 32k | Nieocenzurowany, narzędzia wyłączone |
| `mistral-31-24b` | Venice Medium (Mistral) | 128k | Vision |
| `google-gemma-3-27b-it` | Google Gemma 3 27B Instruct | 198k | Vision |
| `openai-gpt-oss-120b` | OpenAI GPT OSS 120B | 128k | Ogólne |
| `nvidia-nemotron-3-nano-30b-a3b` | NVIDIA Nemotron 3 Nano 30B | 128k | Ogólne |
| `olafangensan-glm-4.7-flash-heretic` | GLM 4.7 Flash Heretic | 128k | Rozumowanie |
| `zai-org-glm-4.6` | GLM 4.6 | 198k | Ogólne |
| `zai-org-glm-4.7` | GLM 4.7 | 198k | Rozumowanie |
| `zai-org-glm-4.7-flash` | GLM 4.7 Flash | 128k | Rozumowanie |
| `zai-org-glm-5` | GLM 5 | 198k | Rozumowanie |
| `minimax-m21` | MiniMax M2.1 | 198k | Rozumowanie |
| `minimax-m25` | MiniMax M2.5 | 198k | Rozumowanie |
</Accordion>
| Model ID | Nazwa | Kontekst | Funkcje |
| -------------------------------------- | ----------------------------------- | -------- | -------------------------- |
| `kimi-k2-5` | Kimi K2.5 | 256k | Domyślny, reasoning, vision |
| `kimi-k2-thinking` | Kimi K2 Thinking | 256k | Reasoning |
| `llama-3.3-70b` | Llama 3.3 70B | 128k | Ogólne |
| `llama-3.2-3b` | Llama 3.2 3B | 128k | Ogólne |
| `hermes-3-llama-3.1-405b` | Hermes 3 Llama 3.1 405B | 128k | Ogólne, narzędzia wyłączone |
| `qwen3-235b-a22b-thinking-2507` | Qwen3 235B Thinking | 128k | Reasoning |
| `qwen3-235b-a22b-instruct-2507` | Qwen3 235B Instruct | 128k | Ogólne |
| `qwen3-coder-480b-a35b-instruct` | Qwen3 Coder 480B | 256k | Kodowanie |
| `qwen3-coder-480b-a35b-instruct-turbo` | Qwen3 Coder 480B Turbo | 256k | Kodowanie |
| `qwen3-5-35b-a3b` | Qwen3.5 35B A3B | 256k | Reasoning, vision |
| `qwen3-next-80b` | Qwen3 Next 80B | 256k | Ogólne |
| `qwen3-vl-235b-a22b` | Qwen3 VL 235B (Vision) | 256k | Vision |
| `qwen3-4b` | Venice Small (Qwen3 4B) | 32k | Szybki, reasoning |
| `deepseek-v3.2` | DeepSeek V3.2 | 160k | Reasoning, narzędzia wyłączone |
| `venice-uncensored` | Venice Uncensored (Dolphin-Mistral) | 32k | Bez cenzury, narzędzia wyłączone |
| `mistral-31-24b` | Venice Medium (Mistral) | 128k | Vision |
| `google-gemma-3-27b-it` | Google Gemma 3 27B Instruct | 198k | Vision |
| `openai-gpt-oss-120b` | OpenAI GPT OSS 120B | 128k | Ogólne |
| `nvidia-nemotron-3-nano-30b-a3b` | NVIDIA Nemotron 3 Nano 30B | 128k | Ogólne |
| `olafangensan-glm-4.7-flash-heretic` | GLM 4.7 Flash Heretic | 128k | Reasoning |
| `zai-org-glm-4.6` | GLM 4.6 | 198k | Ogólne |
| `zai-org-glm-4.7` | GLM 4.7 | 198k | Reasoning |
| `zai-org-glm-4.7-flash` | GLM 4.7 Flash | 128k | Reasoning |
| `zai-org-glm-5` | GLM 5 | 198k | Reasoning |
| `minimax-m21` | MiniMax M2.1 | 198k | Reasoning |
| `minimax-m25` | MiniMax M2.5 | 198k | Reasoning |
### Modele anonimizowane (15) — przez proxy Venice
| Model ID | Nazwa | Kontekst | Funkcje |
| ------------------------------- | ------------------------------ | -------- | -------------------------- |
| `claude-opus-4-6` | Claude Opus 4.6 (przez Venice) | 1M | Reasoning, vision |
| `claude-opus-4-5` | Claude Opus 4.5 (przez Venice) | 198k | Reasoning, vision |
| `claude-sonnet-4-6` | Claude Sonnet 4.6 (przez Venice) | 1M | Reasoning, vision |
| `claude-sonnet-4-5` | Claude Sonnet 4.5 (przez Venice) | 198k | Reasoning, vision |
| `openai-gpt-54` | GPT-5.4 (przez Venice) | 1M | Reasoning, vision |
| `openai-gpt-53-codex` | GPT-5.3 Codex (przez Venice) | 400k | Reasoning, vision, kodowanie |
| `openai-gpt-52` | GPT-5.2 (przez Venice) | 256k | Reasoning |
| `openai-gpt-52-codex` | GPT-5.2 Codex (przez Venice) | 256k | Reasoning, vision, kodowanie |
| `openai-gpt-4o-2024-11-20` | GPT-4o (przez Venice) | 128k | Vision |
| `openai-gpt-4o-mini-2024-07-18` | GPT-4o Mini (przez Venice) | 128k | Vision |
| `gemini-3-1-pro-preview` | Gemini 3.1 Pro (przez Venice) | 1M | Reasoning, vision |
| `gemini-3-pro-preview` | Gemini 3 Pro (przez Venice) | 198k | Reasoning, vision |
| `gemini-3-flash-preview` | Gemini 3 Flash (przez Venice) | 256k | Reasoning, vision |
| `grok-41-fast` | Grok 4.1 Fast (przez Venice) | 1M | Reasoning, vision |
| `grok-code-fast-1` | Grok Code Fast 1 (przez Venice) | 256k | Reasoning, kodowanie |
<Accordion title="Modele anonimizowane (15) — przez proxy Venice">
| ID modelu | Nazwa | Kontekst | Funkcje |
| ------------------------------- | ------------------------------ | -------- | -------------------------- |
| `claude-opus-4-6` | Claude Opus 4.6 (przez Venice) | 1M | Rozumowanie, vision |
| `claude-opus-4-5` | Claude Opus 4.5 (przez Venice) | 198k | Rozumowanie, vision |
| `claude-sonnet-4-6` | Claude Sonnet 4.6 (przez Venice) | 1M | Rozumowanie, vision |
| `claude-sonnet-4-5` | Claude Sonnet 4.5 (przez Venice) | 198k | Rozumowanie, vision |
| `openai-gpt-54` | GPT-5.4 (przez Venice) | 1M | Rozumowanie, vision |
| `openai-gpt-53-codex` | GPT-5.3 Codex (przez Venice) | 400k | Rozumowanie, vision, kodowanie |
| `openai-gpt-52` | GPT-5.2 (przez Venice) | 256k | Rozumowanie |
| `openai-gpt-52-codex` | GPT-5.2 Codex (przez Venice) | 256k | Rozumowanie, vision, kodowanie |
| `openai-gpt-4o-2024-11-20` | GPT-4o (przez Venice) | 128k | Vision |
| `openai-gpt-4o-mini-2024-07-18` | GPT-4o Mini (przez Venice) | 128k | Vision |
| `gemini-3-1-pro-preview` | Gemini 3.1 Pro (przez Venice) | 1M | Rozumowanie, vision |
| `gemini-3-pro-preview` | Gemini 3 Pro (przez Venice) | 198k | Rozumowanie, vision |
| `gemini-3-flash-preview` | Gemini 3 Flash (przez Venice) | 256k | Rozumowanie, vision |
| `grok-41-fast` | Grok 4.1 Fast (przez Venice) | 1M | Rozumowanie, vision |
| `grok-code-fast-1` | Grok Code Fast 1 (przez Venice)| 256k | Rozumowanie, kodowanie |
</Accordion>
</AccordionGroup>
## Wykrywanie modeli
OpenClaw automatycznie wykrywa modele z API Venice, gdy ustawione jest `VENICE_API_KEY`. Jeśli API jest nieosiągalne, następuje powrót do statycznego katalogu.
OpenClaw automatycznie wykrywa modele z API Venice, gdy ustawione jest `VENICE_API_KEY`. Jeśli API jest nieosiągalne, następuje fallback do statycznego katalogu.
Endpoint `/models` jest publiczny (do wyświetlania listy nie jest wymagane uwierzytelnianie), ale inferencja wymaga prawidłowego klucza API.
Endpoint `/models` jest publiczny (nie wymaga uwierzytelniania do listowania), ale inferencja wymaga prawidłowego klucza API.
## Strumieniowanie i obsługa narzędzi
## Streaming i obsługa narzędzi
| Funkcja | Obsługa |
| -------------------- | ---------------------------------------------------------- |
| **Strumieniowanie** | ✅ Wszystkie modele |
| **Wywoływanie funkcji** | ✅ Większość modeli (sprawdź `supportsFunctionCalling` w API) |
| **Vision/obrazy** | ✅ Modele oznaczone funkcją „Vision” |
| **Tryb JSON** | Obsługiwany przez `response_format` |
| Funkcja | Obsługa |
| -------------------- | ---------------------------------------------------- |
| **Streaming** | Wszystkie modele |
| **Function calling** | Większość modeli (sprawdź `supportsFunctionCalling` w API) |
| **Vision/Images** | Modele oznaczone funkcją „Vision” |
| **Tryb JSON** | Obsługiwany przez `response_format` |
## Ceny
Venice używa systemu opartego na kredytach. Sprawdź [venice.ai/pricing](https://venice.ai/pricing), aby zobaczyć aktualne stawki:
Venice używa systemu opartego na kredytach. Aktualne stawki sprawdzisz na [venice.ai/pricing](https://venice.ai/pricing):
- **Modele prywatne**: zazwyczaj niższy koszt
- **Modele anonimizowane**: podobne do bezpośrednich cen API + niewielka opłata Venice
- **Modele anonimizowane**: ceny zbliżone do bezpośredniego API + niewielka opłata Venice
## Porównanie: Venice vs bezpośrednie API
### Venice (anonimizowane) vs bezpośrednie API
| Aspekt | Venice (anonimizowane) | Bezpośrednie API |
| ------------- | ------------------------------- | ---------------------- |
| **Prywatność** | Metadane usunięte, anonimizacja | Twoje konto jest powiązane |
| **Opóźnienie** | +10-50ms (proxy) | Bezpośrednio |
| **Funkcje** | Większość funkcji obsługiwana | Pełne funkcje |
| **Rozliczanie** | Kredyty Venice | Rozliczanie dostawcy |
| Aspekt | Venice (anonimizowane) | Bezpośrednie API |
| ------------ | ------------------------------ | ------------------- |
| **Prywatność** | Metadane usunięte, anonimizacja | Twoje konto powiązane |
| **Opóźnienie** | +10-50 ms (proxy) | Bezpośrednio |
| **Funkcje** | Obsługiwana większość funkcji | Pełne funkcje |
| **Rozliczenia**| Kredyty Venice | Rozliczenia dostawcy |
## Przykłady użycia
@ -222,7 +227,7 @@ openclaw agent --model venice/kimi-k2-5 --message "Quick health check"
# Użyj Claude Opus przez Venice (anonimizowane)
openclaw agent --model venice/claude-opus-4-6 --message "Summarize this task"
# Użyj modelu bez cenzury
# Użyj nieocenzurowanego modelu
openclaw agent --model venice/venice-uncensored --message "Draft options"
# Użyj modelu vision z obrazem
@ -234,56 +239,77 @@ openclaw agent --model venice/qwen3-coder-480b-a35b-instruct --message "Refactor
## Rozwiązywanie problemów
### Klucz API nie jest rozpoznawany
<AccordionGroup>
<Accordion title="Klucz API nie jest rozpoznawany">
```bash
echo $VENICE_API_KEY
openclaw models list | grep venice
```
```bash
echo $VENICE_API_KEY
openclaw models list | grep venice
```
Upewnij się, że klucz zaczyna się od `vapi_`.
Upewnij się, że klucz zaczyna się od `vapi_`.
</Accordion>
### Model jest niedostępny
<Accordion title="Model jest niedostępny">
Katalog modeli Venice aktualizuje się dynamicznie. Uruchom `openclaw models list`, aby zobaczyć aktualnie dostępne modele. Niektóre modele mogą być tymczasowo offline.
</Accordion>
Katalog modeli Venice jest aktualizowany dynamicznie. Uruchom `openclaw models list`, aby zobaczyć aktualnie dostępne modele. Niektóre modele mogą być tymczasowo offline.
<Accordion title="Problemy z połączeniem">
API Venice znajduje się pod adresem `https://api.venice.ai/api/v1`. Upewnij się, że Twoja sieć pozwala na połączenia HTTPS.
</Accordion>
</AccordionGroup>
### Problemy z połączeniem
<Note>
Więcej pomocy: [Rozwiązywanie problemów](/pl/help/troubleshooting) i [FAQ](/pl/help/faq).
</Note>
API Venice znajduje się pod adresem `https://api.venice.ai/api/v1`. Upewnij się, że Twoja sieć zezwala na połączenia HTTPS.
## Konfiguracja zaawansowana
## Przykład pliku konfiguracyjnego
```json5
{
env: { VENICE_API_KEY: "vapi_..." },
agents: { defaults: { model: { primary: "venice/kimi-k2-5" } } },
models: {
mode: "merge",
providers: {
venice: {
baseUrl: "https://api.venice.ai/api/v1",
apiKey: "${VENICE_API_KEY}",
api: "openai-completions",
models: [
{
id: "kimi-k2-5",
name: "Kimi K2.5",
reasoning: true,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 256000,
maxTokens: 65536,
<AccordionGroup>
<Accordion title="Przykład pliku konfiguracyjnego">
```json5
{
env: { VENICE_API_KEY: "vapi_..." },
agents: { defaults: { model: { primary: "venice/kimi-k2-5" } } },
models: {
mode: "merge",
providers: {
venice: {
baseUrl: "https://api.venice.ai/api/v1",
apiKey: "${VENICE_API_KEY}",
api: "openai-completions",
models: [
{
id: "kimi-k2-5",
name: "Kimi K2.5",
reasoning: true,
input: ["text", "image"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
contextWindow: 256000,
maxTokens: 65536,
},
],
},
],
},
},
},
},
}
```
}
```
</Accordion>
</AccordionGroup>
## Linki
## Powiązane
- [Venice AI](https://venice.ai)
- [Dokumentacja API](https://docs.venice.ai)
- [Cennik](https://venice.ai/pricing)
- [Status](https://status.venice.ai)
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Venice AI" href="https://venice.ai" icon="globe">
Strona główna Venice AI i rejestracja konta.
</Card>
<Card title="Dokumentacja API" href="https://docs.venice.ai" icon="book">
Dokumentacja API Venice i materiały dla deweloperów.
</Card>
<Card title="Cennik" href="https://venice.ai/pricing" icon="credit-card">
Aktualne stawki kredytowe i plany Venice.
</Card>
</CardGroup>

View File

@ -1,50 +1,72 @@
---
read_when:
- Chcesz używać Vercel AI Gateway z OpenClaw
- Potrzebujesz zmiennej env klucza API albo opcji auth w CLI
summary: Konfiguracja Vercel AI Gateway (auth + wybór modelu)
- Potrzebujesz zmiennej środowiskowej klucza API lub opcji uwierzytelniania CLI
summary: Konfiguracja Vercel AI Gateway (uwierzytelnianie + wybór modelu)
title: Vercel AI Gateway
x-i18n:
generated_at: "2026-04-05T14:03:52Z"
generated_at: "2026-04-12T23:33:30Z"
model: gpt-5.4
provider: openai
source_hash: f30768dc3db49708b25042d317906f7ad9a2c72b0fa03263bc04f5eefbf7a507
source_hash: 48c206a645d7a62e201a35ae94232323c8570fdae63129231c38d363ea78a60b
source_path: providers/vercel-ai-gateway.md
workflow: 15
---
# Vercel AI Gateway
[Vercel AI Gateway](https://vercel.com/ai-gateway) zapewnia zunifikowane API do uzyskiwania dostępu do setek modeli przez jeden endpoint.
[Vercel AI Gateway](https://vercel.com/ai-gateway) zapewnia ujednolicone API do
uzyskiwania dostępu do setek modeli przez jeden endpoint.
- Provider: `vercel-ai-gateway`
- Uwierzytelnianie: `AI_GATEWAY_API_KEY`
- API: zgodne z Anthropic Messages
- OpenClaw automatycznie wykrywa katalog Gateway `/v1/models`, więc `/models vercel-ai-gateway`
zawiera bieżące referencje modeli, takie jak `vercel-ai-gateway/openai/gpt-5.4`.
| Właściwość | Wartość |
| ------------- | ------------------------------- |
| Dostawca | `vercel-ai-gateway` |
| Uwierzytelnianie | `AI_GATEWAY_API_KEY` |
| API | zgodne z Anthropic Messages |
| Katalog modeli | wykrywany automatycznie przez `/v1/models` |
## Szybki start
<Tip>
OpenClaw automatycznie wykrywa katalog Gateway `/v1/models`, więc
`/models vercel-ai-gateway` zawiera aktualne odwołania do modeli, takie jak
`vercel-ai-gateway/openai/gpt-5.4`.
</Tip>
1. Ustaw klucz API (zalecane: zapisz go dla Gateway):
## Pierwsze kroki
```bash
openclaw onboard --auth-choice ai-gateway-api-key
```
<Steps>
<Step title="Ustaw klucz API">
Uruchom onboarding i wybierz opcję uwierzytelniania AI Gateway:
2. Ustaw model domyślny:
```bash
openclaw onboard --auth-choice ai-gateway-api-key
```
```json5
{
agents: {
defaults: {
model: { primary: "vercel-ai-gateway/anthropic/claude-opus-4.6" },
},
},
}
```
</Step>
<Step title="Ustaw model domyślny">
Dodaj model do konfiguracji OpenClaw:
```json5
{
agents: {
defaults: {
model: { primary: "vercel-ai-gateway/anthropic/claude-opus-4.6" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider vercel-ai-gateway
```
</Step>
</Steps>
## Przykład nieinteraktywny
W przypadku konfiguracji skryptowych lub CI przekaż wszystkie wartości w wierszu poleceń:
```bash
openclaw onboard --non-interactive \
--mode local \
@ -52,16 +74,53 @@ openclaw onboard --non-interactive \
--ai-gateway-api-key "$AI_GATEWAY_API_KEY"
```
## Uwaga dotycząca środowiska
## Skrócona postać identyfikatora modelu
Jeśli Gateway działa jako daemon (launchd/systemd), upewnij się, że `AI_GATEWAY_API_KEY`
jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` albo przez
`env.shellEnv`).
OpenClaw akceptuje skrócone odwołania do modeli Vercel Claude i normalizuje je w
runtime:
## Skrócony format ID modeli
| Skrócone wejście | Znormalizowane odwołanie do modelu |
| ------------------------------------ | --------------------------------------------- |
| `vercel-ai-gateway/claude-opus-4.6` | `vercel-ai-gateway/anthropic/claude-opus-4.6` |
| `vercel-ai-gateway/opus-4.6` | `vercel-ai-gateway/anthropic/claude-opus-4-6` |
OpenClaw akceptuje skrócone referencje modeli Claude w Vercel i normalizuje je
w runtime:
<Tip>
W konfiguracji możesz używać zarówno skróconej postaci, jak i w pełni kwalifikowanego odwołania do modelu.
OpenClaw automatycznie rozwiązuje formę kanoniczną.
</Tip>
- `vercel-ai-gateway/claude-opus-4.6` -> `vercel-ai-gateway/anthropic/claude-opus-4.6`
- `vercel-ai-gateway/opus-4.6` -> `vercel-ai-gateway/anthropic/claude-opus-4-6`
## Uwagi zaawansowane
<AccordionGroup>
<Accordion title="Zmienna środowiskowa dla procesów demonów">
Jeśli Gateway OpenClaw działa jako demon (launchd/systemd), upewnij się, że
`AI_GATEWAY_API_KEY` jest dostępne dla tego procesu.
<Warning>
Klucz ustawiony tylko w `~/.profile` nie będzie widoczny dla demona launchd/systemd,
chyba że to środowisko zostanie jawnie zaimportowane. Ustaw klucz w
`~/.openclaw/.env` lub przez `env.shellEnv`, aby proces gateway mógł go
odczytać.
</Warning>
</Accordion>
<Accordion title="Routing dostawcy">
Vercel AI Gateway kieruje żądania do dostawcy upstream na podstawie prefiksu
odwołania do modelu. Na przykład `vercel-ai-gateway/anthropic/claude-opus-4.6` jest kierowane
przez Anthropic, a `vercel-ai-gateway/openai/gpt-5.4` przez
OpenAI. Pojedynczy `AI_GATEWAY_API_KEY` obsługuje uwierzytelnianie dla wszystkich
dostawców upstream.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybieranie dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Ogólne rozwiązywanie problemów i FAQ.
</Card>
</CardGroup>

View File

@ -1,67 +1,92 @@
---
read_when:
- Chcesz uruchomić OpenClaw z lokalnym serwerem vLLM
- Chcesz używać punktów końcowych /v1 zgodnych z OpenAI z własnymi modelami
- Chcesz używać endpointów `/v1` zgodnych z OpenAI z własnymi modelami
summary: Uruchamiaj OpenClaw z vLLM (lokalny serwer zgodny z OpenAI)
title: vLLM
x-i18n:
generated_at: "2026-04-05T14:04:09Z"
generated_at: "2026-04-12T23:33:30Z"
model: gpt-5.4
provider: openai
source_hash: ebde34d0453586d10340680b8d51465fdc98bd28e8a96acfaeb24606886b50f4
source_hash: a43be9ae879158fcd69d50fb3a47616fd560e3c6fe4ecb3a109bdda6a63a6a80
source_path: providers/vllm.md
workflow: 15
---
# vLLM
vLLM może udostępniać modele open source (oraz niektóre modele niestandardowe) przez **interfejs HTTP zgodny z OpenAI**. OpenClaw może łączyć się z vLLM przy użyciu API `openai-completions`.
vLLM może udostępniać modele open source (oraz niektóre niestandardowe) przez **API HTTP zgodne z OpenAI**. OpenClaw łączy się z vLLM przy użyciu API `openai-completions`.
OpenClaw może także **automatycznie wykrywać** dostępne modele z vLLM, jeśli włączysz to przez `VLLM_API_KEY` (dowolna wartość działa, jeśli serwer nie wymusza uwierzytelniania) i nie zdefiniujesz jawnego wpisu `models.providers.vllm`.
OpenClaw może także **automatycznie wykrywać** dostępne modele z vLLM, gdy jawnie to włączysz przez `VLLM_API_KEY` (dowolna wartość działa, jeśli Twój serwer nie wymusza auth) i nie zdefiniujesz jawnego wpisu `models.providers.vllm`.
## Szybki start
| Właściwość | Wartość |
| --------------- | ---------------------------------------- |
| ID dostawcy | `vllm` |
| API | `openai-completions` (zgodne z OpenAI) |
| Auth | zmienna środowiskowa `VLLM_API_KEY` |
| Domyślny bazowy URL | `http://127.0.0.1:8000/v1` |
1. Uruchom vLLM z serwerem zgodnym z OpenAI.
## Pierwsze kroki
Twój bazowy URL powinien udostępniać punkty końcowe `/v1` (na przykład `/v1/models`, `/v1/chat/completions`). vLLM zwykle działa pod adresem:
<Steps>
<Step title="Uruchom vLLM z serwerem zgodnym z OpenAI">
Twój bazowy URL powinien udostępniać endpointy `/v1` (np. `/v1/models`, `/v1/chat/completions`). vLLM często działa pod adresem:
- `http://127.0.0.1:8000/v1`
```
http://127.0.0.1:8000/v1
```
2. Włącz to jawnie (dowolna wartość działa, jeśli uwierzytelnianie nie jest skonfigurowane):
</Step>
<Step title="Ustaw zmienną środowiskową klucza API">
Dowolna wartość działa, jeśli Twój serwer nie wymusza auth:
```bash
export VLLM_API_KEY="vllm-local"
```
```bash
export VLLM_API_KEY="vllm-local"
```
3. Wybierz model (zastąp jednym z identyfikatorów modeli vLLM):
</Step>
<Step title="Wybierz model">
Zastąp jedną z wartości identyfikatorem modelu z vLLM:
```json5
{
agents: {
defaults: {
model: { primary: "vllm/your-model-id" },
},
},
}
```
```json5
{
agents: {
defaults: {
model: { primary: "vllm/your-model-id" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider vllm
```
</Step>
</Steps>
## Wykrywanie modeli (niejawny dostawca)
Gdy `VLLM_API_KEY` jest ustawione (lub istnieje profil uwierzytelniania) i **nie** definiujesz `models.providers.vllm`, OpenClaw wykona zapytanie:
Gdy `VLLM_API_KEY` jest ustawione (albo istnieje profil auth) i **nie** zdefiniujesz `models.providers.vllm`, OpenClaw wykonuje zapytanie:
- `GET http://127.0.0.1:8000/v1/models`
```
GET http://127.0.0.1:8000/v1/models
```
…i przekształci zwrócone identyfikatory w wpisy modeli.
i przekształca zwrócone identyfikatory w wpisy modeli.
<Note>
Jeśli jawnie ustawisz `models.providers.vllm`, automatyczne wykrywanie zostanie pominięte i musisz ręcznie zdefiniować modele.
</Note>
## Jawna konfiguracja (modele ręczne)
Użyj jawnej konfiguracji, gdy:
- vLLM działa na innym hoście/porcie.
- Chcesz przypiąć wartości `contextWindow`/`maxTokens`.
- Twój serwer wymaga prawdziwego klucza API (albo chcesz kontrolować nagłówki).
- vLLM działa na innym hoście lub porcie
- Chcesz przypiąć wartości `contextWindow` lub `maxTokens`
- Twój serwer wymaga prawdziwego klucza API (albo chcesz kontrolować nagłówki)
```json5
{
@ -74,7 +99,7 @@ Użyj jawnej konfiguracji, gdy:
models: [
{
id: "your-model-id",
name: "Local vLLM Model",
name: "Lokalny model vLLM",
reasoning: false,
input: ["text"],
cost: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 },
@ -88,23 +113,99 @@ Użyj jawnej konfiguracji, gdy:
}
```
## Uwagi zaawansowane
<AccordionGroup>
<Accordion title="Zachowanie w stylu proxy">
vLLM jest traktowany jako backend `/v1` zgodny z OpenAI w stylu proxy, a nie natywny
endpoint OpenAI. Oznacza to, że:
| Zachowanie | Stosowane? |
|----------|----------|
| Natywne kształtowanie żądań OpenAI | Nie |
| `service_tier` | Nie jest wysyłane |
| `store` w Responses | Nie jest wysyłane |
| Wskazówki prompt-cache | Nie są wysyłane |
| Kształtowanie payloadów zgodności reasoning OpenAI | Nie jest stosowane |
| Ukryte nagłówki atrybucji OpenClaw | Nie są wstrzykiwane przy niestandardowych bazowych URL-ach |
</Accordion>
<Accordion title="Niestandardowy bazowy URL">
Jeśli Twój serwer vLLM działa na niestandardowym hoście lub porcie, ustaw `baseUrl` w jawnej konfiguracji dostawcy:
```json5
{
models: {
providers: {
vllm: {
baseUrl: "http://192.168.1.50:9000/v1",
apiKey: "${VLLM_API_KEY}",
api: "openai-completions",
models: [
{
id: "my-custom-model",
name: "Zdalny model vLLM",
reasoning: false,
input: ["text"],
contextWindow: 64000,
maxTokens: 4096,
},
],
},
},
},
}
```
</Accordion>
</AccordionGroup>
## Rozwiązywanie problemów
- Sprawdź, czy serwer jest osiągalny:
<AccordionGroup>
<Accordion title="Nie można połączyć się z serwerem">
Sprawdź, czy serwer vLLM działa i jest dostępny:
```bash
curl http://127.0.0.1:8000/v1/models
```
```bash
curl http://127.0.0.1:8000/v1/models
```
- Jeśli żądania kończą się błędami uwierzytelniania, ustaw prawdziwe `VLLM_API_KEY`, zgodne z konfiguracją serwera, albo skonfiguruj dostawcę jawnie pod `models.providers.vllm`.
Jeśli widzisz błąd połączenia, sprawdź host, port oraz czy vLLM uruchomiono w trybie serwera zgodnego z OpenAI.
## Zachowanie w stylu proxy
</Accordion>
vLLM jest traktowane jako backend `/v1` zgodny z OpenAI w stylu proxy, a nie jako natywny
punkt końcowy OpenAI.
<Accordion title="Błędy auth przy żądaniach">
Jeśli żądania kończą się błędami auth, ustaw prawdziwe `VLLM_API_KEY`, które odpowiada konfiguracji serwera, albo skonfiguruj dostawcę jawnie pod `models.providers.vllm`.
- natywne formatowanie żądań przeznaczone wyłącznie dla OpenAI nie ma tutaj zastosowania
- brak `service_tier`, brak Responses `store`, brak wskazówek pamięci podręcznej promptów i brak
formatowania ładunku zgodności rozumowania OpenAI
- ukryte nagłówki atrybucji OpenClaw (`originator`, `version`, `User-Agent`)
nie są wstrzykiwane dla niestandardowych bazowych URL-i vLLM
<Tip>
Jeśli Twój serwer vLLM nie wymusza auth, dowolna niepusta wartość `VLLM_API_KEY` działa jako sygnał jawnego włączenia dla OpenClaw.
</Tip>
</Accordion>
<Accordion title="Nie wykryto modeli">
Automatyczne wykrywanie wymaga, aby `VLLM_API_KEY` było ustawione **oraz** żeby nie istniał jawny wpis konfiguracji `models.providers.vllm`. Jeśli dostawcę zdefiniowano ręcznie, OpenClaw pomija wykrywanie i używa tylko zadeklarowanych modeli.
</Accordion>
</AccordionGroup>
<Warning>
Więcej pomocy: [Rozwiązywanie problemów](/pl/help/troubleshooting) i [FAQ](/pl/help/faq).
</Warning>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="OpenAI" href="/pl/providers/openai" icon="bolt">
Natywny dostawca OpenAI i zachowanie tras zgodnych z OpenAI.
</Card>
<Card title="OAuth i auth" href="/pl/gateway/authentication" icon="key">
Szczegóły auth i zasady ponownego użycia poświadczeń.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Typowe problemy i sposoby ich rozwiązania.
</Card>
</CardGroup>

View File

@ -1,49 +1,63 @@
---
read_when:
- Chcesz używać Volcano Engine lub modeli Doubao z OpenClaw
- Chcesz używać modeli Volcano Engine lub Doubao z OpenClaw
- Potrzebujesz konfiguracji klucza API Volcengine
summary: Konfiguracja Volcano Engine (modele Doubao, endpointy ogólne i do kodowania)
summary: Konfiguracja Volcano Engine (modele Doubao, endpointy ogólne + do kodowania)
title: Volcengine (Doubao)
x-i18n:
generated_at: "2026-04-05T14:04:09Z"
generated_at: "2026-04-12T23:33:36Z"
model: gpt-5.4
provider: openai
source_hash: 85d9e737e906cd705fb31479d6b78d92b68c9218795ea9667516c1571dcaaf3a
source_hash: a21f390da719f79c88c6d55a7d952d35c2ce5ff26d910c9f10020132cd7d2f4c
source_path: providers/volcengine.md
workflow: 15
---
# Volcengine (Doubao)
Provider Volcengine zapewnia dostęp do modeli Doubao i modeli innych firm
hostowanych w Volcano Engine, z oddzielnymi endpointami dla ogólnych
obciążeń i zadań związanych z kodowaniem.
Dostawca Volcengine zapewnia dostęp do modeli Doubao i modeli zewnętrznych
hostowanych na Volcano Engine, z oddzielnymi endpointami dla obciążeń ogólnych i związanych z kodowaniem.
- Providery: `volcengine` (ogólny) + `volcengine-plan` (kodowanie)
- Uwierzytelnianie: `VOLCANO_ENGINE_API_KEY`
- API: zgodne z OpenAI
| Szczegół | Wartość |
| ---------- | --------------------------------------------------- |
| Dostawcy | `volcengine` (ogólne) + `volcengine-plan` (kodowanie) |
| Uwierzytelnianie | `VOLCANO_ENGINE_API_KEY` |
| API | Zgodne z OpenAI |
## Szybki start
## Pierwsze kroki
1. Ustaw klucz API:
<Steps>
<Step title="Ustaw klucz API">
Uruchom interaktywny onboarding:
```bash
openclaw onboard --auth-choice volcengine-api-key
```
```bash
openclaw onboard --auth-choice volcengine-api-key
```
2. Ustaw model domyślny:
To rejestruje zarówno dostawcę ogólnego (`volcengine`), jak i dostawcę do kodowania (`volcengine-plan`) przy użyciu jednego klucza API.
```json5
{
agents: {
defaults: {
model: { primary: "volcengine-plan/ark-code-latest" },
},
},
}
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
agents: {
defaults: {
model: { primary: "volcengine-plan/ark-code-latest" },
},
},
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider volcengine
openclaw models list --provider volcengine-plan
```
</Step>
</Steps>
## Przykład nieinteraktywny
<Tip>
W przypadku konfiguracji nieinteraktywnej (CI, skrypty) przekaż klucz bezpośrednio:
```bash
openclaw onboard --non-interactive \
@ -52,50 +66,84 @@ openclaw onboard --non-interactive \
--volcengine-api-key "$VOLCANO_ENGINE_API_KEY"
```
## Providery i endpointy
</Tip>
| Provider | Endpoint | Przypadek użycia |
| ----------------- | ----------------------------------------- | ---------------------- |
| `volcengine` | `ark.cn-beijing.volces.com/api/v3` | Modele ogólne |
| `volcengine-plan` | `ark.cn-beijing.volces.com/api/coding/v3` | Modele do kodowania |
## Dostawcy i endpointy
Oba providery są konfigurowane za pomocą jednego klucza API. Konfiguracja rejestruje oba
automatycznie.
| Dostawca | Endpoint | Przypadek użycia |
| ----------------- | ----------------------------------------- | ---------------- |
| `volcengine` | `ark.cn-beijing.volces.com/api/v3` | Modele ogólne |
| `volcengine-plan` | `ark.cn-beijing.volces.com/api/coding/v3` | Modele do kodowania |
<Note>
Obaj dostawcy są konfigurowani przy użyciu jednego klucza API. Konfiguracja rejestruje obu automatycznie.
</Note>
## Dostępne modele
Provider ogólny (`volcengine`):
<Tabs>
<Tab title="Ogólne (volcengine)">
| Odwołanie modelu | Nazwa | Wejście | Kontekst |
| ------------------------------------------- | ------------------------------- | ----------- | -------- |
| `volcengine/doubao-seed-1-8-251228` | Doubao Seed 1.8 | text, image | 256,000 |
| `volcengine/doubao-seed-code-preview-251028`| doubao-seed-code-preview-251028 | text, image | 256,000 |
| `volcengine/kimi-k2-5-260127` | Kimi K2.5 | text, image | 256,000 |
| `volcengine/glm-4-7-251222` | GLM 4.7 | text, image | 200,000 |
| `volcengine/deepseek-v3-2-251201` | DeepSeek V3.2 | text, image | 128,000 |
</Tab>
<Tab title="Kodowanie (volcengine-plan)">
| Odwołanie modelu | Nazwa | Wejście | Kontekst |
| ------------------------------------------------ | ------------------------ | ------- | -------- |
| `volcengine-plan/ark-code-latest` | Ark Coding Plan | text | 256,000 |
| `volcengine-plan/doubao-seed-code` | Doubao Seed Code | text | 256,000 |
| `volcengine-plan/glm-4.7` | GLM 4.7 Coding | text | 200,000 |
| `volcengine-plan/kimi-k2-thinking` | Kimi K2 Thinking | text | 256,000 |
| `volcengine-plan/kimi-k2.5` | Kimi K2.5 Coding | text | 256,000 |
| `volcengine-plan/doubao-seed-code-preview-251028`| Doubao Seed Code Preview | text | 256,000 |
</Tab>
</Tabs>
| Model ref | Nazwa | Wejście | Kontekst |
| -------------------------------------------- | ------------------------------- | ----------- | -------- |
| `volcengine/doubao-seed-1-8-251228` | Doubao Seed 1.8 | text, image | 256,000 |
| `volcengine/doubao-seed-code-preview-251028` | doubao-seed-code-preview-251028 | text, image | 256,000 |
| `volcengine/kimi-k2-5-260127` | Kimi K2.5 | text, image | 256,000 |
| `volcengine/glm-4-7-251222` | GLM 4.7 | text, image | 200,000 |
| `volcengine/deepseek-v3-2-251201` | DeepSeek V3.2 | text, image | 128,000 |
## Uwagi zaawansowane
Provider do kodowania (`volcengine-plan`):
<AccordionGroup>
<Accordion title="Model domyślny po onboardingu">
`openclaw onboard --auth-choice volcengine-api-key` obecnie ustawia
`volcengine-plan/ark-code-latest` jako model domyślny, jednocześnie rejestrując
ogólny katalog `volcengine`.
</Accordion>
| Model ref | Nazwa | Wejście | Kontekst |
| ------------------------------------------------- | ------------------------ | ------- | -------- |
| `volcengine-plan/ark-code-latest` | Ark Coding Plan | text | 256,000 |
| `volcengine-plan/doubao-seed-code` | Doubao Seed Code | text | 256,000 |
| `volcengine-plan/glm-4.7` | GLM 4.7 Coding | text | 200,000 |
| `volcengine-plan/kimi-k2-thinking` | Kimi K2 Thinking | text | 256,000 |
| `volcengine-plan/kimi-k2.5` | Kimi K2.5 Coding | text | 256,000 |
| `volcengine-plan/doubao-seed-code-preview-251028` | Doubao Seed Code Preview | text | 256,000 |
<Accordion title="Zachowanie fallbacku selektora modeli">
Podczas wybierania modelu w onboardingu/konfiguracji opcja uwierzytelniania Volcengine preferuje
zarówno wiersze `volcengine/*`, jak i `volcengine-plan/*`. Jeśli te modele nie są jeszcze
załadowane, OpenClaw wraca do niefiltrowanego katalogu zamiast pokazywać pusty
selektor ograniczony do dostawcy.
</Accordion>
`openclaw onboard --auth-choice volcengine-api-key` obecnie ustawia
`volcengine-plan/ark-code-latest` jako model domyślny, a jednocześnie rejestruje
ogólny katalog `volcengine`.
<Accordion title="Zmienne środowiskowe dla procesów demona">
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że
`VOLCANO_ENGINE_API_KEY` jest dostępne dla tego procesu (na przykład w
`~/.openclaw/.env` albo przez `env.shellEnv`).
</Accordion>
</AccordionGroup>
Podczas onboardingu/konfigurowania wyboru modelu opcja uwierzytelniania Volcengine preferuje
zarówno wiersze `volcengine/*`, jak i `volcengine-plan/*`. Jeśli te modele nie
zostały jeszcze załadowane, OpenClaw przechodzi do niefiltrowanego katalogu zamiast wyświetlać
pusty selektor ograniczony do providera.
<Warning>
Podczas uruchamiania OpenClaw jako usługi w tle zmienne środowiskowe ustawione w Twojej
interaktywnej powłoce nie są dziedziczone automatycznie. Zobacz uwagę o demonie powyżej.
</Warning>
## Uwaga dotycząca środowiska
## Powiązane
Jeśli Gateway działa jako demon (launchd/systemd), upewnij się, że
`VOLCANO_ENGINE_API_KEY` jest dostępny dla tego procesu (na przykład w
`~/.openclaw/.env` lub przez `env.shellEnv`).
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Konfiguracja" href="/pl/gateway/configuration" icon="gear">
Pełna referencja konfiguracji agentów, modeli i dostawców.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Typowe problemy i kroki debugowania.
</Card>
<Card title="FAQ" href="/pl/help/faq" icon="circle-question">
Najczęściej zadawane pytania dotyczące konfiguracji OpenClaw.
</Card>
</CardGroup>

View File

@ -1,150 +1,181 @@
---
read_when:
- Chcesz używać generowania mediów Vydra w OpenClaw
- Chcesz używać generowania multimediów Vydra w OpenClaw
- Potrzebujesz wskazówek dotyczących konfiguracji klucza API Vydra
summary: Używaj generowania obrazów, wideo i mowy Vydra w OpenClaw
summary: Używaj obrazów, wideo i mowy Vydra w OpenClaw
title: Vydra
x-i18n:
generated_at: "2026-04-07T09:49:21Z"
generated_at: "2026-04-12T23:33:38Z"
model: gpt-5.4
provider: openai
source_hash: 24006a687ed6f9792e7b2b10927cc7ad71c735462a92ce03d5fa7c2b2ee2fcc2
source_hash: ab623d14b656ce0b68d648a6393fcee3bb880077d6583e0d5c1012e91757f20e
source_path: providers/vydra.md
workflow: 15
---
# Vydra
Dołączona wtyczka Vydra dodaje:
Bundlowany Plugin Vydra dodaje:
- generowanie obrazów przez `vydra/grok-imagine`
- generowanie wideo przez `vydra/veo3` i `vydra/kling`
- syntezę mowy przez trasę TTS Vydra opartą na ElevenLabs
- Generowanie obrazów przez `vydra/grok-imagine`
- Generowanie wideo przez `vydra/veo3` i `vydra/kling`
- Syntezę mowy przez trasę TTS Vydra opartą na ElevenLabs
OpenClaw używa tego samego `VYDRA_API_KEY` dla wszystkich trzech możliwości.
## Ważny bazowy URL
<Warning>
Używaj `https://www.vydra.ai/api/v1` jako bazowego URL-a.
Używaj `https://www.vydra.ai/api/v1`.
Host apex Vydra (`https://vydra.ai/api/v1`) obecnie przekierowuje do `www`. Niektórzy klienci HTTP usuwają `Authorization` przy takim przekierowaniu między hostami, co zamienia prawidłowy klucz API w mylący błąd uwierzytelniania. Dołączona wtyczka używa bezpośrednio bazowego URL `www`, aby tego uniknąć.
Główny host Vydra (`https://vydra.ai/api/v1`) obecnie przekierowuje do `www`. Niektóre klienty HTTP usuwają `Authorization` przy takim przekierowaniu między hostami, co zamienia prawidłowy klucz API w mylący błąd uwierzytelniania. Bundlowany Plugin używa bezpośrednio bazowego URL-a `www`, aby tego uniknąć.
</Warning>
## Konfiguracja
Interaktywny onboarding:
<Steps>
<Step title="Uruchom interaktywny onboarding">
```bash
openclaw onboard --auth-choice vydra-api-key
```
```bash
openclaw onboard --auth-choice vydra-api-key
```
Lub ustaw bezpośrednio zmienną env:
Albo ustaw bezpośrednio zmienną env:
```bash
export VYDRA_API_KEY="vydra_live_..."
```
```bash
export VYDRA_API_KEY="vydra_live_..."
```
</Step>
<Step title="Wybierz domyślną możliwość">
Wybierz jedną lub więcej z poniższych możliwości (obraz, wideo lub mowa) i zastosuj pasującą konfigurację.
</Step>
</Steps>
## Generowanie obrazów
## Możliwości
Domyślny model obrazów:
<AccordionGroup>
<Accordion title="Generowanie obrazów">
Domyślny model obrazu:
- `vydra/grok-imagine`
- `vydra/grok-imagine`
Ustaw go jako domyślnego dostawcę obrazów:
Ustaw go jako domyślnego dostawcę obrazów:
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "vydra/grok-imagine",
},
},
},
}
```
Obecne wsparcie w dołączonej wtyczce obejmuje tylko text-to-image. Hostowane trasy edycji Vydra oczekują zdalnych URL obrazów, a OpenClaw nie dodaje jeszcze mostu uploadu specyficznego dla Vydra w dołączonej wtyczce.
Zobacz [Image Generation](/pl/tools/image-generation), aby poznać wspólne zachowanie narzędzia.
## Generowanie wideo
Zarejestrowane modele wideo:
- `vydra/veo3` dla text-to-video
- `vydra/kling` dla image-to-video
Ustaw Vydra jako domyślnego dostawcę wideo:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "vydra/veo3",
},
},
},
}
```
Uwagi:
- `vydra/veo3` jest dołączony tylko jako text-to-video.
- `vydra/kling` obecnie wymaga odwołania do zdalnego URL obrazu. Upload lokalnych plików jest odrzucany z góry.
- Obecna trasa HTTP `kling` w Vydra bywa niespójna co do tego, czy wymaga `image_url`, czy `video_url`; dołączony dostawca mapuje ten sam zdalny URL obrazu do obu pól.
- Dołączona wtyczka pozostaje zachowawcza i nie przekazuje nieudokumentowanych ustawień stylu, takich jak aspect ratio, resolution, watermark czy generowane audio.
Pokrycie live specyficzne dla dostawcy:
```bash
OPENCLAW_LIVE_TEST=1 \
OPENCLAW_LIVE_VYDRA_VIDEO=1 \
pnpm test:live -- extensions/vydra/vydra.live.test.ts
```
Dołączony plik live Vydra obejmuje teraz:
- `vydra/veo3` text-to-video
- `vydra/kling` image-to-video z użyciem zdalnego URL obrazu
W razie potrzeby nadpisz zdalną fixturę obrazu:
```bash
export OPENCLAW_LIVE_VYDRA_KLING_IMAGE_URL="https://example.com/reference.png"
```
Zobacz [Video Generation](/pl/tools/video-generation), aby poznać wspólne zachowanie narzędzia.
## Synteza mowy
Ustaw Vydra jako dostawcę mowy:
```json5
{
messages: {
tts: {
provider: "vydra",
providers: {
vydra: {
apiKey: "${VYDRA_API_KEY}",
voiceId: "21m00Tcm4TlvDq8ikWAM",
```json5
{
agents: {
defaults: {
imageGenerationModel: {
primary: "vydra/grok-imagine",
},
},
},
},
},
}
```
}
```
Wartości domyślne:
Obecne wsparcie bundlowane obejmuje tylko tekst na obraz. Hostowane trasy edycji Vydra oczekują zdalnych URL-i obrazów, a OpenClaw nie dodaje jeszcze mostu wysyłania specyficznego dla Vydra w bundlowanym Pluginie.
- model: `elevenlabs/tts`
- voice id: `21m00Tcm4TlvDq8ikWAM`
<Note>
Zobacz [Generowanie obrazów](/pl/tools/image-generation), aby poznać współdzielone parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
Dołączona wtyczka obecnie udostępnia jeden sprawdzony domyślny głos i zwraca pliki audio MP3.
</Accordion>
<Accordion title="Generowanie wideo">
Zarejestrowane modele wideo:
- `vydra/veo3` dla tekstu na wideo
- `vydra/kling` dla obrazu na wideo
Ustaw Vydra jako domyślnego dostawcę wideo:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "vydra/veo3",
},
},
},
}
```
Uwagi:
- `vydra/veo3` jest bundlowany wyłącznie jako tekst na wideo.
- `vydra/kling` obecnie wymaga odwołania do zdalnego URL-a obrazu. Wysyłanie lokalnych plików jest odrzucane z góry.
- Obecna trasa HTTP `kling` w Vydra bywa niespójna w kwestii tego, czy wymaga `image_url`, czy `video_url`; bundlowany dostawca mapuje ten sam zdalny URL obrazu do obu pól.
- Bundlowany Plugin pozostaje zachowawczy i nie przekazuje nieudokumentowanych ustawień stylu, takich jak proporcje, rozdzielczość, znak wodny czy wygenerowane audio.
<Note>
Zobacz [Generowanie wideo](/pl/tools/video-generation), aby poznać współdzielone parametry narzędzia, wybór dostawcy i zachowanie failover.
</Note>
</Accordion>
<Accordion title="Testy live wideo">
Pokrycie live specyficzne dla dostawcy:
```bash
OPENCLAW_LIVE_TEST=1 \
OPENCLAW_LIVE_VYDRA_VIDEO=1 \
pnpm test:live -- extensions/vydra/vydra.live.test.ts
```
Bundlowany plik live Vydra obejmuje teraz:
- `vydra/veo3` tekst na wideo
- `vydra/kling` obraz na wideo z użyciem zdalnego URL-a obrazu
W razie potrzeby nadpisz fixture zdalnego obrazu:
```bash
export OPENCLAW_LIVE_VYDRA_KLING_IMAGE_URL="https://example.com/reference.png"
```
</Accordion>
<Accordion title="Synteza mowy">
Ustaw Vydra jako dostawcę mowy:
```json5
{
messages: {
tts: {
provider: "vydra",
providers: {
vydra: {
apiKey: "${VYDRA_API_KEY}",
voiceId: "21m00Tcm4TlvDq8ikWAM",
},
},
},
},
}
```
Ustawienia domyślne:
- Model: `elevenlabs/tts`
- Id głosu: `21m00Tcm4TlvDq8ikWAM`
Bundlowany Plugin obecnie udostępnia jeden sprawdzony domyślny głos i zwraca pliki audio MP3.
</Accordion>
</AccordionGroup>
## Powiązane
- [Provider Directory](/pl/providers/index)
- [Image Generation](/pl/tools/image-generation)
- [Video Generation](/pl/tools/video-generation)
<CardGroup cols={2}>
<Card title="Katalog dostawców" href="/pl/providers/index" icon="list">
Przeglądaj wszystkich dostępnych dostawców.
</Card>
<Card title="Generowanie obrazów" href="/pl/tools/image-generation" icon="image">
Współdzielone parametry narzędzia obrazów i wybór dostawcy.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Współdzielone parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration-reference#agent-defaults" icon="gear">
Ustawienia domyślne agenta i konfiguracja modelu.
</Card>
</CardGroup>

View File

@ -2,128 +2,248 @@
read_when:
- Chcesz używać modeli Grok w OpenClaw
- Konfigurujesz uwierzytelnianie xAI lub identyfikatory modeli
summary: Używanie modeli Grok od xAI w OpenClaw
summary: Używaj modeli xAI Grok w OpenClaw
title: xAI
x-i18n:
generated_at: "2026-04-06T03:12:19Z"
generated_at: "2026-04-12T23:33:41Z"
model: gpt-5.4
provider: openai
source_hash: 64bc899655427cc10bdc759171c7d1ec25ad9f1e4f9d803f1553d3d586c6d71d
source_hash: 820fef290c67d9815e41a96909d567216f67ca0f01df1d325008fd04666ad255
source_path: providers/xai.md
workflow: 15
---
# xAI
OpenClaw dostarcza wbudowany plugin dostawcy `xai` dla modeli Grok.
OpenClaw dostarcza dołączony Plugin dostawcy `xai` dla modeli Grok.
## Konfiguracja
## Pierwsze kroki
1. Utwórz klucz API w konsoli xAI.
2. Ustaw `XAI_API_KEY` albo uruchom:
<Steps>
<Step title="Utwórz klucz API">
Utwórz klucz API w [konsoli xAI](https://console.x.ai/).
</Step>
<Step title="Ustaw klucz API">
Ustaw `XAI_API_KEY` albo uruchom:
```bash
openclaw onboard --auth-choice xai-api-key
```
```bash
openclaw onboard --auth-choice xai-api-key
```
3. Wybierz model, na przykład:
</Step>
<Step title="Wybierz model">
```json5
{
agents: { defaults: { model: { primary: "xai/grok-4" } } },
}
```
</Step>
</Steps>
```json5
{
agents: { defaults: { model: { primary: "xai/grok-4" } } },
}
```
OpenClaw używa teraz API Responses xAI jako wbudowanego transportu xAI. Ten sam
`XAI_API_KEY` może również obsługiwać `web_search` oparte na Grok, natywne `x_search`
<Note>
OpenClaw używa xAI Responses API jako dołączonego transportu xAI. Ten sam
`XAI_API_KEY` może także zasilać `web_search` oparty na Grok, natywne `x_search`
oraz zdalne `code_execution`.
Jeśli zapiszesz klucz xAI pod `plugins.entries.xai.config.webSearch.apiKey`,
wbudowany dostawca modeli xAI również użyje tego klucza jako rozwiązania awaryjnego.
Dostrajanie `code_execution` znajduje się pod `plugins.entries.xai.config.codeExecution`.
Jeśli przechowujesz klucz xAI w `plugins.entries.xai.config.webSearch.apiKey`,
dołączony dostawca modeli xAI także używa tego klucza jako fallbacku.
Dostrajanie `code_execution` znajduje się w `plugins.entries.xai.config.codeExecution`.
</Note>
## Aktualny wbudowany katalog modeli
## Dołączony katalog modeli
OpenClaw zawiera teraz domyślnie następujące rodziny modeli xAI:
OpenClaw zawiera domyślnie następujące rodziny modeli xAI:
- `grok-3`, `grok-3-fast`, `grok-3-mini`, `grok-3-mini-fast`
- `grok-4`, `grok-4-0709`
- `grok-4-fast`, `grok-4-fast-non-reasoning`
- `grok-4-1-fast`, `grok-4-1-fast-non-reasoning`
- `grok-4.20-beta-latest-reasoning`, `grok-4.20-beta-latest-non-reasoning`
- `grok-code-fast-1`
| Rodzina | Identyfikatory modeli |
| -------------- | ------------------------------------------------------------------------ |
| Grok 3 | `grok-3`, `grok-3-fast`, `grok-3-mini`, `grok-3-mini-fast` |
| Grok 4 | `grok-4`, `grok-4-0709` |
| Grok 4 Fast | `grok-4-fast`, `grok-4-fast-non-reasoning` |
| Grok 4.1 Fast | `grok-4-1-fast`, `grok-4-1-fast-non-reasoning` |
| Grok 4.20 Beta | `grok-4.20-beta-latest-reasoning`, `grok-4.20-beta-latest-non-reasoning` |
| Grok Code | `grok-code-fast-1` |
Plugin przekazuje też dalej rozwiązywanie nowszych identyfikatorów `grok-4*` i `grok-code-fast*`, gdy
stosują ten sam kształt API.
Plugin dodatkowo forward-resolveuje nowsze identyfikatory `grok-4*` i `grok-code-fast*`, gdy
mają ten sam kształt API.
Uwagi dotyczące modeli fast:
<Tip>
`grok-4-fast`, `grok-4-1-fast` oraz warianty `grok-4.20-beta-*` to
obecne referencje Grok z obsługą obrazów w dołączonym katalogu.
</Tip>
- `grok-4-fast`, `grok-4-1-fast` oraz warianty `grok-4.20-beta-*` to
aktualne referencje Grok z obsługą obrazów we wbudowanym katalogu.
- `/fast on` lub `agents.defaults.models["xai/<model>"].params.fastMode: true`
przepisuje natywne żądania xAI w następujący sposób:
- `grok-3` -> `grok-3-fast`
- `grok-3-mini` -> `grok-3-mini-fast`
- `grok-4` -> `grok-4-fast`
- `grok-4-0709` -> `grok-4-fast`
### Mapowania trybu fast
Starsze aliasy zgodności są nadal normalizowane do kanonicznych wbudowanych identyfikatorów. Na
przykład:
`/fast on` lub `agents.defaults.models["xai/<model>"].params.fastMode: true`
przepisuje natywne żądania xAI w następujący sposób:
- `grok-4-fast-reasoning` -> `grok-4-fast`
- `grok-4-1-fast-reasoning` -> `grok-4-1-fast`
- `grok-4.20-reasoning` -> `grok-4.20-beta-latest-reasoning`
- `grok-4.20-non-reasoning` -> `grok-4.20-beta-latest-non-reasoning`
| Model źródłowy | Cel trybu fast |
| -------------- | ----------------- |
| `grok-3` | `grok-3-fast` |
| `grok-3-mini` | `grok-3-mini-fast` |
| `grok-4` | `grok-4-fast` |
| `grok-4-0709` | `grok-4-fast` |
## Wyszukiwanie w sieci
### Aliasy zgodności legacy
Wbudowany dostawca wyszukiwania w sieci `grok` także używa `XAI_API_KEY`:
Aliasom legacy nadal odpowiadają kanoniczne dołączone identyfikatory:
```bash
openclaw config set tools.web.search.provider grok
```
| Alias legacy | Identyfikator kanoniczny |
| ------------------------- | ------------------------------------ |
| `grok-4-fast-reasoning` | `grok-4-fast` |
| `grok-4-1-fast-reasoning` | `grok-4-1-fast` |
| `grok-4.20-reasoning` | `grok-4.20-beta-latest-reasoning` |
| `grok-4.20-non-reasoning` | `grok-4.20-beta-latest-non-reasoning` |
## Generowanie wideo
## Funkcje
Wbudowany plugin `xai` rejestruje także generowanie wideo przez współdzielone
narzędzie `video_generate`.
<AccordionGroup>
<Accordion title="Web search">
Dołączony dostawca `grok` dla web search także używa `XAI_API_KEY`:
- Domyślny model wideo: `xai/grok-imagine-video`
- Tryby: text-to-video, image-to-video oraz zdalne przepływy edycji/rozszerzania wideo
- Obsługuje `aspectRatio` i `resolution`
- Aktualne ograniczenie: lokalne bufory wideo nie są akceptowane; używaj zdalnych adresów URL `http(s)`
dla wejść referencyjnych/edycji wideo
```bash
openclaw config set tools.web.search.provider grok
```
Aby używać xAI jako domyślnego dostawcy wideo:
</Accordion>
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "xai/grok-imagine-video",
<Accordion title="Generowanie wideo">
Dołączony Plugin `xai` rejestruje generowanie wideo przez współdzielone
narzędzie `video_generate`.
- Domyślny model wideo: `xai/grok-imagine-video`
- Tryby: tekst-na-wideo, obraz-na-wideo oraz zdalne przepływy edycji/rozszerzania wideo
- Obsługuje `aspectRatio` i `resolution`
<Warning>
Lokalne bufory wideo nie są akceptowane. Używaj zdalnych URL-i `http(s)` dla
wejść referencyjnych wideo i wejść edycji.
</Warning>
Aby używać xAI jako domyślnego dostawcy wideo:
```json5
{
agents: {
defaults: {
videoGenerationModel: {
primary: "xai/grok-imagine-video",
},
},
},
},
},
}
```
}
```
Zobacz [Generowanie wideo](/tools/video-generation), aby poznać współdzielone
parametry narzędzia, wybór dostawcy i zachowanie failover.
<Note>
Zobacz [Video Generation](/pl/tools/video-generation), aby poznać wspólne parametry narzędzia,
wybór dostawcy i zachowanie failover.
</Note>
## Znane ograniczenia
</Accordion>
- Uwierzytelnianie obecnie obsługuje tylko klucz API. W OpenClaw nie ma jeszcze przepływu OAuth/device-code dla xAI.
- `grok-4.20-multi-agent-experimental-beta-0304` nie jest obsługiwany na zwykłej ścieżce dostawcy xAI, ponieważ wymaga innej powierzchni upstream API niż standardowy transport xAI w OpenClaw.
<Accordion title="Konfiguracja x_search">
Dołączony Plugin xAI udostępnia `x_search` jako narzędzie OpenClaw do przeszukiwania
treści X (dawniej Twitter) przez Grok.
## Uwagi
Ścieżka konfiguracji: `plugins.entries.xai.config.xSearch`
- OpenClaw automatycznie stosuje poprawki zgodności specyficzne dla xAI dotyczące schematu narzędzi i wywołań narzędzi na współdzielonej ścieżce runnera.
- Natywne żądania xAI domyślnie ustawiają `tool_stream: true`. Ustaw
`agents.defaults.models["xai/<model>"].params.tool_stream` na `false`, aby
to wyłączyć.
- Wbudowany wrapper xAI usuwa nieobsługiwane flagi ścisłego schematu narzędzi i
klucze payloadu reasoning przed wysłaniem natywnych żądań xAI.
- `web_search`, `x_search` i `code_execution` są udostępniane jako narzędzia OpenClaw. OpenClaw włącza konkretne wbudowane mechanizmy xAI, których potrzebuje w każdym żądaniu narzędzia, zamiast dołączać wszystkie natywne narzędzia do każdej tury czatu.
- `x_search` i `code_execution` należą do wbudowanego pluginu xAI, a nie są zakodowane na sztywno w podstawowym runtime modeli.
- `code_execution` oznacza zdalne wykonywanie w sandboxie xAI, a nie lokalne [`exec`](/pl/tools/exec).
- Szerszy przegląd dostawców znajdziesz w [Dostawcy modeli](/pl/providers/index).
| Klucz | Typ | Domyślnie | Opis |
| ----------------- | ------- | ------------------ | ------------------------------------ |
| `enabled` | boolean | — | Włącza lub wyłącza x_search |
| `model` | string | `grok-4-1-fast` | Model używany do żądań x_search |
| `inlineCitations` | boolean | — | Dołącza cytowania inline w wynikach |
| `maxTurns` | number | — | Maksymalna liczba tur rozmowy |
| `timeoutSeconds` | number | — | Timeout żądania w sekundach |
| `cacheTtlMinutes` | number | — | Czas życia cache w minutach |
```json5
{
plugins: {
entries: {
xai: {
config: {
xSearch: {
enabled: true,
model: "grok-4-1-fast",
inlineCitations: true,
},
},
},
},
},
}
```
</Accordion>
<Accordion title="Konfiguracja code_execution">
Dołączony Plugin xAI udostępnia `code_execution` jako narzędzie OpenClaw do
zdalnego wykonywania kodu w środowisku sandbox xAI.
Ścieżka konfiguracji: `plugins.entries.xai.config.codeExecution`
| Klucz | Typ | Domyślnie | Opis |
| ----------------- | ------- | ---------------------------- | ----------------------------------------- |
| `enabled` | boolean | `true` (jeśli klucz jest dostępny) | Włącza lub wyłącza wykonywanie kodu |
| `model` | string | `grok-4-1-fast` | Model używany do żądań wykonywania kodu |
| `maxTurns` | number | — | Maksymalna liczba tur rozmowy |
| `timeoutSeconds` | number | — | Timeout żądania w sekundach |
<Note>
To jest zdalne wykonywanie w sandboxie xAI, a nie lokalne [`exec`](/pl/tools/exec).
</Note>
```json5
{
plugins: {
entries: {
xai: {
config: {
codeExecution: {
enabled: true,
model: "grok-4-1-fast",
},
},
},
},
},
}
```
</Accordion>
<Accordion title="Znane ograniczenia">
- Obecnie uwierzytelnianie obsługuje tylko klucz API. OpenClaw nie ma jeszcze OAuth ani przepływu device-code dla xAI.
- `grok-4.20-multi-agent-experimental-beta-0304` nie jest obsługiwany na
zwykłej ścieżce dostawcy xAI, ponieważ wymaga innej powierzchni upstream API
niż standardowy transport xAI w OpenClaw.
</Accordion>
<Accordion title="Uwagi zaawansowane">
- OpenClaw automatycznie stosuje poprawki zgodności schematów narzędzi i wywołań narzędzi specyficzne dla xAI na współdzielonej ścieżce runnera.
- Natywne żądania xAI domyślnie używają `tool_stream: true`. Ustaw
`agents.defaults.models["xai/<model>"].params.tool_stream` na `false`, aby
to wyłączyć.
- Dołączony wrapper xAI usuwa nieobsługiwane ścisłe flagi schematu narzędzi i
klucze payloadu reasoning przed wysłaniem natywnych żądań xAI.
- `web_search`, `x_search` i `code_execution` są udostępniane jako narzędzia OpenClaw. OpenClaw włącza konkretny wbudowany mechanizm xAI, którego potrzebuje, wewnątrz każdego żądania narzędzia, zamiast dołączać wszystkie natywne narzędzia do każdej tury czatu.
- `x_search` i `code_execution` należą do dołączonego Pluginu xAI, a nie są na stałe zakodowane w głównym runtime modeli.
- `code_execution` to zdalne wykonywanie w sandboxie xAI, a nie lokalne
[`exec`](/pl/tools/exec).
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, referencji modeli i zachowania failover.
</Card>
<Card title="Generowanie wideo" href="/pl/tools/video-generation" icon="video">
Wspólne parametry narzędzia wideo i wybór dostawcy.
</Card>
<Card title="Wszyscy dostawcy" href="/pl/providers/index" icon="grid-2">
Szerszy przegląd dostawców.
</Card>
<Card title="Rozwiązywanie problemów" href="/pl/help/troubleshooting" icon="wrench">
Typowe problemy i poprawki.
</Card>
</CardGroup>

View File

@ -1,14 +1,14 @@
---
read_when:
- Chcesz używać modeli Xiaomi MiMo w OpenClaw
- Potrzebujesz konfiguracji XIAOMI_API_KEY
- Potrzebujesz konfiguracji `XIAOMI_API_KEY`
summary: Używaj modeli Xiaomi MiMo z OpenClaw
title: Xiaomi MiMo
x-i18n:
generated_at: "2026-04-05T14:04:12Z"
generated_at: "2026-04-12T23:33:51Z"
model: gpt-5.4
provider: openai
source_hash: a2533fa99b29070e26e0e1fbde924e1291c89b1fbc2537451bcc0eb677ea6949
source_hash: cd5a526764c796da7e1fff61301bc2ec618e1cf3857894ba2ef4b6dd9c4dc339
source_path: providers/xiaomi.md
workflow: 15
---
@ -16,31 +16,53 @@ x-i18n:
# Xiaomi MiMo
Xiaomi MiMo to platforma API dla modeli **MiMo**. OpenClaw używa zgodnego z OpenAI
endpointu Xiaomi z uwierzytelnianiem kluczem API. Utwórz swój klucz API w
[konsoli Xiaomi MiMo](https://platform.xiaomimimo.com/#/console/api-keys), a następnie skonfiguruj
dołączonego dostawcę `xiaomi` za pomocą tego klucza.
endpointu Xiaomi z uwierzytelnianiem opartym na kluczu API.
## Wbudowany katalog
| Właściwość | Wartość |
| ---------- | ------------------------------ |
| Dostawca | `xiaomi` |
| Uwierzytelnianie | `XIAOMI_API_KEY` |
| API | zgodne z OpenAI |
| Base URL | `https://api.xiaomimimo.com/v1` |
- Base URL: `https://api.xiaomimimo.com/v1`
- API: `openai-completions`
- Uwierzytelnianie: `Bearer $XIAOMI_API_KEY`
## Pierwsze kroki
| Model ref | Wejście | Kontekst | Maks. wyjście | Uwagi |
| ---------------------- | ----------- | --------- | ------------- | ----------------------------- |
| `xiaomi/mimo-v2-flash` | text | 262,144 | 8,192 | Model domyślny |
| `xiaomi/mimo-v2-pro` | text | 1,048,576 | 32,000 | Z włączonym reasoning |
| `xiaomi/mimo-v2-omni` | text, image | 262,144 | 32,000 | Multimodalny z włączonym reasoning |
<Steps>
<Step title="Pobierz klucz API">
Utwórz klucz API w [konsoli Xiaomi MiMo](https://platform.xiaomimimo.com/#/console/api-keys).
</Step>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice xiaomi-api-key
```
## Konfiguracja CLI
Albo przekaż klucz bezpośrednio:
```bash
openclaw onboard --auth-choice xiaomi-api-key
# lub nieinteraktywnie
openclaw onboard --auth-choice xiaomi-api-key --xiaomi-api-key "$XIAOMI_API_KEY"
```
```bash
openclaw onboard --auth-choice xiaomi-api-key --xiaomi-api-key "$XIAOMI_API_KEY"
```
## Fragment konfiguracji
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider xiaomi
```
</Step>
</Steps>
## Dostępne modele
| Odwołanie do modelu | Wejście | Kontekst | Maks. wyjście | Rozumowanie | Uwagi |
| ---------------------- | ----------- | --------- | ------------- | ----------- | ------------- |
| `xiaomi/mimo-v2-flash` | text | 262,144 | 8,192 | Nie | Model domyślny |
| `xiaomi/mimo-v2-pro` | text | 1,048,576 | 32,000 | Tak | Duży kontekst |
| `xiaomi/mimo-v2-omni` | text, image | 262,144 | 32,000 | Tak | Multimodalny |
<Tip>
Domyślne odwołanie do modelu to `xiaomi/mimo-v2-flash`. Dostawca jest wstrzykiwany automatycznie, gdy ustawiono `XIAOMI_API_KEY` lub istnieje profil uwierzytelniania.
</Tip>
## Przykład konfiguracji
```json5
{
@ -88,9 +110,43 @@ openclaw onboard --auth-choice xiaomi-api-key --xiaomi-api-key "$XIAOMI_API_KEY"
}
```
## Uwagi
<AccordionGroup>
<Accordion title="Zachowanie automatycznego wstrzykiwania">
Dostawca `xiaomi` jest wstrzykiwany automatycznie, gdy `XIAOMI_API_KEY` jest ustawione w środowisku lub istnieje profil uwierzytelniania. Nie musisz ręcznie konfigurować dostawcy, chyba że chcesz nadpisać metadane modelu lub `baseUrl`.
</Accordion>
- Domyślny model ref: `xiaomi/mimo-v2-flash`.
- Dodatkowe wbudowane modele: `xiaomi/mimo-v2-pro`, `xiaomi/mimo-v2-omni`.
- Dostawca jest wstrzykiwany automatycznie, gdy ustawiono `XIAOMI_API_KEY` (lub istnieje profil uwierzytelniania).
- Zobacz [/concepts/model-providers](/pl/concepts/model-providers), aby poznać zasady dotyczące dostawców.
<Accordion title="Szczegóły modeli">
- **mimo-v2-flash** — lekki i szybki, idealny do ogólnych zadań tekstowych. Bez obsługi rozumowania.
- **mimo-v2-pro** — obsługuje rozumowanie z oknem kontekstu 1M tokenów dla obciążeń z długimi dokumentami.
- **mimo-v2-omni** — multimodalny model z obsługą rozumowania, który akceptuje zarówno wejście tekstowe, jak i obrazy.
<Note>
Wszystkie modele używają prefiksu `xiaomi/` (na przykład `xiaomi/mimo-v2-pro`).
</Note>
</Accordion>
<Accordion title="Rozwiązywanie problemów">
- Jeśli modele się nie pojawiają, potwierdź, że `XIAOMI_API_KEY` jest ustawione i prawidłowe.
- Gdy Gateway działa jako demon, upewnij się, że klucz jest dostępny dla tego procesu (na przykład w `~/.openclaw/.env` lub przez `env.shellEnv`).
<Warning>
Klucze ustawione tylko w interaktywnej powłoce nie są widoczne dla procesów Gateway zarządzanych przez demona. Użyj `~/.openclaw/.env` lub konfiguracji `env.shellEnv`, aby zapewnić trwałą dostępność.
</Warning>
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybór dostawców, odwołań do modeli i zachowania failover.
</Card>
<Card title="Dokumentacja konfiguracji" href="/pl/gateway/configuration" icon="gear">
Pełna dokumentacja konfiguracji OpenClaw.
</Card>
<Card title="Konsola Xiaomi MiMo" href="https://platform.xiaomimimo.com" icon="arrow-up-right-from-square">
Panel Xiaomi MiMo i zarządzanie kluczami API.
</Card>
</CardGroup>

View File

@ -1,82 +1,172 @@
---
read_when:
- Chcesz używać Z.AI / modeli GLM w OpenClaw
- Potrzebujesz prostej konfiguracji ZAI_API_KEY
summary: Używaj Z.AI (modeli GLM) z OpenClaw
- Chcesz używać modeli Z.AI / GLM w OpenClaw
- Potrzebujesz prostej konfiguracji `ZAI_API_KEY`
summary: Używanie Z.AI (modele GLM) z OpenClaw
title: Z.AI
x-i18n:
generated_at: "2026-04-08T06:01:06Z"
generated_at: "2026-04-12T23:33:51Z"
model: gpt-5.4
provider: openai
source_hash: 66cbd9813ee28d202dcae34debab1b0cf9927793acb00743c1c62b48d9e381f9
source_hash: 972b467dab141c8c5126ac776b7cb6b21815c27da511b3f34e12bd9e9ac953b7
source_path: providers/zai.md
workflow: 15
---
# Z.AI
Z.AI to platforma API dla modeli **GLM**. Udostępnia interfejsy REST API dla GLM i używa kluczy API
do uwierzytelniania. Utwórz swój klucz API w konsoli Z.AI. OpenClaw używa dostawcy `zai`
Z.AI to platforma API dla modeli **GLM**. Udostępnia REST API dla GLM i używa kluczy API
do uwierzytelniania. Utwórz klucz API w konsoli Z.AI. OpenClaw używa dostawcy `zai`
z kluczem API Z.AI.
## Konfiguracja CLI
- Dostawca: `zai`
- Uwierzytelnianie: `ZAI_API_KEY`
- API: Z.AI Chat Completions (Bearer auth)
```bash
# Ogólna konfiguracja klucza API z automatycznym wykrywaniem punktu końcowego
openclaw onboard --auth-choice zai-api-key
## Pierwsze kroki
# Coding Plan Global, zalecane dla użytkowników Coding Plan
openclaw onboard --auth-choice zai-coding-global
<Tabs>
<Tab title="Endpoint wykrywany automatycznie">
**Najlepsze dla:** większości użytkowników. OpenClaw wykrywa pasujący endpoint Z.AI na podstawie klucza i automatycznie stosuje poprawny `base URL`.
# Coding Plan CN (region Chiny), zalecane dla użytkowników Coding Plan
openclaw onboard --auth-choice zai-coding-cn
<Steps>
<Step title="Uruchom onboarding">
```bash
openclaw onboard --auth-choice zai-api-key
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
env: { ZAI_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "zai/glm-5.1" } } },
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider zai
```
</Step>
</Steps>
# Ogólne API
openclaw onboard --auth-choice zai-global
</Tab>
# Ogólne API CN (region Chiny)
openclaw onboard --auth-choice zai-cn
```
<Tab title="Jawny regionalny endpoint">
**Najlepsze dla:** użytkowników, którzy chcą wymusić konkretny plan Coding Plan lub ogólną powierzchnię API.
## Fragment konfiguracji
<Steps>
<Step title="Wybierz właściwą opcję onboardingu">
```bash
# Coding Plan Global (zalecane dla użytkowników Coding Plan)
openclaw onboard --auth-choice zai-coding-global
```json5
{
env: { ZAI_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "zai/glm-5.1" } } },
}
```
# Coding Plan CN (region Chiny)
openclaw onboard --auth-choice zai-coding-cn
`zai-api-key` pozwala OpenClaw wykryć pasujący punkt końcowy Z.AI na podstawie klucza i
automatycznie zastosować poprawny bazowy URL. Użyj jawnych opcji regionalnych, jeśli
chcesz wymusić konkretny wariant Coding Plan lub ogólnego API.
# Ogólne API
openclaw onboard --auth-choice zai-global
## Dołączony katalog GLM
# Ogólne API CN (region Chiny)
openclaw onboard --auth-choice zai-cn
```
</Step>
<Step title="Ustaw model domyślny">
```json5
{
env: { ZAI_API_KEY: "sk-..." },
agents: { defaults: { model: { primary: "zai/glm-5.1" } } },
}
```
</Step>
<Step title="Sprawdź, czy model jest dostępny">
```bash
openclaw models list --provider zai
```
</Step>
</Steps>
OpenClaw obecnie inicjalizuje dołączonego dostawcę `zai` następującymi pozycjami:
</Tab>
</Tabs>
- `glm-5.1`
- `glm-5`
- `glm-5-turbo`
- `glm-5v-turbo`
- `glm-4.7`
- `glm-4.7-flash`
- `glm-4.7-flashx`
- `glm-4.6`
- `glm-4.6v`
- `glm-4.5`
- `glm-4.5-air`
- `glm-4.5-flash`
- `glm-4.5v`
## Bundlowany katalog GLM
## Uwagi
OpenClaw obecnie inicjalizuje bundlowanego dostawcę `zai` następującymi modelami:
- Modele GLM są dostępne jako `zai/<model>` (na przykład: `zai/glm-5`).
- Domyślne odwołanie do dołączonego modelu: `zai/glm-5.1`
- Nieznane identyfikatory `glm-5*` nadal są rozwiązywane na ścieżce dołączonego dostawcy przez
syntetyzowanie metadanych należących do dostawcy na podstawie szablonu `glm-4.7`, gdy identyfikator
pasuje do obecnego kształtu rodziny GLM-5.
- `tool_stream` jest domyślnie włączone dla strumieniowania wywołań narzędzi Z.AI. Ustaw
`agents.defaults.models["zai/<model>"].params.tool_stream` na `false`, aby je wyłączyć.
- Przegląd rodziny modeli znajdziesz w [/providers/glm](/pl/providers/glm).
- Z.AI używa uwierzytelniania Bearer z Twoim kluczem API.
| Odwołanie do modelu | Uwagi |
| ------------------- | --------------- |
| `zai/glm-5.1` | Model domyślny |
| `zai/glm-5` | |
| `zai/glm-5-turbo` | |
| `zai/glm-5v-turbo` | |
| `zai/glm-4.7` | |
| `zai/glm-4.7-flash` | |
| `zai/glm-4.7-flashx`| |
| `zai/glm-4.6` | |
| `zai/glm-4.6v` | |
| `zai/glm-4.5` | |
| `zai/glm-4.5-air` | |
| `zai/glm-4.5-flash` | |
| `zai/glm-4.5v` | |
<Tip>
Modele GLM są dostępne jako `zai/<model>` (przykład: `zai/glm-5`). Domyślne bundlowane odwołanie do modelu to `zai/glm-5.1`.
</Tip>
## Konfiguracja zaawansowana
<AccordionGroup>
<Accordion title="Rozwiązywanie w przód nieznanych modeli GLM-5">
Nieznane identyfikatory `glm-5*` nadal są rozwiązywane w przód na ścieżce bundlowanego dostawcy przez
syntetyzowanie metadanych należących do dostawcy na podstawie szablonu `glm-4.7`, gdy identyfikator
pasuje do bieżącego kształtu rodziny GLM-5.
</Accordion>
<Accordion title="Strumieniowanie wywołań narzędzi">
`tool_stream` jest domyślnie włączone dla strumieniowania wywołań narzędzi Z.AI. Aby je wyłączyć:
```json5
{
agents: {
defaults: {
models: {
"zai/<model>": {
params: { tool_stream: false },
},
},
},
},
}
```
</Accordion>
<Accordion title="Rozumienie obrazów">
Bundlowany Plugin Z.AI rejestruje rozumienie obrazów.
| Właściwość | Wartość |
| ---------- | ---------- |
| Model | `glm-4.6v` |
Rozumienie obrazów jest automatycznie rozwiązywane na podstawie skonfigurowanego uwierzytelniania Z.AI — nie
jest potrzebna dodatkowa konfiguracja.
</Accordion>
<Accordion title="Szczegóły uwierzytelniania">
- Z.AI używa Bearer auth z Twoim kluczem API.
- Opcja onboardingu `zai-api-key` automatycznie wykrywa pasujący endpoint Z.AI na podstawie prefiksu klucza.
- Użyj jawnych opcji regionalnych (`zai-coding-global`, `zai-coding-cn`, `zai-global`, `zai-cn`), gdy chcesz wymusić konkretną powierzchnię API.
</Accordion>
</AccordionGroup>
## Powiązane
<CardGroup cols={2}>
<Card title="Rodzina modeli GLM" href="/pl/providers/glm" icon="microchip">
Przegląd rodziny modeli GLM.
</Card>
<Card title="Wybór modelu" href="/pl/concepts/model-providers" icon="layers">
Wybieranie dostawców, odwołań do modeli i zachowania failover.
</Card>
</CardGroup>

View File

@ -1,119 +1,173 @@
---
read_when:
- Szukasz publicznych definicji kanałów wydań
- |-
Szukasz nazewnictwa wersji i harmonogramu wydań +#+#+#+#+#+assistant to=functions.read კომენტary 北京赛车女 оВjson
{"path":"/home/runner/work/docs/docs/source/AGENTS.md","offset":1,"limit":200}
summary: Publiczne kanały wydań, nazewnictwo wersji i harmonogram wydań
title: Polityka wydań
- Szukasz nazewnictwa wersji i częstotliwości wydań
summary: Publiczne kanały wydań, nazewnictwo wersji i częstotliwość wydań
title: Zasady wydań
x-i18n:
generated_at: "2026-04-11T02:47:35Z"
generated_at: "2026-04-12T23:33:56Z"
model: gpt-5.4
provider: openai
source_hash: ca613d094c93670c012f0b79720fad0d5d85be802f54b0acb7a8f22aca5bde12
source_hash: dffc1ee5fdbb20bd1bf4b3f817d497fc0d87f70ed6c669d324fea66dc01d0b0b
source_path: reference/RELEASING.md
workflow: 15
---
# Polityka wydań
# Zasady wydań
OpenClaw ma trzy publiczne ścieżki wydań:
- stable: tagowane wydania publikowane domyślnie do npm `beta` albo do npm `latest`, jeśli zostanie to jawnie zażądane
- beta: tagi wydań wstępnych publikowane do npm `beta`
- stable: tagowane wydania publikowane domyślnie do npm `beta`, albo do npm `latest`, jeśli zostanie to jawnie wskazane
- beta: tagi prerelease publikowane do npm `beta`
- dev: ruchoma głowa `main`
## Nazewnictwo wersji
- Wersja wydania stable: `YYYY.M.D`
- Git tag: `vYYYY.M.D`
- Wersja poprawki stable: `YYYY.M.D-N`
- Git tag: `vYYYY.M.D-N`
- Wersja wydania wstępnego beta: `YYYY.M.D-beta.N`
- Git tag: `vYYYY.M.D-beta.N`
- Tag Git: `vYYYY.M.D`
- Wersja wydania poprawkowego stable: `YYYY.M.D-N`
- Tag Git: `vYYYY.M.D-N`
- Wersja prerelease beta: `YYYY.M.D-beta.N`
- Tag Git: `vYYYY.M.D-beta.N`
- Nie dopełniaj miesiąca ani dnia zerami
- `latest` oznacza bieżące promowane stabilne wydanie npm
- `beta` oznacza bieżący docelowy kanał instalacji beta
- Wydania stable i poprawki stable są domyślnie publikowane do npm `beta`; operatorzy wydań mogą jawnie kierować je do `latest` albo później promować zweryfikowaną kompilację beta
- Wydania stable i poprawkowe stable są domyślnie publikowane do npm `beta`; operatorzy wydań mogą jawnie wskazać `latest` albo później wypromować zweryfikowane wydanie beta
- Każde wydanie OpenClaw obejmuje jednocześnie pakiet npm i aplikację macOS
## Harmonogram wydań
## Częstotliwość wydań
- Wydania przechodzą najpierw przez beta
- Stable pojawia się dopiero po zweryfikowaniu najnowszej beta
- Szczegółowa procedura wydania, zatwierdzenia, poświadczenia i notatki odzyskiwania są przeznaczone wyłącznie dla maintainerów
- Stable następuje dopiero po zweryfikowaniu najnowszego beta
- Szczegółowa procedura wydania, zatwierdzenia, poświadczenia i notatki odzyskiwania są
dostępne tylko dla maintainerów
## Kontrola przed wydaniem
## Preflight wydania
- Uruchom `pnpm build && pnpm ui:build` przed `pnpm release:check`, aby oczekiwane artefakty wydania `dist/*` i bundle Control UI istniały na potrzeby kroku walidacji paczki
- Uruchom `pnpm build && pnpm ui:build` przed `pnpm release:check`, aby oczekiwane
artefakty wydania `dist/*` oraz bundle Control UI istniały dla kroku
walidacji pakietu
- Uruchom `pnpm release:check` przed każdym tagowanym wydaniem
- Preflight npm dla gałęzi main uruchamia również
- Kontrole wydania są teraz uruchamiane w osobnym ręcznym workflow:
`OpenClaw Release Checks`
- Ten podział jest zamierzony: rzeczywista ścieżka wydania npm ma pozostać krótka,
deterministyczna i skoncentrowana na artefaktach, podczas gdy wolniejsze testy live pozostają
w osobnej ścieżce, aby nie opóźniały ani nie blokowały publikacji
- Kontrole wydania muszą być uruchamiane z odwołania workflow `main`, aby logika
workflow i sekrety pozostały kanoniczne
- Ten workflow akceptuje istniejący tag wydania albo bieżący pełny 40-znakowy SHA commita `main`
- W trybie SHA commita akceptowany jest tylko bieżący HEAD `origin/main`; użyj
tagu wydania dla starszych commitów wydania
- Walidacyjny preflight `OpenClaw NPM Release` także akceptuje bieżący
pełny 40-znakowy SHA commita `main` bez wymagania wypchniętego tagu
- Ta ścieżka SHA służy wyłącznie do walidacji i nie może zostać wypromowana do rzeczywistej publikacji
- W trybie SHA workflow syntetyzuje `v<package.json version>` wyłącznie dla kontroli
metadanych pakietu; rzeczywista publikacja nadal wymaga prawdziwego tagu wydania
- Oba workflow zachowują rzeczywistą ścieżkę publikacji i promocji na runnerach hostowanych przez GitHub, podczas gdy niemutująca ścieżka walidacji może używać większych
runnerów Blacksmith Linux
- Ten workflow uruchamia
`OPENCLAW_LIVE_TEST=1 OPENCLAW_LIVE_CACHE_TEST=1 pnpm test:live:cache`
przed spakowaniem tarballa, używając sekretów workflow `OPENAI_API_KEY` i
`ANTHROPIC_API_KEY`
- Uruchom `RELEASE_TAG=vYYYY.M.D node --import tsx scripts/openclaw-npm-release-check.ts`
(albo odpowiedni tag beta/poprawki) przed zatwierdzeniem
z użyciem sekretów workflow `OPENAI_API_KEY` i `ANTHROPIC_API_KEY`
- Preflight wydania npm nie czeka już na osobną ścieżkę kontroli wydań
- Przed zatwierdzeniem uruchom `RELEASE_TAG=vYYYY.M.D node --import tsx scripts/openclaw-npm-release-check.ts`
(albo odpowiadający tag beta/poprawkowy)
- Po publikacji npm uruchom
`node --import tsx scripts/openclaw-npm-postpublish-verify.ts YYYY.M.D`
(albo odpowiednią wersję beta/poprawki), aby zweryfikować opublikowaną ścieżkę instalacji z rejestru w świeżym tymczasowym prefiksie
- Automatyzacja wydania maintainerów używa teraz modelu preflight-then-promote:
(albo odpowiadającą wersję beta/poprawkową), aby zweryfikować opublikowaną ścieżkę
instalacji z rejestru w świeżym tymczasowym prefiksie
- Automatyzacja wydań maintainerów używa teraz modelu preflight-then-promote:
- rzeczywista publikacja npm musi przejść pomyślny npm `preflight_run_id`
- wydania stable npm domyślnie trafiają do `beta`
- publikację stable npm można jawnie skierować do `latest` przez wejście workflow
- promowanie stable npm z `beta` do `latest` jest nadal dostępne jako jawny tryb ręczny w zaufanym workflow `OpenClaw NPM Release`
- publikacja stable npm może jawnie wskazać `latest` przez wejście workflow
- promocja stable npm z `beta` do `latest` nadal jest dostępna jako jawny tryb ręczny w zaufanym workflow `OpenClaw NPM Release`
- ten tryb promocji nadal wymaga prawidłowego `NPM_TOKEN` w środowisku `npm-release`, ponieważ zarządzanie npm `dist-tag` jest oddzielone od zaufanej publikacji
- publiczny `macOS Release` służy wyłącznie do walidacji
- rzeczywista prywatna publikacja mac musi przejść pomyślne prywatne `preflight_run_id` i `validate_run_id`
- rzeczywiste ścieżki publikacji promują przygotowane artefakty zamiast budować je ponownie
- Dla wydań poprawkowych stable takich jak `YYYY.M.D-N` weryfikator po publikacji sprawdza także tę samą ścieżkę aktualizacji z tymczasowego prefiksu z `YYYY.M.D` do `YYYY.M.D-N`, aby poprawki wydania nie mogły po cichu pozostawić starszych globalnych instalacji na bazowym ładunku stable
- Preflight wydania npm kończy się twardym błędem, jeśli tarball nie zawiera zarówno `dist/control-ui/index.html`, jak i niepustego ładunku `dist/control-ui/assets/`, abyśmy nie opublikowali ponownie pustego dashboardu przeglądarkowego
- Jeśli praca nad wydaniem dotyczyła planowania CI, manifestów czasowania rozszerzeń albo macierzy testów rozszerzeń, przed zatwierdzeniem zregeneruj i przejrzyj należące do planera wyjścia macierzy workflow `checks-node-extensions` z `.github/workflows/ci.yml`, aby notatki do wydania nie opisywały nieaktualnego układu CI
- Gotowość stabilnego wydania macOS obejmuje także powierzchnie aktualizatora:
- publiczne `macOS Release` służy wyłącznie do walidacji
- rzeczywista prywatna publikacja na mac musi przejść pomyślne prywatne identyfikatory
`preflight_run_id` i `validate_run_id`
- rzeczywiste ścieżki publikacji promują przygotowane artefakty zamiast budować
je ponownie
- Dla wydań poprawkowych stable takich jak `YYYY.M.D-N` weryfikator po publikacji
sprawdza także tę samą ścieżkę aktualizacji z tymczasowym prefiksem z `YYYY.M.D` do `YYYY.M.D-N`,
aby poprawki wydania nie mogły po cichu pozostawić starszych globalnych instalacji na
bazowym payloadzie stable
- Preflight wydania npm kończy się blokująco, jeśli tarball nie zawiera jednocześnie
`dist/control-ui/index.html` i niepustego payloadu `dist/control-ui/assets/`,
abyśmy nie wysłali ponownie pustego dashboardu przeglądarkowego
- Jeśli prace nad wydaniem dotyczyły planowania CI, manifestów czasu rozszerzeń albo
macierzy testów rozszerzeń, przed zatwierdzeniem zregeneruj i przejrzyj
wyjścia macierzy workflow `checks-node-extensions` należące do planera z `.github/workflows/ci.yml`,
aby informacje o wydaniu nie opisywały nieaktualnego układu CI
- Gotowość wydania stable na macOS obejmuje także powierzchnie aktualizatora:
- wydanie GitHub musi ostatecznie zawierać spakowane `.zip`, `.dmg` i `.dSYM.zip`
- `appcast.xml` na `main` musi po publikacji wskazywać nowy stabilny plik zip
- spakowana aplikacja musi zachować niedebugowy bundle id, niepusty URL kanału Sparkle i `CFBundleVersion` równy lub wyższy od kanonicznego minimalnego progu kompilacji Sparkle dla tej wersji wydania
- `appcast.xml` na `main` musi wskazywać nowy stabilny plik zip po publikacji
- spakowana aplikacja musi zachować niedebugowy bundle id, niepusty URL feedu Sparkle
oraz `CFBundleVersion` równy lub wyższy od kanonicznego minimalnego poziomu builda Sparkle
dla tej wersji wydania
## Wejścia workflow NPM
`OpenClaw NPM Release` akceptuje następujące wejścia sterowane przez operatora:
- `tag`: wymagany tag wydania, taki jak `v2026.4.2`, `v2026.4.2-1` lub
`v2026.4.2-beta.1`
- `preflight_only`: `true` tylko dla walidacji/budowy/pakowania, `false` dla
- `tag`: wymagany tag wydania, taki jak `v2026.4.2`, `v2026.4.2-1` albo
`v2026.4.2-beta.1`; gdy `preflight_only=true`, może to być również bieżący
pełny 40-znakowy SHA commita `main` dla preflightu wyłącznie walidacyjnego
- `preflight_only`: `true` dla samej walidacji/budowania/pakowania, `false` dla
rzeczywistej ścieżki publikacji
- `preflight_run_id`: wymagane w rzeczywistej ścieżce publikacji, aby workflow ponownie użył przygotowanego tarballa z pomyślnego uruchomienia preflight
- `preflight_run_id`: wymagane na rzeczywistej ścieżce publikacji, aby workflow ponownie użył
przygotowanego tarballa z pomyślnego przebiegu preflight
- `npm_dist_tag`: docelowy tag npm dla ścieżki publikacji; domyślnie `beta`
- `promote_beta_to_latest`: `true`, aby pominąć publikację i przenieść już opublikowaną stabilną kompilację `beta` na `latest`
- `promote_beta_to_latest`: `true`, aby pominąć publikację i przenieść już opublikowane
stabilne wydanie `beta` na `latest`
`OpenClaw Release Checks` akceptuje następujące wejścia sterowane przez operatora:
- `ref`: istniejący tag wydania albo bieżący pełny 40-znakowy SHA commita `main`
do walidacji
Zasady:
- Tagi stable i poprawek mogą publikować zarówno do `beta`, jak i `latest`
- Tagi wydań wstępnych beta mogą publikować tylko do `beta`
- Rzeczywista ścieżka publikacji musi używać tego samego `npm_dist_tag`, którego użyto podczas preflight; workflow weryfikuje te metadane przed kontynuacją publikacji
- Tryb promocji musi używać tagu stable albo poprawki, `preflight_only=false`,
pustego `preflight_run_id` i `npm_dist_tag=beta`
- Tagi stable i poprawek mogą być publikowane do `beta` albo `latest`
- Tagi prerelease beta mogą być publikowane wyłącznie do `beta`
- Pełny SHA commita jest dozwolony tylko wtedy, gdy `preflight_only=true`
- Tryb SHA commita dla kontroli wydań także wymaga bieżącego HEAD `origin/main`
- Rzeczywista ścieżka publikacji musi używać tego samego `npm_dist_tag`, które było użyte podczas preflightu;
workflow weryfikuje te metadane, zanim publikacja będzie mogła być kontynuowana
- Tryb promocji musi używać tagu stable albo poprawkowego, `preflight_only=false`,
pustego `preflight_run_id` oraz `npm_dist_tag=beta`
- Tryb promocji wymaga także prawidłowego `NPM_TOKEN` w środowisku `npm-release`,
ponieważ `npm dist-tag add` nadal wymaga zwykłego uwierzytelniania npm
ponieważ `npm dist-tag add` nadal wymaga zwykłego auth npm
## Sekwencja stabilnego wydania npm
Podczas przygotowywania stabilnego wydania npm:
1. Uruchom `OpenClaw NPM Release` z `preflight_only=true`
2. Wybierz `npm_dist_tag=beta` dla standardowego przepływu beta-first albo `latest` tylko wtedy, gdy celowo chcesz bezpośredniej publikacji stable
3. Zapisz pomyślny `preflight_run_id`
4. Uruchom `OpenClaw NPM Release` ponownie z `preflight_only=false`, tym samym
- Zanim tag będzie istnieć, możesz użyć bieżącego pełnego SHA commita `main`
do walidacyjnego dry run workflow preflight
2. Wybierz `npm_dist_tag=beta` dla normalnego przepływu beta-first albo `latest` tylko
wtedy, gdy celowo chcesz bezpośredniej publikacji stable
3. Uruchom osobno `OpenClaw Release Checks` z tym samym tagiem albo
pełnym bieżącym SHA `main`, jeśli chcesz pokrycia live prompt cache
- To jest rozdzielone celowo, aby pokrycie live pozostało dostępne bez
ponownego sprzęgania długich albo niestabilnych kontroli z workflow publikacji
4. Zapisz pomyślny `preflight_run_id`
5. Uruchom ponownie `OpenClaw NPM Release` z `preflight_only=false`, tym samym
`tag`, tym samym `npm_dist_tag` i zapisanym `preflight_run_id`
5. Jeśli wydanie trafiło do `beta`, uruchom później `OpenClaw NPM Release` z tym samym stabilnym `tag`, `promote_beta_to_latest=true`, `preflight_only=false`,
pustym `preflight_run_id` i `npm_dist_tag=beta`, gdy chcesz przenieść tę opublikowaną kompilację do `latest`
6. Jeśli wydanie trafiło do `beta`, uruchom później `OpenClaw NPM Release` z
tym samym stabilnym `tag`, `promote_beta_to_latest=true`, `preflight_only=false`,
pustym `preflight_run_id` oraz `npm_dist_tag=beta`, gdy chcesz przenieść ten
opublikowany build do `latest`
Tryb promocji nadal wymaga zatwierdzenia środowiska `npm-release` i prawidłowego `NPM_TOKEN` w tym środowisku.
Tryb promocji nadal wymaga zatwierdzenia środowiska `npm-release` i prawidłowego
`NPM_TOKEN` w tym środowisku.
Dzięki temu zarówno ścieżka bezpośredniej publikacji, jak i ścieżka promocji beta-first pozostają udokumentowane i widoczne dla operatora.
To pozwala zachować zarówno ścieżkę bezpośredniej publikacji, jak i ścieżkę promocji beta-first
udokumentowane i widoczne dla operatora.
## Publiczne odwołania
- [`.github/workflows/openclaw-npm-release.yml`](https://github.com/openclaw/openclaw/blob/main/.github/workflows/openclaw-npm-release.yml)
- [`.github/workflows/openclaw-release-checks.yml`](https://github.com/openclaw/openclaw/blob/main/.github/workflows/openclaw-release-checks.yml)
- [`scripts/openclaw-npm-release-check.ts`](https://github.com/openclaw/openclaw/blob/main/scripts/openclaw-npm-release-check.ts)
- [`scripts/package-mac-dist.sh`](https://github.com/openclaw/openclaw/blob/main/scripts/package-mac-dist.sh)
- [`scripts/make_appcast.sh`](https://github.com/openclaw/openclaw/blob/main/scripts/make_appcast.sh)

View File

@ -1,97 +1,95 @@
---
read_when:
- Chcesz skonfigurować dostawców wyszukiwania w pamięci lub modele embeddingów
- Chcesz skonfigurować dostawców wyszukiwania pamięci lub modele embeddingów
- Chcesz skonfigurować backend QMD
- Chcesz dostroić wyszukiwanie hybrydowe, MMR lub zanikanie czasowe
- Chcesz dostroić wyszukiwanie hybrydowe, MMR lub zanik czasowy
- Chcesz włączyć multimodalne indeksowanie pamięci
summary: Wszystkie opcje konfiguracji wyszukiwania w pamięci, dostawców embeddingów, QMD, wyszukiwania hybrydowego i indeksowania multimodalnego
title: Dokument referencyjny konfiguracji pamięci
summary: Wszystkie opcje konfiguracji dotyczące wyszukiwania pamięci, dostawców embeddingów, QMD, wyszukiwania hybrydowego i indeksowania multimodalnego
title: Dokumentacja konfiguracji pamięci
x-i18n:
generated_at: "2026-04-10T09:45:08Z"
generated_at: "2026-04-12T23:33:59Z"
model: gpt-5.4
provider: openai
source_hash: 5f9076bdfad95b87bd70625821bf401326f8eaeb53842b70823881419dbe43cb
source_hash: 299ca9b69eea292ea557a2841232c637f5c1daf2bc0f73c0a42f7c0d8d566ce2
source_path: reference/memory-config.md
workflow: 15
---
# Dokument referencyjny konfiguracji pamięci
# Dokumentacja konfiguracji pamięci
Ta strona zawiera wszystkie opcje konfiguracji wyszukiwania w pamięci w OpenClaw. Aby zapoznać się z
omówieniem pojęciowym, zobacz:
Ta strona zawiera wszystkie opcje konfiguracji wyszukiwania pamięci OpenClaw. Aby zapoznać się z omówieniami koncepcyjnymi, zobacz:
- [Przegląd pamięci](/pl/concepts/memory) -- jak działa pamięć
- [Wbudowany silnik](/pl/concepts/memory-builtin) -- domyślny backend SQLite
- [Silnik QMD](/pl/concepts/memory-qmd) -- lokalny sidecar działający local-first
- [Wyszukiwanie w pamięci](/pl/concepts/memory-search) -- potok wyszukiwania i strojenie
- [Aktywna pamięć](/pl/concepts/active-memory) -- włączanie sub-agenta pamięci dla interaktywnych sesji
- [Silnik QMD](/pl/concepts/memory-qmd) -- lokalny sidecar działający lokalnie w pierwszej kolejności
- [Wyszukiwanie pamięci](/pl/concepts/memory-search) -- pipeline wyszukiwania i dostrajanie
- [Active Memory](/pl/concepts/active-memory) -- włączanie sub-agenta pamięci dla interaktywnych sesji
Wszystkie ustawienia wyszukiwania w pamięci znajdują się w `agents.defaults.memorySearch` w
`openclaw.json`, o ile nie wskazano inaczej.
Wszystkie ustawienia wyszukiwania pamięci znajdują się w `agents.defaults.memorySearch` w
`openclaw.json`, o ile nie zaznaczono inaczej.
Jeśli szukasz przełącznika funkcji **aktywnej pamięci** i konfiguracji sub-agenta,
Jeśli szukasz przełącznika funkcji **Active Memory** i konfiguracji sub-agenta,
znajdują się one w `plugins.entries.active-memory`, a nie w `memorySearch`.
Aktywna pamięć używa modelu dwóch bramek:
Active Memory używa modelu dwóch bramek:
1. plugin musi być włączony i kierować na bieżące ID agenta
2. żądanie musi dotyczyć kwalifikującej się interaktywnej trwałej sesji czatu
1. Plugin musi być włączony i wskazywać bieżący identyfikator agenta
2. Żądanie musi być kwalifikującą się interaktywną trwałą sesją czatu
Zobacz [Aktywna pamięć](/pl/concepts/active-memory), aby poznać model aktywacji,
konfigurację należącą do pluginu, trwałość transkryptów i bezpieczny schemat wdrażania.
Zobacz [Active Memory](/pl/concepts/active-memory), aby poznać model aktywacji,
konfigurację należącą do Pluginu, trwałość transkryptów i bezpieczny wzorzec wdrażania.
---
## Wybór dostawcy
| Klucz | Typ | Domyślnie | Opis |
| --------- | --------- | --------------- | ------------------------------------------------------------------------------------------- |
| `provider` | `string` | wykrywany automatycznie | ID adaptera embeddingów: `openai`, `gemini`, `voyage`, `mistral`, `bedrock`, `ollama`, `local` |
| `model` | `string` | domyślny dostawcy | Nazwa modelu embeddingów |
| `fallback` | `string` | `"none"` | ID adaptera zapasowego, gdy podstawowy zawiedzie |
| `enabled` | `boolean` | `true` | Włącza lub wyłącza wyszukiwanie w pamięci |
| Klucz | Typ | Domyślnie | Opis |
| --------- | --------- | --------------- | ------------------------------------------------------------------------------------------ |
| `provider` | `string` | wykrywane automatycznie | Id adaptera embeddingów: `openai`, `gemini`, `voyage`, `mistral`, `bedrock`, `ollama`, `local` |
| `model` | `string` | domyślny dla dostawcy | Nazwa modelu embeddingów |
| `fallback` | `string` | `"none"` | Id adaptera zapasowego, gdy główny zawiedzie |
| `enabled` | `boolean` | `true` | Włącza lub wyłącza wyszukiwanie pamięci |
### Kolejność automatycznego wykrywania
Gdy `provider` nie jest ustawiony, OpenClaw wybiera pierwszy dostępny:
1. `local` -- jeśli skonfigurowano `memorySearch.local.modelPath` i plik istnieje.
2. `openai` -- jeśli można rozpoznać klucz OpenAI.
3. `gemini` -- jeśli można rozpoznać klucz Gemini.
4. `voyage` -- jeśli można rozpoznać klucz Voyage.
5. `mistral` -- jeśli można rozpoznać klucz Mistral.
6. `bedrock` -- jeśli łańcuch poświadczeń AWS SDK zostanie rozwiązany (rola instancji, klucze dostępu, profil, SSO, tożsamość webowa lub współdzielona konfiguracja).
2. `openai` -- jeśli można rozwiązać klucz OpenAI.
3. `gemini` -- jeśli można rozwiązać klucz Gemini.
4. `voyage` -- jeśli można rozwiązać klucz Voyage.
5. `mistral` -- jeśli można rozwiązać klucz Mistral.
6. `bedrock` -- jeśli łańcuch poświadczeń AWS SDK zostanie rozwiązany (rola instancji, klucze dostępu, profil, SSO, tożsamość web lub współdzielona konfiguracja).
`ollama` jest obsługiwany, ale nie jest wykrywany automatycznie (ustaw go jawnie).
`ollama` jest obsługiwane, ale nie jest wykrywane automatycznie (ustaw je jawnie).
### Rozpoznawanie klucza API
### Rozwiązywanie klucza API
Zdalne embeddingi wymagają klucza API. Bedrock zamiast tego używa domyślnego
Zdalne embeddingi wymagają klucza API. Bedrock używa zamiast tego domyślnego
łańcucha poświadczeń AWS SDK (role instancji, SSO, klucze dostępu).
| Dostawca | Zmienna środowiskowa | Klucz konfiguracji |
| -------- | ------------------------------ | -------------------------------- |
| OpenAI | `OPENAI_API_KEY` | `models.providers.openai.apiKey` |
| Gemini | `GEMINI_API_KEY` | `models.providers.google.apiKey` |
| Voyage | `VOYAGE_API_KEY` | `models.providers.voyage.apiKey` |
| Mistral | `MISTRAL_API_KEY` | `models.providers.mistral.apiKey` |
| Bedrock | łańcuch poświadczeń AWS | Klucz API nie jest potrzebny |
| Ollama | `OLLAMA_API_KEY` (placeholder) | -- |
| Dostawca | Zmienna env | Klucz konfiguracji |
| -------- | ---------------------------- | -------------------------------- |
| OpenAI | `OPENAI_API_KEY` | `models.providers.openai.apiKey` |
| Gemini | `GEMINI_API_KEY` | `models.providers.google.apiKey` |
| Voyage | `VOYAGE_API_KEY` | `models.providers.voyage.apiKey` |
| Mistral | `MISTRAL_API_KEY` | `models.providers.mistral.apiKey` |
| Bedrock | łańcuch poświadczeń AWS | Klucz API nie jest potrzebny |
| Ollama | `OLLAMA_API_KEY` (placeholder) | -- |
OAuth Codex obejmuje tylko chat/completions i nie spełnia wymagań żądań
embeddingów.
Codex OAuth obejmuje tylko chat/completions i nie spełnia wymagań żądań embeddingów.
---
## Konfiguracja zdalnego punktu końcowego
Do niestandardowych punktów końcowych zgodnych z OpenAI lub nadpisania ustawień domyślnych dostawcy:
Dla niestandardowych punktów końcowych zgodnych z OpenAI lub nadpisywania wartości domyślnych dostawcy:
| Klucz | Typ | Opis |
| ----------------- | -------- | ------------------------------------------------ |
| `remote.baseUrl` | `string` | Niestandardowy bazowy URL API |
| `remote.apiKey` | `string` | Nadpisuje klucz API |
| `remote.headers` | `object` | Dodatkowe nagłówki HTTP (łączone z domyślnymi ustawieniami dostawcy) |
| Klucz | Typ | Opis |
| ---------------- | -------- | ---------------------------------------------------- |
| `remote.baseUrl` | `string` | Niestandardowy bazowy URL API |
| `remote.apiKey` | `string` | Nadpisanie klucza API |
| `remote.headers` | `object` | Dodatkowe nagłówki HTTP (łączone z domyślnymi dostawcy) |
```json5
{
@ -114,21 +112,21 @@ Do niestandardowych punktów końcowych zgodnych z OpenAI lub nadpisania ustawie
## Konfiguracja specyficzna dla Gemini
| Klucz | Typ | Domyślnie | Opis |
| ---------------------- | -------- | --------------------- | ------------------------------------------ |
| Klucz | Typ | Domyślnie | Opis |
| ---------------------- | -------- | ---------------------- | ------------------------------------------ |
| `model` | `string` | `gemini-embedding-001` | Obsługuje także `gemini-embedding-2-preview` |
| `outputDimensionality` | `number` | `3072` | Dla Embedding 2: 768, 1536 lub 3072 |
| `outputDimensionality` | `number` | `3072` | Dla Embedding 2: 768, 1536 lub 3072 |
<Warning>
Zmiana modelu lub `outputDimensionality` uruchamia automatyczne pełne przeindeksowanie.
Zmiana modelu lub `outputDimensionality` uruchamia automatyczne pełne ponowne indeksowanie.
</Warning>
---
## Konfiguracja embeddingów Bedrock
Bedrock używa domyślnego łańcucha poświadczeń AWS SDK -- nie są potrzebne żadne klucze API.
Jeśli OpenClaw działa na EC2 z rolą instancji obsługującą Bedrock, po prostu ustaw
Bedrock używa domyślnego łańcucha poświadczeń AWS SDK -- nie są potrzebne klucze API.
Jeśli OpenClaw działa na EC2 z rolą instancji z włączonym Bedrock, po prostu ustaw
dostawcę i model:
```json5
@ -146,15 +144,15 @@ dostawcę i model:
| Klucz | Typ | Domyślnie | Opis |
| ---------------------- | -------- | ----------------------------- | --------------------------------- |
| `model` | `string` | `amazon.titan-embed-text-v2:0` | Dowolne ID modelu embeddingów Bedrock |
| `outputDimensionality` | `number` | domyślna wartość modelu | Dla Titan V2: 256, 512 lub 1024 |
| `model` | `string` | `amazon.titan-embed-text-v2:0` | Dowolny identyfikator modelu embeddingów Bedrock |
| `outputDimensionality` | `number` | domyślna dla modelu | Dla Titan V2: 256, 512 lub 1024 |
### Obsługiwane modele
Obsługiwane są następujące modele (z wykrywaniem rodziny i domyślnymi
wymiarami):
| ID modelu | Dostawca | Domyślne wymiary | Konfigurowalne wymiary |
| Id modelu | Dostawca | Domyślne wymiary | Konfigurowalne wymiary |
| ------------------------------------------ | ---------- | ---------------- | ---------------------- |
| `amazon.titan-embed-text-v2:0` | Amazon | 1024 | 256, 512, 1024 |
| `amazon.titan-embed-text-v1` | Amazon | 1536 | -- |
@ -172,20 +170,20 @@ konfigurację modelu bazowego.
### Uwierzytelnianie
Uwierzytelnianie Bedrock używa standardowej kolejności rozpoznawania poświadczeń AWS SDK:
Uwierzytelnianie Bedrock używa standardowej kolejności rozwiązywania poświadczeń AWS SDK:
1. Zmienne środowiskowe (`AWS_ACCESS_KEY_ID` + `AWS_SECRET_ACCESS_KEY`)
2. Pamięć podręczna tokenów SSO
3. Poświadczenia tokenu tożsamości webowej
3. Poświadczenia tokenu tożsamości web
4. Współdzielone pliki poświadczeń i konfiguracji
5. Poświadczenia metadanych ECS lub EC2
Region jest rozpoznawany na podstawie `AWS_REGION`, `AWS_DEFAULT_REGION`,
`baseUrl` dostawcy `amazon-bedrock` albo domyślnie przyjmuje wartość `us-east-1`.
Region jest rozwiązywany z `AWS_REGION`, `AWS_DEFAULT_REGION`, `baseUrl`
dostawcy `amazon-bedrock` lub domyślnie przyjmuje wartość `us-east-1`.
### Uprawnienia IAM
Rola IAM lub użytkownik potrzebuje:
Rola lub użytkownik IAM potrzebuje:
```json
{
@ -205,42 +203,42 @@ arn:aws:bedrock:*::foundation-model/amazon.titan-embed-text-v2:0
## Konfiguracja lokalnych embeddingów
| Klucz | Typ | Domyślnie | Opis |
| --------------------- | -------- | --------------------- | ------------------------------ |
| `local.modelPath` | `string` | pobierany automatycznie | Ścieżka do pliku modelu GGUF |
| `local.modelCacheDir` | `string` | domyślna wartość node-llama-cpp | Katalog pamięci podręcznej dla pobranych modeli |
| Klucz | Typ | Domyślnie | Opis |
| --------------------- | -------- | ----------------------- | ----------------------------------- |
| `local.modelPath` | `string` | pobierany automatycznie | Ścieżka do pliku modelu GGUF |
| `local.modelCacheDir` | `string` | domyślna dla node-llama-cpp | Katalog cache dla pobranych modeli |
Domyślny model: `embeddinggemma-300m-qat-Q8_0.gguf` (~0.6 GB, pobierany automatycznie).
Domyślny model: `embeddinggemma-300m-qat-Q8_0.gguf` (~0,6 GB, pobierany automatycznie).
Wymaga natywnego builda: `pnpm approve-builds`, a następnie `pnpm rebuild node-llama-cpp`.
---
## Konfiguracja wyszukiwania hybrydowego
Wszystko znajduje się w `memorySearch.query.hybrid`:
Wszystko w `memorySearch.query.hybrid`:
| Klucz | Typ | Domyślnie | Opis |
| --------------------- | --------- | --------- | ---------------------------------- |
| Klucz | Typ | Domyślnie | Opis |
| --------------------- | --------- | --------- | ------------------------------------ |
| `enabled` | `boolean` | `true` | Włącza hybrydowe wyszukiwanie BM25 + wektorowe |
| `vectorWeight` | `number` | `0.7` | Waga wyników wektorowych (0-1) |
| `textWeight` | `number` | `0.3` | Waga wyników BM25 (0-1) |
| `candidateMultiplier` | `number` | `4` | Mnożnik rozmiaru puli kandydatów |
| `vectorWeight` | `number` | `0.7` | Waga dla wyników wektorowych (0-1) |
| `textWeight` | `number` | `0.3` | Waga dla wyników BM25 (0-1) |
| `candidateMultiplier` | `number` | `4` | Mnożnik rozmiaru puli kandydatów |
### MMR (różnorodność)
| Klucz | Typ | Domyślnie | Opis |
| ------------- | --------- | --------- | ---------------------------------------- |
| `mmr.enabled` | `boolean` | `false` | Włącza ponowne rankingowanie MMR |
| `mmr.lambda` | `number` | `0.7` | 0 = maksymalna różnorodność, 1 = maksymalna trafność |
| Klucz | Typ | Domyślnie | Opis |
| ------------- | --------- | --------- | ----------------------------------------- |
| `mmr.enabled` | `boolean` | `false` | Włącza ponowne rangowanie MMR |
| `mmr.lambda` | `number` | `0.7` | 0 = maks. różnorodność, 1 = maks. trafność |
### Zanikanie czasowe (świeżość)
### Zanik czasowy (świeżość)
| Klucz | Typ | Domyślnie | Opis |
| ---------------------------- | --------- | --------- | ----------------------------- |
| `temporalDecay.enabled` | `boolean` | `false` | Włącza premiowanie świeżości |
| `temporalDecay.halfLifeDays` | `number` | `30` | Wynik spada o połowę co N dni |
| Klucz | Typ | Domyślnie | Opis |
| ---------------------------- | --------- | --------- | ------------------------------- |
| `temporalDecay.enabled` | `boolean` | `false` | Włącza wzmocnienie świeżości |
| `temporalDecay.halfLifeDays` | `number` | `30` | Wynik spada o połowę co N dni |
Pliki stałe (`MEMORY.md`, pliki bez daty w `memory/`) nigdy nie podlegają zanikaniu.
Pliki evergreen (`MEMORY.md`, pliki bez daty w `memory/`) nigdy nie podlegają zanikowi.
### Pełny przykład
@ -267,9 +265,9 @@ Pliki stałe (`MEMORY.md`, pliki bez daty w `memory/`) nigdy nie podlegają zani
## Dodatkowe ścieżki pamięci
| Klucz | Typ | Opis |
| ----------- | ---------- | --------------------------------------- |
| `extraPaths` | `string[]` | Dodatkowe katalogi lub pliki do zindeksowania |
| Klucz | Typ | Opis |
| ----------- | ---------- | ----------------------------------------- |
| `extraPaths` | `string[]` | Dodatkowe katalogi lub pliki do indeksowania |
```json5
{
@ -283,31 +281,31 @@ Pliki stałe (`MEMORY.md`, pliki bez daty w `memory/`) nigdy nie podlegają zani
}
```
Ścieżki mogą być bezwzględne lub względne względem workspace. Katalogi są skanowane
Ścieżki mogą być bezwzględne lub względne względem obszaru roboczego. Katalogi są skanowane
rekurencyjnie w poszukiwaniu plików `.md`. Obsługa symlinków zależy od aktywnego backendu:
wbudowany silnik ignoruje symlinki, a QMD stosuje zachowanie skanera QMD.
wbudowany silnik ignoruje symlinki, natomiast QMD stosuje zachowanie skanera QMD.
W przypadku wyszukiwania transkryptów między agentami w zakresie agenta użyj
W przypadku wyszukiwania transkryptów między agentami o zakresie agenta użyj
`agents.list[].memorySearch.qmd.extraCollections` zamiast `memory.qmd.paths`.
Te dodatkowe kolekcje mają ten sam kształt `{ path, name, pattern? }`, ale
są scalane per agent i mogą zachowywać jawne wspólne nazwy, gdy ścieżka
wskazuje poza bieżący workspace.
Jeśli ta sama rozpoznana ścieżka pojawi się zarówno w `memory.qmd.paths`, jak i w
`memorySearch.qmd.extraCollections`, QMD zachowa pierwszy wpis i pominie duplikat.
Te dodatkowe kolekcje używają tego samego kształtu `{ path, name, pattern? }`, ale
są scalane per agent i mogą zachować jawne współdzielone nazwy, gdy ścieżka
wskazuje poza bieżący obszar roboczy.
Jeśli ta sama rozwiązana ścieżka pojawia się zarówno w `memory.qmd.paths`, jak i
`memorySearch.qmd.extraCollections`, QMD zachowuje pierwszy wpis i pomija duplikat.
---
## Pamięć multimodalna (Gemini)
Indeksuj obrazy i audio obok Markdown za pomocą Gemini Embedding 2:
Indeksuj obrazy i audio obok Markdown przy użyciu Gemini Embedding 2:
| Klucz | Typ | Domyślnie | Opis |
| ------------------------- | ---------- | ---------- | -------------------------------------- |
| `multimodal.enabled` | `boolean` | `false` | Włącza indeksowanie multimodalne |
| `multimodal.modalities` | `string[]` | -- | `["image"]`, `["audio"]` lub `["all"]` |
| Klucz | Typ | Domyślnie | Opis |
| ------------------------- | ---------- | ---------- | ---------------------------------------- |
| `multimodal.enabled` | `boolean` | `false` | Włącza indeksowanie multimodalne |
| `multimodal.modalities` | `string[]` | -- | `["image"]`, `["audio"]` lub `["all"]` |
| `multimodal.maxFileBytes` | `number` | `10000000` | Maksymalny rozmiar pliku do indeksowania |
Dotyczy tylko plików w `extraPaths`. Domyślne katalogi pamięci pozostają tylko dla Markdown.
Dotyczy tylko plików w `extraPaths`. Domyślne katalogi główne pamięci pozostają tylko dla Markdown.
Wymaga `gemini-embedding-2-preview`. `fallback` musi mieć wartość `"none"`.
Obsługiwane formaty: `.jpg`, `.jpeg`, `.png`, `.webp`, `.gif`, `.heic`, `.heif`
@ -315,11 +313,11 @@ Obsługiwane formaty: `.jpg`, `.jpeg`, `.png`, `.webp`, `.gif`, `.heic`, `.heif`
---
## Pamięć podręczna embeddingów
## Cache embeddingów
| Klucz | Typ | Domyślnie | Opis |
| ------------------ | --------- | --------- | --------------------------------- |
| `cache.enabled` | `boolean` | `false` | Buforuje embeddingi fragmentów w SQLite |
| Klucz | Typ | Domyślnie | Opis |
| ------------------ | --------- | --------- | ----------------------------------- |
| `cache.enabled` | `boolean` | `false` | Buforuje embeddingi chunków w SQLite |
| `cache.maxEntries` | `number` | `50000` | Maksymalna liczba buforowanych embeddingów |
Zapobiega ponownemu tworzeniu embeddingów dla niezmienionego tekstu podczas ponownego indeksowania lub aktualizacji transkryptów.
@ -328,52 +326,51 @@ Zapobiega ponownemu tworzeniu embeddingów dla niezmienionego tekstu podczas pon
## Indeksowanie wsadowe
| Klucz | Typ | Domyślnie | Opis |
| -------------------------- | --------- | --------- | -------------------------- |
| `remote.batch.enabled` | `boolean` | `false` | Włącza API embeddingów wsadowych |
| `remote.batch.concurrency` | `number` | `2` | Równoległe zadania wsadowe |
| `remote.batch.wait` | `boolean` | `true` | Czeka na zakończenie wsadu |
| `remote.batch.pollIntervalMs` | `number` | -- | Interwał odpytywania |
| `remote.batch.timeoutMinutes` | `number` | -- | Limit czasu wsadu |
| Klucz | Typ | Domyślnie | Opis |
| ----------------------------- | --------- | --------- | ---------------------------- |
| `remote.batch.enabled` | `boolean` | `false` | Włącza API embeddingów wsadowych |
| `remote.batch.concurrency` | `number` | `2` | Równoległe zadania wsadowe |
| `remote.batch.wait` | `boolean` | `true` | Czeka na zakończenie wsadu |
| `remote.batch.pollIntervalMs` | `number` | -- | Interwał odpytywania |
| `remote.batch.timeoutMinutes` | `number` | -- | Limit czasu wsadu |
Dostępne dla `openai`, `gemini` i `voyage`. Wsady OpenAI są zwykle
najszybsze i najtańsze przy dużych uzupełnieniach historycznych.
Dostępne dla `openai`, `gemini` i `voyage`. Wsad OpenAI jest zazwyczaj
najszybszy i najtańszy przy dużych uzupełnieniach danych.
---
## Wyszukiwanie w pamięci sesji (eksperymentalne)
## Wyszukiwanie pamięci sesji (eksperymentalne)
Indeksuj transkrypcje sesji i udostępniaj je przez `memory_search`:
| Klucz | Typ | Domyślnie | Opis |
| --------------------------- | ---------- | ------------ | ----------------------------------------- |
| `experimental.sessionMemory` | `boolean` | `false` | Włącza indeksowanie sesji |
| `sources` | `string[]` | `["memory"]` | Dodaj `"sessions"`, aby uwzględnić transkrypcje |
| `sync.sessions.deltaBytes` | `number` | `100000` | Próg bajtów dla ponownego indeksowania |
| `sync.sessions.deltaMessages` | `number` | `50` | Próg liczby wiadomości dla ponownego indeksowania |
| Klucz | Typ | Domyślnie | Opis |
| --------------------------- | ---------- | ------------ | ------------------------------------------ |
| `experimental.sessionMemory` | `boolean` | `false` | Włącza indeksowanie sesji |
| `sources` | `string[]` | `["memory"]` | Dodaj `"sessions"`, aby uwzględnić transkrypty |
| `sync.sessions.deltaBytes` | `number` | `100000` | Próg bajtów dla ponownego indeksowania |
| `sync.sessions.deltaMessages` | `number` | `50` | Próg liczby wiadomości dla ponownego indeksowania |
Indeksowanie sesji jest funkcją opt-in i działa asynchronicznie. Wyniki mogą być nieco
nieaktualne. Logi sesji są przechowywane na dysku, więc granicą zaufania pozostaje
dostęp do systemu plików.
Indeksowanie sesji jest opt-in i działa asynchronicznie. Wyniki mogą być nieco
nieaktualne. Logi sesji są przechowywane na dysku, więc traktuj dostęp do systemu plików jako granicę zaufania.
---
## Akceleracja wektorowa SQLite (sqlite-vec)
## Przyspieszenie wektorowe SQLite (`sqlite-vec`)
| Klucz | Typ | Domyślnie | Opis |
| ------------------------- | --------- | --------- | --------------------------------- |
| `store.vector.enabled` | `boolean` | `true` | Używa sqlite-vec do zapytań wektorowych |
| `store.vector.extensionPath` | `string` | dołączona | Nadpisuje ścieżkę do sqlite-vec |
| Klucz | Typ | Domyślnie | Opis |
| ------------------------ | --------- | --------- | ------------------------------------- |
| `store.vector.enabled` | `boolean` | `true` | Używa `sqlite-vec` do zapytań wektorowych |
| `store.vector.extensionPath` | `string` | bundlowane | Nadpisuje ścieżkę `sqlite-vec` |
Gdy sqlite-vec jest niedostępne, OpenClaw automatycznie przełącza się na
podobieństwo cosinusowe w procesie.
Gdy `sqlite-vec` nie jest dostępne, OpenClaw automatycznie przechodzi na obliczanie
podobieństwa cosinusowego w procesie.
---
## Przechowywanie indeksu
| Klucz | Typ | Domyślnie | Opis |
| -------------------- | -------- | ------------------------------------ | -------------------------------------------- |
| Klucz | Typ | Domyślnie | Opis |
| -------------------- | -------- | ------------------------------------- | -------------------------------------------- |
| `store.path` | `string` | `~/.openclaw/memory/{agentId}.sqlite` | Lokalizacja indeksu (obsługuje token `{agentId}`) |
| `store.fts.tokenizer` | `string` | `unicode61` | Tokenizer FTS5 (`unicode61` lub `trigram`) |
@ -384,45 +381,45 @@ podobieństwo cosinusowe w procesie.
Ustaw `memory.backend = "qmd"`, aby włączyć. Wszystkie ustawienia QMD znajdują się w
`memory.qmd`:
| Klucz | Typ | Domyślnie | Opis |
| ----------------------- | --------- | --------- | -------------------------------------------- |
| `command` | `string` | `qmd` | Ścieżka do pliku wykonywalnego QMD |
| Klucz | Typ | Domyślnie | Opis |
| ----------------------- | --------- | --------- | --------------------------------------------- |
| `command` | `string` | `qmd` | Ścieżka wykonywalna QMD |
| `searchMode` | `string` | `search` | Polecenie wyszukiwania: `search`, `vsearch`, `query` |
| `includeDefaultMemory` | `boolean` | `true` | Automatycznie indeksuje `MEMORY.md` + `memory/**/*.md` |
| `paths[]` | `array` | -- | Dodatkowe ścieżki: `{ name, path, pattern? }` |
| `sessions.enabled` | `boolean` | `false` | Indeksuje transkrypcje sesji |
| `sessions.retentionDays` | `number` | -- | Retencja transkryptów |
| `sessions.exportDir` | `string` | -- | Katalog eksportu |
| `sessions.enabled` | `boolean` | `false` | Indeksuje transkrypty sesji |
| `sessions.retentionDays` | `number` | -- | Retencja transkryptów |
| `sessions.exportDir` | `string` | -- | Katalog eksportu |
OpenClaw preferuje bieżące kształty kolekcji QMD i zapytań MCP, ale zachowuje
zgodność ze starszymi wydaniami QMD, przechodząc w razie potrzeby na starsze flagi kolekcji `--mask`
oraz starsze nazwy narzędzi MCP.
OpenClaw preferuje bieżące kształty kolekcji QMD i zapytań MCP, ale utrzymuje
zgodność ze starszymi wydaniami QMD, przechodząc awaryjnie na starsze flagi kolekcji `--mask`
i starsze nazwy narzędzi MCP, gdy jest to potrzebne.
Nadpisania modeli QMD pozostają po stronie QMD, a nie w konfiguracji OpenClaw. Jeśli chcesz
globalnie nadpisać modele QMD, ustaw zmienne środowiskowe takie jak
`QMD_EMBED_MODEL`, `QMD_RERANK_MODEL` i `QMD_GENERATE_MODEL` w środowisku uruchomieniowym gatewaya.
`QMD_EMBED_MODEL`, `QMD_RERANK_MODEL` i `QMD_GENERATE_MODEL` w środowisku uruchomieniowym Gateway.
### Harmonogram aktualizacji
| Klucz | Typ | Domyślnie | Opis |
| ------------------------ | --------- | --------- | ----------------------------------------- |
| `update.interval` | `string` | `5m` | Interwał odświeżania |
| `update.debounceMs` | `number` | `15000` | Debounce zmian plików |
| `update.onBoot` | `boolean` | `true` | Odświeża przy uruchomieniu |
| `update.waitForBootSync` | `boolean` | `false` | Blokuje uruchamianie do zakończenia odświeżenia |
| `update.embedInterval` | `string` | -- | Oddzielna częstotliwość embeddingów |
| Klucz | Typ | Domyślnie | Opis |
| ------------------------- | --------- | --------- | ----------------------------------------- |
| `update.interval` | `string` | `5m` | Interwał odświeżania |
| `update.debounceMs` | `number` | `15000` | Debounce zmian plików |
| `update.onBoot` | `boolean` | `true` | Odświeżanie przy starcie |
| `update.waitForBootSync` | `boolean` | `false` | Blokuje start do zakończenia odświeżenia |
| `update.embedInterval` | `string` | -- | Osobny harmonogram embeddingów |
| `update.commandTimeoutMs` | `number` | -- | Limit czasu dla poleceń QMD |
| `update.updateTimeoutMs` | `number` | -- | Limit czasu dla operacji aktualizacji QMD |
| `update.embedTimeoutMs` | `number` | -- | Limit czasu dla operacji embeddingów QMD |
| `update.updateTimeoutMs` | `number` | -- | Limit czasu dla operacji aktualizacji QMD |
| `update.embedTimeoutMs` | `number` | -- | Limit czasu dla operacji embeddingów QMD |
### Limity
| Klucz | Typ | Domyślnie | Opis |
| ------------------------ | -------- | --------- | ------------------------------ |
| `limits.maxResults` | `number` | `6` | Maksymalna liczba wyników wyszukiwania |
| `limits.maxSnippetChars` | `number` | -- | Ogranicza długość fragmentu |
| Klucz | Typ | Domyślnie | Opis |
| ------------------------- | -------- | --------- | ------------------------------- |
| `limits.maxResults` | `number` | `6` | Maksymalna liczba wyników wyszukiwania |
| `limits.maxSnippetChars` | `number` | -- | Ogranicza długość fragmentu |
| `limits.maxInjectedChars` | `number` | -- | Ogranicza łączną liczbę wstrzykniętych znaków |
| `limits.timeoutMs` | `number` | `4000` | Limit czasu wyszukiwania |
| `limits.timeoutMs` | `number` | `4000` | Limit czasu wyszukiwania |
### Zakres
@ -442,8 +439,11 @@ Kontroluje, które sesje mogą otrzymywać wyniki wyszukiwania QMD. Ten sam sche
}
```
Dostarczana domyślna konfiguracja dopuszcza sesje bezpośrednie i kanałowe, nadal odrzucając
grupy.
Domyślnie tylko DM. `match.keyPrefix` dopasowuje znormalizowany klucz sesji;
`match.rawKeyPrefix` dopasowuje surowy klucz zawierający `agent:<id>:`.
`match.rawKeyPrefix` dopasowuje surowy klucz, włącznie z `agent:<id>:`.
### Cytowania
@ -451,9 +451,9 @@ Domyślnie tylko DM. `match.keyPrefix` dopasowuje znormalizowany klucz sesji;
| Wartość | Zachowanie |
| ---------------- | -------------------------------------------------- |
| `auto` (domyślnie) | Dołącza stopkę `Source: <path#line>` w fragmentach |
| `on` | Zawsze dołącza stopkę |
| `off` | Pomija stopkę (ścieżka nadal jest przekazywana agentowi wewnętrznie) |
| `auto` (domyślnie) | Dodaje stopkę `Source: <path#line>` w fragmentach |
| `on` | Zawsze dodaje stopkę |
| `off` | Pomija stopkę (ścieżka nadal jest wewnętrznie przekazywana agentowi) |
### Pełny przykład QMD
@ -483,17 +483,17 @@ Domyślnie tylko DM. `match.keyPrefix` dopasowuje znormalizowany klucz sesji;
Dreaming jest konfigurowane w `plugins.entries.memory-core.config.dreaming`,
a nie w `agents.defaults.memorySearch`.
Dreaming działa jako jeden zaplanowany przebieg i używa wewnętrznych faz light/deep/REM jako
szczegółu implementacyjnego.
Dreaming działa jako jeden zaplanowany przebieg i wykorzystuje wewnętrzne fazy light/deep/REM jako
szczegół implementacyjny.
Aby zapoznać się z działaniem pojęciowym i poleceniami slash, zobacz [Dreaming](/pl/concepts/dreaming).
Aby poznać zachowanie koncepcyjne i polecenia slash, zobacz [Dreaming](/pl/concepts/dreaming).
### Ustawienia użytkownika
| Klucz | Typ | Domyślnie | Opis |
| ----------- | --------- | ----------- | ------------------------------------------------- |
| `enabled` | `boolean` | `false` | Całkowicie włącza lub wyłącza dreaming |
| `frequency` | `string` | `0 3 * * *` | Opcjonalna częstotliwość cron dla pełnego przebiegu dreaming |
| Klucz | Typ | Domyślnie | Opis |
| ---------- | --------- | ------------ | -------------------------------------------------- |
| `enabled` | `boolean` | `false` | Całkowicie włącza lub wyłącza Dreaming |
| `frequency` | `string` | `0 3 * * *` | Opcjonalna składnia Cron dla pełnego przebiegu Dreaming |
### Przykład
@ -516,6 +516,6 @@ Aby zapoznać się z działaniem pojęciowym i poleceniami slash, zobacz [Dreami
Uwagi:
- Dreaming zapisuje stan maszyny w `memory/.dreams/`.
- Dreaming zapisuje czytelne dla człowieka narracyjne dane wyjściowe w `DREAMS.md` (lub istniejącym `dreams.md`).
- Zasady i progi faz light/deep/REM są zachowaniem wewnętrznym, a nie konfiguracją przeznaczoną dla użytkownika.
- Dreaming zapisuje stan maszyny do `memory/.dreams/`.
- Dreaming zapisuje czytelne dla człowieka wyjście narracyjne do `DREAMS.md` (lub istniejącego `dreams.md`).
- Zasady i progi faz light/deep/REM są zachowaniem wewnętrznym, a nie konfiguracją skierowaną do użytkownika.

View File

@ -1,14 +1,14 @@
---
read_when:
- Używanie lub konfigurowanie poleceń czatu
- Debugowanie routingu poleceń lub uprawnień to permissions
- Debugowanie routingu poleceń lub uprawnień
summary: 'Polecenia ukośnikowe: tekstowe vs natywne, konfiguracja i obsługiwane polecenia'
title: Polecenia ukośnikowe
x-i18n:
generated_at: "2026-04-11T02:48:33Z"
generated_at: "2026-04-12T23:33:58Z"
model: gpt-5.4
provider: openai
source_hash: 2cc346361c3b1a63aae9ec0f28706f4cb0b866b6c858a3999101f6927b923b4a
source_hash: 9ef6f54500fa2ce3b873a8398d6179a0882b8bf6fba38f61146c64671055505e
source_path: tools/slash-commands.md
workflow: 15
---
@ -16,21 +16,21 @@ x-i18n:
# Polecenia ukośnikowe
Polecenia są obsługiwane przez Gateway. Większość poleceń musi zostać wysłana jako **samodzielna** wiadomość zaczynająca się od `/`.
Polecenie czatu bash tylko dla hosta używa `! <cmd>` (z aliasem `/bash <cmd>`).
Polecenie czatu bash dostępne tylko na hoście używa `! <cmd>` (z aliasem `/bash <cmd>`).
Istnieją dwa powiązane systemy:
- **Polecenia**: samodzielne wiadomości `/...`.
- **Dyrektywy**: `/think`, `/fast`, `/verbose`, `/reasoning`, `/elevated`, `/exec`, `/model`, `/queue`.
- **Dyrektywy**: `/think`, `/fast`, `/verbose`, `/trace`, `/reasoning`, `/elevated`, `/exec`, `/model`, `/queue`.
- Dyrektywy są usuwane z wiadomości, zanim model ją zobaczy.
- W zwykłych wiadomościach czatu (nie tylko z dyrektywami) są traktowane jako „wskazówki inline” i **nie** utrwalają ustawień sesji.
- W zwykłych wiadomościach czatu (nie będących wyłącznie dyrektywami) są traktowane jako „wskazówki inline” i **nie** zachowują ustawień sesji.
- W wiadomościach zawierających wyłącznie dyrektywy (wiadomość zawiera tylko dyrektywy) utrwalają się w sesji i odpowiadają potwierdzeniem.
- Dyrektywy są stosowane tylko dla **autoryzowanych nadawców**. Jeśli ustawiono `commands.allowFrom`, jest to jedyna
lista dozwolonych używana dla dyrektyw; w przeciwnym razie autoryzacja pochodzi z list dozwolonych/parowania kanałów oraz `commands.useAccessGroups`.
allowlista używana; w przeciwnym razie autoryzacja pochodzi z allowlist/parowania kanałów oraz `commands.useAccessGroups`.
Nieautoryzowani nadawcy widzą dyrektywy traktowane jak zwykły tekst.
Istnieje też kilka **skrótów inline** (tylko dla nadawców z allowlisty/autoryzowanych): `/help`, `/commands`, `/status`, `/whoami` (`/id`).
Uruchamiają się natychmiast, są usuwane przed zobaczeniem wiadomości przez model, a pozostały tekst przechodzi dalej normalnym przepływem.
Są też dostępne niektóre **skróty inline** (tylko dla nadawców z allowlisty / autoryzowanych): `/help`, `/commands`, `/status`, `/whoami` (`/id`).
Uruchamiają się natychmiast, są usuwane, zanim model zobaczy wiadomość, a pozostały tekst przechodzi dalej przez normalny przepływ.
## Konfiguracja
@ -60,106 +60,107 @@ Uruchamiają się natychmiast, są usuwane przed zobaczeniem wiadomości przez m
```
- `commands.text` (domyślnie `true`) włącza parsowanie `/...` w wiadomościach czatu.
- Na powierzchniach bez natywnych poleceń (WhatsApp/WebChat/Signal/iMessage/Google Chat/Microsoft Teams) polecenia tekstowe nadal działają, nawet jeśli ustawisz to na `false`.
- Na powierzchniach bez natywnych poleceń (WhatsApp/WebChat/Signal/iMessage/Google Chat/Microsoft Teams) polecenia tekstowe nadal działają, nawet jeśli ustawisz tę opcję na `false`.
- `commands.native` (domyślnie `"auto"`) rejestruje polecenia natywne.
- Auto: włączone dla Discord/Telegram; wyłączone dla Slack (dopóki nie dodasz slash commands); ignorowane dla providerów bez natywnego wsparcia.
- Ustaw `channels.discord.commands.native`, `channels.telegram.commands.native` lub `channels.slack.commands.native`, aby nadpisać to dla konkretnego providera (bool lub `"auto"`).
- `false` czyści wcześniej zarejestrowane polecenia w Discord/Telegram przy uruchamianiu. Polecenia Slack są zarządzane w aplikacji Slack i nie są usuwane automatycznie.
- `commands.nativeSkills` (domyślnie `"auto"`) rejestruje polecenia **Skills** natywnie tam, gdzie jest to obsługiwane.
- Auto: włączone dla Discord/Telegram; wyłączone dla Slack (Slack wymaga utworzenia slash command dla każdej skill).
- Ustaw `channels.discord.commands.nativeSkills`, `channels.telegram.commands.nativeSkills` lub `channels.slack.commands.nativeSkills`, aby nadpisać to dla konkretnego providera (bool lub `"auto"`).
- `commands.bash` (domyślnie `false`) włącza `! <cmd>` do uruchamiania poleceń powłoki hosta (`/bash <cmd>` jest aliasem; wymaga allowlist `tools.elevated`).
- `commands.bashForegroundMs` (domyślnie `2000`) określa, jak długo bash czeka przed przełączeniem do trybu tła (`0` natychmiast przenosi do tła).
- Auto: włączone dla Discord/Telegram; wyłączone dla Slack (dopóki nie dodasz poleceń ukośnikowych); ignorowane dla dostawców bez obsługi natywnej.
- Ustaw `channels.discord.commands.native`, `channels.telegram.commands.native` lub `channels.slack.commands.native`, aby nadpisać to per dostawca (bool albo `"auto"`).
- `false` czyści wcześniej zarejestrowane polecenia na Discord/Telegram przy starcie. Polecenia Slack są zarządzane w aplikacji Slack i nie są usuwane automatycznie.
- `commands.nativeSkills` (domyślnie `"auto"`) rejestruje natywnie polecenia **Skills**, gdy jest to obsługiwane.
- Auto: włączone dla Discord/Telegram; wyłączone dla Slack (Slack wymaga utworzenia polecenia ukośnikowego dla każdej Skill).
- Ustaw `channels.discord.commands.nativeSkills`, `channels.telegram.commands.nativeSkills` lub `channels.slack.commands.nativeSkills`, aby nadpisać to per dostawca (bool albo `"auto"`).
- `commands.bash` (domyślnie `false`) włącza `! <cmd>` do uruchamiania poleceń powłoki hosta (`/bash <cmd>` to alias; wymaga allowlist `tools.elevated`).
- `commands.bashForegroundMs` (domyślnie `2000`) określa, jak długo bash czeka przed przełączeniem się do trybu tła (`0` natychmiast przenosi do tła).
- `commands.config` (domyślnie `false`) włącza `/config` (odczyt/zapis `openclaw.json`).
- `commands.mcp` (domyślnie `false`) włącza `/mcp` (odczyt/zapis konfiguracji MCP zarządzanej przez OpenClaw w `mcp.servers`).
- `commands.plugins` (domyślnie `false`) włącza `/plugins` (wykrywanie/status pluginów oraz kontrolki instalacji + włączania/wyłączania).
- `commands.debug` (domyślnie `false`) włącza `/debug` (nadpisania tylko dla runtime).
- `commands.restart` (domyślnie `true`) włącza `/restart` oraz akcje narzędzi restartu gateway.
- `commands.ownerAllowFrom` (opcjonalne) ustawia jawną allowlistę właściciela dla powierzchni poleceń/narzędzi dostępnych tylko dla właściciela. Jest to oddzielne od `commands.allowFrom`.
- `commands.ownerDisplay` określa, jak identyfikatory właściciela pojawiają się w prompcie systemowym: `raw` lub `hash`.
- `commands.mcp` (domyślnie `false`) włącza `/mcp` (odczyt/zapis konfiguracji MCP zarządzanej przez OpenClaw pod `mcp.servers`).
- `commands.plugins` (domyślnie `false`) włącza `/plugins` (wykrywanie/status Plugin oraz kontrolki instalacji + włączania/wyłączania).
- `commands.debug` (domyślnie `false`) włącza `/debug` (nadpisania tylko na czas działania).
- `commands.restart` (domyślnie `true`) włącza `/restart` oraz działania narzędzia restartu Gateway.
- `commands.ownerAllowFrom` (opcjonalnie) ustawia jawną allowlistę właściciela dla powierzchni poleceń/narzędzi dostępnych tylko właścicielowi. To jest oddzielne od `commands.allowFrom`.
- `commands.ownerDisplay` określa, jak identyfikatory właściciela pojawiają się w promcie systemowym: `raw` albo `hash`.
- `commands.ownerDisplaySecret` opcjonalnie ustawia sekret HMAC używany, gdy `commands.ownerDisplay="hash"`.
- `commands.allowFrom` (opcjonalne) ustawia allowlistę dla autoryzacji poleceń per provider. Gdy jest skonfigurowana, jest to
jedyne źródło autoryzacji dla poleceń i dyrektyw (listy dozwolonych/parowanie kanałów i `commands.useAccessGroups`
są ignorowane). Użyj `"*"` jako globalnej wartości domyślnej; klucze specyficzne dla providera ją nadpisują.
- `commands.allowFrom` (opcjonalnie) ustawia allowlistę per dostawca dla autoryzacji poleceń. Gdy jest skonfigurowana, jest to
jedyne źródło autoryzacji dla poleceń i dyrektyw (allowlisty/parowanie kanałów i `commands.useAccessGroups`
są ignorowane). Użyj `"*"` jako globalnej wartości domyślnej; klucze specyficzne dla dostawcy mają pierwszeństwo.
- `commands.useAccessGroups` (domyślnie `true`) wymusza allowlisty/polityki dla poleceń, gdy `commands.allowFrom` nie jest ustawione.
## Lista poleceń
Bieżące źródło prawdy:
Obecne źródło prawdy:
- wbudowane polecenia core pochodzą z `src/auto-reply/commands-registry.shared.ts`
- wygenerowane dock commands pochodzą z `src/auto-reply/commands-registry.data.ts`
- polecenia pluginów pochodzą z wywołań plugin `registerCommand()`
- rzeczywista dostępność na Twoim gateway nadal zależy od flag konfiguracji, powierzchni kanału oraz zainstalowanych/włączonych pluginów
- wygenerowane polecenia dock pochodzą z `src/auto-reply/commands-registry.data.ts`
- polecenia Plugin pochodzą z wywołań `registerCommand()` w Plugin
- rzeczywista dostępność na Twoim Gateway nadal zależy od flag konfiguracji, powierzchni kanału i zainstalowanych/włączonych Plugin
### Wbudowane polecenia core
Wbudowane polecenia dostępne obecnie:
- `/new [model]` rozpoczyna nową sesję; `/reset` jest aliasem resetu.
- `/compact [instructions]` kompaktuje kontekst sesji. Zobacz [/concepts/compaction](/pl/concepts/compaction).
- `/new [model]` rozpoczyna nową sesję; `/reset` to alias resetu.
- `/compact [instructions]` wykonuje Compaction kontekstu sesji. Zobacz [/concepts/compaction](/pl/concepts/compaction).
- `/stop` przerywa bieżące uruchomienie.
- `/session idle <duration|off>` i `/session max-age <duration|off>` zarządzają wygaśnięciem powiązania wątku.
- `/think <off|minimal|low|medium|high|xhigh>` ustawia poziom rozumowania. Aliasy: `/thinking`, `/t`.
- `/think <off|minimal|low|medium|high|xhigh>` ustawia poziom thinking. Aliasy: `/thinking`, `/t`.
- `/verbose on|off|full` przełącza szczegółowe wyjście. Alias: `/v`.
- `/trace on|off` przełącza wyjście śledzenia Plugin dla bieżącej sesji.
- `/fast [status|on|off]` pokazuje lub ustawia tryb fast.
- `/reasoning [on|off|stream]` przełącza widoczność rozumowania. Alias: `/reason`.
- `/reasoning [on|off|stream]` przełącza widoczność reasoning. Alias: `/reason`.
- `/elevated [on|off|ask|full]` przełącza tryb elevated. Alias: `/elev`.
- `/exec host=<auto|sandbox|gateway|node> security=<deny|allowlist|full> ask=<off|on-miss|always> node=<id>` pokazuje lub ustawia domyślne wartości exec.
- `/model [name|#|status]` pokazuje lub ustawia model.
- `/models [provider] [page] [limit=<n>|size=<n>|all]` wyświetla listę providerów lub modeli dla providera.
- `/models [provider] [page] [limit=<n>|size=<n>|all]` wyświetla listę dostawców lub modeli dla dostawcy.
- `/queue <mode>` zarządza zachowaniem kolejki (`steer`, `interrupt`, `followup`, `collect`, `steer-backlog`) oraz opcjami takimi jak `debounce:2s cap:25 drop:summarize`.
- `/help` pokazuje krótkie podsumowanie pomocy.
- `/commands` pokazuje wygenerowany katalog poleceń.
- `/tools [compact|verbose]` pokazuje, czego bieżący agent może teraz używać.
- `/status` pokazuje status runtime, w tym użycie/limit providera, gdy jest dostępny.
- `/tasks` wyświetla aktywne/ostatnie zadania w tle dla bieżącej sesji.
- `/status` pokazuje status środowiska wykonawczego, w tym użycie/limit dostawcy, gdy jest dostępny.
- `/tasks` wyświetla aktywne/niedawne taski w tle dla bieżącej sesji.
- `/context [list|detail|json]` wyjaśnia, jak składany jest kontekst.
- `/export-session [path]` eksportuje bieżącą sesję do HTML. Alias: `/export`.
- `/whoami` pokazuje identyfikator nadawcy. Alias: `/id`.
- `/skill <name> [input]` uruchamia skill po nazwie.
- `/allowlist [list|add|remove] ...` zarządza wpisami allowlisty. Tylko tekstowe.
- `/approve <id> <decision>` rozwiązuje prompty zatwierdz exec.
- `/btw <question>` zadaje poboczne pytanie bez zmieniania przyszłego kontekstu sesji. Zobacz [/tools/btw](/pl/tools/btw).
- `/subagents list|kill|log|info|send|steer|spawn` zarządza uruchomieniami subagentów dla bieżącej sesji.
- `/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help` zarządza sesjami ACP i opcjami runtime.
- `/focus <target>` wiąże bieżący wątek Discord lub temat/konwersację Telegram z celem sesji.
- `/whoami` pokazuje Twój identyfikator nadawcy. Alias: `/id`.
- `/skill <name> [input]` uruchamia Skill po nazwie.
- `/allowlist [list|add|remove] ...` zarządza wpisami allowlisty. Tylko tekstowo.
- `/approve <id> <decision>` rozwiązuje prompty zatwierdzania exec.
- `/btw <question>` zadaje pytanie poboczne bez zmiany przyszłego kontekstu sesji. Zobacz [/tools/btw](/pl/tools/btw).
- `/subagents list|kill|log|info|send|steer|spawn` zarządza uruchomieniami podagentów dla bieżącej sesji.
- `/acp spawn|cancel|steer|close|sessions|status|set-mode|set|cwd|permissions|timeout|model|reset-options|doctor|install|help` zarządza sesjami ACP i opcjami środowiska wykonawczego.
- `/focus <target>` wiąże bieżący wątek Discord albo temat/rozmowę Telegram z celem sesji.
- `/unfocus` usuwa bieżące powiązanie.
- `/agents` wyświetla listę agentów związanych z wątkiem dla bieżącej sesji.
- `/kill <id|#|all>` przerywa jednego lub wszystkich działających subagentów.
- `/steer <id|#> <message>` wysyła sterowanie do działającego subagenta. Alias: `/tell`.
- `/config show|get|set|unset` odczytuje lub zapisuje `openclaw.json`. Tylko dla właściciela. Wymaga `commands.config: true`.
- `/mcp show|get|set|unset` odczytuje lub zapisuje konfigurację serwera MCP zarządzaną przez OpenClaw w `mcp.servers`. Tylko dla właściciela. Wymaga `commands.mcp: true`.
- `/plugins list|inspect|show|get|install|enable|disable` sprawdza lub zmienia stan pluginów. `/plugin` jest aliasem. Zapis tylko dla właściciela. Wymaga `commands.plugins: true`.
- `/debug show|set|unset|reset` zarządza nadpisaniami konfiguracji tylko dla runtime. Tylko dla właściciela. Wymaga `commands.debug: true`.
- `/usage off|tokens|full|cost` steruje stopką użycia dla każdej odpowiedzi albo wyświetla lokalne podsumowanie kosztów.
- `/agents` wyświetla listę agentów powiązanych z wątkiem dla bieżącej sesji.
- `/kill <id|#|all>` przerywa jednego albo wszystkich uruchomionych podagentów.
- `/steer <id|#> <message>` wysyła sterowanie do działającego podagenta. Alias: `/tell`.
- `/config show|get|set|unset` odczytuje lub zapisuje `openclaw.json`. Tylko właściciel. Wymaga `commands.config: true`.
- `/mcp show|get|set|unset` odczytuje lub zapisuje konfigurację serwera MCP zarządzaną przez OpenClaw pod `mcp.servers`. Tylko właściciel. Wymaga `commands.mcp: true`.
- `/plugins list|inspect|show|get|install|enable|disable` sprawdza lub modyfikuje stan Plugin. `/plugin` to alias. Zapisy tylko dla właściciela. Wymaga `commands.plugins: true`.
- `/debug show|set|unset|reset` zarządza nadpisaniami konfiguracji tylko na czas działania. Tylko właściciel. Wymaga `commands.debug: true`.
- `/usage off|tokens|full|cost` kontroluje stopkę użycia przy każdej odpowiedzi albo wypisuje lokalne podsumowanie kosztów.
- `/tts on|off|status|provider|limit|summary|audio|help` steruje TTS. Zobacz [/tools/tts](/pl/tools/tts).
- `/restart` restartuje OpenClaw, gdy jest włączone. Domyślnie: włączone; ustaw `commands.restart: false`, aby je wyłączyć.
- `/activation mention|always` ustawia tryb aktywacji grupy.
- `/send on|off|inherit` ustawia politykę wysyłania. Tylko dla właściciela.
- `/bash <command>` uruchamia polecenie powłoki hosta. Tylko tekstowe. Alias: `! <command>`. Wymaga `commands.bash: true` oraz allowlist `tools.elevated`.
- `!poll [sessionId]` sprawdza zadanie bash działające w tle.
- `!stop [sessionId]` zatrzymuje zadanie bash działające w tle.
- `/send on|off|inherit` ustawia politykę wysyłania. Tylko właściciel.
- `/bash <command>` uruchamia polecenie powłoki hosta. Tylko tekstowo. Alias: `! <command>`. Wymaga `commands.bash: true` oraz allowlist `tools.elevated`.
- `!poll [sessionId]` sprawdza zadanie bash w tle.
- `!stop [sessionId]` zatrzymuje zadanie bash w tle.
### Wygenerowane dock commands
### Wygenerowane polecenia dock
Dock commands są generowane z pluginów kanałów ze wsparciem natywnych poleceń. Obecny zestaw wbudowany:
Polecenia dock są generowane z Plugin kanałów z obsługą poleceń natywnych. Obecny dołączony zestaw:
- `/dock-discord` (alias: `/dock_discord`)
- `/dock-mattermost` (alias: `/dock_mattermost`)
- `/dock-slack` (alias: `/dock_slack`)
- `/dock-telegram` (alias: `/dock_telegram`)
### Polecenia wbudowanych pluginów
### Polecenia dołączonych Plugin
Wbudowane pluginy mogą dodawać więcej poleceń ukośnikowych. Bieżące polecenia wbudowane w tym repo:
Dołączone Plugin mogą dodawać więcej poleceń ukośnikowych. Obecne dołączone polecenia w tym repozytorium:
- `/dreaming [on|off|status|help]` przełącza dreaming pamięci. Zobacz [Dreaming](/pl/concepts/dreaming).
- `/pair [qr|status|pending|approve|cleanup|notify]` zarządza przepływem parowania/konfiguracji urządzeń. Zobacz [Pairing](/pl/channels/pairing).
- `/phone status|arm <camera|screen|writes|all> [duration]|disarm` tymczasowo uzbraja wysokiego ryzyka polecenia node telefonu.
- `/voice status|list [limit]|set <voiceId|name>` zarządza konfiguracją głosu Talk. W Discord natywna nazwa polecenia to `/talkvoice`.
- `/card ...` wysyła presety kart LINE rich card. Zobacz [LINE](/pl/channels/line).
- `/codex status|models|threads|resume|compact|review|account|mcp|skills` sprawdza i kontroluje wbudowany harness app-servera Codex. Zobacz [Codex Harness](/pl/plugins/codex-harness).
- `/dreaming [on|off|status|help]` przełącza Dreaming pamięci. Zobacz [Dreaming](/pl/concepts/dreaming).
- `/pair [qr|status|pending|approve|cleanup|notify]` zarządza przepływem parowania/konfiguracji urządzenia. Zobacz [Pairing](/pl/channels/pairing).
- `/phone status|arm <camera|screen|writes|all> [duration]|disarm` tymczasowo uzbraja polecenia Node telefonu o wysokim ryzyku.
- `/voice status|list [limit]|set <voiceId|name>` zarządza konfiguracją głosu Talk. Na Discordzie natywna nazwa polecenia to `/talkvoice`.
- `/card ...` wysyła presety bogatych kart LINE. Zobacz [LINE](/pl/channels/line).
- `/codex status|models|threads|resume|compact|review|account|mcp|skills` sprawdza i steruje dołączonym harness app-server Codex. Zobacz [Codex Harness](/pl/plugins/codex-harness).
- Polecenia tylko dla QQBot:
- `/bot-ping`
- `/bot-version`
@ -169,70 +170,71 @@ Wbudowane pluginy mogą dodawać więcej poleceń ukośnikowych. Bieżące polec
### Dynamiczne polecenia Skills
Skills wywoływane przez użytkownika są również udostępniane jako polecenia ukośnikowe:
Skills wywoływane przez użytkownika są także udostępniane jako polecenia ukośnikowe:
- `/skill <name> [input]` zawsze działa jako ogólny punkt wejścia.
- Skills mogą też pojawiać się jako bezpośrednie polecenia, takie jak `/prose`, gdy skill/plugin je zarejestruje.
- Rejestracja natywnych poleceń Skills jest sterowana przez `commands.nativeSkills` oraz `channels.<provider>.commands.nativeSkills`.
- Skills mogą też pojawiać się jako bezpośrednie polecenia, takie jak `/prose`, gdy Skill/Plugin je rejestruje.
- rejestracja natywnych poleceń Skills jest kontrolowana przez `commands.nativeSkills` i `channels.<provider>.commands.nativeSkills`.
Uwagi:
- Polecenia akceptują opcjonalny `:` między poleceniem a argumentami (np. `/think: high`, `/send: on`, `/help:`).
- `/new <model>` akceptuje alias modelu, `provider/model` albo nazwę providera (dopasowanie rozmyte); jeśli nie ma dopasowania, tekst jest traktowany jako treść wiadomości.
- Aby uzyskać pełne zestawienie użycia per provider, użyj `openclaw status --usage`.
- `/allowlist add|remove` wymaga `commands.config=true` i respektuje `configWrites` kanału.
- W kanałach wielokontowych ukierunkowane na konfigurację `/allowlist --account <id>` oraz `/config set channels.<provider>.accounts.<id>...` także respektują `configWrites` docelowego konta.
- `/usage` steruje stopką użycia dla każdej odpowiedzi; `/usage cost` wyświetla lokalne podsumowanie kosztów z logów sesji OpenClaw.
- Polecenia akceptują opcjonalny znak `:` między poleceniem a argumentami (np. `/think: high`, `/send: on`, `/help:`).
- `/new <model>` akceptuje alias modelu, `provider/model` albo nazwę dostawcy (dopasowanie rozmyte); jeśli nic nie pasuje, tekst jest traktowany jako treść wiadomości.
- Aby zobaczyć pełne zestawienie użycia dostawców, użyj `openclaw status --usage`.
- `/allowlist add|remove` wymaga `commands.config=true` i respektuje kanałowe `configWrites`.
- W kanałach z wieloma kontami polecenia `/allowlist --account <id>` ukierunkowane na konfigurację oraz `/config set channels.<provider>.accounts.<id>...` również respektują `configWrites` konta docelowego.
- `/usage` kontroluje stopkę użycia dołączaną do każdej odpowiedzi; `/usage cost` wypisuje lokalne podsumowanie kosztów z logów sesji OpenClaw.
- `/restart` jest domyślnie włączone; ustaw `commands.restart: false`, aby je wyłączyć.
- `/plugins install <spec>` akceptuje te same specyfikacje pluginów co `openclaw plugins install`: lokalna ścieżka/archiwum, pakiet npm albo `clawhub:<pkg>`.
- `/plugins enable|disable` aktualizuje konfigurację pluginów i może poprosić o restart.
- Natywne polecenie tylko dla Discord: `/vc join|leave|status` steruje kanałami głosowymi (wymaga `channels.discord.voice` i poleceń natywnych; niedostępne jako polecenie tekstowe).
- Polecenia powiązań wątków Discord (`/focus`, `/unfocus`, `/agents`, `/session idle`, `/session max-age`) wymagają skutecznie włączonych powiązań wątków (`session.threadBindings.enabled` i/lub `channels.discord.threadBindings.enabled`).
- Dokumentacja polecenia ACP i zachowanie runtime: [ACP Agents](/pl/tools/acp-agents).
- `/plugins install <spec>` akceptuje te same specyfikacje Plugin co `openclaw plugins install`: lokalna ścieżka/archiwum, pakiet npm albo `clawhub:<pkg>`.
- `/plugins enable|disable` aktualizuje konfigurację Plugin i może poprosić o restart.
- Polecenie natywne tylko dla Discorda: `/vc join|leave|status` steruje kanałami głosowymi (wymaga `channels.discord.voice` i poleceń natywnych; niedostępne jako tekst).
- Polecenia powiązania wątku Discord (`/focus`, `/unfocus`, `/agents`, `/session idle`, `/session max-age`) wymagają skutecznie włączonych powiązań wątków (`session.threadBindings.enabled` i/lub `channels.discord.threadBindings.enabled`).
- Referencja poleceń ACP i zachowanie środowiska wykonawczego: [ACP Agents](/pl/tools/acp-agents).
- `/verbose` służy do debugowania i dodatkowej widoczności; w normalnym użyciu trzymaj je **wyłączone**.
- `/fast on|off` utrwala nadpisanie sesji. Użyj opcji `inherit` w interfejsie Sessions UI, aby je wyczyścić i wrócić do domyślnych ustawień z konfiguracji.
- `/fast` jest specyficzne dla providera: OpenAI/OpenAI Codex mapują je na `service_tier=priority` w natywnych endpointach Responses, podczas gdy bezpośrednie publiczne żądania Anthropic, w tym ruch uwierzytelniany OAuth wysyłany do `api.anthropic.com`, mapują je na `service_tier=auto` lub `standard_only`. Zobacz [OpenAI](/pl/providers/openai) i [Anthropic](/pl/providers/anthropic).
- Podsumowania błędów narzędzi są nadal pokazywane, gdy mają znaczenie, ale szczegółowy tekst błędu jest dołączany tylko wtedy, gdy `/verbose` ma wartość `on` albo `full`.
- `/reasoning` (i `/verbose`) są ryzykowne w ustawieniach grupowych: mogą ujawnić wewnętrzne rozumowanie albo dane wyjściowe narzędzi, których nie zamierzałeś ujawniać. Lepiej zostawić je wyłączone, szczególnie na czatach grupowych.
- `/model` natychmiast utrwala nowy model sesji.
- Jeśli agent jest bezczynny, następne uruchomienie użyje go od razu.
- Jeśli uruchomienie jest już aktywne, OpenClaw oznacza przełączenie na żywo jako oczekujące i restartuje się z nowym modelem dopiero w czystym punkcie ponownej próby.
- Jeśli aktywność narzędzi lub wyjście odpowiedzi już się rozpoczęły, oczekujące przełączenie może pozostać w kolejce do późniejszej okazji ponownej próby albo do następnej tury użytkownika.
- **Szybka ścieżka:** wiadomości zawierające tylko polecenie od nadawców z allowlisty są obsługiwane natychmiast (z pominięciem kolejki + modelu).
- **Wymóg wzmianki w grupie:** wiadomości zawierające tylko polecenie od nadawców z allowlisty omijają wymagania dotyczące wzmianki.
- **Skróty inline (tylko dla nadawców z allowlisty):** niektóre polecenia działają także po osadzeniu w zwykłej wiadomości i są usuwane, zanim model zobaczy pozostały tekst.
- Przykład: `hey /status` wywołuje odpowiedź statusu, a pozostały tekst przechodzi dalej normalnym przepływem.
- `/trace` jest węższe niż `/verbose`: ujawnia tylko linie śledzenia/debugowania należące do Plugin i nie pokazuje zwykłego szczegółowego szumu narzędzi.
- `/fast on|off` zapisuje nadpisanie sesji. Użyj opcji `inherit` w interfejsie Sessions, aby je wyczyścić i wrócić do domyślnych ustawień konfiguracji.
- `/fast` zależy od dostawcy: OpenAI/OpenAI Codex mapują je na `service_tier=priority` na natywnych endpointach Responses, podczas gdy bezpośrednie publiczne żądania Anthropic, w tym ruch uwierzytelniony OAuth wysyłany do `api.anthropic.com`, mapują je na `service_tier=auto` lub `standard_only`. Zobacz [OpenAI](/pl/providers/openai) i [Anthropic](/pl/providers/anthropic).
- Podsumowania awarii narzędzi są nadal pokazywane, gdy mają znaczenie, ale szczegółowy tekst awarii jest dołączany tylko wtedy, gdy `/verbose` ma wartość `on` albo `full`.
- `/reasoning`, `/verbose` i `/trace` są ryzykowne w ustawieniach grupowych: mogą ujawniać wewnętrzne reasoning, wyjście narzędzi albo diagnostykę Plugin, której nie zamierzałeś ujawniać. Lepiej zostawić je wyłączone, szczególnie w czatach grupowych.
- `/model` natychmiast zapisuje nowy model sesji.
- Jeśli agent jest bezczynny, następne uruchomienie od razu go użyje.
- Jeśli uruchomienie już trwa, OpenClaw oznacza przełączenie na żywo jako oczekujące i restartuje się do nowego modelu dopiero przy czystym punkcie ponowienia.
- Jeśli aktywność narzędzi albo wyjście odpowiedzi już się rozpoczęły, oczekujące przełączenie może pozostać w kolejce do późniejszej okazji ponowienia albo do następnej tury użytkownika.
- **Szybka ścieżka:** wiadomości zawierające tylko polecenie od nadawców z allowlisty są obsługiwane natychmiast (pomijają kolejkę + model).
- **Bramkowanie wzmianek grupowych:** wiadomości zawierające tylko polecenie od nadawców z allowlisty omijają wymagania dotyczące wzmianek.
- **Skróty inline (tylko dla nadawców z allowlisty):** niektóre polecenia działają również po osadzeniu w zwykłej wiadomości i są usuwane, zanim model zobaczy pozostały tekst.
- Przykład: `hey /status` wywołuje odpowiedź statusu, a pozostały tekst przechodzi dalej przez normalny przepływ.
- Obecnie: `/help`, `/commands`, `/status`, `/whoami` (`/id`).
- Nieautoryzowane wiadomości zawierające tylko polecenie są po cichu ignorowane, a tokeny inline `/...` są traktowane jak zwykły tekst.
- **Polecenia Skills:** Skills typu `user-invocable` są udostępniane jako polecenia ukośnikowe. Nazwy są sanityzowane do `a-z0-9_` (maks. 32 znaki); kolizje dostają sufiksy numeryczne (np. `_2`).
- `/skill <name> [input]` uruchamia skill po nazwie (przydatne, gdy limity natywnych poleceń uniemożliwiają polecenia per skill).
- **Polecenia Skills:** Skills `user-invocable` są udostępniane jako polecenia ukośnikowe. Nazwy są sanityzowane do `a-z0-9_` (maks. 32 znaki); kolizje dostają sufiksy numeryczne (np. `_2`).
- `/skill <name> [input]` uruchamia Skill po nazwie (przydatne, gdy ograniczenia natywnych poleceń uniemożliwiają polecenia per Skill).
- Domyślnie polecenia Skills są przekazywane do modelu jako zwykłe żądanie.
- Skills mogą opcjonalnie deklarować `command-dispatch: tool`, aby kierować polecenie bezpośrednio do narzędzia (deterministycznie, bez modelu).
- Przykład: `/prose` (plugin OpenProse) — zobacz [OpenProse](/pl/prose).
- **Argumenty poleceń natywnych:** Discord używa autouzupełniania dla opcji dynamicznych (oraz menu przycisków, gdy pominiesz wymagane argumenty). Telegram i Slack pokazują menu przycisków, gdy polecenie obsługuje wybory, a Ty pominiesz argument.
- Przykład: `/prose` (Plugin OpenProse) — zobacz [OpenProse](/pl/prose).
- **Argumenty poleceń natywnych:** Discord używa autouzupełniania dla opcji dynamicznych (oraz menu przycisków, gdy pominiesz wymagane argumenty). Telegram i Slack pokazują menu przycisków, gdy polecenie obsługuje wybory i pominiesz argument.
## `/tools`
`/tools` odpowiada na pytanie dotyczące runtime, a nie konfiguracji: **czego ten agent może teraz używać w
tej rozmowie**.
`/tools` odpowiada na pytanie dotyczące środowiska wykonawczego, a nie konfiguracji: **czego ten agent może teraz używać
w tej rozmowie**.
- Domyślne `/tools` jest zwięzłe i zoptymalizowane pod szybkie skanowanie.
- `/tools verbose` dodaje krótkie opisy.
- Powierzchnie z poleceniami natywnymi, które obsługują argumenty, udostępniają ten sam przełącznik trybu `compact|verbose`.
- Wyniki są ograniczone do sesji, więc zmiana agenta, kanału, wątku, autoryzacji nadawcy albo modelu może
zmienić wynik.
- `/tools` obejmuje narzędzia, które są faktycznie osiągalne w runtime, w tym narzędzia core, podłączone
narzędzia pluginów i narzędzia należące do kanału.
- `/tools` obejmuje narzędzia, które są faktycznie osiągalne w czasie działania, w tym narzędzia core, podłączone
narzędzia Plugin i narzędzia należące do kanału.
Do edytowania profili i nadpisań używaj panelu Tools w Control UI albo powierzchni config/catalog, zamiast
traktować `/tools` jako statyczny katalog.
Do edycji profili i nadpisań użyj panelu Tools w interfejsie Control UI albo powierzchni konfiguracji/katalogu, zamiast
traktować `/tools` jak statyczny katalog.
## Powierzchnie użycia (co gdzie się pokazuje)
## Powierzchnie użycia (co jest pokazywane gdzie)
- **Użycie/quota providera** (np. „Claude 80% left”) pojawia się w `/status` dla bieżącego providera modelu, gdy śledzenie użycia jest włączone. OpenClaw normalizuje okna providerów do `% left`; dla MiniMax pola procentowe zawierające tylko wartość pozostałą są odwracane przed wyświetleniem, a odpowiedzi `model_remains` preferują wpis modelu czatu wraz z etykietą planu oznaczoną modelem.
- **Wiersze token/cache** w `/status` mogą wracać do ostatniego wpisu użycia w transkrypcie, gdy migawka bieżącej sesji jest uboga. Istniejące niezerowe wartości na żywo nadal mają pierwszeństwo, a fallback do transkryptu może też odzyskać etykietę aktywnego modelu runtime oraz większą sumę zorientowaną na prompt, gdy zapisane sumy są nieobecne lub mniejsze.
- **Użycie/limit dostawcy** (na przykład: „Claude 80% left”) pojawia się w `/status` dla bieżącego dostawcy modelu, gdy śledzenie użycia jest włączone. OpenClaw normalizuje okna dostawców do `% left`; dla MiniMax pola procentowe zawierające tylko wartość pozostałą są odwracane przed wyświetleniem, a odpowiedzi `model_remains` preferują wpis modelu czatu oraz etykietę planu oznaczoną modelem.
- **Linie tokenów/cache** w `/status` mogą wracać do najnowszego wpisu użycia z transkryptu, gdy migawka aktywnej sesji jest uboga. Istniejące niezerowe wartości z aktywnego środowiska nadal mają pierwszeństwo, a fallback do transkryptu może też odzyskać etykietę aktywnego modelu środowiska wykonawczego oraz większą sumę zorientowaną na prompt, gdy zapisanych sum brakuje albo są mniejsze.
- **Tokeny/koszt dla każdej odpowiedzi** są kontrolowane przez `/usage off|tokens|full` (dołączane do zwykłych odpowiedzi).
- `/model status` dotyczy **modeli/auth/endpointów**, a nie użycia.
- `/model status` dotyczy **modeli/uwierzytelniania/endpointów**, a nie użycia.
## Wybór modelu (`/model`)
@ -251,14 +253,14 @@ Przykłady:
Uwagi:
- `/model` i `/model list` pokazują zwięzły, numerowany picker (rodzina modeli + dostępni providerzy).
- W Discord `/model` i `/models` otwierają interaktywny picker z listami rozwijanymi providera i modelu oraz krokiem Submit.
- `/model <#>` wybiera z tego pickera (i preferuje bieżącego providera, gdy to możliwe).
- `/model status` pokazuje widok szczegółowy, w tym skonfigurowany endpoint providera (`baseUrl`) i tryb API (`api`), gdy są dostępne.
- `/model` i `/model list` pokazują zwięzły, numerowany selektor (rodzina modeli + dostępni dostawcy).
- Na Discordzie `/model` i `/models` otwierają interaktywny selektor z listami rozwijanymi dostawców i modeli oraz krokiem Submit.
- `/model <#>` wybiera z tego selektora (i w miarę możliwości preferuje bieżącego dostawcę).
- `/model status` pokazuje widok szczegółowy, w tym skonfigurowany endpoint dostawcy (`baseUrl`) i tryb API (`api`), gdy są dostępne.
## Nadpisania debug
## Nadpisania debugowania
`/debug` pozwala ustawiać nadpisania konfiguracji **tylko dla runtime** (w pamięci, nie na dysku). Tylko dla właściciela. Domyślnie wyłączone; włącz przez `commands.debug: true`.
`/debug` pozwala ustawiać **nadpisania konfiguracji tylko na czas działania** (w pamięci, nie na dysku). Tylko właściciel. Domyślnie wyłączone; włącz przez `commands.debug: true`.
Przykłady:
@ -272,12 +274,33 @@ Przykłady:
Uwagi:
- Nadpisania stosują się natychmiast do nowych odczytów konfiguracji, ale **nie** zapisują się do `openclaw.json`.
- Nadpisania zaczynają działać natychmiast dla nowych odczytów konfiguracji, ale **nie** zapisują się do `openclaw.json`.
- Użyj `/debug reset`, aby wyczyścić wszystkie nadpisania i wrócić do konfiguracji z dysku.
## Wyjście śledzenia Plugin
`/trace` pozwala przełączać **linie śledzenia/debugowania Plugin o zakresie sesji** bez włączania pełnego trybu verbose.
Przykłady:
```text
/trace
/trace on
/trace off
```
Uwagi:
- `/trace` bez argumentu pokazuje bieżący stan śledzenia sesji.
- `/trace on` włącza linie śledzenia Plugin dla bieżącej sesji.
- `/trace off` ponownie je wyłącza.
- Linie śledzenia Plugin mogą pojawiać się w `/status` oraz jako dodatkowa wiadomość diagnostyczna po zwykłej odpowiedzi asystenta.
- `/trace` nie zastępuje `/debug`; `/debug` nadal zarządza nadpisaniami konfiguracji tylko na czas działania.
- `/trace` nie zastępuje `/verbose`; zwykłe szczegółowe wyjście narzędzi/statusu nadal należy do `/verbose`.
## Aktualizacje konfiguracji
`/config` zapisuje do konfiguracji na dysku (`openclaw.json`). Tylko dla właściciela. Domyślnie wyłączone; włącz przez `commands.config: true`.
`/config` zapisuje do Twojej konfiguracji na dysku (`openclaw.json`). Tylko właściciel. Domyślnie wyłączone; włącz przez `commands.config: true`.
Przykłady:
@ -296,7 +319,7 @@ Uwagi:
## Aktualizacje MCP
`/mcp` zapisuje definicje serwerów MCP zarządzanych przez OpenClaw w `mcp.servers`. Tylko dla właściciela. Domyślnie wyłączone; włącz przez `commands.mcp: true`.
`/mcp` zapisuje definicje serwerów MCP zarządzane przez OpenClaw pod `mcp.servers`. Tylko właściciel. Domyślnie wyłączone; włącz przez `commands.mcp: true`.
Przykłady:
@ -309,12 +332,12 @@ Przykłady:
Uwagi:
- `/mcp` przechowuje konfigurację w konfiguracji OpenClaw, a nie w ustawieniach projektu należących do Pi.
- Adapery runtime decydują, które transporty są faktycznie wykonywalne.
- `/mcp` zapisuje konfigurację w konfiguracji OpenClaw, a nie w ustawieniach projektu należących do Pi.
- Adapters środowiska wykonawczego decydują, które transporty są faktycznie wykonywalne.
## Aktualizacje pluginów
## Aktualizacje Plugin
`/plugins` pozwala operatorom sprawdzać wykryte pluginy i przełączać włączenie w konfiguracji. Przepływy tylko do odczytu mogą używać `/plugin` jako aliasu. Domyślnie wyłączone; włącz przez `commands.plugins: true`.
`/plugins` pozwala operatorom sprawdzać wykryte Plugin i przełączać ich włączenie w konfiguracji. Przepływy tylko do odczytu mogą używać aliasu `/plugin`. Domyślnie wyłączone; włącz przez `commands.plugins: true`.
Przykłady:
@ -328,41 +351,41 @@ Przykłady:
Uwagi:
- `/plugins list` i `/plugins show` używają rzeczywistego wykrywania pluginów względem bieżącego workspace i konfiguracji z dysku.
- `/plugins enable|disable` aktualizuje tylko konfigurację pluginów; nie instaluje ani nie odinstalowuje pluginów.
- Po zmianach enable/disable uruchom ponownie gateway, aby je zastosować.
- `/plugins list` i `/plugins show` używają rzeczywistego wykrywania Plugin względem bieżącego workspace i konfiguracji na dysku.
- `/plugins enable|disable` aktualizuje tylko konfigurację Plugin; nie instaluje ani nie odinstalowuje Plugin.
- Po zmianach `enable/disable` uruchom Gateway ponownie, aby je zastosować.
## Uwagi dotyczące powierzchni
## Uwagi o powierzchniach
- **Polecenia tekstowe** działają w zwykłej sesji czatu (DM współdzielą `main`, grupy mają własną sesję).
- **Polecenia tekstowe** działają w normalnej sesji czatu (DM współdzielą `main`, grupy mają własną sesję).
- **Polecenia natywne** używają izolowanych sesji:
- Discord: `agent:<agentId>:discord:slash:<userId>`
- Slack: `agent:<agentId>:slack:slash:<userId>` (prefiks konfigurowalny przez `channels.slack.slashCommand.sessionPrefix`)
- Telegram: `telegram:slash:<userId>` (celuje w sesję czatu przez `CommandTargetSessionKey`)
- **`/stop`** celuje w aktywną sesję czatu, aby mogło przerwać bieżące uruchomienie.
- **Slack:** `channels.slack.slashCommand` jest nadal obsługiwane dla pojedynczego polecenia w stylu `/openclaw`. Jeśli włączysz `commands.native`, musisz utworzyć jedno polecenie ukośnikowe Slack dla każdego wbudowanego polecenia (te same nazwy co `/help`). Menu argumentów poleceń dla Slack są dostarczane jako efemeryczne przyciski Block Kit.
- Wyjątek dla poleceń natywnych Slack: zarejestruj `/agentstatus` (a nie `/status`), ponieważ Slack rezerwuje `/status`. Tekstowe `/status` nadal działa w wiadomościach Slack.
- **`/stop`** celuje w aktywną sesję czatu, aby móc przerwać bieżące uruchomienie.
- **Slack:** `channels.slack.slashCommand` nadal jest obsługiwane dla pojedynczego polecenia w stylu `/openclaw`. Jeśli włączysz `commands.native`, musisz utworzyć jedno polecenie ukośnikowe Slack dla każdego wbudowanego polecenia (te same nazwy co `/help`). Menu argumentów poleceń dla Slack są dostarczane jako efemeryczne przyciski Block Kit.
- Wyjątek dla natywnych poleceń Slack: zarejestruj `/agentstatus` (nie `/status`), ponieważ Slack rezerwuje `/status`. Tekstowe `/status` nadal działa w wiadomościach Slack.
## Poboczne pytania BTW
## Pytania poboczne BTW
`/btw` to szybkie **poboczne pytanie** dotyczące bieżącej sesji.
`/btw` to szybkie **pytanie poboczne** dotyczące bieżącej sesji.
W odróżnieniu od zwykłego czatu:
- używa bieżącej sesji jako kontekstu w tle,
- używa bieżącej sesji jako kontekstu tła,
- działa jako osobne jednorazowe wywołanie **bez narzędzi**,
- nie zmienia przyszłego kontekstu sesji,
- nie jest zapisywane do historii transkryptu,
- jest dostarczane jako wynik poboczny na żywo, a nie jako zwykła wiadomość asystenta.
- nie jest zapisywane w historii transkryptu,
- jest dostarczane jako wynik poboczny na żywo zamiast zwykłej wiadomości asystenta.
Dzięki temu `/btw` jest przydatne, gdy chcesz uzyskać tymczasowe doprecyzowanie, podczas gdy główne
To sprawia, że `/btw` jest przydatne, gdy chcesz uzyskać tymczasowe doprecyzowanie, podczas gdy główne
zadanie nadal trwa.
Przykład:
```text
/btw co teraz robimy?
/btw co teraz właściwie robimy?
```
Zobacz [Poboczne pytania BTW](/pl/tools/btw), aby poznać pełne zachowanie i szczegóły UX
klienta.
Zobacz [BTW Side Questions](/pl/tools/btw), aby poznać pełne zachowanie i szczegóły
UX klienta.

View File

@ -1,22 +1,22 @@
---
read_when:
- Dostosowujesz parsowanie dyrektyw thinking, fast-mode lub verbose albo ich wartości domyślne
summary: Składnia dyrektyw dla /think, /fast, /verbose i widoczności rozumowania
title: Poziomy thinking
- Dostosowywanie analizowania dyrektyw myślenia, trybu szybkiego lub szczegółowego albo ich ustawień domyślnych
summary: Składnia dyrektyw dla `/think`, `/fast`, `/verbose`, `/trace` oraz widoczności rozumowania
title: Poziomy myślenia
x-i18n:
generated_at: "2026-04-05T14:09:45Z"
generated_at: "2026-04-12T23:34:06Z"
model: gpt-5.4
provider: openai
source_hash: f60aeb6ab4c7ce858f725f589f54184b29d8c91994d18c8deafa75179b9a62cb
source_hash: 4f3b1341281f07ba4e9061e3355845dca234be04cc0d358594312beeb7676e68
source_path: tools/thinking.md
workflow: 15
---
# Poziomy thinking (/think directives)
# Poziomy myślenia (dyrektywy `/think`)
## Co to robi
- Dyrektywa inline w dowolnym body wejściowym: `/t <level>`, `/think:<level>` albo `/thinking <level>`.
- Dyrektywa inline w dowolnej treści przychodzącej: `/t <level>`, `/think:<level>` lub `/thinking <level>`.
- Poziomy (aliasy): `off | minimal | low | medium | high | xhigh | adaptive`
- minimal → „think”
- low → „think hard”
@ -24,86 +24,95 @@ x-i18n:
- high → „ultrathink” (maksymalny budżet)
- xhigh → „ultrathink+” (tylko modele GPT-5.2 + Codex)
- adaptive → zarządzany przez dostawcę adaptacyjny budżet rozumowania (obsługiwany dla rodziny modeli Anthropic Claude 4.6)
- `x-high`, `x_high`, `extra-high`, `extra high` i `extra_high` mapują na `xhigh`.
- `highest`, `max` mapują na `high`.
- `x-high`, `x_high`, `extra-high`, `extra high` i `extra_high` są mapowane na `xhigh`.
- `highest`, `max` są mapowane na `high`.
- Uwagi dotyczące dostawców:
- Modele Anthropic Claude 4.6 domyślnie używają `adaptive`, gdy nie ustawiono jawnego poziomu thinking.
- MiniMax (`minimax/*`) na ścieżce streamingu zgodnej z Anthropic domyślnie używa `thinking: { type: "disabled" }`, chyba że jawnie ustawisz thinking w params modelu albo params żądania. Zapobiega to wyciekom delt `reasoning_content` z nienatywnego formatu streamu Anthropic w MiniMax.
- Z.AI (`zai/*`) obsługuje tylko binarne thinking (`on`/`off`). Każdy poziom inny niż `off` jest traktowany jako `on` (mapowany do `low`).
- Moonshot (`moonshot/*`) mapuje `/think off` do `thinking: { type: "disabled" }`, a każdy poziom inny niż `off` do `thinking: { type: "enabled" }`. Gdy thinking jest włączone, Moonshot akceptuje tylko `tool_choice` `auto|none`; OpenClaw normalizuje niezgodne wartości do `auto`.
- Modele Anthropic Claude 4.6 domyślnie używają `adaptive`, gdy nie ustawiono jawnego poziomu myślenia.
- MiniMax (`minimax/*`) na ścieżce streamingu zgodnej z Anthropic domyślnie używa `thinking: { type: "disabled" }`, chyba że jawnie ustawisz thinking w parametrach modelu lub parametrach żądania. Zapobiega to wyciekom delt `reasoning_content` z nienatywnego formatu streamu Anthropic używanego przez MiniMax.
- Z.AI (`zai/*`) obsługuje tylko binarne thinking (`on`/`off`). Każdy poziom inny niż `off` jest traktowany jako `on` (mapowany na `low`).
- Moonshot (`moonshot/*`) mapuje `/think off` na `thinking: { type: "disabled" }`, a każdy poziom inny niż `off` na `thinking: { type: "enabled" }`. Gdy thinking jest włączony, Moonshot akceptuje tylko `tool_choice` `auto|none`; OpenClaw normalizuje niezgodne wartości do `auto`.
## Kolejność rozwiązywania
## Kolejność rozstrzygania
1. Dyrektywa inline w wiadomości (dotyczy tylko tej wiadomości).
2. Nadpisanie sesji (ustawiane przez wysłanie wiadomości zawierającej wyłącznie dyrektywę).
3. Wartość domyślna per agent (`agents.list[].thinkingDefault` w konfiguracji).
2. Nadpisanie sesji (ustawiane przez wysłanie wiadomości zawierającej tylko dyrektywę).
3. Domyślna wartość per agent (`agents.list[].thinkingDefault` w konfiguracji).
4. Globalna wartość domyślna (`agents.defaults.thinkingDefault` w konfiguracji).
5. Fallback: `adaptive` dla modeli Anthropic Claude 4.6, `low` dla innych modeli obsługujących rozumowanie, w przeciwnym razie `off`.
## Ustawianie domyślnej wartości sesji
## Ustawianie domyślnej wartości dla sesji
- Wyślij wiadomość będącą **wyłącznie** dyrektywą (dozwolone białe znaki), np. `/think:medium` albo `/t high`.
- To ustawienie zostaje dla bieżącej sesji (domyślnie per nadawca); jest czyszczone przez `/think:off` albo reset bezczynności sesji.
- Wyślij wiadomość, która zawiera **wyłącznie** dyrektywę (dozwolone białe znaki), np. `/think:medium` albo `/t high`.
- To ustawienie utrzymuje się dla bieżącej sesji (domyślnie per nadawca); jest czyszczone przez `/think:off` albo reset bezczynności sesji.
- Wysyłana jest odpowiedź potwierdzająca (`Thinking level set to high.` / `Thinking disabled.`). Jeśli poziom jest nieprawidłowy (np. `/thinking big`), polecenie zostaje odrzucone z podpowiedzią, a stan sesji pozostaje bez zmian.
- Wyślij `/think` (albo `/think:`) bez argumentu, aby zobaczyć bieżący poziom thinking.
- Wyślij `/think` (lub `/think:`) bez argumentu, aby zobaczyć bieżący poziom myślenia.
## Zastosowanie przez agenta
- **Embedded Pi**: ustalony poziom jest przekazywany do runtime osadzonego agenta Pi działającego w procesie.
- **Embedded Pi**: rozstrzygnięty poziom jest przekazywany do runtime agenta Pi działającego in-process.
## Fast mode (/fast)
## Tryb szybki (`/fast`)
- Poziomy: `on|off`.
- Wiadomość zawierająca wyłącznie dyrektywę przełącza nadpisanie fast-mode sesji i odpowiada `Fast mode enabled.` / `Fast mode disabled.`.
- Wyślij `/fast` (albo `/fast status`) bez trybu, aby zobaczyć bieżący efektywny stan fast-mode.
- OpenClaw rozwiązuje fast mode w tej kolejności:
1. Dyrektywa inline / zawierająca wyłącznie dyrektywę `/fast on|off`
- Wiadomość zawierająca tylko dyrektywę przełącza nadpisanie trybu szybkiego dla sesji i odpowiada `Fast mode enabled.` / `Fast mode disabled.`.
- Wyślij `/fast` (lub `/fast status`) bez trybu, aby zobaczyć bieżący efektywny stan trybu szybkiego.
- OpenClaw rozstrzyga tryb szybki w tej kolejności:
1. Inline/dyrektywa-only `/fast on|off`
2. Nadpisanie sesji
3. Wartość domyślna per agent (`agents.list[].fastModeDefault`)
3. Domyślna wartość per agent (`agents.list[].fastModeDefault`)
4. Konfiguracja per model: `agents.defaults.models["<provider>/<model>"].params.fastMode`
5. Fallback: `off`
- Dla `openai/*` fast mode mapuje się na przetwarzanie priorytetowe OpenAI przez wysyłanie `service_tier=priority` w obsługiwanych żądaniach Responses.
- Dla `openai-codex/*` fast mode wysyła tę samą flagę `service_tier=priority` w Codex Responses. OpenClaw utrzymuje jeden współdzielony przełącznik `/fast` dla obu ścieżek auth.
- Dla bezpośrednich publicznych żądań `anthropic/*`, w tym ruchu uwierzytelnianego OAuth wysyłanego do `api.anthropic.com`, fast mode mapuje się na poziomy usługi Anthropic: `/fast on` ustawia `service_tier=auto`, `/fast off` ustawia `service_tier=standard_only`.
- Dla `minimax/*` na ścieżce zgodnej z Anthropic, `/fast on` (albo `params.fastMode: true`) przepisuje `MiniMax-M2.7` na `MiniMax-M2.7-highspeed`.
- Jawne params modelu Anthropic `serviceTier` / `service_tier` mają pierwszeństwo nad domyślnym fast mode, gdy ustawiono oba. OpenClaw nadal pomija wstrzykiwanie poziomu usługi Anthropic dla nie-Anthropic proxy `baseUrl`.
- Dla `openai/*` tryb szybki mapuje się na priorytetowe przetwarzanie OpenAI przez wysyłanie `service_tier=priority` w obsługiwanych żądaniach Responses.
- Dla `openai-codex/*` tryb szybki wysyła tę samą flagę `service_tier=priority` w Codex Responses. OpenClaw utrzymuje jeden współdzielony przełącznik `/fast` dla obu ścieżek uwierzytelniania.
- Dla bezpośrednich publicznych żądań `anthropic/*`, w tym ruchu uwierzytelnianego OAuth wysyłanego do `api.anthropic.com`, tryb szybki mapuje się na poziomy usług Anthropic: `/fast on` ustawia `service_tier=auto`, a `/fast off` ustawia `service_tier=standard_only`.
- Dla `minimax/*` na ścieżce zgodnej z Anthropic, `/fast on` (lub `params.fastMode: true`) przepisuje `MiniMax-M2.7` na `MiniMax-M2.7-highspeed`.
- Jawne parametry modelu Anthropic `serviceTier` / `service_tier` nadpisują domyślną wartość trybu szybkiego, gdy ustawione są oba. OpenClaw nadal pomija wstrzykiwanie poziomu usługi Anthropic dla bazowych URL proxy innych niż Anthropic.
## Dyrektywy verbose (/verbose lub /v)
## Dyrektywy szczegółowości (`/verbose` lub `/v`)
- Poziomy: `on` (minimalne) | `full` | `off` (domyślnie).
- Wiadomość zawierająca wyłącznie dyrektywę przełącza verbose sesji i odpowiada `Verbose logging enabled.` / `Verbose logging disabled.`; nieprawidłowe poziomy zwracają podpowiedź bez zmiany stanu.
- `/verbose off` zapisuje jawne nadpisanie sesji; wyczyść je przez Sessions UI, wybierając `inherit`.
- Dyrektywa inline wpływa tylko na tę wiadomość; w przeciwnym razie stosowane są wartości domyślne sesji / globalne.
- Wyślij `/verbose` (albo `/verbose:`) bez argumentu, aby zobaczyć bieżący poziom verbose.
- Gdy verbose jest włączone, agenci emitujący uporządkowane wyniki narzędzi (Pi, inni agenci JSON) wysyłają każde wywołanie narzędzia z powrotem jako osobną wiadomość zawierającą tylko metadane, z prefiksem `<emoji> <tool-name>: <arg>`, jeśli jest dostępny (ścieżka / polecenie). Te podsumowania narzędzi są wysyłane od razu po starcie każdego narzędzia (osobne dymki), a nie jako delty streamingu.
- Podsumowania błędów narzędzi pozostają widoczne w trybie normalnym, ale surowe sufiksy szczegółów błędu są ukryte, chyba że verbose ma wartość `on` albo `full`.
- Gdy verbose ma wartość `full`, wyjścia narzędzi są również przekazywane po zakończeniu (osobny dymek, przycięty do bezpiecznej długości). Jeśli przełączysz `/verbose on|full|off` podczas trwania uruchomienia, kolejne dymki narzędzi będą respektować nowe ustawienie.
- Poziomy: `on` (minimalny) | `full` | `off` (domyślnie).
- Wiadomość zawierająca tylko dyrektywę przełącza szczegółowość sesji i odpowiada `Verbose logging enabled.` / `Verbose logging disabled.`; nieprawidłowe poziomy zwracają podpowiedź bez zmiany stanu.
- `/verbose off` zapisuje jawne nadpisanie sesji; wyczyść je w UI Sessions, wybierając `inherit`.
- Dyrektywa inline dotyczy tylko tej wiadomości; w pozostałych przypadkach stosowane są domyślne wartości sesji/globalne.
- Wyślij `/verbose` (lub `/verbose:`) bez argumentu, aby zobaczyć bieżący poziom szczegółowości.
- Gdy szczegółowość jest włączona, agenci emitujący ustrukturyzowane wyniki narzędzi (Pi, inne agenty JSON) odsyłają każde wywołanie narzędzia jako osobną wiadomość zawierającą tylko metadane, poprzedzoną `<emoji> <tool-name>: <arg>`, jeśli to możliwe (ścieżka/polecenie). Te podsumowania narzędzi są wysyłane natychmiast po starcie każdego narzędzia (osobne dymki), a nie jako delty streamingu.
- Podsumowania błędów narzędzi pozostają widoczne w trybie normalnym, ale surowe sufiksy szczegółów błędów są ukryte, chyba że `verbose` ma wartość `on` lub `full`.
- Gdy `verbose` ma wartość `full`, po zakończeniu przekazywane są także wyjścia narzędzi (osobny dymek, obcięty do bezpiecznej długości). Jeśli przełączysz `/verbose on|full|off` podczas trwającego uruchomienia, kolejne dymki narzędzi będą respektować nowe ustawienie.
## Widoczność rozumowania (/reasoning)
## Dyrektywy śledzenia Plugin (`/trace`)
- Poziomy: `on` | `off` (domyślnie).
- Wiadomość zawierająca tylko dyrektywę przełącza wyjście śledzenia pluginów dla sesji i odpowiada `Plugin trace enabled.` / `Plugin trace disabled.`.
- Dyrektywa inline dotyczy tylko tej wiadomości; w pozostałych przypadkach stosowane są domyślne wartości sesji/globalne.
- Wyślij `/trace` (lub `/trace:`) bez argumentu, aby zobaczyć bieżący poziom śledzenia.
- `/trace` jest węższe niż `/verbose`: ujawnia tylko linie trace/debug należące do pluginu, takie jak podsumowania debug Active Memory.
- Linie trace mogą pojawiać się w `/status` oraz jako dodatkowa wiadomość diagnostyczna po zwykłej odpowiedzi asystenta.
## Widoczność rozumowania (`/reasoning`)
- Poziomy: `on|off|stream`.
- Wiadomość zawierająca wyłącznie dyrektywę przełącza to, czy bloki thinking są pokazywane w odpowiedziach.
- Gdy włączone, rozumowanie jest wysyłane jako **osobna wiadomość** z prefiksem `Reasoning:`.
- `stream` (tylko Telegram): streamuje rozumowanie do dymka szkicu Telegram podczas generowania odpowiedzi, a następnie wysyła finalną odpowiedź bez rozumowania.
- Wiadomość zawierająca tylko dyrektywę przełącza pokazywanie bloków myślenia w odpowiedziach.
- Gdy jest włączone, rozumowanie jest wysyłane jako **osobna wiadomość** poprzedzona `Reasoning:`.
- `stream` (tylko Telegram): streamuje rozumowanie do roboczego dymka Telegram podczas generowania odpowiedzi, a następnie wysyła końcową odpowiedź bez rozumowania.
- Alias: `/reason`.
- Wyślij `/reasoning` (albo `/reasoning:`) bez argumentu, aby zobaczyć bieżący poziom rozumowania.
- Kolejność rozwiązywania: dyrektywa inline, potem nadpisanie sesji, potem wartość domyślna per agent (`agents.list[].reasoningDefault`), a na końcu fallback (`off`).
- Wyślij `/reasoning` (lub `/reasoning:`) bez argumentu, aby zobaczyć bieżący poziom rozumowania.
- Kolejność rozstrzygania: dyrektywa inline, następnie nadpisanie sesji, następnie wartość domyślna per agent (`agents.list[].reasoningDefault`), a na końcu fallback (`off`).
## Powiązane
- Dokumentacja trybu elevated znajduje się w [Trybie elevated](/tools/elevated).
- Dokumentacja trybu Elevated znajduje się w [trybie Elevated](/pl/tools/elevated).
## Heartbeaty
## Heartbeat
- Body sondy heartbeat to skonfigurowany prompt heartbeat (domyślnie: `Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.`). Dyrektywy inline w wiadomości heartbeat działają normalnie (ale unikaj zmieniania domyślnych ustawień sesji przez heartbeaty).
- Dostarczanie heartbeat domyślnie wysyła tylko końcowy payload. Aby wysłać również osobną wiadomość `Reasoning:` (gdy jest dostępna), ustaw `agents.defaults.heartbeat.includeReasoning: true` albo per agent `agents.list[].heartbeat.includeReasoning: true`.
- Treścią sondy Heartbeat jest skonfigurowany prompt heartbeat (domyślnie: `Read HEARTBEAT.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply HEARTBEAT_OK.`). Dyrektywy inline w wiadomości heartbeat są stosowane normalnie (ale unikaj zmieniania domyślnych ustawień sesji przez heartbeat).
- Dostarczanie Heartbeat domyślnie wysyła tylko końcowy ładunek. Aby wysyłać także osobną wiadomość `Reasoning:` (gdy jest dostępna), ustaw `agents.defaults.heartbeat.includeReasoning: true` albo per agent `agents.list[].heartbeat.includeReasoning: true`.
## Interfejs web chat
## UI czatu webowego
- Selektor thinking w web chat odzwierciedla zapisany poziom sesji z magazynu / konfiguracji sesji wejściowych przy ładowaniu strony.
- Wybranie innego poziomu zapisuje nadpisanie sesji natychmiast przez `sessions.patch`; nie czeka na następne wysłanie i nie jest jednorazowym nadpisaniem `thinkingOnce`.
- Pierwsza opcja to zawsze `Default (<resolved level>)`, gdzie ustalona wartość domyślna pochodzi z aktywnego modelu sesji: `adaptive` dla Claude 4.6 na Anthropic/Bedrock, `low` dla innych modeli obsługujących rozumowanie, a w przeciwnym razie `off`.
- Picker pozostaje świadomy dostawcy:
- Selektor myślenia w UI czatu webowego odzwierciedla zapisany poziom sesji z magazynu/config sesji przychodzącej podczas ładowania strony.
- Wybranie innego poziomu od razu zapisuje nadpisanie sesji przez `sessions.patch`; nie czeka na kolejne wysłanie i nie jest jednorazowym nadpisaniem `thinkingOnce`.
- Pierwsza opcja to zawsze `Default (<resolved level>)`, gdzie rozstrzygnięta wartość domyślna pochodzi z aktywnego modelu sesji: `adaptive` dla Claude 4.6 w Anthropic/Bedrock, `low` dla innych modeli obsługujących rozumowanie, w przeciwnym razie `off`.
- Selektor pozostaje świadomy dostawcy:
- większość dostawców pokazuje `off | minimal | low | medium | high | adaptive`
- Z.AI pokazuje binarne `off | on`
- `/think:<level>` nadal działa i aktualizuje ten sam zapisany poziom sesji, więc dyrektywy czatu i picker pozostają zsynchronizowane.
- `/think:<level>` nadal działa i aktualizuje ten sam zapisany poziom sesji, dzięki czemu dyrektywy czatu i selektor pozostają zsynchronizowane.

View File

@ -1,42 +1,42 @@
---
read_when:
- Włączanie text-to-speech dla odpowiedzi
- Włączanie syntezy mowy dla odpowiedzi
- Konfigurowanie dostawców TTS lub limitów
- Używanie poleceń /tts
summary: Text-to-speech (TTS) dla odpowiedzi wychodzących
title: Text-to-Speech
- Używanie komend `/tts`
summary: Synteza mowy (TTS) dla odpowiedzi wychodzących
title: Synteza mowy tekstu na mowę
x-i18n:
generated_at: "2026-04-08T06:02:03Z"
generated_at: "2026-04-12T23:34:14Z"
model: gpt-5.4
provider: openai
source_hash: 6e0fbcaf61282733c134f682e05a71f94d2169c03a85131ce9ad233c71a1e533
source_hash: ad79a6be34879347dc73fdab1bd219823cd7c6aa8504e3e4c73e1a0554c837c5
source_path: tools/tts.md
workflow: 15
---
# Text-to-speech (TTS)
# Synteza mowy (TTS)
OpenClaw może konwertować odpowiedzi wychodzące na dźwięk przy użyciu ElevenLabs, Microsoft, MiniMax lub OpenAI.
OpenClaw może konwertować odpowiedzi wychodzące na audio za pomocą ElevenLabs, Microsoft, MiniMax lub OpenAI.
Działa wszędzie tam, gdzie OpenClaw może wysyłać audio.
## Obsługiwane usługi
- **ElevenLabs** (główny lub zapasowy dostawca)
- **Microsoft** (główny lub zapasowy dostawca; obecna dołączona implementacja używa `node-edge-tts`)
- **MiniMax** (główny lub zapasowy dostawca; używa API T2A v2)
- **OpenAI** (główny lub zapasowy dostawca; używany także do podsumowań)
- **ElevenLabs** (dostawca główny lub fallback)
- **Microsoft** (dostawca główny lub fallback; obecna dołączona implementacja używa `node-edge-tts`)
- **MiniMax** (dostawca główny lub fallback; używa API T2A v2)
- **OpenAI** (dostawca główny lub fallback; używany także do podsumowań)
### Uwagi dotyczące mowy Microsoft
Dołączony dostawca mowy Microsoft obecnie używa usługi neural TTS online Microsoft Edge
przez bibliotekę `node-edge-tts`. Jest to usługa hostowana (nie
lokalna), korzysta z endpointów Microsoft i nie wymaga klucza API.
Dołączony dostawca mowy Microsoft obecnie używa usługi online neural TTS Microsoft Edge
przez bibliotekę `node-edge-tts`. Jest to usługa hostowana (nie lokalna),
używa endpointów Microsoft i nie wymaga klucza API.
`node-edge-tts` udostępnia opcje konfiguracji mowy i formaty wyjściowe, ale
nie wszystkie opcje są obsługiwane przez usługę. Starsza konfiguracja i dane wejściowe dyrektyw
nie wszystkie opcje są obsługiwane przez usługę. Legacy konfiguracja i wejście dyrektywy
używające `edge` nadal działają i są normalizowane do `microsoft`.
Ponieważ ta ścieżka korzysta z publicznej usługi webowej bez opublikowanego SLA ani limitów,
należy traktować ją jako best-effort. Jeśli potrzebujesz gwarantowanych limitów i wsparcia, użyj OpenAI
Ponieważ ta ścieżka to publiczna usługa web bez opublikowanego SLA ani limitu quota,
traktuj ją jako best-effort. Jeśli potrzebujesz gwarantowanych limitów i wsparcia, użyj OpenAI
lub ElevenLabs.
## Opcjonalne klucze
@ -49,23 +49,23 @@ Jeśli chcesz używać OpenAI, ElevenLabs lub MiniMax:
Mowa Microsoft **nie** wymaga klucza API.
Jeśli skonfigurowano wielu dostawców, najpierw używany jest wybrany dostawca, a pozostali pełnią rolę opcji zapasowych.
Automatyczne podsumowanie używa skonfigurowanego `summaryModel` (lub `agents.defaults.model.primary`),
więc ten dostawca również musi być uwierzytelniony, jeśli włączysz podsumowania.
Jeśli skonfigurowano wielu dostawców, najpierw używany jest wybrany dostawca, a pozostali pełnią rolę opcji fallback.
Auto-summary używa skonfigurowanego `summaryModel` (lub `agents.defaults.model.primary`),
więc ten dostawca także musi być uwierzytelniony, jeśli włączysz podsumowania.
## Linki do usług
- [Przewodnik OpenAI Text-to-Speech](https://platform.openai.com/docs/guides/text-to-speech)
- [Dokumentacja referencyjna OpenAI Audio API](https://platform.openai.com/docs/api-reference/audio)
- [OpenAI Text-to-Speech guide](https://platform.openai.com/docs/guides/text-to-speech)
- [OpenAI Audio API reference](https://platform.openai.com/docs/api-reference/audio)
- [ElevenLabs Text to Speech](https://elevenlabs.io/docs/api-reference/text-to-speech)
- [Uwierzytelnianie ElevenLabs](https://elevenlabs.io/docs/api-reference/authentication)
- [ElevenLabs Authentication](https://elevenlabs.io/docs/api-reference/authentication)
- [MiniMax T2A v2 API](https://platform.minimaxi.com/document/T2A%20V2)
- [node-edge-tts](https://github.com/SchneeHertz/node-edge-tts)
- [Formaty wyjściowe Microsoft Speech](https://learn.microsoft.com/azure/ai-services/speech-service/rest-text-to-speech#audio-outputs)
- [Microsoft Speech output formats](https://learn.microsoft.com/azure/ai-services/speech-service/rest-text-to-speech#audio-outputs)
## Czy jest włączone domyślnie?
Nie. AutoTTS jest domyślnie **wyłączone**. Włącz je w konfiguracji przez
Nie. AutoTTS jest domyślnie **wyłączone**. Włącz je w konfiguracji za pomocą
`messages.tts.auto` lub lokalnie przez `/tts on`.
Gdy `messages.tts.provider` nie jest ustawione, OpenClaw wybiera pierwszego skonfigurowanego
@ -73,8 +73,8 @@ dostawcę mowy według kolejności automatycznego wyboru w rejestrze.
## Konfiguracja
Konfiguracja TTS znajduje się pod `messages.tts` w `openclaw.json`.
Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration).
Konfiguracja TTS znajduje się w `messages.tts` w `openclaw.json`.
Pełny schemat znajduje się w [Gateway configuration](/pl/gateway/configuration).
### Minimalna konfiguracja (włączenie + dostawca)
@ -89,7 +89,7 @@ Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration)
}
```
### OpenAI jako główny dostawca z ElevenLabs jako zapasowym
### OpenAI jako główny z fallbackiem ElevenLabs
```json5
{
@ -130,7 +130,7 @@ Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration)
}
```
### Microsoft jako główny dostawca (bez klucza API)
### Microsoft jako główny (bez klucza API)
```json5
{
@ -153,7 +153,7 @@ Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration)
}
```
### MiniMax jako główny dostawca
### MiniMax jako główny
```json5
{
@ -177,7 +177,7 @@ Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration)
}
```
### Wyłączenie mowy Microsoft
### Wyłącz mowę Microsoft
```json5
{
@ -193,7 +193,7 @@ Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration)
}
```
### Własne limity + ścieżka prefs
### Niestandardowe limity + ścieżka prefs
```json5
{
@ -220,7 +220,7 @@ Pełny schemat znajduje się w [Konfiguracja Gateway](/pl/gateway/configuration)
}
```
### Wyłączenie automatycznego podsumowania dla długich odpowiedzi
### Wyłącz auto-summary dla długich odpowiedzi
```json5
{
@ -238,30 +238,30 @@ Następnie uruchom:
/tts summary off
```
### Uwagi dotyczące pól
### Uwagi o polach
- `auto`: tryb autoTTS (`off`, `always`, `inbound`, `tagged`).
- `inbound` wysyła audio tylko po przychodzącej wiadomości głosowej.
- `tagged` wysyła audio tylko wtedy, gdy odpowiedź zawiera tagi `[[tts]]`.
- `enabled`: starszy przełącznik (doctor migruje go do `auto`).
- `tagged` wysyła audio tylko wtedy, gdy odpowiedź zawiera dyrektywy `[[tts:key=value]]` lub blok `[[tts:text]]...[[/tts:text]]`.
- `enabled`: przełącznik legacy (doctor migruje to do `auto`).
- `mode`: `"final"` (domyślnie) lub `"all"` (obejmuje odpowiedzi narzędzi/bloków).
- `provider`: id dostawcy mowy, takie jak `"elevenlabs"`, `"microsoft"`, `"minimax"` lub `"openai"` (fallback jest automatyczny).
- Jeśli `provider` **nie jest ustawione**, OpenClaw używa pierwszego skonfigurowanego dostawcy mowy według kolejności automatycznego wyboru w rejestrze.
- Starsze `provider: "edge"` nadal działa i jest normalizowane do `microsoft`.
- `summaryModel`: opcjonalny tani model do automatycznego podsumowania; domyślnie `agents.defaults.model.primary`.
- Akceptuje `provider/model` lub alias skonfigurowanego modelu.
- `provider`: identyfikator dostawcy mowy, taki jak `"elevenlabs"`, `"microsoft"`, `"minimax"` lub `"openai"` (fallback jest automatyczny).
- Jeśli `provider` jest **nieustawiony**, OpenClaw używa pierwszego skonfigurowanego dostawcy mowy według kolejności automatycznego wyboru w rejestrze.
- Legacy `provider: "edge"` nadal działa i jest normalizowane do `microsoft`.
- `summaryModel`: opcjonalny tani model dla auto-summary; domyślnie `agents.defaults.model.primary`.
- Akceptuje `provider/model` lub skonfigurowany alias modelu.
- `modelOverrides`: pozwala modelowi emitować dyrektywy TTS (domyślnie włączone).
- `allowProvider` domyślnie ma wartość `false` (przełączanie dostawcy jest opcjonalne).
- `providers.<id>`: ustawienia należące do dostawcy, kluczowane przez id dostawcy mowy.
- Starsze bezpośrednie bloki dostawców (`messages.tts.openai`, `messages.tts.elevenlabs`, `messages.tts.microsoft`, `messages.tts.edge`) są automatycznie migrowane podczas ładowania do `messages.tts.providers.<id>`.
- `maxTextLength`: twardy limit danych wejściowych TTS (znaki). `/tts audio` kończy się błędem po jego przekroczeniu.
- `timeoutMs`: limit czasu żądania (ms).
- `prefsPath`: nadpisuje lokalną ścieżkę do JSON prefs (dostawca/limit/podsumowanie).
- Wartości `apiKey` korzystają awaryjnie ze zmiennych środowiskowych (`ELEVENLABS_API_KEY`/`XI_API_KEY`, `MINIMAX_API_KEY`, `OPENAI_API_KEY`).
- `allowProvider` domyślnie ma wartość `false` (przełączanie dostawcy jest opt-in).
- `providers.<id>`: ustawienia należące do dostawcy, kluczowane identyfikatorem dostawcy mowy.
- Legacy bezpośrednie bloki dostawców (`messages.tts.openai`, `messages.tts.elevenlabs`, `messages.tts.microsoft`, `messages.tts.edge`) są automatycznie migrowane przy ładowaniu do `messages.tts.providers.<id>`.
- `maxTextLength`: twardy limit wejścia TTS (znaki). `/tts audio` kończy się błędem po jego przekroczeniu.
- `timeoutMs`: timeout żądania (ms).
- `prefsPath`: nadpisuje lokalną ścieżkę JSON preferencji (dostawca/limit/podsumowanie).
- Wartości `apiKey` używają fallbacku do zmiennych środowiskowych (`ELEVENLABS_API_KEY`/`XI_API_KEY`, `MINIMAX_API_KEY`, `OPENAI_API_KEY`).
- `providers.elevenlabs.baseUrl`: nadpisuje bazowy URL API ElevenLabs.
- `providers.openai.baseUrl`: nadpisuje endpoint OpenAI TTS.
- Kolejność rozwiązywania: `messages.tts.providers.openai.baseUrl` -> `OPENAI_TTS_BASE_URL` -> `https://api.openai.com/v1`
- Wartości inne niż domyślne są traktowane jako endpointy TTS zgodne z OpenAI, więc akceptowane są niestandardowe nazwy modeli i głosów.
- Wartości inne niż domyślna są traktowane jako endpointy TTS zgodne z OpenAI, więc akceptowane są niestandardowe nazwy modeli i głosów.
- `providers.elevenlabs.voiceSettings`:
- `stability`, `similarityBoost`, `style`: `0..1`
- `useSpeakerBoost`: `true|false`
@ -274,26 +274,26 @@ Następnie uruchom:
- `providers.minimax.voiceId`: identyfikator głosu (domyślnie `English_expressive_narrator`, env: `MINIMAX_TTS_VOICE_ID`).
- `providers.minimax.speed`: szybkość odtwarzania `0.5..2.0` (domyślnie 1.0).
- `providers.minimax.vol`: głośność `(0, 10]` (domyślnie 1.0; musi być większa od 0).
- `providers.minimax.pitch`: przesunięcie wysokości tonu `-12..12` (domyślnie 0).
- `providers.microsoft.enabled`: pozwala na użycie mowy Microsoft (domyślnie `true`; bez klucza API).
- `providers.microsoft.voice`: nazwa neuralnego głosu Microsoft (np. `en-US-MichelleNeural`).
- `providers.minimax.pitch`: przesunięcie tonu `-12..12` (domyślnie 0).
- `providers.microsoft.enabled`: zezwala na użycie mowy Microsoft (domyślnie `true`; bez klucza API).
- `providers.microsoft.voice`: nazwa neural głosu Microsoft (np. `en-US-MichelleNeural`).
- `providers.microsoft.lang`: kod języka (np. `en-US`).
- `providers.microsoft.outputFormat`: format wyjściowy Microsoft (np. `audio-24khz-48kbitrate-mono-mp3`).
- Prawidłowe wartości znajdziesz w Microsoft Speech output formats; nie wszystkie formaty są obsługiwane przez dołączony transport oparty na Edge.
- `providers.microsoft.rate` / `providers.microsoft.pitch` / `providers.microsoft.volume`: ciągi procentowe (np. `+10%`, `-5%`).
- `providers.microsoft.saveSubtitles`: zapisuje napisy JSON obok pliku audio.
- `providers.microsoft.proxy`: URL proxy dla żądań mowy Microsoft.
- `providers.microsoft.timeoutMs`: nadpisanie limitu czasu żądania (ms).
- `edge.*`: starszy alias dla tych samych ustawień Microsoft.
- `providers.microsoft.timeoutMs`: nadpisanie timeoutu żądania (ms).
- `edge.*`: alias legacy dla tych samych ustawień Microsoft.
## Nadpisania sterowane przez model (domyślnie włączone)
Domyślnie model **może** emitować dyrektywy TTS dla pojedynczej odpowiedzi.
Gdy `messages.tts.auto` ma wartość `tagged`, te dyrektywy są wymagane do wywołania audio.
Gdy `messages.tts.auto` ma wartość `tagged`, te dyrektywy są wymagane do wyzwolenia audio.
Gdy jest to włączone, model może emitować dyrektywy `[[tts:...]]`, aby nadpisać głos
dla pojedynczej odpowiedzi, oraz opcjonalny blok `[[tts:text]]...[[/tts:text]]`, aby
dostarczyć ekspresyjne tagi (śmiech, wskazówki do śpiewu itp.), które powinny pojawiać się tylko w
Po włączeniu model może emitować dyrektywy `[[tts:...]]`, aby nadpisać głos
dla pojedynczej odpowiedzi, plus opcjonalny blok `[[tts:text]]...[[/tts:text]]`,
aby przekazać ekspresyjne znaczniki (śmiech, wskazówki śpiewu itp.), które powinny pojawić się tylko w
audio.
Dyrektywy `provider=...` są ignorowane, chyba że `modelOverrides.allowProvider: true`.
@ -309,12 +309,12 @@ Here you go.
Dostępne klucze dyrektyw (gdy włączone):
- `provider` (id zarejestrowanego dostawcy mowy, na przykład `openai`, `elevenlabs`, `minimax` lub `microsoft`; wymaga `allowProvider: true`)
- `provider` (zarejestrowany identyfikator dostawcy mowy, na przykład `openai`, `elevenlabs`, `minimax` lub `microsoft`; wymaga `allowProvider: true`)
- `voice` (głos OpenAI) lub `voiceId` (ElevenLabs / MiniMax)
- `model` (model OpenAI TTS, id modelu ElevenLabs lub model MiniMax)
- `model` (model OpenAI TTS, identyfikator modelu ElevenLabs lub model MiniMax)
- `stability`, `similarityBoost`, `style`, `speed`, `useSpeakerBoost`
- `vol` / `volume` (głośność MiniMax, 0-10)
- `pitch` (wysokość tonu MiniMax, od -12 do 12)
- `pitch` (ton MiniMax, -12 do 12)
- `applyTextNormalization` (`auto|on|off`)
- `languageCode` (ISO 639-1)
- `seed`
@ -333,7 +333,7 @@ Wyłącz wszystkie nadpisania modelu:
}
```
Opcjonalna lista dozwolonych ustawień (włączenie przełączania dostawcy przy zachowaniu konfigurowalności innych parametrów):
Opcjonalna allowlista (włącza przełączanie dostawcy przy zachowaniu możliwości konfiguracji innych parametrów):
```json5
{
@ -351,11 +351,11 @@ Opcjonalna lista dozwolonych ustawień (włączenie przełączania dostawcy przy
## Preferencje per użytkownik
Polecenia slash zapisują lokalne nadpisania do `prefsPath` (domyślnie:
Komendy slash zapisują lokalne nadpisania do `prefsPath` (domyślnie:
`~/.openclaw/settings/tts.json`, nadpisywane przez `OPENCLAW_TTS_PREFS` lub
`messages.tts.prefsPath`).
Zapisywane pola:
Przechowywane pola:
- `enabled`
- `provider`
@ -367,54 +367,54 @@ Nadpisują one `messages.tts.*` dla tego hosta.
## Formaty wyjściowe (stałe)
- **Feishu / Matrix / Telegram / WhatsApp**: wiadomość głosowa Opus (`opus_48000_64` z ElevenLabs, `opus` z OpenAI).
- 48kHz / 64kbps to dobry kompromis dla wiadomości głosowych.
- 48 kHz / 64 kb/s to dobry kompromis dla wiadomości głosowych.
- **Inne kanały**: MP3 (`mp3_44100_128` z ElevenLabs, `mp3` z OpenAI).
- 44.1kHz / 128kbps to domyślny balans dla wyrazistości mowy.
- **MiniMax**: MP3 (`speech-2.8-hd`, częstotliwość próbkowania 32kHz). Format notatki głosowej nie jest obsługiwany natywnie; użyj OpenAI lub ElevenLabs, jeśli potrzebujesz gwarantowanych wiadomości głosowych Opus.
- 44,1 kHz / 128 kb/s to domyślny balans dla czytelności mowy.
- **MiniMax**: MP3 (`speech-2.8-hd`, częstotliwość próbkowania 32 kHz). Format notatki głosowej nie jest natywnie obsługiwany; użyj OpenAI lub ElevenLabs, jeśli potrzebujesz gwarantowanych wiadomości głosowych Opus.
- **Microsoft**: używa `microsoft.outputFormat` (domyślnie `audio-24khz-48kbitrate-mono-mp3`).
- Dołączony transport akceptuje `outputFormat`, ale nie wszystkie formaty są dostępne w usłudze.
- Wartości formatu wyjściowego są zgodne z Microsoft Speech output formats (w tym Ogg/WebM Opus).
- Telegram `sendVoice` akceptuje OGG/MP3/M4A; użyj OpenAI/ElevenLabs, jeśli potrzebujesz
gwarantowanych wiadomości głosowych Opus.
- Jeśli skonfigurowany format wyjściowy Microsoft zakończy się błędem, OpenClaw ponawia próbę z MP3.
- Jeśli skonfigurowany format wyjściowy Microsoft zakończy się niepowodzeniem, OpenClaw ponowi próbę z MP3.
Formaty wyjściowe OpenAI/ElevenLabs są stałe per kanał (zobacz wyżej).
Formaty wyjściowe OpenAI/ElevenLabs są stałe dla każdego kanału (zobacz wyżej).
## Zachowanie Auto-TTS
## Zachowanie auto-TTS
Po włączeniu OpenClaw:
- pomija TTS, jeśli odpowiedź zawiera już multimedia lub dyrektywę `MEDIA:`.
- pomija TTS, jeśli odpowiedź już zawiera multimedia lub dyrektywę `MEDIA:`.
- pomija bardzo krótkie odpowiedzi (< 10 znaków).
- podsumowuje długie odpowiedzi, gdy jest to włączone, używając `agents.defaults.model.primary` (lub `summaryModel`).
- podsumowuje długie odpowiedzi, jeśli ta opcja jest włączona, używając `agents.defaults.model.primary` (lub `summaryModel`).
- dołącza wygenerowane audio do odpowiedzi.
Jeśli odpowiedź przekracza `maxLength`, a podsumowanie jest wyłączone (lub brak klucza API dla
modelu podsumowania), audio
Jeśli odpowiedź przekracza `maxLength`, a summary jest wyłączone (lub brak klucza API dla
modelu summary), audio
jest pomijane i wysyłana jest zwykła odpowiedź tekstowa.
## Diagram przepływu
```
Reply -> TTS enabled?
no -> send text
yes -> has media / MEDIA: / short?
yes -> send text
no -> length > limit?
no -> TTS -> attach audio
yes -> summary enabled?
no -> send text
yes -> summarize (summaryModel or agents.defaults.model.primary)
-> TTS -> attach audio
Odpowiedź -> TTS włączone?
nie -> wyślij tekst
tak -> zawiera multimedia / MEDIA: / krótka?
tak -> wyślij tekst
nie -> długość > limit?
nie -> TTS -> dołącz audio
tak -> summary włączone?
nie -> wyślij tekst
tak -> podsumuj (summaryModel lub agents.defaults.model.primary)
-> TTS -> dołącz audio
```
## Użycie poleceń slash
## Użycie komend slash
Istnieje jedno polecenie: `/tts`.
Szczegóły włączania znajdziesz w [Polecenia slash](/pl/tools/slash-commands).
Istnieje jedna komenda: `/tts`.
Szczegóły włączania znajdziesz w [Slash commands](/pl/tools/slash-commands).
Uwaga dotycząca Discord: `/tts` to wbudowane polecenie Discorda, więc OpenClaw rejestruje tam
`/voice` jako natywne polecenie. Tekstowe `/tts ...` nadal działa.
Uwaga dotycząca Discord: `/tts` to wbudowana komenda Discord, więc OpenClaw rejestruje tam
`/voice` jako komendę natywną. Tekstowe `/tts ...` nadal działa.
```
/tts off
@ -428,24 +428,24 @@ Uwaga dotycząca Discord: `/tts` to wbudowane polecenie Discorda, więc OpenClaw
Uwagi:
- Polecenia wymagają autoryzowanego nadawcy (reguły allowlist/owner nadal obowiązują).
- `commands.text` lub rejestracja natywnego polecenia musi być włączona.
- Komendy wymagają autoryzowanego nadawcy (nadal obowiązują reguły allowlisty/właściciela).
- `commands.text` lub natywna rejestracja komend muszą być włączone.
- Konfiguracja `messages.tts.auto` akceptuje `off|always|inbound|tagged`.
- `/tts on` zapisuje lokalną preferencję TTS jako `always`; `/tts off` zapisuje ją jako `off`.
- Użyj konfiguracji, jeśli chcesz mieć wartości domyślne `inbound` lub `tagged`.
- `limit` i `summary`zapisywane w lokalnych prefs, a nie w głównej konfiguracji.
- Użyj konfiguracji, gdy chcesz mieć domyślne `inbound` lub `tagged`.
- `limit` i `summary`przechowywane w lokalnych preferencjach, a nie w głównej konfiguracji.
- `/tts audio` generuje jednorazową odpowiedź audio (nie włącza TTS).
- `/tts status` zawiera widoczność fallback dla ostatniej próby:
- udany fallback: `Fallback: <primary> -> <used>` plus `Attempts: ...`
- niepowodzenie: `Error: ...` plus `Attempts: ...`
- `/tts status` zawiera widoczność fallbacku dla ostatniej próby:
- fallback zakończony sukcesem: `Fallback: <primary> -> <used>` plus `Attempts: ...`
- awaria: `Error: ...` plus `Attempts: ...`
- szczegółowa diagnostyka: `Attempt details: provider:outcome(reasonCode) latency`
- Błędy API OpenAI i ElevenLabs zawierają teraz sparsowane szczegóły błędu dostawcy oraz id żądania (gdy zwraca je dostawca), które są ujawniane w błędach/logach TTS.
- Awaria API OpenAI i ElevenLabs zawiera teraz sparsowane szczegóły błędu dostawcy oraz request id (jeśli zostało zwrócone przez dostawcę), co jest pokazywane w błędach/logach TTS.
## Narzędzie agenta
Narzędzie `tts` konwertuje tekst na mowę i zwraca załącznik audio do
dostarczenia w odpowiedzi. Gdy kanałem jest Feishu, Matrix, Telegram lub WhatsApp,
audio jest dostarczane jako wiadomość głosowa, a nie jako załącznik plikowy.
audio jest dostarczane jako wiadomość głosowa, a nie jako załącznik pliku.
## Gateway RPC