সমস্যা সমাধানের গাইড

জেমিনি এপিআই কল করার সময় উদ্ভূত সাধারণ সমস্যাগুলো নির্ণয় ও সমাধান করতে এই নির্দেশিকাটি ব্যবহার করুন। আপনি জেমিনি এপিআই ব্যাকএন্ড পরিষেবা অথবা ক্লায়েন্ট এসডিকে উভয় থেকেই সমস্যার সম্মুখীন হতে পারেন। আমাদের ক্লায়েন্ট এসডিকেগুলো নিম্নলিখিত রিপোজিটরিগুলোতে ওপেন সোর্স করা আছে:

যদি আপনি এপিআই কী (API key) সংক্রান্ত সমস্যার সম্মুখীন হন, তবে এপিআই কী সেটআপ গাইড (API key setup guide) অনুযায়ী আপনার এপিআই কী সঠিকভাবে সেটআপ করেছেন কিনা তা যাচাই করুন।

ত্রুটি কোড

HTTP স্ট্যাটাস কোড, জেনারেশন ব্লকড কোড এবং কন্টেন্ট এরর কোড সহ সকল এরর কোডের সম্পূর্ণ রেফারেন্সের জন্য API এরর পেজটি দেখুন।

পুনরায় চেষ্টা করার কৌশল

যদি আপনি এমন কোনো ত্রুটি বার্তা পান যা আপনার অনুরোধটি পুনরায় চেষ্টা করার নির্দেশ দেয় (যেমন 429 RESOURCE_EXHAUSTED বা 503 UNAVAILABLE ), তাহলে আমরা একটি এক্সপোনেনশিয়াল ব্যাকঅফ কৌশল প্রয়োগ করার পরামর্শ দিই। এর অর্থ হলো, আপনি প্রথমবার পুনরায় চেষ্টা করার আগে অল্প কিছুক্ষণ অপেক্ষা করবেন এবং তারপর পরবর্তী চেষ্টাগুলোর মধ্যে অপেক্ষার সময় ক্রমান্বয়ে বাড়িয়ে দেবেন।

জেমিনি এপিআই-এর অফিসিয়াল ক্লায়েন্ট এসডিকে-গুলোতে, যেমন পাইথন এসডিকে , টাইমআউট, নেটওয়ার্ক সমস্যা এবং রেট লিমিটের ( 429 এবং 5xx স্ট্যাটাস কোড) মতো ক্ষণস্থায়ী ত্রুটিগুলি পরিচালনা করার জন্য ডিফল্টরূপে এক্সপোনেনশিয়াল ব্যাকঅফ সহ স্বয়ংক্রিয় রিট্রাই লজিক অন্তর্ভুক্ত থাকে। উদাহরণস্বরূপ, পাইথন এসডিকে ক্ষণস্থায়ী ত্রুটিগুলির ক্ষেত্রে প্রায় ১ সেকেন্ডের প্রাথমিক বিলম্ব এবং সর্বোচ্চ ৬০ সেকেন্ডের বিলম্ব সহ স্বয়ংক্রিয়ভাবে চারবার পর্যন্ত রিট্রাই করে।

আপনি যদি সরাসরি REST API অনুরোধ করেন অথবা আপনার রিট্রাই লজিক কাস্টমাইজ করেন, তাহলে একটি সফল অনুরোধের সম্ভাবনা বাড়াতে এবং সার্ভিসের উপর অতিরিক্ত চাপ প্রতিরোধ করতে এই সেরা অনুশীলনগুলো অনুসরণ করুন:

  • এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করুন: প্রথমবার পুনরায় চেষ্টা করার আগে অল্প সময় অপেক্ষা করুন (যেমন, ১ সেকেন্ড), তারপর বিলম্বের সময়টি সূচকীয়ভাবে বাড়ান (যেমন, ২ সেকেন্ড, ৪ সেকেন্ড, ৮ সেকেন্ড)।
  • জিটার যোগ করুন: সমস্ত ক্লায়েন্টকে একই সময়ে পুনরায় চেষ্টা করা থেকে বিরত রাখতে ডিলে-তে এলোমেলো "জিটার" যোগ করুন।
  • নির্দিষ্ট ত্রুটির ক্ষেত্রে পুনরায় চেষ্টা করুন: শুধুমাত্র ক্ষণস্থায়ী ত্রুটির (যেমন 429 , 408 , বা 5xx ) ক্ষেত্রে পুনরায় চেষ্টা করুন। ক্লায়েন্ট ত্রুটির (যেমন 400 , 402 , বা 403 ) ক্ষেত্রে পুনরায় চেষ্টা করবেন না, কারণ এগুলি অবৈধ API কী, শেষ হয়ে যাওয়া প্রিপে ক্রেডিট, বা ভুল সিনট্যাক্সের মতো সমস্যা নির্দেশ করে।
  • সর্বোচ্চ পুনঃপ্রচেষ্টা নির্ধারণ করুন: অসীম লুপ প্রতিরোধ করার জন্য পুনঃপ্রচেষ্টার সর্বোচ্চ সংখ্যা নির্ধারণ করুন।

মডেল প্যারামিটার ত্রুটির জন্য আপনার এপিআই কলগুলো পরীক্ষা করুন।

আপনার মডেলের প্যারামিটারগুলো নিম্নলিখিত মানগুলোর মধ্যে আছে কিনা তা যাচাই করুন:

মডেল প্যারামিটার মান (পরিসর)
প্রার্থীর সংখ্যা ১-৮ (পূর্ণসংখ্যা)
তাপমাত্রা ০.০-১.০
সর্বোচ্চ আউটপুট টোকেন আপনার ব্যবহৃত মডেলটির জন্য টোকেনের সর্বোচ্চ সংখ্যা নির্ধারণ করতে মডেল পৃষ্ঠাটি ব্যবহার করুন।
টপপি ০.০-১.০

প্যারামিটার মানগুলো পরীক্ষা করার পাশাপাশি, নিশ্চিত করুন যে আপনি সঠিক API সংস্করণ (যেমন, /v1 বা /v1beta ) এবং মডেল ব্যবহার করছেন যা আপনার প্রয়োজনীয় বৈশিষ্ট্যগুলোকে সমর্থন করে। উদাহরণস্বরূপ, যদি কোনো বৈশিষ্ট্য বিটা রিলিজে থাকে, তবে তা শুধুমাত্র /v1beta API সংস্করণে উপলব্ধ হবে।

আপনার কাছে সঠিক মডেল আছে কিনা তা যাচাই করুন।

নিশ্চিত করুন যে আপনি আমাদের মডেল পেজে তালিকাভুক্ত একটি সমর্থিত মডেল ব্যবহার করছেন।

থিঙ্কিং মডেলগুলির সাথে উচ্চতর লেটেন্সি বা টোকেন ব্যবহার

প্রায়শই উচ্চতর ল্যাটেন্সি বা টোকেন ব্যবহার দেখা যায়, কারণ জেমিনি ৩.x মডেলগুলিতে ডিফল্টরূপে থিঙ্কিং সক্রিয় থাকে। অপ্রচলিত জেমিনি ২.৫ মডেলগুলিও ডিফল্ট থিঙ্কিং ব্যবহার করে।

চিন্তাশীল মডেলগুলো গুণমান উন্নত করার জন্য অভ্যন্তরীণ যুক্তির টোকেন তৈরি করে। এই যুক্তি প্রক্রিয়াটি প্রতিক্রিয়ার বিলম্ব এবং মোট টোকেন খরচ উভয়ই বাড়িয়ে দেয়।

যদি আপনি কম লেটেন্সিকে অগ্রাধিকার দেন বা খরচ কমাতে চান, তাহলে আপনি চিন্তার স্তর কমাতে পারেন বা চিন্তা বন্ধ করে দিতে পারেন।

কনফিগারেশনের বিবরণ এবং কোডের নমুনার জন্য, থিঙ্কিং গাইডটি দেখুন।

নিরাপত্তা সংক্রান্ত সমস্যা

যদি দেখেন আপনার এপিআই কলের কোনো সুরক্ষা সেটিংয়ের কারণে একটি প্রম্পট ব্লক করা হয়েছে, তাহলে এপিআই কলে সেট করা ফিল্টারগুলোর সাপেক্ষে প্রম্পটটি পর্যালোচনা করুন।

যদি আপনি BlockedReason.OTHER দেখতে পান, তাহলে কোয়েরি বা রেসপন্সটি পরিষেবার শর্তাবলী লঙ্ঘন করতে পারে অথবা অন্য কোনো কারণে অসমর্থিত হতে পারে।

আবৃত্তি সমস্যা

যদি দেখেন মডেলটি ‘RECITATION’ কারণে আউটপুট দেওয়া বন্ধ করে দিয়েছে, এর মানে হলো মডেলের আউটপুটটি নির্দিষ্ট কোনো ডেটার সাথে সাদৃশ্যপূর্ণ হতে পারে। এটি ঠিক করার জন্য, প্রম্পট / কনটেক্সট যতটা সম্ভব অনন্য করার চেষ্টা করুন এবং একটি উচ্চতর তাপমাত্রা ব্যবহার করুন।

পুনরাবৃত্তিমূলক টোকেন সমস্যা

যদি আপনি পুনরাবৃত্ত আউটপুট টোকেন দেখতে পান, তবে সেগুলি কমাতে বা দূর করতে নিম্নলিখিত পরামর্শগুলি চেষ্টা করুন।

বর্ণনা কারণ প্রস্তাবিত সমাধান
মার্কডাউন টেবিলে বারবার হাইফেন ব্যবহার টেবিলের বিষয়বস্তু দীর্ঘ হলে এটি ঘটতে পারে, কারণ মডেলটি একটি দৃশ্যত সারিবদ্ধ মার্কডাউন টেবিল তৈরি করার চেষ্টা করে। তবে, সঠিক রেন্ডারিংয়ের জন্য মার্কডাউনে এই সারিবদ্ধকরণ অপরিহার্য নয়।

মার্কডাউন টেবিল তৈরির জন্য মডেলকে নির্দিষ্ট নির্দেশিকা দিতে আপনার প্রম্পটে নির্দেশনা যোগ করুন। সেই নির্দেশিকাগুলো অনুসরণ করে এমন উদাহরণ দিন। আপনি তাপমাত্রা সামঞ্জস্য করার চেষ্টাও করতে পারেন। কোড বা মার্কডাউন টেবিলের মতো অত্যন্ত সুগঠিত আউটপুট তৈরির ক্ষেত্রে উচ্চ তাপমাত্রা (>= ০.৮) ভালো কাজ করে বলে দেখা গেছে।

এই সমস্যাটি প্রতিরোধ করার জন্য আপনি আপনার প্রম্পটে নিম্নলিখিত নির্দেশিকাগুলো যোগ করতে পারেন:

          # 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.
        
মার্কডাউন টেবিলে পুনরাবৃত্ত টোকেন পুনরাবৃত্ত হাইফেনের মতোই, এটি তখন ঘটে যখন মডেলটি টেবিলের বিষয়বস্তুকে দৃশ্যত সারিবদ্ধ করার চেষ্টা করে। সঠিক রেন্ডারিংয়ের জন্য মার্কডাউনে এই সারিবদ্ধকরণের প্রয়োজন নেই।
  • আপনার সিস্টেম প্রম্পটে নিম্নলিখিতের মতো নির্দেশাবলী যোগ করার চেষ্টা করুন:
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • তাপমাত্রা সামঞ্জস্য করার চেষ্টা করুন। উচ্চ তাপমাত্রা (>= ০.৮) সাধারণত আউটপুটের পুনরাবৃত্তি বা নকল দূর করতে সাহায্য করে।
স্ট্রাকচার্ড আউটপুটে বারবার নতুন লাইন ( \n ) মডেল ইনপুটে \u বা \t মতো ইউনিকোড বা এস্কেপ সিকোয়েন্স থাকলে, এর ফলে বারবার নিউলাইন তৈরি হতে পারে।
  • আপনার প্রম্পটে নিষিদ্ধ এস্কেপ সিকোয়েন্সগুলো খুঁজে বের করুন এবং সেগুলোকে UTF-8 ক্যারেক্টার দিয়ে প্রতিস্থাপন করুন। উদাহরণস্বরূপ, আপনার JSON উদাহরণে থাকা \u এস্কেপ সিকোয়েন্সের কারণে মডেলটিও তার আউটপুটে সেগুলো ব্যবহার করতে পারে।
  • মডেলটিকে অনুমোদিত এস্কেপ সম্পর্কে নির্দেশ দিন। এইভাবে একটি সিস্টেম ইন্সট্রাকশন যোগ করুন:
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
স্ট্রাকচার্ড আউটপুট ব্যবহারে পুনরাবৃত্ত টেক্সট মডেলের আউটপুটে ফিল্ডগুলোর ক্রম সংজ্ঞায়িত কাঠামোগত স্কিমা থেকে ভিন্ন হলে, এর ফলে টেক্সটের পুনরাবৃত্তি হতে পারে।
  • আপনার প্রম্পটে ফিল্ডগুলোর ক্রম নির্দিষ্ট করবেন না।
  • আউটপুটের সমস্ত ফিল্ড আবশ্যক করুন।
বারবার টুল কল করা এটি ঘটতে পারে যদি মডেলটি পূর্ববর্তী চিন্তাভাবনার প্রেক্ষাপট হারিয়ে ফেলে এবং/অথবা বাধ্য হয়ে এমন কোনো অনুপলব্ধ এন্ডপয়েন্টকে কল করে। মডেলটিকে তার চিন্তন প্রক্রিয়ার মধ্যে অবস্থা বজায় রাখতে নির্দেশ দিন। আপনার সিস্টেম নির্দেশাবলীর শেষে এটি যোগ করুন:
        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 key) সর্বজনীনভাবে ফাঁস হয়ে থাকতে পারে। আপনার ডেটা সুরক্ষিত রাখতে এবং অননুমোদিত প্রবেশ রোধ করতে, আমরা সক্রিয়ভাবে এই পরিচিত ফাঁস হওয়া কীগুলোকে জেমিনি এপিআই (Gemini API)-তে প্রবেশ করা থেকে ব্লক করে দিয়েছি।

আপনার কীগুলো প্রভাবিত হয়েছে কিনা তা নিশ্চিত করুন।

আপনার কী (key) ফাঁস হয়ে গেছে বলে জানা গেলে, আপনি আর জেমিনি এপিআই (Gemini API)-এর সাথে সেই কী ব্যবহার করতে পারবেন না। আপনার কোনো এপিআই কী জেমিনি এপিআই কল করার ক্ষেত্রে ব্লক করা আছে কিনা তা দেখতে এবং নতুন কী তৈরি করতে আপনি গুগল এআই স্টুডিও (Google AI Studio) ব্যবহার করতে পারেন। এই কীগুলো ব্যবহার করার চেষ্টা করার সময় আপনি নিম্নলিখিত ত্রুটিটিও দেখতে পারেন:

Your API key was reported as leaked. Please use another API key.

ব্লক করা এপিআই কীগুলির জন্য পদক্ষেপ

আপনার Gemini API ইন্টিগ্রেশনগুলির জন্য Google AI Studio ব্যবহার করে নতুন API কী তৈরি করা উচিত। আমরা দৃঢ়ভাবে সুপারিশ করছি যে আপনি আপনার API কী ব্যবস্থাপনার পদ্ধতি পর্যালোচনা করুন, যাতে আপনার নতুন কীগুলি সুরক্ষিত থাকে এবং সর্বজনীনভাবে প্রকাশ না হয়।

দুর্বলতার কারণে অপ্রত্যাশিত চার্জ

বিলিং সহায়তার জন্য একটি অভিযোগ জমা দিন । আমাদের বিলিং টিম বিষয়টি নিয়ে কাজ করছে এবং আমরা যত তাড়াতাড়ি সম্ভব নতুন তথ্য জানিয়ে দেব।

ফাঁস হওয়া কী-এর জন্য গুগলের নিরাপত্তা ব্যবস্থা

আমার এপিআই কী ফাঁস হয়ে গেলে, গুগল কীভাবে আমার অ্যাকাউন্টকে অতিরিক্ত খরচ এবং অপব্যবহার থেকে সুরক্ষিত রাখতে সাহায্য করবে?

  • আমরা এমন একটি ব্যবস্থার দিকে এগোচ্ছি যেখানে গুগল এআই স্টুডিও ব্যবহার করে নতুন কী-এর জন্য অনুরোধ করলে, সেই কী ডিফল্টরূপে শুধুমাত্র গুগল এআই স্টুডিও-এর জন্যই সীমাবদ্ধ থাকবে এবং অন্য কোনো পরিষেবার কী গ্রহণ করবে না। এটি যেকোনো অনাকাঙ্ক্ষিত ক্রস-কী ব্যবহার প্রতিরোধ করতে সাহায্য করবে।
  • আমরা এখন থেকে জেমিনি এপিআই-এর সাথে ব্যবহৃত এবং ফাঁস হওয়া এপিআই কী-গুলো ডিফল্টরূপে ব্লক করে দিচ্ছি, যা খরচ এবং আপনার অ্যাপ্লিকেশন ডেটার অপব্যবহার রোধ করতে সাহায্য করবে।
  • আপনি গুগল এআই স্টুডিও-এর মধ্যে আপনার এপিআই কী-গুলির অবস্থা জানতে পারবেন এবং আপনার এপিআই কী-গুলি ফাঁস হয়েছে বলে শনাক্ত হলে, তাৎক্ষণিক ব্যবস্থা গ্রহণের জন্য আমরা সক্রিয়ভাবে আপনাকে জানানোর ব্যবস্থা করব।

মডেল আউটপুট উন্নত করুন

আরও উন্নত মানের মডেল আউটপুটের জন্য, আরও সুগঠিত প্রম্পট লেখার বিষয়টি খতিয়ে দেখুন। প্রম্পট ইঞ্জিনিয়ারিং গাইড পৃষ্ঠাটিতে আপনাকে শুরু করার জন্য কিছু মৌলিক ধারণা, কৌশল এবং সর্বোত্তম অনুশীলন সম্পর্কে জানানো হয়েছে।

টোকেনের সীমা বুঝুন

টোকেন কীভাবে গণনা করতে হয় এবং এর সীমাবদ্ধতাগুলো আরও ভালোভাবে বুঝতে আমাদের টোকেন নির্দেশিকাটি পড়ুন।

পরিচিত সমস্যা

  • এপিআইটি শুধুমাত্র কয়েকটি নির্দিষ্ট ভাষা সমর্থন করে। অসমর্থিত ভাষায় প্রম্পট জমা দিলে অপ্রত্যাশিত বা এমনকি ব্লক করা প্রতিক্রিয়া আসতে পারে। আপডেটের জন্য উপলব্ধ ভাষাগুলো দেখুন।

একটি ত্রুটি রিপোর্ট করুন

আপনার কোনো প্রশ্ন থাকলে গুগল এআই ডেভেলপার ফোরামে আলোচনায় যোগ দিন।

,

জেমিনি এপিআই কল করার সময় উদ্ভূত সাধারণ সমস্যাগুলো নির্ণয় ও সমাধান করতে এই নির্দেশিকাটি ব্যবহার করুন। আপনি জেমিনি এপিআই ব্যাকএন্ড পরিষেবা অথবা ক্লায়েন্ট এসডিকে উভয় থেকেই সমস্যার সম্মুখীন হতে পারেন। আমাদের ক্লায়েন্ট এসডিকেগুলো নিম্নলিখিত রিপোজিটরিগুলোতে ওপেন সোর্স করা আছে:

যদি আপনি এপিআই কী (API key) সংক্রান্ত সমস্যার সম্মুখীন হন, তবে এপিআই কী সেটআপ গাইড (API key setup guide) অনুযায়ী আপনার এপিআই কী সঠিকভাবে সেটআপ করেছেন কিনা তা যাচাই করুন।

ত্রুটি কোড

HTTP স্ট্যাটাস কোড, জেনারেশন ব্লকড কোড এবং কন্টেন্ট এরর কোড সহ সকল এরর কোডের সম্পূর্ণ রেফারেন্সের জন্য API এরর পেজটি দেখুন।

পুনরায় চেষ্টা করার কৌশল

যদি আপনি এমন কোনো ত্রুটি বার্তা পান যা আপনার অনুরোধটি পুনরায় চেষ্টা করার নির্দেশ দেয় (যেমন 429 RESOURCE_EXHAUSTED বা 503 UNAVAILABLE ), তাহলে আমরা একটি এক্সপোনেনশিয়াল ব্যাকঅফ কৌশল প্রয়োগ করার পরামর্শ দিই। এর অর্থ হলো, আপনি প্রথমবার পুনরায় চেষ্টা করার আগে অল্প কিছুক্ষণ অপেক্ষা করবেন এবং তারপর পরবর্তী চেষ্টাগুলোর মধ্যে অপেক্ষার সময় ক্রমান্বয়ে বাড়িয়ে দেবেন।

জেমিনি এপিআই-এর অফিসিয়াল ক্লায়েন্ট এসডিকে-গুলোতে, যেমন পাইথন এসডিকে , টাইমআউট, নেটওয়ার্ক সমস্যা এবং রেট লিমিটের ( 429 এবং 5xx স্ট্যাটাস কোড) মতো ক্ষণস্থায়ী ত্রুটিগুলি পরিচালনা করার জন্য ডিফল্টরূপে এক্সপোনেনশিয়াল ব্যাকঅফ সহ স্বয়ংক্রিয় রিট্রাই লজিক অন্তর্ভুক্ত থাকে। উদাহরণস্বরূপ, পাইথন এসডিকে ক্ষণস্থায়ী ত্রুটিগুলির ক্ষেত্রে প্রায় ১ সেকেন্ডের প্রাথমিক বিলম্ব এবং সর্বোচ্চ ৬০ সেকেন্ডের বিলম্ব সহ স্বয়ংক্রিয়ভাবে চারবার পর্যন্ত রিট্রাই করে।

আপনি যদি সরাসরি REST API অনুরোধ করেন অথবা আপনার রিট্রাই লজিক কাস্টমাইজ করেন, তাহলে একটি সফল অনুরোধের সম্ভাবনা বাড়াতে এবং সার্ভিসের উপর অতিরিক্ত চাপ প্রতিরোধ করতে এই সেরা অনুশীলনগুলো অনুসরণ করুন:

  • এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করুন: প্রথমবার পুনরায় চেষ্টা করার আগে অল্প সময় অপেক্ষা করুন (যেমন, ১ সেকেন্ড), তারপর বিলম্বের সময়টি সূচকীয়ভাবে বাড়ান (যেমন, ২ সেকেন্ড, ৪ সেকেন্ড, ৮ সেকেন্ড)।
  • জিটার যোগ করুন: সমস্ত ক্লায়েন্টকে একই সময়ে পুনরায় চেষ্টা করা থেকে বিরত রাখতে ডিলে-তে এলোমেলো "জিটার" যোগ করুন।
  • নির্দিষ্ট ত্রুটির ক্ষেত্রে পুনরায় চেষ্টা করুন: শুধুমাত্র ক্ষণস্থায়ী ত্রুটির (যেমন 429 , 408 , বা 5xx ) ক্ষেত্রে পুনরায় চেষ্টা করুন। ক্লায়েন্ট ত্রুটির (যেমন 400 , 402 , বা 403 ) ক্ষেত্রে পুনরায় চেষ্টা করবেন না, কারণ এগুলি অবৈধ API কী, শেষ হয়ে যাওয়া প্রিপে ক্রেডিট, বা ভুল সিনট্যাক্সের মতো সমস্যা নির্দেশ করে।
  • সর্বোচ্চ পুনঃপ্রচেষ্টা নির্ধারণ করুন: অসীম লুপ প্রতিরোধ করার জন্য পুনঃপ্রচেষ্টার সর্বোচ্চ সংখ্যা নির্ধারণ করুন।

মডেল প্যারামিটার ত্রুটির জন্য আপনার এপিআই কলগুলো পরীক্ষা করুন।

আপনার মডেলের প্যারামিটারগুলো নিম্নলিখিত মানগুলোর মধ্যে আছে কিনা তা যাচাই করুন:

মডেল প্যারামিটার মান (পরিসর)
প্রার্থীর সংখ্যা ১-৮ (পূর্ণসংখ্যা)
তাপমাত্রা ০.০-১.০
সর্বোচ্চ আউটপুট টোকেন আপনার ব্যবহৃত মডেলটির জন্য টোকেনের সর্বোচ্চ সংখ্যা নির্ধারণ করতে মডেল পৃষ্ঠাটি ব্যবহার করুন।
টপপি ০.০-১.০

প্যারামিটার মানগুলো পরীক্ষা করার পাশাপাশি, নিশ্চিত করুন যে আপনি সঠিক API সংস্করণ (যেমন, /v1 বা /v1beta ) এবং মডেল ব্যবহার করছেন যা আপনার প্রয়োজনীয় বৈশিষ্ট্যগুলোকে সমর্থন করে। উদাহরণস্বরূপ, যদি কোনো বৈশিষ্ট্য বিটা রিলিজে থাকে, তবে তা শুধুমাত্র /v1beta API সংস্করণে উপলব্ধ হবে।

আপনার কাছে সঠিক মডেল আছে কিনা তা যাচাই করুন।

নিশ্চিত করুন যে আপনি আমাদের মডেল পেজে তালিকাভুক্ত একটি সমর্থিত মডেল ব্যবহার করছেন।

থিঙ্কিং মডেলগুলির সাথে উচ্চতর লেটেন্সি বা টোকেন ব্যবহার

প্রায়শই উচ্চতর ল্যাটেন্সি বা টোকেন ব্যবহার দেখা যায়, কারণ জেমিনি ৩.x মডেলগুলিতে ডিফল্টরূপে থিঙ্কিং সক্রিয় থাকে। অপ্রচলিত জেমিনি ২.৫ মডেলগুলিও ডিফল্ট থিঙ্কিং ব্যবহার করে।

চিন্তাশীল মডেলগুলো গুণমান উন্নত করার জন্য অভ্যন্তরীণ যুক্তির টোকেন তৈরি করে। এই যুক্তি প্রক্রিয়াটি প্রতিক্রিয়ার বিলম্ব এবং মোট টোকেন খরচ উভয়ই বাড়িয়ে দেয়।

যদি আপনি কম লেটেন্সিকে অগ্রাধিকার দেন বা খরচ কমাতে চান, তাহলে আপনি চিন্তার স্তর কমাতে পারেন বা চিন্তা বন্ধ করে দিতে পারেন।

কনফিগারেশনের বিবরণ এবং কোডের নমুনার জন্য, থিঙ্কিং গাইডটি দেখুন।

নিরাপত্তা সংক্রান্ত সমস্যা

যদি দেখেন আপনার এপিআই কলের কোনো সুরক্ষা সেটিংয়ের কারণে একটি প্রম্পট ব্লক করা হয়েছে, তাহলে এপিআই কলে সেট করা ফিল্টারগুলোর সাপেক্ষে প্রম্পটটি পর্যালোচনা করুন।

যদি আপনি BlockedReason.OTHER দেখতে পান, তাহলে কোয়েরি বা রেসপন্সটি পরিষেবার শর্তাবলী লঙ্ঘন করতে পারে অথবা অন্য কোনো কারণে অসমর্থিত হতে পারে।

আবৃত্তি সমস্যা

যদি দেখেন মডেলটি ‘RECITATION’ কারণে আউটপুট দেওয়া বন্ধ করে দিয়েছে, এর মানে হলো মডেলের আউটপুটটি নির্দিষ্ট কোনো ডেটার সাথে সাদৃশ্যপূর্ণ হতে পারে। এটি ঠিক করার জন্য, প্রম্পট / কনটেক্সট যতটা সম্ভব অনন্য করার চেষ্টা করুন এবং একটি উচ্চতর তাপমাত্রা ব্যবহার করুন।

পুনরাবৃত্তিমূলক টোকেন সমস্যা

যদি আপনি পুনরাবৃত্ত আউটপুট টোকেন দেখতে পান, তবে সেগুলি কমাতে বা দূর করতে নিম্নলিখিত পরামর্শগুলি চেষ্টা করুন।

বর্ণনা কারণ প্রস্তাবিত সমাধান
মার্কডাউন টেবিলে বারবার হাইফেন ব্যবহার টেবিলের বিষয়বস্তু দীর্ঘ হলে এটি ঘটতে পারে, কারণ মডেলটি একটি দৃশ্যত সারিবদ্ধ মার্কডাউন টেবিল তৈরি করার চেষ্টা করে। তবে, সঠিক রেন্ডারিংয়ের জন্য মার্কডাউনে এই সারিবদ্ধকরণ অপরিহার্য নয়।

মার্কডাউন টেবিল তৈরির জন্য মডেলকে নির্দিষ্ট নির্দেশিকা দিতে আপনার প্রম্পটে নির্দেশনা যোগ করুন। সেই নির্দেশিকাগুলো অনুসরণ করে এমন উদাহরণ দিন। আপনি তাপমাত্রা সামঞ্জস্য করার চেষ্টাও করতে পারেন। কোড বা মার্কডাউন টেবিলের মতো অত্যন্ত সুগঠিত আউটপুট তৈরির ক্ষেত্রে উচ্চ তাপমাত্রা (>= ০.৮) ভালো কাজ করে বলে দেখা গেছে।

এই সমস্যাটি প্রতিরোধ করার জন্য আপনি আপনার প্রম্পটে নিম্নলিখিত নির্দেশিকাগুলো যোগ করতে পারেন:

          # 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.
        
মার্কডাউন টেবিলে পুনরাবৃত্ত টোকেন পুনরাবৃত্ত হাইফেনের মতোই, এটি তখন ঘটে যখন মডেলটি টেবিলের বিষয়বস্তুকে দৃশ্যত সারিবদ্ধ করার চেষ্টা করে। সঠিক রেন্ডারিংয়ের জন্য মার্কডাউনে এই সারিবদ্ধকরণের প্রয়োজন নেই।
  • আপনার সিস্টেম প্রম্পটে নিম্নলিখিতের মতো নির্দেশাবলী যোগ করার চেষ্টা করুন:
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • তাপমাত্রা সামঞ্জস্য করার চেষ্টা করুন। উচ্চ তাপমাত্রা (>= ০.৮) সাধারণত আউটপুটের পুনরাবৃত্তি বা নকল দূর করতে সাহায্য করে।
স্ট্রাকচার্ড আউটপুটে বারবার নতুন লাইন ( \n ) মডেল ইনপুটে \u বা \t মতো ইউনিকোড বা এস্কেপ সিকোয়েন্স থাকলে, এর ফলে বারবার নিউলাইন তৈরি হতে পারে।
  • আপনার প্রম্পটে নিষিদ্ধ এস্কেপ সিকোয়েন্সগুলো খুঁজে বের করুন এবং সেগুলোকে UTF-8 ক্যারেক্টার দিয়ে প্রতিস্থাপন করুন। উদাহরণস্বরূপ, আপনার JSON উদাহরণে থাকা \u এস্কেপ সিকোয়েন্সের কারণে মডেলটিও তার আউটপুটে সেগুলো ব্যবহার করতে পারে।
  • মডেলটিকে অনুমোদিত এস্কেপ সম্পর্কে নির্দেশ দিন। এইভাবে একটি সিস্টেম ইন্সট্রাকশন যোগ করুন:
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
স্ট্রাকচার্ড আউটপুট ব্যবহারে পুনরাবৃত্ত টেক্সট মডেলের আউটপুটে ফিল্ডগুলোর ক্রম সংজ্ঞায়িত কাঠামোগত স্কিমা থেকে ভিন্ন হলে, এর ফলে টেক্সটের পুনরাবৃত্তি হতে পারে।
  • আপনার প্রম্পটে ফিল্ডগুলোর ক্রম নির্দিষ্ট করবেন না।
  • আউটপুটের সমস্ত ফিল্ড আবশ্যক করুন।
বারবার টুল কল করা এটি ঘটতে পারে যদি মডেলটি পূর্ববর্তী চিন্তাভাবনার প্রেক্ষাপট হারিয়ে ফেলে এবং/অথবা বাধ্য হয়ে এমন কোনো অনুপলব্ধ এন্ডপয়েন্টকে কল করে। মডেলটিকে তার চিন্তন প্রক্রিয়ার মধ্যে অবস্থা বজায় রাখতে নির্দেশ দিন। আপনার সিস্টেম নির্দেশাবলীর শেষে এটি যোগ করুন:
        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 key) সর্বজনীনভাবে ফাঁস হয়ে থাকতে পারে। আপনার ডেটা সুরক্ষিত রাখতে এবং অননুমোদিত প্রবেশ রোধ করতে, আমরা সক্রিয়ভাবে এই পরিচিত ফাঁস হওয়া কীগুলোকে জেমিনি এপিআই (Gemini API)-তে প্রবেশ করা থেকে ব্লক করে দিয়েছি।

আপনার কীগুলো প্রভাবিত হয়েছে কিনা তা নিশ্চিত করুন।

আপনার কী (key) ফাঁস হয়ে গেছে বলে জানা গেলে, আপনি আর জেমিনি এপিআই (Gemini API)-এর সাথে সেই কী ব্যবহার করতে পারবেন না। আপনার কোনো এপিআই কী জেমিনি এপিআই কল করার ক্ষেত্রে ব্লক করা আছে কিনা তা দেখতে এবং নতুন কী তৈরি করতে আপনি গুগল এআই স্টুডিও (Google AI Studio) ব্যবহার করতে পারেন। এই কীগুলো ব্যবহার করার চেষ্টা করার সময় আপনি নিম্নলিখিত ত্রুটিটিও দেখতে পারেন:

Your API key was reported as leaked. Please use another API key.

ব্লক করা এপিআই কীগুলির জন্য পদক্ষেপ

আপনার Gemini API ইন্টিগ্রেশনগুলির জন্য Google AI Studio ব্যবহার করে নতুন API কী তৈরি করা উচিত। আমরা দৃঢ়ভাবে সুপারিশ করছি যে আপনি আপনার API কী ব্যবস্থাপনার পদ্ধতি পর্যালোচনা করুন, যাতে আপনার নতুন কীগুলি সুরক্ষিত থাকে এবং সর্বজনীনভাবে প্রকাশ না হয়।

দুর্বলতার কারণে অপ্রত্যাশিত চার্জ

বিলিং সহায়তার জন্য একটি অভিযোগ জমা দিন । আমাদের বিলিং টিম বিষয়টি নিয়ে কাজ করছে এবং আমরা যত তাড়াতাড়ি সম্ভব নতুন তথ্য জানিয়ে দেব।

ফাঁস হওয়া কী-এর জন্য গুগলের নিরাপত্তা ব্যবস্থা

আমার এপিআই কী ফাঁস হয়ে গেলে, গুগল কীভাবে আমার অ্যাকাউন্টকে অতিরিক্ত খরচ এবং অপব্যবহার থেকে সুরক্ষিত রাখতে সাহায্য করবে?

  • আমরা এমন একটি ব্যবস্থার দিকে এগোচ্ছি যেখানে গুগল এআই স্টুডিও ব্যবহার করে নতুন কী-এর জন্য অনুরোধ করলে, সেই কী ডিফল্টরূপে শুধুমাত্র গুগল এআই স্টুডিও-এর জন্যই সীমাবদ্ধ থাকবে এবং অন্য কোনো পরিষেবার কী গ্রহণ করবে না। এটি যেকোনো অনাকাঙ্ক্ষিত ক্রস-কী ব্যবহার প্রতিরোধ করতে সাহায্য করবে।
  • আমরা এখন থেকে জেমিনি এপিআই-এর সাথে ব্যবহৃত এবং ফাঁস হওয়া এপিআই কী-গুলো ডিফল্টরূপে ব্লক করে দিচ্ছি, যা খরচ এবং আপনার অ্যাপ্লিকেশন ডেটার অপব্যবহার রোধ করতে সাহায্য করবে।
  • আপনি গুগল এআই স্টুডিও-এর মধ্যে আপনার এপিআই কী-গুলির অবস্থা জানতে পারবেন এবং আপনার এপিআই কী-গুলি ফাঁস হয়েছে বলে শনাক্ত হলে, তাৎক্ষণিক ব্যবস্থা গ্রহণের জন্য আমরা সক্রিয়ভাবে আপনাকে জানানোর ব্যবস্থা করব।

মডেল আউটপুট উন্নত করুন

আরও উন্নত মানের মডেল আউটপুটের জন্য, আরও সুগঠিত প্রম্পট লেখার বিষয়টি খতিয়ে দেখুন। প্রম্পট ইঞ্জিনিয়ারিং গাইড পৃষ্ঠাটিতে আপনাকে শুরু করার জন্য কিছু মৌলিক ধারণা, কৌশল এবং সর্বোত্তম অনুশীলন সম্পর্কে জানানো হয়েছে।

টোকেনের সীমা বুঝুন

টোকেন কীভাবে গণনা করতে হয় এবং এর সীমাবদ্ধতাগুলো আরও ভালোভাবে বুঝতে আমাদের টোকেন নির্দেশিকাটি পড়ুন।

পরিচিত সমস্যা

  • এপিআইটি শুধুমাত্র কয়েকটি নির্দিষ্ট ভাষা সমর্থন করে। অসমর্থিত ভাষায় প্রম্পট জমা দিলে অপ্রত্যাশিত বা এমনকি ব্লক করা প্রতিক্রিয়া আসতে পারে। আপডেটের জন্য উপলব্ধ ভাষাগুলো দেখুন।

একটি ত্রুটি রিপোর্ট করুন

আপনার কোনো প্রশ্ন থাকলে গুগল এআই ডেভেলপার ফোরামে আলোচনায় যোগ দিন।

,

জেমিনি এপিআই কল করার সময় উদ্ভূত সাধারণ সমস্যাগুলো নির্ণয় ও সমাধান করতে এই নির্দেশিকাটি ব্যবহার করুন। আপনি জেমিনি এপিআই ব্যাকএন্ড পরিষেবা অথবা ক্লায়েন্ট এসডিকে উভয় থেকেই সমস্যার সম্মুখীন হতে পারেন। আমাদের ক্লায়েন্ট এসডিকেগুলো নিম্নলিখিত রিপোজিটরিগুলোতে ওপেন সোর্স করা আছে:

যদি আপনি এপিআই কী (API key) সংক্রান্ত সমস্যার সম্মুখীন হন, তবে এপিআই কী সেটআপ গাইড (API key setup guide) অনুযায়ী আপনার এপিআই কী সঠিকভাবে সেটআপ করেছেন কিনা তা যাচাই করুন।

ত্রুটি কোড

HTTP স্ট্যাটাস কোড, জেনারেশন ব্লকড কোড এবং কন্টেন্ট এরর কোড সহ সকল এরর কোডের সম্পূর্ণ রেফারেন্সের জন্য API এরর পেজটি দেখুন।

পুনরায় চেষ্টা করার কৌশল

যদি আপনি এমন কোনো ত্রুটি বার্তা পান যা আপনার অনুরোধটি পুনরায় চেষ্টা করার নির্দেশ দেয় (যেমন 429 RESOURCE_EXHAUSTED বা 503 UNAVAILABLE ), তাহলে আমরা একটি এক্সপোনেনশিয়াল ব্যাকঅফ কৌশল প্রয়োগ করার পরামর্শ দিই। এর অর্থ হলো, আপনি প্রথমবার পুনরায় চেষ্টা করার আগে অল্প কিছুক্ষণ অপেক্ষা করবেন এবং তারপর পরবর্তী চেষ্টাগুলোর মধ্যে অপেক্ষার সময় ক্রমান্বয়ে বাড়িয়ে দেবেন।

জেমিনি এপিআই-এর অফিসিয়াল ক্লায়েন্ট এসডিকে-গুলোতে, যেমন পাইথন এসডিকে , টাইমআউট, নেটওয়ার্ক সমস্যা এবং রেট লিমিটের ( 429 এবং 5xx স্ট্যাটাস কোড) মতো ক্ষণস্থায়ী ত্রুটিগুলি পরিচালনা করার জন্য ডিফল্টরূপে এক্সপোনেনশিয়াল ব্যাকঅফ সহ স্বয়ংক্রিয় রিট্রাই লজিক অন্তর্ভুক্ত থাকে। উদাহরণস্বরূপ, পাইথন এসডিকে ক্ষণস্থায়ী ত্রুটিগুলির ক্ষেত্রে প্রায় ১ সেকেন্ডের প্রাথমিক বিলম্ব এবং সর্বোচ্চ ৬০ সেকেন্ডের বিলম্ব সহ স্বয়ংক্রিয়ভাবে চারবার পর্যন্ত রিট্রাই করে।

আপনি যদি সরাসরি REST API অনুরোধ করেন অথবা আপনার রিট্রাই লজিক কাস্টমাইজ করেন, তাহলে একটি সফল অনুরোধের সম্ভাবনা বাড়াতে এবং সার্ভিসের উপর অতিরিক্ত চাপ প্রতিরোধ করতে এই সেরা অনুশীলনগুলো অনুসরণ করুন:

  • এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করুন: প্রথমবার পুনরায় চেষ্টা করার আগে অল্প সময় অপেক্ষা করুন (যেমন, ১ সেকেন্ড), তারপর বিলম্বের সময়টি সূচকীয়ভাবে বাড়ান (যেমন, ২ সেকেন্ড, ৪ সেকেন্ড, ৮ সেকেন্ড)।
  • জিটার যোগ করুন: সমস্ত ক্লায়েন্টকে একই সময়ে পুনরায় চেষ্টা করা থেকে বিরত রাখতে ডিলে-তে এলোমেলো "জিটার" যোগ করুন।
  • নির্দিষ্ট ত্রুটির ক্ষেত্রে পুনরায় চেষ্টা করুন: শুধুমাত্র ক্ষণস্থায়ী ত্রুটির (যেমন 429 , 408 , বা 5xx ) ক্ষেত্রে পুনরায় চেষ্টা করুন। ক্লায়েন্ট ত্রুটির (যেমন 400 , 402 , বা 403 ) ক্ষেত্রে পুনরায় চেষ্টা করবেন না, কারণ এগুলি অবৈধ API কী, শেষ হয়ে যাওয়া প্রিপে ক্রেডিট, বা ভুল সিনট্যাক্সের মতো সমস্যা নির্দেশ করে।
  • সর্বোচ্চ পুনঃপ্রচেষ্টা নির্ধারণ করুন: অসীম লুপ প্রতিরোধ করার জন্য পুনঃপ্রচেষ্টার সর্বোচ্চ সংখ্যা নির্ধারণ করুন।

মডেল প্যারামিটার ত্রুটির জন্য আপনার এপিআই কলগুলো পরীক্ষা করুন।

আপনার মডেলের প্যারামিটারগুলো নিম্নলিখিত মানগুলোর মধ্যে আছে কিনা তা যাচাই করুন:

মডেল প্যারামিটার মান (পরিসর)
প্রার্থীর সংখ্যা ১-৮ (পূর্ণসংখ্যা)
তাপমাত্রা ০.০-১.০
সর্বোচ্চ আউটপুট টোকেন আপনার ব্যবহৃত মডেলটির জন্য টোকেনের সর্বোচ্চ সংখ্যা নির্ধারণ করতে মডেল পৃষ্ঠাটি ব্যবহার করুন।
টপপি ০.০-১.০

প্যারামিটার মানগুলো পরীক্ষা করার পাশাপাশি, নিশ্চিত করুন যে আপনি সঠিক API সংস্করণ (যেমন, /v1 বা /v1beta ) এবং মডেল ব্যবহার করছেন যা আপনার প্রয়োজনীয় বৈশিষ্ট্যগুলোকে সমর্থন করে। উদাহরণস্বরূপ, যদি কোনো বৈশিষ্ট্য বিটা রিলিজে থাকে, তবে তা শুধুমাত্র /v1beta API সংস্করণে উপলব্ধ হবে।

আপনার কাছে সঠিক মডেল আছে কিনা তা যাচাই করুন।

নিশ্চিত করুন যে আপনি আমাদের মডেল পেজে তালিকাভুক্ত একটি সমর্থিত মডেল ব্যবহার করছেন।

থিঙ্কিং মডেলগুলির সাথে উচ্চতর লেটেন্সি বা টোকেন ব্যবহার

প্রায়শই উচ্চতর ল্যাটেন্সি বা টোকেন ব্যবহার দেখা যায়, কারণ জেমিনি ৩.x মডেলগুলিতে ডিফল্টরূপে থিঙ্কিং সক্রিয় থাকে। অপ্রচলিত জেমিনি ২.৫ মডেলগুলিও ডিফল্ট থিঙ্কিং ব্যবহার করে।

চিন্তাশীল মডেলগুলো গুণমান উন্নত করার জন্য অভ্যন্তরীণ যুক্তির টোকেন তৈরি করে। এই যুক্তি প্রক্রিয়াটি প্রতিক্রিয়ার বিলম্ব এবং মোট টোকেন খরচ উভয়ই বাড়িয়ে দেয়।

যদি আপনি কম লেটেন্সিকে অগ্রাধিকার দেন বা খরচ কমাতে চান, তাহলে আপনি চিন্তার স্তর কমাতে পারেন বা চিন্তা বন্ধ করে দিতে পারেন।

কনফিগারেশনের বিবরণ এবং কোডের নমুনার জন্য, থিঙ্কিং গাইডটি দেখুন।

নিরাপত্তা সংক্রান্ত সমস্যা

যদি দেখেন আপনার এপিআই কলের কোনো সুরক্ষা সেটিংয়ের কারণে একটি প্রম্পট ব্লক করা হয়েছে, তাহলে এপিআই কলে সেট করা ফিল্টারগুলোর সাপেক্ষে প্রম্পটটি পর্যালোচনা করুন।

যদি আপনি BlockedReason.OTHER দেখতে পান, তাহলে কোয়েরি বা রেসপন্সটি পরিষেবার শর্তাবলী লঙ্ঘন করতে পারে অথবা অন্য কোনো কারণে অসমর্থিত হতে পারে।

আবৃত্তি সমস্যা

যদি দেখেন মডেলটি ‘RECITATION’ কারণে আউটপুট দেওয়া বন্ধ করে দিয়েছে, এর মানে হলো মডেলের আউটপুটটি নির্দিষ্ট কোনো ডেটার সাথে সাদৃশ্যপূর্ণ হতে পারে। এটি ঠিক করার জন্য, প্রম্পট / কনটেক্সট যতটা সম্ভব অনন্য করার চেষ্টা করুন এবং একটি উচ্চতর তাপমাত্রা ব্যবহার করুন।

পুনরাবৃত্তিমূলক টোকেন সমস্যা

যদি আপনি পুনরাবৃত্ত আউটপুট টোকেন দেখতে পান, তবে সেগুলি কমাতে বা দূর করতে নিম্নলিখিত পরামর্শগুলি চেষ্টা করুন।

বর্ণনা কারণ প্রস্তাবিত সমাধান
মার্কডাউন টেবিলে বারবার হাইফেন ব্যবহার টেবিলের বিষয়বস্তু দীর্ঘ হলে এটি ঘটতে পারে, কারণ মডেলটি একটি দৃশ্যত সারিবদ্ধ মার্কডাউন টেবিল তৈরি করার চেষ্টা করে। তবে, সঠিক রেন্ডারিংয়ের জন্য মার্কডাউনে এই সারিবদ্ধকরণ অপরিহার্য নয়।

মার্কডাউন টেবিল তৈরির জন্য মডেলকে নির্দিষ্ট নির্দেশিকা দিতে আপনার প্রম্পটে নির্দেশনা যোগ করুন। সেই নির্দেশিকাগুলো অনুসরণ করে এমন উদাহরণ দিন। আপনি তাপমাত্রা সামঞ্জস্য করার চেষ্টাও করতে পারেন। কোড বা মার্কডাউন টেবিলের মতো অত্যন্ত সুগঠিত আউটপুট তৈরির ক্ষেত্রে উচ্চ তাপমাত্রা (>= ০.৮) ভালো কাজ করে বলে দেখা গেছে।

এই সমস্যাটি প্রতিরোধ করার জন্য আপনি আপনার প্রম্পটে নিম্নলিখিত নির্দেশিকাগুলো যোগ করতে পারেন:

          # 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.
        
মার্কডাউন টেবিলে পুনরাবৃত্ত টোকেন পুনরাবৃত্ত হাইফেনের মতোই, এটি তখন ঘটে যখন মডেলটি টেবিলের বিষয়বস্তুকে দৃশ্যত সারিবদ্ধ করার চেষ্টা করে। সঠিক রেন্ডারিংয়ের জন্য মার্কডাউনে এই সারিবদ্ধকরণের প্রয়োজন নেই।
  • আপনার সিস্টেম প্রম্পটে নিম্নলিখিতের মতো নির্দেশাবলী যোগ করার চেষ্টা করুন:
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • তাপমাত্রা সামঞ্জস্য করার চেষ্টা করুন। উচ্চ তাপমাত্রা (>= ০.৮) সাধারণত আউটপুটের পুনরাবৃত্তি বা নকল দূর করতে সাহায্য করে।
স্ট্রাকচার্ড আউটপুটে বারবার নতুন লাইন ( \n ) মডেল ইনপুটে \u বা \t মতো ইউনিকোড বা এস্কেপ সিকোয়েন্স থাকলে, এর ফলে বারবার নিউলাইন তৈরি হতে পারে।
  • আপনার প্রম্পটে নিষিদ্ধ এস্কেপ সিকোয়েন্সগুলো খুঁজে বের করুন এবং সেগুলোকে UTF-8 ক্যারেক্টার দিয়ে প্রতিস্থাপন করুন। উদাহরণস্বরূপ, আপনার JSON উদাহরণে থাকা \u এস্কেপ সিকোয়েন্সের কারণে মডেলটিও তার আউটপুটে সেগুলো ব্যবহার করতে পারে।
  • মডেলটিকে অনুমোদিত এস্কেপ সম্পর্কে নির্দেশ দিন। এইভাবে একটি সিস্টেম ইন্সট্রাকশন যোগ করুন:
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
স্ট্রাকচার্ড আউটপুট ব্যবহারে পুনরাবৃত্ত টেক্সট মডেলের আউটপুটে ফিল্ডগুলোর ক্রম সংজ্ঞায়িত কাঠামোগত স্কিমা থেকে ভিন্ন হলে, এর ফলে টেক্সটের পুনরাবৃত্তি হতে পারে।
  • আপনার প্রম্পটে ফিল্ডগুলোর ক্রম নির্দিষ্ট করবেন না।
  • আউটপুটের সমস্ত ফিল্ড আবশ্যক করুন।
বারবার টুল কল করা এটি ঘটতে পারে যদি মডেলটি পূর্ববর্তী চিন্তাভাবনার প্রেক্ষাপট হারিয়ে ফেলে এবং/অথবা বাধ্য হয়ে এমন কোনো অনুপলব্ধ এন্ডপয়েন্টকে কল করে। মডেলটিকে তার চিন্তন প্রক্রিয়ার মধ্যে অবস্থা বজায় রাখতে নির্দেশ দিন। আপনার সিস্টেম নির্দেশাবলীর শেষে এটি যোগ করুন:
        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 key) সর্বজনীনভাবে ফাঁস হয়ে থাকতে পারে। আপনার ডেটা সুরক্ষিত রাখতে এবং অননুমোদিত প্রবেশ রোধ করতে, আমরা সক্রিয়ভাবে এই পরিচিত ফাঁস হওয়া কীগুলোকে জেমিনি এপিআই (Gemini API)-তে প্রবেশ করা থেকে ব্লক করে দিয়েছি।

আপনার কীগুলো প্রভাবিত হয়েছে কিনা তা নিশ্চিত করুন।

আপনার কী (key) ফাঁস হয়ে গেছে বলে জানা গেলে, আপনি আর জেমিনি এপিআই (Gemini API)-এর সাথে সেই কী ব্যবহার করতে পারবেন না। আপনার কোনো এপিআই কী জেমিনি এপিআই কল করার ক্ষেত্রে ব্লক করা আছে কিনা তা দেখতে এবং নতুন কী তৈরি করতে আপনি গুগল এআই স্টুডিও (Google AI Studio) ব্যবহার করতে পারেন। এই কীগুলো ব্যবহার করার চেষ্টা করার সময় আপনি নিম্নলিখিত ত্রুটিটিও দেখতে পারেন:

Your API key was reported as leaked. Please use another API key.

ব্লক করা এপিআই কীগুলির জন্য পদক্ষেপ

আপনার Gemini API ইন্টিগ্রেশনগুলির জন্য Google AI Studio ব্যবহার করে নতুন API কী তৈরি করা উচিত। আমরা দৃঢ়ভাবে সুপারিশ করছি যে আপনি আপনার API কী ব্যবস্থাপনার পদ্ধতি পর্যালোচনা করুন, যাতে আপনার নতুন কীগুলি সুরক্ষিত থাকে এবং সর্বজনীনভাবে প্রকাশ না হয়।

দুর্বলতার কারণে অপ্রত্যাশিত চার্জ

বিলিং সহায়তার জন্য একটি অভিযোগ জমা দিন । আমাদের বিলিং টিম বিষয়টি নিয়ে কাজ করছে এবং আমরা যত তাড়াতাড়ি সম্ভব নতুন তথ্য জানিয়ে দেব।

ফাঁস হওয়া কী-এর জন্য গুগলের নিরাপত্তা ব্যবস্থা

আমার এপিআই কী ফাঁস হয়ে গেলে, গুগল কীভাবে আমার অ্যাকাউন্টকে অতিরিক্ত খরচ এবং অপব্যবহার থেকে সুরক্ষিত রাখতে সাহায্য করবে?

  • আমরা এমন একটি ব্যবস্থার দিকে এগোচ্ছি যেখানে গুগল এআই স্টুডিও ব্যবহার করে নতুন কী-এর জন্য অনুরোধ করলে, সেই কী ডিফল্টরূপে শুধুমাত্র গুগল এআই স্টুডিও-এর জন্যই সীমাবদ্ধ থাকবে এবং অন্য কোনো পরিষেবার কী গ্রহণ করবে না। এটি যেকোনো অনাকাঙ্ক্ষিত ক্রস-কী ব্যবহার প্রতিরোধ করতে সাহায্য করবে।
  • আমরা এখন থেকে জেমিনি এপিআই-এর সাথে ব্যবহৃত এবং ফাঁস হওয়া এপিআই কী-গুলো ডিফল্টরূপে ব্লক করে দিচ্ছি, যা খরচ এবং আপনার অ্যাপ্লিকেশন ডেটার অপব্যবহার রোধ করতে সাহায্য করবে।
  • আপনি গুগল এআই স্টুডিও-এর মধ্যে আপনার এপিআই কী-গুলির অবস্থা জানতে পারবেন এবং আপনার এপিআই কী-গুলি ফাঁস হয়েছে বলে শনাক্ত হলে, তাৎক্ষণিক ব্যবস্থা গ্রহণের জন্য আমরা সক্রিয়ভাবে আপনাকে জানানোর ব্যবস্থা করব।

মডেল আউটপুট উন্নত করুন

আরও উন্নত মানের মডেল আউটপুটের জন্য, আরও সুগঠিত প্রম্পট লেখার বিষয়টি খতিয়ে দেখুন। প্রম্পট ইঞ্জিনিয়ারিং গাইড পৃষ্ঠাটিতে আপনাকে শুরু করার জন্য কিছু মৌলিক ধারণা, কৌশল এবং সর্বোত্তম অনুশীলন সম্পর্কে জানানো হয়েছে।

টোকেনের সীমা বুঝুন

টোকেন কীভাবে গণনা করতে হয় এবং এর সীমাবদ্ধতাগুলো আরও ভালোভাবে বুঝতে আমাদের টোকেন নির্দেশিকাটি পড়ুন।

পরিচিত সমস্যা

  • এপিআইটি শুধুমাত্র কয়েকটি নির্দিষ্ট ভাষা সমর্থন করে। অসমর্থিত ভাষায় প্রম্পট জমা দিলে অপ্রত্যাশিত বা এমনকি ব্লক করা প্রতিক্রিয়া আসতে পারে। আপডেটের জন্য উপলব্ধ ভাষাগুলো দেখুন।

একটি ত্রুটি রিপোর্ট করুন

আপনার কোনো প্রশ্ন থাকলে গুগল এআই ডেভেলপার ফোরামে আলোচনায় যোগ দিন।

,

জেমিনি এপিআই কল করার সময় উদ্ভূত সাধারণ সমস্যাগুলো নির্ণয় ও সমাধান করতে এই নির্দেশিকাটি ব্যবহার করুন। আপনি জেমিনি এপিআই ব্যাকএন্ড পরিষেবা অথবা ক্লায়েন্ট এসডিকে উভয় থেকেই সমস্যার সম্মুখীন হতে পারেন। আমাদের ক্লায়েন্ট এসডিকেগুলো নিম্নলিখিত রিপোজিটরিগুলোতে ওপেন সোর্স করা আছে:

যদি আপনি এপিআই কী (API key) সংক্রান্ত সমস্যার সম্মুখীন হন, তবে এপিআই কী সেটআপ গাইড (API key setup guide) অনুযায়ী আপনার এপিআই কী সঠিকভাবে সেটআপ করেছেন কিনা তা যাচাই করুন।

ত্রুটি কোড

HTTP স্ট্যাটাস কোড, জেনারেশন ব্লকড কোড এবং কন্টেন্ট এরর কোড সহ সকল এরর কোডের সম্পূর্ণ রেফারেন্সের জন্য API এরর পেজটি দেখুন।

পুনরায় চেষ্টা করার কৌশল

যদি আপনি এমন কোনো ত্রুটি বার্তা পান যা আপনার অনুরোধটি পুনরায় চেষ্টা করার নির্দেশ দেয় (যেমন 429 RESOURCE_EXHAUSTED বা 503 UNAVAILABLE ), তাহলে আমরা একটি এক্সপোনেনশিয়াল ব্যাকঅফ কৌশল প্রয়োগ করার পরামর্শ দিই। এর অর্থ হলো, আপনি প্রথমবার পুনরায় চেষ্টা করার আগে অল্প কিছুক্ষণ অপেক্ষা করবেন এবং তারপর পরবর্তী চেষ্টাগুলোর মধ্যে অপেক্ষার সময় ক্রমান্বয়ে বাড়িয়ে দেবেন।

জেমিনি এপিআই-এর অফিসিয়াল ক্লায়েন্ট এসডিকে-গুলোতে, যেমন পাইথন এসডিকে , টাইমআউট, নেটওয়ার্ক সমস্যা এবং রেট লিমিটের ( 429 এবং 5xx স্ট্যাটাস কোড) মতো ক্ষণস্থায়ী ত্রুটিগুলি পরিচালনা করার জন্য ডিফল্টরূপে এক্সপোনেনশিয়াল ব্যাকঅফ সহ স্বয়ংক্রিয় রিট্রাই লজিক অন্তর্ভুক্ত থাকে। উদাহরণস্বরূপ, পাইথন এসডিকে ক্ষণস্থায়ী ত্রুটিগুলির ক্ষেত্রে প্রায় ১ সেকেন্ডের প্রাথমিক বিলম্ব এবং সর্বোচ্চ ৬০ সেকেন্ডের বিলম্ব সহ স্বয়ংক্রিয়ভাবে চারবার পর্যন্ত রিট্রাই করে।

আপনি যদি সরাসরি REST API অনুরোধ করেন অথবা আপনার রিট্রাই লজিক কাস্টমাইজ করেন, তাহলে একটি সফল অনুরোধের সম্ভাবনা বাড়াতে এবং সার্ভিসের উপর অতিরিক্ত চাপ প্রতিরোধ করতে এই সেরা অনুশীলনগুলো অনুসরণ করুন:

  • এক্সপোনেনশিয়াল ব্যাকঅফ ব্যবহার করুন: প্রথমবার পুনরায় চেষ্টা করার আগে অল্প সময় অপেক্ষা করুন (যেমন, ১ সেকেন্ড), তারপর বিলম্বের সময়টি সূচকীয়ভাবে বাড়ান (যেমন, ২ সেকেন্ড, ৪ সেকেন্ড, ৮ সেকেন্ড)।
  • জিটার যোগ করুন: সমস্ত ক্লায়েন্টকে একই সময়ে পুনরায় চেষ্টা করা থেকে বিরত রাখতে ডিলে-তে এলোমেলো "জিটার" যোগ করুন।
  • নির্দিষ্ট ত্রুটির ক্ষেত্রে পুনরায় চেষ্টা করুন: শুধুমাত্র ক্ষণস্থায়ী ত্রুটির (যেমন 429 , 408 , বা 5xx ) ক্ষেত্রে পুনরায় চেষ্টা করুন। ক্লায়েন্ট ত্রুটির (যেমন 400 , 402 , বা 403 ) ক্ষেত্রে পুনরায় চেষ্টা করবেন না, কারণ এগুলি অবৈধ API কী, শেষ হয়ে যাওয়া প্রিপে ক্রেডিট, বা ভুল সিনট্যাক্সের মতো সমস্যা নির্দেশ করে।
  • সর্বোচ্চ পুনঃপ্রচেষ্টা নির্ধারণ করুন: অসীম লুপ প্রতিরোধ করার জন্য পুনঃপ্রচেষ্টার সর্বোচ্চ সংখ্যা নির্ধারণ করুন।

মডেল প্যারামিটার ত্রুটির জন্য আপনার এপিআই কলগুলো পরীক্ষা করুন।

আপনার মডেলের প্যারামিটারগুলো নিম্নলিখিত মানগুলোর মধ্যে আছে কিনা তা যাচাই করুন:

মডেল প্যারামিটার মান (পরিসর)
প্রার্থীর সংখ্যা ১-৮ (পূর্ণসংখ্যা)
তাপমাত্রা ০.০-১.০
সর্বোচ্চ আউটপুট টোকেন আপনার ব্যবহৃত মডেলটির জন্য টোকেনের সর্বোচ্চ সংখ্যা নির্ধারণ করতে মডেল পৃষ্ঠাটি ব্যবহার করুন।
টপপি ০.০-১.০

প্যারামিটার মানগুলো পরীক্ষা করার পাশাপাশি, নিশ্চিত করুন যে আপনি সঠিক API সংস্করণ (যেমন, /v1 বা /v1beta ) এবং মডেল ব্যবহার করছেন যা আপনার প্রয়োজনীয় বৈশিষ্ট্যগুলোকে সমর্থন করে। উদাহরণস্বরূপ, যদি কোনো বৈশিষ্ট্য বিটা রিলিজে থাকে, তবে তা শুধুমাত্র /v1beta API সংস্করণে উপলব্ধ হবে।

আপনার কাছে সঠিক মডেল আছে কিনা তা যাচাই করুন।

নিশ্চিত করুন যে আপনি আমাদের মডেল পেজে তালিকাভুক্ত একটি সমর্থিত মডেল ব্যবহার করছেন।

থিঙ্কিং মডেলগুলির সাথে উচ্চতর লেটেন্সি বা টোকেন ব্যবহার

প্রায়শই উচ্চতর ল্যাটেন্সি বা টোকেন ব্যবহার দেখা যায়, কারণ জেমিনি ৩.x মডেলগুলিতে ডিফল্টরূপে থিঙ্কিং সক্রিয় থাকে। অপ্রচলিত জেমিনি ২.৫ মডেলগুলিও ডিফল্ট থিঙ্কিং ব্যবহার করে।

চিন্তাশীল মডেলগুলো গুণমান উন্নত করার জন্য অভ্যন্তরীণ যুক্তির টোকেন তৈরি করে। এই যুক্তি প্রক্রিয়াটি প্রতিক্রিয়ার বিলম্ব এবং মোট টোকেন খরচ উভয়ই বাড়িয়ে দেয়।

যদি আপনি কম লেটেন্সিকে অগ্রাধিকার দেন বা খরচ কমাতে চান, তাহলে আপনি চিন্তার স্তর কমাতে পারেন বা চিন্তা বন্ধ করে দিতে পারেন।

কনফিগারেশনের বিবরণ এবং কোডের নমুনার জন্য, থিঙ্কিং গাইডটি দেখুন।

নিরাপত্তা সংক্রান্ত সমস্যা

যদি দেখেন আপনার এপিআই কলের কোনো সুরক্ষা সেটিংয়ের কারণে একটি প্রম্পট ব্লক করা হয়েছে, তাহলে এপিআই কলে সেট করা ফিল্টারগুলোর সাপেক্ষে প্রম্পটটি পর্যালোচনা করুন।

যদি আপনি BlockedReason.OTHER দেখতে পান, তাহলে কোয়েরি বা রেসপন্সটি পরিষেবার শর্তাবলী লঙ্ঘন করতে পারে অথবা অন্য কোনো কারণে অসমর্থিত হতে পারে।

আবৃত্তি সমস্যা

If you see the model stops generating output due to the RECITATION reason, this means the model output may resemble certain data. To fix this, try to make prompt / context as unique as possible and use a higher temperature.

Repetitive tokens issue

If you see repeated output tokens, try the following suggestions to help reduce or eliminate them.

বর্ণনা কারণ Suggested workaround
Repeated hyphens in Markdown tables This can occur when the contents of the table are long as the model tries to create a visually aligned Markdown table. However, the alignment in Markdown is not necessary for correct rendering.

Add instructions in your prompt to give the model specific guidelines for generating Markdown tables. Provide examples that follow those guidelines. You can also try adjusting the temperature. For generating code or very structured output like Markdown tables, high temperature have shown to work better (>= 0.8).

The following is an example set of guidelines you can add to your prompt to prevent this issue:

          # 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.
        
Repeated tokens in Markdown tables Similar to the repeated hyphens, this occurs when the model tries to visually align the contents of the table. The alignment in Markdown is not required for correct rendering.
  • Try adding instructions like the following to your system prompt:
                FOR TABLE HEADINGS, IMMEDIATELY ADD ' |' AFTER THE TABLE HEADING.
              
  • Try adjusting the temperature. Higher temperatures (>= 0.8) generally helps to eliminate repetitions or duplication in the output.
Repeated newlines ( \n ) in structured output When the model input contains unicode or escape sequences like \u or \t , it can lead to repeated newlines.
  • Check for and replace forbidden escape sequences with UTF-8 characters in your prompt. For example, \u escape sequence in your JSON examples can cause the model to use them in its output too.
  • Instruct the model on allowed escapes. Add a system instruction like this:
                In quoted strings, the only allowed escape sequences are \\, \n, and \". Instead of \u escapes, use UTF-8.
              
Repeated text in using structured output When the model output has a different order for the fields than the defined structured schema, this can lead to repeating text.
  • Don't specify the order of fields in your prompt.
  • Make all output fields required.
Repetitive tool calling This can occur if the model loses the context of previous thoughts and/or call an unavailable endpoint that it's forced to. Instruct the model to maintain state within its thought process. Add this to the end of your system instructions:
        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.
      
Repetitive text that's not part of structured output This can occur if the model gets stuck on a request that it can't resolve.
  • If thinking is turned on, avoid giving explicit orders for how to think through a problem in the instructions. Just ask for the final output.
  • Try a higher temperature >= 0.8.
  • Add instructions like "Be concise", "Don't repeat yourself", or "Provide the answer once".

Blocked or non-working API keys

This section describes how to check whether your Gemini API key is blocked and what to do about it.

Understand why keys are blocked

We have identified a vulnerability where some API keys may have been publicly exposed. To protect your data and prevent unauthorized access, we have proactively blocked these known leaked keys from accessing the Gemini API.

Confirm if your keys are affected

If your key is known to be leaked, you can no longer use that key with the Gemini API. You can use Google AI Studio to see if any of your API keys are blocked from calling the Gemini API and generate new keys. You may also see the following error returned when attempting to use these keys:

Your API key was reported as leaked. Please use another API key.

Action for blocked API keys

You should generate new API keys for your Gemini API integrations using Google AI Studio . We strongly recommend reviewing your API key management practices to ensure that your new keys are kept secure and are not publicly exposed.

Unexpected charges due to vulnerability

Submit a billing support case . Our billing team is working on this, and we will communicate updates as soon as possible.

Google's security measures for leaked keys

How is Google going to help secure my account from cost overrun and abuse if my API keys are leaked?

  • We are moving towards issuing API keys when you request a new key using Google AI Studio that will by default be limited to only Google AI Studio and not accept keys from other services. This will help prevent any unintended cross-key usage.
  • We are defaulting to blocking API keys that are leaked and used with the Gemini API, helping prevent abuse of cost and your application data.
  • You will be able to find the status of your API keys within Google AI Studio and we will work on communicating proactively when we identify your API keys are leaked for immediate action.

Improve model output

For higher quality model outputs, explore writing more structured prompts. The prompt engineering guide page introduces some basic concepts, strategies, and best practices to get you started.

Understand token limits

Read through our Token guide to better understand how to count tokens and their limits.

পরিচিত সমস্যা

  • The API supports only a number of select languages. Submitting prompts in unsupported languages can produce unexpected or even blocked responses. See available languages for updates.

একটি ত্রুটি রিপোর্ট করুন

Join the discussion on the Google AI developer forum if you have questions.