الإجابة السريعة
رسالة Whizi التي لا تُرسَل تعود لواحد من خمسة أسباب: رد آخر لا يزال قيد التوليد، أو أنك أرسلت النص نفسه مرتين، أو تجاوزت حد الطلبات في الدقيقة أو الساعة، أو أن الرسالة نفسها فشلت في التحقق، أو أن جلستك انتهت صلاحيتها. يذكر Whizi السبب في نص الخطأ، فالنص الذي تراه هو ما يحدد الحل.
| ما تراه | الرمز | السبب | ما يجب فعله |
|---|---|---|---|
Generation already in progress. Please stop it or wait for it to finish. | 409 | رد آخر قيد التشغيل على حسابك | أوقفه، أو انتظر |
Duplicate message ignored. Please wait for the current response to finish. | 409 | النص نفسه (والصورة) أُرسل مؤخرًا لهذه المحادثة | انتظر انتهاء الرد الجاري |
Too many requests. Please wait and try again. | 429 | نافذة الدقيقة رفضت الطلب | انتظر، ثم أعد الإرسال |
Hourly message limit reached. Please try again later. | 429 | سقف الرسائل بالساعة رفض الطلب | انتظر، ثم أعد الإرسال |
A non-empty message is required. | 400 | الرسالة فارغة أو مسافات فقط | اكتب شيئًا |
This message is {count} characters, over the 100,000 character limit. Attach a shorter file, or ask about one section at a time. | 400 | رسالة واحدة تجاوزت 100,000 حرف | قسّمها، أو اسأل عن قسم واحد في كل مرة |
The model is temporarily rate-limited. Please retry shortly. | 429 | مزوّد النموذج ردّ على الاتصال برمز 429 | أعد المحاولة، أو بدّل النموذج |
Failed to send message. | لا يوجد، إشعار على الموقع | فشل الإرسال ولم يقدّم الخادم أي رسالة | تحقق من اتصالك وأعد الإرسال |
Something went wrong. Please retry. | 500 | أي خطأ غير معالَج في الخادم | أعد الإرسال، وأبلغ عنه إن تكرر |
Invalid or expired session token. | 401 | فشل التحقق من الرمز | حدّث الصفحة وسجّل الدخول من جديد |
طلبات حد المعدل المرفوضة تُلغى تلقائيًا، فالطلب المرفوض لا ينفق أبدًا رسالة من رصيدك.
لا شيء يحدث عند الضغط على Enter
إن لم يفعل زر Enter شيئًا على الإطلاق، فهذا يعني أن ردًا ما زال قيد التوليد. يتجاهل صندوق الكتابة عمدًا زر Enter أثناء توليد رد، فهذه ليست ضغطة مفقودة. زر Shift مع Enter لا يزال يضيف سطرًا جديدًا.
يشغّل Whizi توليدًا واحدًا لكل حساب في كل مرة، بحكم قفل خاص بكل مستخدم، فلا يمكن لجهازين توليد رد في الوقت نفسه لنفس الحساب أبدًا. تُرفض المحاولة الثانية برسالة Generation already in progress. Please stop it or wait for it to finish.، رمز HTTP 409، برمز generation_in_progress. تُرجَع الرسالة نفسها عندما يبلّغ منسّق التوليد عن تعارض عند الاتصال.
إرسال النص نفسه مرتين يُرجع Duplicate message ignored. Please wait for the current response to finish.، رمز HTTP 409، برمز duplicate_message. يظهر هذا عندما يكون نص الرسالة نفسه (والصورة) قد أُرسل مؤخرًا إلى هذه المحادثة، وهو ما ينتج عن نقرة مزدوجة أو ضغطة Enter ثانية متعجّلة.
الحل في الحالتين واحد: أوقف الرد الجاري، أو دعه ينتهي. الإيقاف يُدار من الخادم. ينهي المنسّق قراءة المزوّد، ويحفظ أي نص وصل، ويحرّر القفل، ويردّ دورًا لم يُسلَّم. وإن بقي قفل ما عالقًا لسبب ما، فإنه يتعافى وحده: يصبح القفل قابلًا للسحب بمجرد أن يُحكم على صاحبه بأنه متروك أو متجمّد، وتُكنس الأقفال المنتهية وفق جدول زمني.
إن ترك الإيقاف فجوة، تعرض فقاعة المساعد النص Generation stopped.، وهو النص الذي يُحفظ عند إيقاف التوليد دون التقاط أي نص جزئي. أما Generation stopped, but it could not be saved. فتعني أن الإيقاف نجح لكن حفظ الرد الجزئي لم ينجح.
تُرفض الرسالة قبل أن يراها أي نموذج
هذه رفضات تحقق HTTP 400 تُطلق قبل أن يصل أي شيء إلى نموذج. لم يُرسَل شيء إلى الأعلى.
| الرسالة | الرمز | السبب |
|---|---|---|
A non-empty message is required. | empty_message | الحقل content مفقود أو مسافات فقط |
A model is required. | invalid_model | الحقل model مفقود أو فارغ |
That model is not available for text chat. | unsupported_model | معرّف النموذج لا يقابل نموذج نص في الكتالوج |
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 | رسالة واحدة تجاوزت 100,000 حرف |
That system prompt is missing or over the 32,000 character limit. | invalid_system_prompt | موجّه النظام مفقود أو تجاوز 32,000 حرف |
That image reference is not valid. | invalid_image_url | مرجع الصورة ليس نصًا، أو يتجاوز 2,048 حرفًا |
This conversation has {count} messages, over the 100 message limit. | too_many_messages | مسار دردشة التطبيق رفض سجلًا يحمل أكثر من 100 رسالة في طلب واحد |
سقف الـ100,000 حرف يحسب الرسالة كاملة، بما في ذلك أي نص مستخرج من مرفق. لمعرفة ما يفعله Whizi عندما لا يتسع نص المرفق المستخرج في ميزانية الرسالة، راجع فشل رفع الملف.
حدود المعدل، ورفض واحد لا علاقة له بالسرعة
نصا الرفض 429 كلاهما موجودان في الجدول أعلاه، وكلاهما يحملان الرمز rate_limit_reached. الطلب المرفوض يُلغى تلقائيًا، فالرمز 429 لا ينفق أبدًا رسالة من رصيدك: انتظر انتهاء النافذة وأعد الإرسال. أرقام النوافذ والحدود المرتبطة بكل خطة موجودة في حدود المعدل ونفاد الرصيد.
رفض واحد في العائلة نفسها لا علاقة له بالسرعة إطلاقًا: Account sharing limit reached. Please use your own Whizi account.، رمز HTTP 403، برمز account_sharing_limit، يظهر عندما يُرصد أكثر من 3 أجهزة أو مفاتيح جلسات مختلفة على حساب واحد خلال آخر 24 ساعة. الانتظار دقيقة لا يزيل هذا الرفض.
الرد يبدأ، ثم يتوقف أو لا يظهر أبدًا
بمجرد فتح الاتصال، يأتي أي عطل إما من مزوّد النموذج أو من الآلية التي تنقل التدفق. تختلف النصوص بحسب مكان وقوع العطل.
| الرسالة | مصدرها |
|---|---|
The model is temporarily rate-limited. Please retry shortly. | HTTP 429 برمز provider_rate_limited، عندما يردّ المزوّد على الاتصال برمز 429 |
The model provider rejected the request. | تُستخدم عندما يتعذّر تحليل نص خطأ المزوّد، أو يُحلَّل إلى رسالة فارغة |
The model provider returned an empty stream. | HTTP 502، ردّ المصدر الأعلى بنجاح لكن دون أي محتوى |
The model provider returned an error. | حدث خطأ ضمن التدفق عندما يرسل المزوّد إطار خطأ دون رسالة خاصة به |
The model stream was interrupted. | حدث خطأ ضمن التدفق لأي عطل آخر في منتصف التدفق |
Generation failed mid-stream. | انتهى التوليد بفشل بعد أن أُرسلت بايتات بالفعل |
Generation failed to start. | نص احتياطي داخلي عند فشل بدء المنسّق دون رسالة خاصة به |
The generation stream is unavailable. | تُطلق عندما يتعذّر على المنسّق تسليم تدفق للاتصال به |
Generation aborted before it started. | تُطلق كخطأ إحباط عندما يقطع العميل الاتصال قبل اكتمال اتصال المصدر الأعلى |
Something went wrong. Please retry. | HTTP 500 برمز internal_error، نص أي خطأ غير معالَج في الخادم |
Sorry, there was an error generating the response. | تُكتب في فقاعة المساعد عندما ينتهي التدفق دون رسالة نهائية ودون محتوى متراكم |
أي عطل من المصدر الأعلى غير 429 هو HTTP 502 برمز provider_error يحمل رسالة المزوّد، مقتطعة إلى 300 حرف. في مسار منتصف التدفق لا يوجد حدث خطأ ضمن التدفق: الاتصال ينقطع ببساطة.
أحد هذه النصوص هو سجل لا رسالة. Generation aborted before it started. تُطلق كخطأ إحباط عندما يقطع العميل الاتصال قبل اكتمال اتصال المصدر الأعلى، ويردّ المسار على تلك الحالة برمز HTTP 408 وجسم فارغ، فالنص هو ما يسجّله الخادم، لا ما يطبعه المتصفح. في تتبع للشبكة، يعني ردّ 408 فارغ على مسار التوليد أن الطلب زال قبل الوصول إلى أي نموذج.
الحالة الجامعة تقبع أسفل كل هذا: أي شيء لا يتعرّف عليه الخادم ينتهي إلى HTTP 500 برمز internal_error بجسم Something went wrong. Please retry. رمز HTTP 500 لا يحدد سببًا. أعد الإرسال مرة واحدة، ثم تواصل مع الدعم إن تكرر.
ما يجب فعله: أعد الإرسال، وإن تكرر، بدّل إلى نموذج مختلف في المحادثة نفسها. تنشأ هذه الأخطاء من خارج Whizi، لا من حسابك أو إعداداتك.
أمر واحد لست مضطرًا لفعله: إبقاء علامة التبويب مفتوحة. يعمل التوليد داخل كائن Durable Object خاص بكل محادثة، فإغلاق علامة التبويب في منتصف التدفق لا يقتل الرد ويبقى محفوظًا. يمكن لعلامة تبويب أُعيد فتحها أو لجهاز ثانٍ إعادة الاتصال بتوليد جارٍ فعلًا. تُطلق The generation stream is unavailable. عندما يتعذّر على المنسّق تسليم تدفق للاتصال به. أعد تحميل المحادثة واقرأ ما جرى حفظه بدلًا من انتظار التدفق.
في واجهة المقارنة جنبًا إلى جنب تختلف النصوص الخاصة بكل جانب مجددًا: The model did not respond. Please try again. عندما يكون ردّ التوليد غير سليم ولا يحمل خطأ قابلًا للقراءة، وCould not start a comparison chat. عندما يتعذّر إنشاء الدردشة الداعمة، وSomething went wrong. كملاذ أخير. تلك الأخيرة هي الصيغة المختصرة، بلا جملة إعادة محاولة بعدها، وهو ما يميّزها عن جسم Something went wrong. Please retry. الخاص بخطأ 500.
انتهت صلاحية جلستك
تبدو أعطال المصادقة كأعطال إرسال لأنها تظهر عند الإرسال. Authentication required. هي HTTP 401 برمز unauthorized وتظهر عندما لا يحمل الطلب رمز حامل. Invalid or expired session token. هي الحالة والرمز نفسهما عندما يفشل التحقق من الرمز لأي سبب: رمز منتهي الصلاحية، توقيع خاطئ، جهة إصدار غير صحيحة.
على جانب الموقع قد تظهر بدلًا من ذلك Failed to retrieve session token.، وهي الرسالة التي يطلقها الموقع كلما أعاد جلب الرمز نتيجة فارغة قبل استدعاء قائمة المحادثات أو تحميلها أو حذفها أو إعادة تسميتها أو رفع ملف. لواجهة المقارنة صياغتها الخاصة: Your session expired. Please refresh and try again.
الحل هو تحديث الصفحة، ثم تسجيل الدخول من جديد إن لم يستعد التحديث الجلسة. لا شيء يُفقد من الحساب، ولم تُرسَل أي رسالة.
ليس عطلًا، بل حد
رفض بسبب الرصيد ورفض بسبب الفئة ليسا فشلًا في الإرسال. الطلب تشكّل بشكل صحيح ورفضه Whizi عمدًا، فلا شيء لإصلاحه في صندوق الكتابة: رفضات الرصيد مشروحة في نفاد الرصيد، والنموذج الذي يظهر مقفلًا مشروح في استكشاف الأخطاء.
الموجّه المرفوض بسبب فحص المحتوى ليس فشلًا في الإرسال أيضًا. يعمل الفحص قبل حجز أي رصيد وقبل استدعاء المزوّد، فالموجّه المرفوض لا يكلّف أي رصيد، ويصل الرفض كرمز HTTP 400 مع السبب معروضًا في المحادثة.
تعديل رسالة مُرسَلة يفشل بدلًا من ذلك
تعديل موجّه وإعادة إرساله هو الطريقة لإعادة تشغيل دور، بما أن Whizi لا يملك زر إعادة توليد. لهذا المسار فشلان خاصان به.
That message is no longer part of this conversation. Reload and try again. هي HTTP 404 برمز replace_anchor_not_found، تُرجَع عندما يسمّي التعديل معرّف رسالة لم يعد موجودًا في المحادثة. أعد تحميل المحادثة. العميل يحمل معرّف رسالة لم يعد لدى الخادم.
Conversation not found. هي HTTP 404 برمز not_found، تُرجَع عندما لا يكون معرّف المحادثة موجودًا أو لا يملكه المتصل. تظهر على مسار التوليد وعلى مسارات القراءة والحذف وإعادة التسمية وإلحاق الرسائل وتبديل الإصدار والمشاركة أيضًا.
- عدم استجابة زر Enter يعني أن ردًا ما زال قيد التوليد، لا ضغطة مفقودة
- يعمل توليد واحد لكل حساب في كل مرة، عبر كل أجهزتك
- يُتجاهل الإرسال المكرر عمدًا، برمز 409 ورسالة توضّح ذلك
- للدردشة سقف في الدقيقة وسقف في الساعة لا ترفعهما أي خطة
- طلب مرفوض بسبب حد المعدل لا يكلّفك شيئًا من رصيدك
- الرسالة الواحدة مقيّدة بسقف 100,000 حرف
- أخطاء المزوّد تُحل بإعادة الإرسال أو تبديل النموذج، لا بالإعدادات
- إغلاق علامة التبويب في منتصف الرد لا يقتل الرد
- أخطاء المصادقة تُحل بتحديث الصفحة وتسجيل الدخول من جديد
الأسئلة الشائعة
ماذا تعني "Generation already in progress. Please stop it or wait for it to finish."؟
أوقف الرد الجاري، أو انتظر انتهاءه، ثم أرسل مجددًا. الرفض هو HTTP 409 برمز generation_in_progress، ويظهر أيضًا عندما يكون جهاز مختلف يولّد ردًا على الحساب نفسه. يُدار الإيقاف من الخادم: يُحفظ الرد الجزئي، ويُحرَّر القفل، ويُردّ دور لم يُسلَّم.
توقف ردي في المنتصف. هل خُصم مني رصيد؟
عطل منتصف التدفق يقطع الاتصال دون حدث خطأ ضمن التدفق، وأي نص وصل قبل الانقطاع يُحفظ. إن أوقفت التوليد بنفسك، يلغي الخادم قراءة المزوّد، ويحفظ الرد الجزئي، ويردّ دورًا لم يُسلَّم. لعطل متكرر من المزوّد، بدّل إلى نموذج مختلف في المحادثة نفسها، لأن الخطأ ينشأ من خارج Whizi. وإن كان ما تحصل عليه هو HTTP 500 مع "Something went wrong. Please retry."، فهذا هو الجسم العام لخطأ خادم غير معالَج لا مشكلة في النموذج، لذا أعد الإرسال مرة وأبلغ عنه إن استمر.
هل يلغي إغلاق علامة التبويب ردي؟
لا، مع نافذة ضيقة واحدة في البداية تمامًا. إن قطع العميل الاتصال قبل اكتمال اتصال المصدر الأعلى، يسجّل الخادم "Generation aborted before it started." ويردّ برمز HTTP 408 وجسم فارغ، وهذا سبب ظهور الطلب وكأنه لم يُرجع شيئًا على الإطلاق. بعد تلك النقطة يبقى الرد رغم إغلاق العميل، لأن التوليد يعمل داخل كائن Durable Object خاص بكل محادثة والرد يبقى محفوظًا. "The generation stream is unavailable." تُطلق عندما يتعذّر على المنسّق تسليم تدفق للاتصال به، وإعادة تحميل المحادثة تعرض ما جرى حفظه.
يقول Whizi إن رسالتي تجاوزت سقف 100,000 حرف. ماذا الآن؟
الرسالة الواحدة مقيّدة بسقف 100,000 حرف والرفض هو HTTP 400 برمز message_too_long. يشمل العدّ الرسالة كاملة، بما في ذلك النص المستخرج من مرفق. اسأل عن قسم واحد في كل مرة، أو أرفق ملفًا أقصر. عندما لا يتسع نص المرفق المستخرج في ميزانية الرسالة، يقتطع Whizi النص بدلًا من الرفض ويحذّرك أن الجزء الأول فقط أُرسل.