GatifyAI
ডকস

API রেফারেন্স

GatifyAI একটি চ্যাট কমপ্লিশন এন্ডপয়েন্ট প্রদান করে যা OpenAI SDK-এর সাথে সামঞ্জস্যপূর্ণ — আপনার বিদ্যমান OpenAI ক্লায়েন্টকে GatifyAI-তে পয়েন্ট করুন এবং এটি বিশেষ কোনো ক্লায়েন্ট লাইব্রেরি ছাড়াই কাজ করে।

বেস URL

প্রতিটি রিকোয়েস্ট যায়:

https://gatifyai.com/api/v1

অথেনটিকেশন

API কী পেজে একটি কী তৈরি করুন, তারপর সেটিকে Authorization হেডারে বিয়ারার টোকেন হিসেবে পাঠান। আপনার কী-এর শুধু একটি হ্যাশ সংরক্ষিত থাকে — তৈরি হওয়ার সাথে সাথেই এটি কপি করুন, কারণ GatifyAI পরে এটি আর দেখাতে পারবে না।

দ্রুত শুরু

curl, Python, বা TypeScript-এ একটি ন্যূনতম রিকোয়েস্ট:

curl https://gatifyai.com/api/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "MODEL_NAME",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

একটি কী নির্দিষ্ট মডেলে সীমাবদ্ধ করা

ডিফল্টভাবে একটি নতুন কী GatifyAI-এর যেকোনো ফ্রি মডেল ব্যবহার করতে পারে, এবং কোনো একটি অনুপলব্ধ হলে ওয়েব চ্যাটের মতোই স্বয়ংক্রিয় fallback হয়। এর পরিবর্তে আপনি একটি কী-কে নির্দিষ্ট মডেল বা একটি ছোট তালিকায় সীমাবদ্ধ করতে পারেন — তখন কী শুধুমাত্র সেই তালিকার মডেলগুলো, আপনার দেওয়া ক্রমে, ব্যবহার করবে, রিকোয়েস্ট যে মডেলই চাক না কেন। তালিকার বাইরের মডেল চাইলে 400 এরর পাওয়া যাবে যাতে বলা থাকবে কী আসলে কোন মডেলগুলো ব্যবহার করতে পারে।

একটি পার্সোনা হিসেবে চ্যাট করা

কমিউনিটি গ্যালারি-এ প্রকাশিত কোনো পার্সোনা হিসেবে চ্যাট করতে model: "persona/<slug>" পাঠান — এর ব্যক্তিত্ব এবং পছন্দের মডেল স্বয়ংক্রিয়ভাবে ব্যবহৃত হয়, তবে আপনি যদি কী-এর জন্য অনুমোদিত মডেল সেট করে থাকেন তাহলে তার মধ্যেই সীমাবদ্ধ থাকে। কোনো পার্সোনার slug এবং একটি রেডিমেড উদাহরণ তার নিজস্ব পেজে, API ট্যাবে পাবেন।

{
  "model": "persona/senior-engineer",
  "messages": [{"role": "user", "content": "Review my code."}]
}

স্ট্রিমিং বনাম নন-স্ট্রিমিং

জেনারেট হওয়ার সাথে সাথে টোকেন পেতে stream: true সেট করুন, ঠিক OpenAI-এর স্ট্রিমিং ফরম্যাটের মতো (Server-Sent Events, [DONE] দিয়ে শেষ)। এটি বাদ দিন, বা false সেট করুন, পুরো রিপ্লাইয়ের জন্য অপেক্ষা করে একটি JSON রেসপন্স পেতে — এটিই ডিফল্ট।

এরর

এররগুলো OpenAI-এর এরর ফরম্যাট অনুসরণ করে: {"error": {"message": "...", "type": "..."}}। 401 মানে একটি অনুপস্থিত, অবৈধ, বা প্রত্যাহারকৃত কী। 400 মানে রিকোয়েস্টটিই অবৈধ — সাধারণত একটি অপরিচিত মডেল, অপ্রকাশিত/অজানা পার্সোনা slug, অথবা আপনার কী-এর অনুমোদিত তালিকার বাইরের একটি মডেল। 502 মানে কোনো প্রার্থী মডেলই সাড়া দেয়নি।

{
  "error": {
    "message": "This API key may only use: llama-3.1-8b:free",
    "type": "invalid_request_error"
  }
}

রেট লিমিট

API রিকোয়েস্টগুলো ওয়েব অ্যাপের মতোই প্রতি-অ্যাকাউন্ট চ্যাট রেট লিমিটে গণনা হয় — বর্তমানে API ট্রাফিকের জন্য আলাদা কোনো কোটা নেই।