از این راهنما برای کمک به تشخیص و حل مشکلات رایجی که هنگام تماس با Gemini API ایجاد میشوند، استفاده کنید. ممکن است با مشکلاتی از سرویس پشتیبان Gemini API یا SDK های مشتری مواجه شوید. SDK های مشتری ما در مخازن زیر منبع باز هستند:
اگر با مشکلات کلید API مواجه شدید، بررسی کنید که کلید API خود را به درستی طبق راهنمای تنظیم کلید API تنظیم کرده اید.
کدهای خطای سرویس Backend API Gemini
جدول زیر کدهای خطای متداولی را که ممکن است با آنها مواجه شوید، همراه با توضیحاتی درباره علل و مراحل عیبیابی فهرست میکند:
کد HTTP | وضعیت | توضیحات | مثال | راه حل |
400 | INVALID_ARGUMENT | بدنه درخواست بد شکل است. | یک اشتباه تایپی یا یک قسمت الزامی در درخواست شما وجود ندارد. | مرجع API را برای قالب درخواست، نمونه ها و نسخه های پشتیبانی شده بررسی کنید. استفاده از ویژگیهای نسخه API جدیدتر با نقطه پایانی قدیمیتر میتواند باعث ایجاد خطا شود. |
400 | FAILED_PRECONDITION | سطح رایگان Gemini API در کشور شما در دسترس نیست. لطفاً صورتحساب پروژه خود را در Google AI Studio فعال کنید. | شما در منطقهای درخواست میکنید که در آن لایه رایگان پشتیبانی نمیشود و صورتحساب پروژه خود را در Google AI Studio فعال نکردهاید. | برای استفاده از Gemini API، باید با استفاده از Google AI Studio یک طرح پولی تنظیم کنید. |
403 | PERMISSION_DENIED | کلید API شما مجوزهای لازم را ندارد. | شما از کلید API اشتباه استفاده می کنید. شما در حال تلاش برای استفاده از یک مدل تنظیم شده بدون انجام احراز هویت مناسب هستید. | بررسی کنید که کلید API تنظیم شده باشد و دسترسی مناسبی داشته باشد. و مطمئن شوید که برای استفاده از مدل های تنظیم شده، احراز هویت مناسب را انجام داده اید. |
404 | NOT_FOUND | منبع درخواستی پیدا نشد. | تصویر، فایل صوتی یا ویدیویی که در درخواست شما ارجاع داده شده بود، یافت نشد. | بررسی کنید که آیا تمام پارامترهای درخواست شما برای نسخه API شما معتبر هستند یا خیر . |
429 | RESOURCE_EXHAUSTED | شما از حد مجاز تجاوز کرده اید. | شما در هر دقیقه درخواست های زیادی را با API لایه رایگان Gemini ارسال می کنید. | بررسی کنید که در محدوده نرخ مدل هستید. در صورت نیاز درخواست افزایش سهمیه کنید . |
500 | داخلی | یک خطای غیرمنتظره در سمت Google رخ داد. | زمینه ورودی شما خیلی طولانی است. | زمینه ورودی خود را کاهش دهید یا به طور موقت به مدل دیگری بروید (مثلاً از Gemini 1.5 Pro به Gemini 1.5 Flash) و ببینید که آیا کار می کند یا خیر. یا کمی صبر کنید و درخواست خود را دوباره امتحان کنید. اگر بعد از امتحان مجدد مشکل همچنان ادامه داشت، لطفاً با استفاده از دکمه ارسال بازخورد در Google AI Studio آن را گزارش دهید. |
503 | در دسترس نیست | ممکن است سرویس به طور موقت بیش از حد بارگیری شده یا از کار بیفتد. | ظرفیت سرویس به طور موقت در حال اتمام است. | به طور موقت به مدل دیگری بروید (مثلاً از Gemini 1.5 Pro به Gemini 1.5 Flash) و ببینید که آیا کار می کند یا خیر. یا کمی صبر کنید و درخواست خود را دوباره امتحان کنید. اگر بعد از امتحان مجدد مشکل همچنان ادامه داشت، لطفاً با استفاده از دکمه ارسال بازخورد در Google AI Studio آن را گزارش دهید. |
504 | DEADLINE_EXCEEDED | این سرویس نمی تواند پردازش را در مهلت مقرر به پایان برساند. | درخواست (یا زمینه) شما برای پردازش به موقع بسیار بزرگ است. | برای جلوگیری از این خطا، یک "تایم اوت" بزرگتر در درخواست مشتری خود تنظیم کنید. |
تماس های API خود را برای خطاهای پارامتر مدل بررسی کنید
بررسی کنید که پارامترهای مدل شما در مقادیر زیر باشد:
پارامتر مدل | مقادیر (محدوده) |
تعداد نامزدها | 1-8 (عدد صحیح) |
دما | 0.0-1.0 |
حداکثر توکن های خروجی | از get_model ( Python ) برای تعیین حداکثر تعداد توکن برای مدلی که استفاده می کنید استفاده کنید. |
TopP | 0.0-1.0 |
علاوه بر بررسی مقادیر پارامتر، مطمئن شوید که از نسخه API صحیح (مثلاً /v1
یا /v1beta
) و مدلی استفاده میکنید که از ویژگیهای مورد نیاز شما پشتیبانی میکند. به عنوان مثال، اگر یک ویژگی در نسخه بتا باشد، فقط در نسخه /v1beta
API در دسترس خواهد بود.
بررسی کنید که آیا مدل مناسبی دارید
بررسی کنید که از یک مدل پشتیبانی شده استفاده میکنید که در صفحه مدلهای ما فهرست شده است.
تأخیر بیشتر یا استفاده توکن با مدل های 2.5
اگر در مدلهای 2.5 Flash و Pro شاهد تأخیر بیشتر یا استفاده از نشانهها هستید، این میتواند به این دلیل باشد که فکر کردن بهطور پیشفرض برای افزایش کیفیت فعال است . اگر سرعت را در اولویت قرار می دهید یا نیاز به به حداقل رساندن هزینه ها دارید، می توانید تفکر را تنظیم یا غیرفعال کنید.
برای راهنمایی و نمونه کد به صفحه تفکر مراجعه کنید.
مسائل ایمنی
اگر میبینید که درخواستی به دلیل تنظیم ایمنی در تماس API مسدود شده است، درخواست را با توجه به فیلترهایی که در تماس API تنظیم کردهاید بررسی کنید.
اگر BlockedReason.OTHER
مشاهده کردید، ممکن است پرس و جو یا پاسخ، شرایط خدمات را نقض کند یا به نحو دیگری پشتیبانی نشود.
مسئله تلاوت
اگر میبینید که مدل تولید خروجی را به دلیل RECITATION متوقف میکند، به این معنی است که خروجی مدل ممکن است شبیه دادههای خاصی باشد. برای رفع این مشکل، سعی کنید سریع / زمینه را تا حد امکان منحصر به فرد کنید و از دمای بالاتر استفاده کنید.
مشکل توکن های تکراری
اگر نشانههای خروجی مکرر مشاهده میکنید، پیشنهادات زیر را برای کمک به کاهش یا حذف آنها امتحان کنید.
توضیحات | علت | راه حل پیشنهادی |
---|---|---|
خط تیره های تکرار شده در جداول Markdown | این می تواند زمانی اتفاق بیفتد که محتویات جدول طولانی باشد زیرا مدل سعی می کند یک جدول Markdown تراز شده بصری ایجاد کند. با این حال، تراز در Markdown برای رندر صحیح ضروری نیست. | دستورالعملهایی را در اعلان خود اضافه کنید تا به مدل دستورالعملهای خاصی برای تولید جداول Markdown بدهید. نمونه هایی را ارائه دهید که از این دستورالعمل ها پیروی می کنند. همچنین می توانید دما را تنظیم کنید. برای تولید کد یا خروجی بسیار ساختار یافته مانند جداول Markdown، دمای بالا بهتر کار می کند (>= 0.8). در زیر مجموعه نمونه ای از دستورالعمل هایی است که می توانید برای جلوگیری از این مشکل به درخواست خود اضافه کنید: # Markdown Table Format * Separator line: Markdown tables must include a separator line below the header row. The separator line must use only 3 hyphens per column, for example: |---|---|---|. Using more hypens like ----, -----, ------ can result in errors. Always use |:---|, |---:|, or |---| in these separator strings. For example: | Date | Description | Attendees | |---|---|---| | 2024-10-26 | Annual Conference | 500 | | 2025-01-15 | Q1 Planning Session | 25 | * Alignment: Do not align columns. Always use |---|. For three columns, use |---|---|---| as the separator line. For four columns use |---|---|---|---| and so on. * Conciseness: Keep cell content brief and to the point. * Never pad column headers or other cells with lots of spaces to match with width of other content. Only a single space on each side is needed. For example, always do "| column name |" instead of "| column name |". Extra spaces are wasteful. A markdown renderer will automatically take care displaying the content in a visually appealing form. |
نشانه های تکراری در جداول Markdown | مشابه خط تیره های مکرر، این زمانی اتفاق می افتد که مدل سعی می کند محتویات جدول را به صورت بصری تراز کند. تراز در Markdown برای رندر صحیح لازم نیست. |
|
تکرار خطوط جدید ( \n ) در خروجی ساختاریافته | وقتی ورودی مدل حاوی یونیکد یا دنبالههای فرار مانند \u یا \t باشد، میتواند به خطوط جدید تکرار شود. |
|
متن مکرر در استفاده از خروجی ساخت یافته | هنگامی که خروجی مدل دارای ترتیب متفاوتی برای فیلدها نسبت به طرح ساختاری تعریف شده باشد، می تواند منجر به تکرار متن شود. |
|
فراخوانی تکراری ابزار | اگر مدل زمینه افکار قبلی را از دست بدهد و/یا یک نقطه پایانی غیرقابل دسترس را که مجبور به آن شده است فراخوانی کند، این اتفاق میافتد. | به مدل دستور دهید حالت را در فرآیند فکر خود حفظ کند. این را به انتهای دستورالعمل های سیستم خود اضافه کنید: When thinking silently: ALWAYS start the thought with a brief (one sentence) recap of the current progress on the task. In particular, consider whether the task is already done. |
متن تکراری که بخشی از خروجی ساختاریافته نیست | این ممکن است در صورتی رخ دهد که مدل در درخواستی گیر کند که نتواند آن را حل کند. |
|
بهبود خروجی مدل
برای خروجی های مدل با کیفیت بالاتر، نوشتن دستورات ساختاریافته تر را بررسی کنید. صفحه راهنمای مهندسی سریع برخی از مفاهیم اساسی، استراتژی ها و بهترین شیوه ها را برای شروع به کار معرفی می کند.
اگر صدها نمونه از جفت های ورودی/خروجی خوب دارید، می توانید تنظیم مدل را نیز در نظر بگیرید.
محدودیت های نشانه را درک کنید
برای درک بهتر نحوه شمارش توکنها و محدودیتهای آنها، راهنمای توکن ما را بخوانید.
مسائل شناخته شده
- API فقط از تعدادی زبان منتخب پشتیبانی می کند. ارسال درخواستها به زبانهای پشتیبانینشده میتواند پاسخهای غیرمنتظره یا حتی مسدود شده ایجاد کند. برای بهروزرسانی ، زبانهای موجود را ببینید.
یک اشکال را ثبت کنید
اگر سوالی دارید به بحث در انجمن توسعه دهندگان هوش مصنوعی گوگل بپیوندید.