شروع کار

پایداری

رفتار قابل دیدن برای مشتری: مسیر جایگزین خودکار، شناسه‌ی درخواست برای پیگیری و مهلت زمانی.

مسیر جایگزین خودکار

یک مدل ممکن است از چند مسیر سرو شود. وقتی مسیری خطای موقتی بدهد (زمان‌بر شدن، قطع اتصال، 429 یا 5xx از سرویس بالادستی)، دروازه خودش درخواست را از مسیر بعدی می‌فرستد و شما چیزی از آن نمی‌بینید. اگر همه‌ی مسیرها شکست بخورند، آخرین خطا به شکل یکی از کدهای خطاها به شما می‌رسد.

  • خطای 4xx که درباره‌ی خود درخواست است (مثلاً پارامتر نامعتبر) مسیر جایگزین ندارد.
  • شناسه‌ی پاسخ (chatcmpl-…) و فیلد model در همه‌ی حالت‌ها یکی می‌ماند.
  • در استریم مسیر جایگزین فقط تا پیش از فرستادن اولین بایت به شماست. بعد از آن خطا در جریان داده گزارش می‌شود.
  • هزینه فقط یک بار و فقط برای مسیری که پاسخ داد حساب می‌شود.

شناسه‌ی درخواست

دروازه برای هر درخواست یک شناسه می‌سازد و آن را در دو جا می‌گذارد:

  • سرآیند پاسخ x-request-id، روی همه‌ی پاسخ‌ها و خطاها.
  • فیلد error.request_id در بدنه‌ی خطا.

برای پیگیری مشکل، همین شناسه را به پشتیبانی بدهید. شناسه‌ای که خودتان در سرآیند x-request-id بفرستید جایگزین آن نمی‌شود. اگر شکلش درست باشد (۸ تا ۶۴ نویسه از حروف و عدد انگلیسی و . _ : -) همراه درخواست ذخیره می‌شود تا بعداً بتوانید دو شناسه را به هم ربط دهید.

برای برچسب زدن درخواست‌ها می‌توانید سرآیند x-1ai-metadata را با یک شیء JSON تخت (حداکثر ۴ کیلوبایت و ۶۴ کلید) بفرستید. پاسخ هم سرآیند x-1ai-trace-id دارد.

مهلت زمانی

هر درخواست یک مهلت کلی دارد. زمان تلاش‌های جایگزین هم از همین مهلت کم می‌شود و بعد از پایان آن، تلاش تازه‌ای شروع نمی‌شود. در استریم، سکوت طولانی بین دو قطعه و زمان کل بسیار بلند هم محدود است و استریم با provider_timeout یا خطای مشابه تمام می‌شود، با هزینه‌ی آنچه تولید شده. مقدار این مهلت‌ها ثابت قرارداد نیست و ممکن است تغییر کند، پس سمت کلاینت مهلت خودتان را بگذارید (برای درخواست‌های بلند چند دقیقه) و 504 را مثل خطای قابل تکرار ببینید.

کش پاسخ

اگر پاسخ یک درخواست از کش خود دروازه آمده باشد، سرآیند x-1ai-cache-status مقدار HIT یا SEMANTIC_HIT دارد و فقط بخشی از قیمت معمول کم می‌شود. این رفتار پیش‌فرض نیست و با تنظیمات کلید یا سرآیند x-1ai-config روشن می‌شود. بدون آن، مقدار این سرآیند BYPASS است.

تلاش دوباره از سمت شما

دروازه تلاش دوباره را برای 429 و 5xx پیش از رسیدن به شما انجام داده است. اگر باز هم خطا گرفتید، دوباره فرستادن بلافاصله کمک نمی‌کند. با تأخیر نمایی و حداکثر چند تلاش دوباره بفرستید. یک درخواست موفق هر بار جداگانه حساب می‌شود و تکرار آن دوباره هزینه دارد.

صفحه‌های مرتبط