Stručná odpověď
Zpráva ve Whizi, kterou nelze odeslat, je jedna z pěti věcí: ještě se generuje jiná odpověď, odeslali jste stejný text dvakrát, překročili jste limit počtu požadavků za minutu nebo za hodinu, zpráva samotná neprošla validací, nebo vypršel token vaší relace. Whizi uvádí důvod přímo v chybovém textu, takže zobrazený řetězec určuje řešení.
| Co vidíte | Kód | Proč | Co dělat |
|---|---|---|---|
Generation already in progress. Please stop it or wait for it to finish. | 409 | Na vašem účtu už běží jiná odpověď | Zastavte ji, nebo čekejte |
Duplicate message ignored. Please wait for the current response to finish. | 409 | Stejný text (a obrázek) byl do tohoto chatu nedávno už odeslán | Čekejte na už běžící odpověď |
Too many requests. Please wait and try again. | 429 | Požadavek odmítlo okno za minutu | Počkejte, pak odešlete znovu |
Hourly message limit reached. Please try again later. | 429 | Odmítl ho hodinový strop zpráv | Počkejte, pak odešlete znovu |
A non-empty message is required. | 400 | Zpráva chybí nebo obsahuje jen prázdné znaky | Napište něco |
This message is {count} characters, over the 100,000 character limit. Attach a shorter file, or ask about one section at a time. | 400 | Jedna zpráva přesáhla 100 000 znaků | Rozdělte ji, nebo se ptejte po jedné části |
The model is temporarily rate-limited. Please retry shortly. | 429 | Poskytovatel modelu odpověděl na připojení kódem 429 | Zkuste znovu, nebo přepněte model |
Failed to send message. | žádný, oznámení na webu | Odeslání selhalo a backend nedodal žádnou zprávu | Zkontrolujte připojení a odešlete znovu |
Something went wrong. Please retry. | 500 | Jakákoli neošetřená chyba na backendu | Odešlete znovu, a pokud se opakuje, nahlaste to |
Invalid or expired session token. | 401 | Ověření tokenu selhalo | Obnovte stránku a přihlaste se znovu |
Odmítnutí kvůli limitu se odvine, takže odmítnutý požadavek nikdy nespotřebuje zprávu z vašeho limitu.
Po stisknutí Enter se nic neděje
Pokud Enter nedělá vůbec nic, ještě se generuje odpověď. Editor pole záměrně Enter ignoruje, dokud odpověď běží, takže nejde o ztracený stisk klávesy. Shift a Enter stále vloží nový řádek.
Whizi spouští jedno generování na účet najednou, vynucené zámkem pro jednoho uživatele, takže dvě zařízení nemohou nikdy generovat současně za stejný účet. Druhý pokus je odmítnut hláškou Generation already in progress. Please stop it or wait for it to finish., HTTP 409, kód generation_in_progress. Stejný řetězec se vrací, když koordinátor generování ohlásí konflikt ve chvíli připojení.
Odeslání totožného textu dvakrát vrátí Duplicate message ignored. Please wait for the current response to finish., HTTP 409, kód duplicate_message. Spouští se, když byl stejný text zprávy (a obrázek) do této konverzace nedávno už odeslán, což je přesně to, co vyprodukuje dvojklik nebo netrpělivý druhý Enter.
Řešení obou je stejné: zastavte běžící odpověď, nebo ji nechte doběhnout. Zastavení řeší server. Koordinátor zruší čtení od poskytovatele, uloží text, který dorazil, uvolní zámek a vrátí nedoručenou zprávu z limitu. Pokud zámek nějak zůstane zaseknutý, sám se zotaví: zámek se stane uvolnitelným, jakmile je jeho držitel vyhodnocen jako osamocený nebo zaseknutý, a vypršené zámky se pravidelně uklízejí.
Pokud po zastavení zůstane mezera, bublina asistenta zobrazí Generation stopped., což je text uložený, když je generování zastaveno a žádný částečný text nebyl zachycen. Generation stopped, but it could not be saved. znamená, že zastavení proběhlo, ale uložení částečné odpovědi ne.
Zpráva je odmítnuta dřív, než ji uvidí model
Toto jsou HTTP 400 odmítnutí kvůli validaci, vznesená dřív, než cokoli dorazí k modelu. Nic nebylo odesláno dál.
| Zpráva | Kód | Spouštěč |
|---|---|---|
A non-empty message is required. | empty_message | content chybí nebo obsahuje jen prázdné znaky |
A model is required. | invalid_model | model chybí nebo je prázdný |
That model is not available for text chat. | unsupported_model | Id modelu se nepřevede na textový model v katalogu |
This message is {count} characters, over the 100,000 character limit. Attach a shorter file, or ask about one section at a time. | message_too_long | Jedna zpráva přesáhla 100 000 znaků |
That system prompt is missing or over the 32,000 character limit. | invalid_system_prompt | Systémový prompt chybí nebo přesahuje 32 000 znaků |
That image reference is not valid. | invalid_image_url | Odkaz na obrázek není řetězec, nebo je delší než 2 048 znaků |
This conversation has {count} messages, over the 100 message limit. | too_many_messages | Trasa chatu v aplikaci odmítla přepis nesoucí v jednom požadavku více než 100 zpráv |
Strop 100 000 znaků počítá celou zprávu, včetně jakéhokoli textu vytaženého z přílohy. Co Whizi dělá, když vytažený text z přílohy nevejde do rozpočtu zprávy, popisuje selhání nahrání souboru.
Limity počtu požadavků, a jedno odmítnutí, které se rychlosti netýká
Oba řetězce 429 pro limit počtu požadavků jsou v tabulce výše a oba nesou kód rate_limit_reached. Odmítnutý požadavek se odvine, takže 429 nikdy nespotřebuje zprávu z vašeho limitu: počkejte, až okno uplyne, a odešlete znovu. Údaje o oknech a limity plánů za nimi jsou na stránkách limity počtu požadavků a nedostatek kreditů.
Jedno odmítnutí ve stejné rodině se rychlosti netýká vůbec: Account sharing limit reached. Please use your own Whizi account., HTTP 403, kód account_sharing_limit, spustí se, když bylo za posledních 24 hodin na jednom účtu zaznamenáno více než 3 různé klíče zařízení nebo relace. Čekání minutu ho neodstraní.
Odpověď začne, pak se zastaví nebo se nikdy nevykreslí
Jakmile je spojení otevřené, selhání pochází buď od poskytovatele modelu, nebo z mechanismu, který nese proud dat. Řetězce se liší podle toho, kde selhání nastalo.
| Zpráva | Odkud pochází |
|---|---|
The model is temporarily rate-limited. Please retry shortly. | HTTP 429 provider_rate_limited, když poskytovatel odpoví na připojení kódem 429 |
The model provider rejected the request. | Použito, když tělo chyby od poskytovatele nelze rozparsovat, nebo se parsuje na prázdnou zprávu |
The model provider returned an empty stream. | HTTP 502, poskytovatel odpověděl OK, ale bez těla |
The model provider returned an error. | Událost chyby v proudu, když poskytovatel pošle chybový rámec bez vlastní zprávy |
The model stream was interrupted. | Událost chyby v proudu pro jakékoli jiné selhání uprostřed proudu |
Generation failed mid-stream. | Generování skončilo selháním po tom, co už byly odeslány nějaké bajty |
Generation failed to start. | Vnitřní záložní text pro selhání spuštění koordinátora, který nenese vlastní zprávu |
The generation stream is unavailable. | Vzneseno, když koordinátor nemůže vrátit proud, ke kterému by se dalo připojit |
Generation aborted before it started. | Vzneseno jako AbortError, když se klient odpojí dřív, než se dokončí připojení k poskytovateli |
Something went wrong. Please retry. | HTTP 500 internal_error, tělo pro jakoukoli neošetřenou chybu backendu |
Sorry, there was an error generating the response. | Vepsáno do bubliny asistenta, když proud skončí bez závěrečné zprávy a bez nahromaděného obsahu |
Jakékoli selhání poskytovatele mimo 429 je HTTP 502 provider_error, nesoucí zprávu poskytovatele zkrácenou na 300 znaků. Na cestě uprostřed proudu není žádná chybová událost v rámci pásma: spojení se prostě přeruší.
Jeden z těchto řetězců je záznam, ne zpráva. Generation aborted before it started. se vznáší jako AbortError, když se klient odpojí dřív, než se dokončí připojení k poskytovateli, a trasa na tento případ odpoví HTTP 408 s prázdným tělem, takže tento řetězec je to, co si server zapíše, ne to, co vypíše prohlížeč. V síťovém trasování prázdné 408 na trase generování znamená, že požadavek zanikl dřív, než byl osloven jakýkoli model.
Pod tím vším je souhrnná záchytka: cokoli, co backend nerozpozná, skončí jako HTTP 500 internal_error s tělem Something went wrong. Please retry. HTTP 500 neidentifikuje příčinu. Odešlete znovu jednou, a pokud se to opakuje, kontaktujte podporu.
Co dělat: odešlete znovu, a pokud se to opakuje, přepněte ve stejné konverzaci na jiný model. Tyto chyby vznikají výše proudu od Whizi, ne ve vašem účtu nebo nastavení.
Jedna věc, kterou nemusíte dělat, je udržovat záložku otevřenou. Generování běží v Durable Objectu vyhrazeném konverzaci, takže zavření záložky uprostřed proudu odpověď nezabije a odpověď zůstává uložená. Znovu otevřená záložka nebo druhé zařízení se může znovu připojit k už běžícímu generování. The generation stream is unavailable. se vznáší, když koordinátor nemůže vrátit proud, ke kterému by se dalo připojit. Obnovte konverzaci a přečtěte si, co bylo uloženo, místo čekání na proud.
V náhledu porovnání vedle sebe jsou řetězce pro každou stranu opět jiné: The model did not respond. Please try again., když odpověď generování není OK a nenese žádnou čitelnou chybu, Could not start a comparison chat., když nelze vytvořit podkladový chat, a Something went wrong. jako poslední záchrana. Ta poslední je krátká forma, bez věty s výzvou ke zopakování, díky čemuž ji poznáte od těla Something went wrong. Please retry. u chyby 500.
Vypršela vaše relace
Chyby ověření vypadají jako chyby odeslání, protože se projeví právě ve chvíli odeslání. Authentication required. je HTTP 401 unauthorized a spustí se, když požadavek nenese žádný bearer token. Invalid or expired session token. je stejný stav a kód, když ověření tokenu selže z jakéhokoli důvodu: vypršelý token, chybný podpis, špatný vydavatel.
Na straně webu se namísto toho může zobrazit Failed to retrieve session token., který web vyvolá, kdykoli načtení tokenu nevrátí nic před voláním seznamu chatů, načtení chatu, mazáním, přejmenováním nebo nahráváním. Náhled porovnání má vlastní znění: Your session expired. Please refresh and try again.
Řešením je obnovení stránky, a pokud obnovení relaci neobnoví, opětovné přihlášení. Na účtu se nic neztratí a žádná zpráva nebyla odeslána.
Nejde o chybu, jde o limit
Odmítnutí kvůli limitu a odmítnutí kvůli tarifu nejsou chyby odeslání. Požadavek byl vytvořen správně a Whizi ho odmítlo úmyslně, takže v editoru zprávy není co opravovat: odmítnutí kvůli limitu popisuje nedostatek kreditů a model zobrazený jako uzamčený popisuje řešení problémů.
Prompt odmítnutý kontrolou obsahu také není chyba odeslání. Kontrola běží dřív, než je vyhrazen jakýkoli kredit, a dřív, než je osloven poskytovatel, takže odmítnutý prompt nestojí žádný kredit z limitu a odmítnutí přichází jako HTTP 400 s důvodem zobrazeným v chatu.
Selhává místo toho úprava odeslané zprávy
Úprava promptu a jeho opětovné odeslání je způsob, jak znovu spustit kolo konverzace, protože Whizi nemá tlačítko pro přegenerování. Tato cesta má vlastní dvě chyby.
That message is no longer part of this conversation. Reload and try again. je HTTP 404 replace_anchor_not_found, vráceno, když úprava jmenuje id zprávy, které už v konverzaci není. Obnovte konverzaci. Klient si drží id zprávy, které server už nemá.
Conversation not found. je HTTP 404 not_found, vráceno, když id konverzace neexistuje, nebo nepatří volajícímu. Zobrazuje se na trase generování a také na trasách čtení, mazání, přejmenování, přidání zprávy, přepnutí verze a sdílení.
- Enter, který nic nedělá, znamená, že se ještě generuje odpověď, ne ztracený stisk klávesy
- Na účet běží jedno generování najednou, napříč všemi vašimi zařízeními
- Duplicitní odeslání je ignorováno úmyslně, s kódem 409 a hláškou o tom
- Chat má limit za minutu a limit za hodinu, který nezruší žádný tarif
- Požadavek odmítnutý kvůli limitu nestojí nic z vašeho limitu
- Jedna zpráva je omezena na 100 000 znaků
- Chyby poskytovatele se řeší opětovným odesláním nebo změnou modelu, ne v nastavení
- Zavření záložky uprostřed odpovědi odpověď nezabije
- Chyby ověření se řeší obnovením a opětovným přihlášením
Časté dotazy
Co znamená "Generation already in progress. Please stop it or wait for it to finish."?
Zastavte běžící odpověď, nebo počkejte, až doběhne, a pak odešlete znovu. Odmítnutí je HTTP 409 s kódem generation_in_progress a zobrazí se i tehdy, když na stejném účtu generuje jiné zařízení. Zastavení řeší server: částečná odpověď se uloží, zámek se uvolní a nedoručené kolo se vrátí do limitu.
Moje odpověď se zastavila v polovině. Bylo mi to započítáno?
Selhání uprostřed proudu přeruší spojení bez chybové události v rámci pásma a text, který dorazil před přerušením, zůstává uložen. Pokud generování zastavíte sami, server zruší čtení od poskytovatele, uloží částečnou odpověď a vrátí nedoručené kolo. Při opakovaném selhání poskytovatele přepněte ve stejné konverzaci na jiný model, protože chyba vzniká výše proudu od Whizi. Pokud se vám vrátí HTTP 500 s "Something went wrong. Please retry.", je to obecné tělo pro neošetřenou chybu backendu, ne problém modelu, tak odešlete znovu jednou a nahlaste to, pokud se to opakuje.
Zavření záložky zruší moji odpověď?
Ne, s jedním úzkým oknem hned na začátku. Pokud se klient odpojí dřív, než se dokončí připojení k poskytovateli, server zaznamená "Generation aborted before it started." a odpoví HTTP 408 s prázdným tělem, což je důvod, proč tento požadavek vypadá, že nevrátil vůbec nic. Po tomto bodě odpověď záložku přežije, protože generování běží v Durable Objectu vyhrazeném konverzaci a odpověď zůstává uložená. "The generation stream is unavailable." se vznáší, když koordinátor nemůže vrátit proud, ke kterému by se dalo připojit, a obnovení konverzace zobrazí, co bylo uloženo.
Whizi říká, že moje zpráva přesahuje limit 100 000 znaků. Co teď?
Jedna zpráva je omezena na 100 000 znaků a odmítnutí je HTTP 400, kód message_too_long. Počet zahrnuje celou zprávu, včetně textu vytaženého z přílohy. Ptejte se po jedné části najednou, nebo přiložte kratší soubor. Když vytažený text z přílohy nevejde do rozpočtu zprávy, Whizi ho místo odmítnutí zkrátí a upozorní vás, že byla odeslána jen první část.