মূল content-এ যান

প্রোভাইডার ক্যাটালগ

AI21 Jurassic API নির্দেশিকা

বর্তমানে প্রকাশিত AI21 Jurassic মডেল শনাক্তকারী ও সেবার প্রাপ্যতাসহ সাধারণ গ্রাহক chat-completion endpoint ব্যবহার করুন।

কাজের ধারা
  1. API পণ্য বাছাইInference request ও model-training workflow আলাদা করে চিনুন।
  2. এর contract পড়ুনসংশ্লিষ্ট API ডকুমেন্টেশন ও OpenAPI reference ব্যবহার করুন।
  3. সীমিত scope-এর key তৈরিগ্রাহক API key তৈরি করে নিরাপদে সংরক্ষণ করুন।
  4. Integration ও যাচাইনথিভুক্ত request পাঠিয়ে response পরীক্ষা করুন।
  5. পর্যবেক্ষণ ও rotationব্যবহার পর্যালোচনা করুন; প্রয়োজনমতো key প্রত্যাহার বা rotate করুন।

প্রকাশিত AI21 Jurassic মডেল

উপলভ্য হলে চালু মডেল রেজিস্ট্রি থেকে নাম, হুবহু রাউটিং শনাক্তকারী, সংস্করণ ও inference অবস্থা দেখানো হয়। শনাক্তকারী ফাঁকা মানে ক্যাটালগ রাউটিং মান প্রকাশ করেনি; মডেলের নাম থেকে তা বানাবেন না।

ডেভেলপার
AI21
নতুন গ্রাহকের অ্যাক্সেস
উপলভ্য
মডেলের নামহুবহু মডেল শনাক্তকারীসংস্করণInference-এর অবস্থা
Jurassic-2 রাউটিং শনাক্তকারী প্রকাশিত হয়নি — জনসাধারণের রাউটিং শনাক্তকারী ছাড়া সরাসরি কল করা যাবে কি না নিশ্চিত করা সম্ভব নয়।

এই প্রোভাইডার ব্যবহার

  • হুবহু শনাক্তকারী দিয়ে মডেল বেছে নিয়ে অ্যাপ্লিকেশন কনফিগার করার আগে তার অবস্থা যাচাই করুন। প্রদর্শিত নাম মানুষের পড়ার জন্য; model field-এ শুধু শনাক্তকারী উপযোগী।
  • প্রতিটি প্রোভাইডার পৃষ্ঠায় OpenAI-সামঞ্জস্যপূর্ণ ও Claude Messages উদাহরণ আছে। আপনার client-এর প্রোটোকল বেছে নিন; নির্বাচিত মডেলকেও চাওয়া সুবিধা সমর্থন করতে হবে।
  • শুধু বিদ্যমান গ্রাহকদের জন্য কোনো সেবা হলে বিদ্যমান অ্যাকাউন্টের অ্যাক্সেস বজায় রাখুন; প্রকাশিত মডেল তালিকাকে নতুন সাবস্ক্রিপশন শুরু করার আমন্ত্রণ ভাববেন না।

মডেল API উদাহরণ

অনুরোধের উদাহরণ দেখতে প্রকাশিত মডেল শনাক্তকারী, API প্রোটোকল ও ভাষা বেছে নিন। গ্রাহক API key বিশ্বস্ত সার্ভারে রাখুন।

এই মুহূর্তে প্রকাশিত inference শনাক্তকারীসহ কোনো সক্রিয় বা legacy মডেল নেই।

Claude Messages · POST /messages

Claude Messages অনুরোধে POST /api/v1/messages ব্যবহার করুন। x-api-key-তে গ্রাহক key পাঠান এবং anthropic-version-এর মান 2023-06-01 দিন। Anthropic SDK-এর বেস URL https://fusionpointai.com/api, কারণ SDK শেষে /v1/messages যোগ করে; bearer অথেনটিকেশনও সমর্থিত।

নির্বাচিত upstream মডেল সমর্থন করলে Claude Messages proxy-তে native content block, tool data এবং প্রকৃত server-sent event streaming অক্ষুণ্ণ থাকে।

Fieldধরনআবশ্যকসীমাবদ্ধতা
model string হ্যাঁ {"minLength":1,"maxLength":160}
max_tokens integer হ্যাঁ {"minimum":1,"maximum":100000}
messages array হ্যাঁ {"minItems":1,"maxItems":100,"items":{"type":"object","required":["role","content"],"properties":{"role":{"type":"string","enum":["user","assistant"]},"content":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"type":"string","maxLength":80}},"additionalProperties":true}}]}}}}
system string | array না {"oneOf":[{"type":"string"},{"type":"array","items":{"type":"object","required":["type","text"],"properties":{"type":{"const":"text"},"text":{"type":"string"}},"additionalProperties":true}}]}
stream boolean না {"default":false}
temperature number না {"minimum":0,"maximum":1}
top_p number না {"minimum":0,"maximum":1}
top_k integer না {"minimum":0,"maximum":100000}
stop_sequences array না {"items":{"type":"string"}}
tools array না {"items":{"type":"object","additionalProperties":true}}
tool_choice object না {"additionalProperties":true}
thinking object না {"additionalProperties":true}
metadata object না {"additionalProperties":true}
output_config object না {"additionalProperties":true}
service_tier string না []
Claude Messages · উদাহরণ
{
    "id": "msg_example",
    "type": "message",
    "role": "assistant",
    "model": "<MODEL_ID_FROM_CATALOGUE>",
    "content": [
        {
            "type": "text",
            "text": "A concise answer to the supplied question."
        }
    ],
    "stop_reason": "end_turn",
    "stop_sequence": null,
    "usage": {
        "input_tokens": 12,
        "output_tokens": 10
    }
}
{"type":"error","error":{"type":"authentication_error","message":"Invalid or missing API key."}}

প্রথম অনুরোধ পাঠান

নিচের বেস URL-এ HTTPS অনুরোধ পাঠান। OpenAI-সামঞ্জস্যপূর্ণ টেক্সট chat-এর জন্য POST /chat/completions অথবা Claude Messages-এর জন্য POST /messages ব্যবহার করুন। মডেল কর্মক্ষেত্রে প্রোটোকল বেছে নিয়ে তার সঠিক URL ও JSON বিন্যাস ব্যবহার করুন।

API বেস URL: https://fusionpointai.com/api/v1

আপনার অ্যাকাউন্টের API key সেটিংস থেকে গ্রাহক API key তৈরি বা পরিচালনা করুন। Bearer token হিসেবে পাঠান এবং বিশ্বস্ত সার্ভারে রাখুন; ব্রাউজার কোড, source control বা প্রকাশ্য log-এ রাখবেন না।

Key-তে ai:inference scope এবং সংশ্লিষ্ট গ্রাহক সাবস্ক্রিপশনে অ্যাক্সেস থাকতে হবে। প্রকাশ্য API key অ্যাকাউন্টের পাসওয়ার্ড নয় এবং এটি অন্যকে দেওয়া যাবে না।

এই উদাহরণগুলো নিবন্ধিত JSON chat-completion endpoint এবং OpenAI-সামঞ্জস্যপূর্ণ Python ও Node.js client ব্যবহার করে। key-টি FUSIONPOINTAI_API_KEY environment variable-এ রাখুন। model-এর মান শুধু ওপরের তালিকায় থাকা হুবহু শনাক্তকারী দিয়ে বদলান।

Shell
# Install the client for your application language.
# Python:
python -m pip install openai
# Node.js:
npm install openai

# Bash: enter the key without storing it in shell history.
read -rs -p 'FusionPointAI API key: ' FUSIONPOINTAI_API_KEY
export FUSIONPOINTAI_API_KEY
printf '\n'
# After finishing:
# unset FUSIONPOINTAI_API_KEY

কোনো সক্রিয় রেজিস্ট্রি মডেল শনাক্তকারী বর্তমানে প্রকাশিত নেই। এই ক্যাটালগ থেকে শনাক্তকারী বেছে নেওয়ার পরই উদাহরণের placeholder বদলান।

cURL — উদাহরণ
curl 'https://fusionpointai.com/api/v1/chat/completions' \
  -H "Authorization: Bearer $FUSIONPOINTAI_API_KEY" \
  -H "Content-Type: application/json" \
  --data '{
    "model": "<MODEL_ID_FROM_CATALOGUE>",
    "messages": [
        {
            "role": "user",
            "content": "Summarize this in one sentence."
        }
    ],
    "temperature": 0.7,
    "max_tokens": 300
}'
Python — উদাহরণ
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["FUSIONPOINTAI_API_KEY"],
    base_url="https://fusionpointai.com/api/v1",
)

response = client.chat.completions.create(
    model="<MODEL_ID_FROM_CATALOGUE>",
    messages=[{"role": "user", "content": "Summarize this in one sentence."}],
    temperature=0.7,
    max_tokens=300,
)
print(response.choices[0].message.content)
Node.js — উদাহরণ
import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.FUSIONPOINTAI_API_KEY,
  baseURL: "https://fusionpointai.com/api/v1",
});

const response = await client.chat.completions.create({
  model: "<MODEL_ID_FROM_CATALOGUE>",
  messages: [{ role: "user", content: "Summarize this in one sentence." }],
  temperature: 0.7,
  max_tokens: 300,
});
console.log(response.choices[0].message.content);

OpenAI · অনুরোধ ও প্রতিক্রিয়ার চুক্তি

Endpoint JSON গ্রহণ করে। বার্তাগুলো ক্রমানুসারে পাঠানো হয়; প্রতিটি বার্তায় সমর্থিত role ও string content থাকে। ঐচ্ছিক generation নিয়ন্ত্রণ নিচের যাচাইসীমার মধ্যে থাকতে হবে। প্রতিক্রিয়া হলো JSON chat.completion object, যাতে choices এবং প্রোভাইডার দিলে token usage থাকে।

Fieldধরনআবশ্যকসীমাবদ্ধতা
modelstringহ্যাঁসর্বোচ্চ 160 অক্ষরের string; প্রকাশিত শনাক্তকারী ব্যবহার করুন।
messagesarrayহ্যাঁ1 থেকে 100টি বার্তার array।
messages[].rolestringহ্যাঁপ্রতিটি role হবে system, user অথবা assistant।
messages[].contentstringহ্যাঁপ্রতিটি বার্তার content সর্বোচ্চ 100,000 অক্ষরের string।
temperaturenumberনাঐচ্ছিক সংখ্যা, 0 থেকে 2।
max_tokensintegerনাঐচ্ছিক পূর্ণসংখ্যা, 1 থেকে 100,000; নির্বাচিত মডেলের আউটপুট-সীমা এর চেয়ে কম হতে পারে।

প্রতিক্রিয়ার কাঠামো

সফল প্রতিক্রিয়ায় id, object (chat.completion), created, model ও choices থাকে। একটি choice-এ index, assistant message ও finish_reason থাকে। usage-এ token-এর সংখ্যা ফেরত আসতে পারে। Gateway যাচাই পাস হলেও প্রোভাইডারভেদে সীমা প্রযোজ্য হতে পারে।

উদাহরণ · JSON
{
    "id": "chatcmpl_example",
    "object": "chat.completion",
    "created": 1700000000,
    "model": "<MODEL_ID_FROM_CATALOGUE>",
    "choices": [
        {
            "index": 0,
            "message": {
                "role": "assistant",
                "content": "A concise summary of the supplied text."
            },
            "finish_reason": "stop"
        }
    ],
    "usage": {
        "prompt_tokens": 12,
        "completion_tokens": 10,
        "total_tokens": 22
    }
}

অ্যাক্সেস, সীমা ও নিরাপদ পরিচালনা

লাইভ গ্রাহক সাবস্ক্রিপশনে অনুরোধ বা token ব্যবহার কোনো কোটার বিপরীতে মাপা হয় না; sandbox key-এর সীমা তাদের প্রকাশিত মাসিক বরাদ্দ। সাবস্ক্রিপশন-সংক্রান্ত এই বক্তব্য মডেল ও upstream-এর প্রযুক্তিগত সীমা থেকে আলাদা।

  • মডেলের context window, সর্বোচ্চ আউটপুটের আকার, সমর্থিত অনুরোধ-সুবিধা ও সাময়িক upstream ট্র্যাফিক নিয়ন্ত্রণ ভিন্ন হতে পারে। প্রোডাকশন ট্র্যাফিক পাঠানোর আগে প্রোভাইডার ও মডেলের তথ্য দেখুন।
  • প্রযোজ্য throttle পরিচয়প্রতি endpoint-এ মিনিটে 60টি অনুরোধের application throttle আছে। HTTP 429 সাময়িক upstream ট্র্যাফিক নিয়ন্ত্রণও বোঝাতে পারে; ঘনঘন retry না করে বিরতি বাড়িয়ে আবার চেষ্টা করুন।
  • HTTPS ব্যবহার করুন, key সার্ভারে রাখুন, প্রয়োজনীয় inference scope-টুকুই দিন এবং key প্রকাশিত হয়ে থাকতে পারে মনে হলে দ্রুত বাতিল করুন।
  • Chat Completions-এ সিঙ্ক্রোনাস টেক্সট সমর্থিত। নির্বাচিত মডেল অনুমতি দিলে Claude Messages-এ native content block, tool ও SSE আলাদাভাবে সমর্থিত। অন্য প্রোভাইডার endpoint এই চুক্তির অন্তর্ভুক্ত নয়।

প্রোভাইডার অ্যাক্সেস ও অ্যাকাউন্টের শর্ত

ai:inference scope-সহ এবং এই সেবায় অ্যাক্সেস থাকা অ্যাকাউন্টের গ্রাহক API key দিয়ে অথেনটিকেট করুন। নতুন গ্রাহক নেওয়া হচ্ছে কি না ক্যাটালগে জানানো হয়। এটি অ্যাক্সেস দেয় না, সাবস্ক্রিপশন তৈরি করে না বা অ্যাকাউন্ট ও key-এর অনুমতি অতিক্রম করে না।

ত্রুটি ও সমস্যা সমাধান

Endpoint-এর যাচাই ব্যর্থতা ও ব্যবহার-অযোগ্য প্রোভাইডার ফলাফলে message, type ও code-সহ JSON error object ফেরে; যাচাই ব্যর্থতায় field-এর বিবরণও থাকতে পারে। সহায়তার টিকিটে API key বা ব্যক্তিগত prompt দেবেন না।

Chat operation-এ অনুরোধ যাচাই ও প্রোভাইডার ব্যর্থতা error object-এ ফেরে। অথেনটিকেশন, scope ও throttle middleware-এর প্রতিক্রিয়ায় ওপরের স্তরে message field থাকতে পারে। Status ও response body একসঙ্গে যাচাই করুন।

HTTP অবস্থাঅর্থ ও পরবর্তী পদক্ষেপ
400অনুরোধের বডি সঠিক নয়। আবশ্যক field, বার্তার সংখ্যা ও content, role মান, temperature এবং max_tokens যাচাই করুন।
401Bearer key নেই বা সঠিক নয়। Key সক্রিয় আছে এবং Authorization header-এ পাঠানো হয়েছে কি না দেখুন।
403Key-তে আবশ্যক inference scope বা অ্যাকাউন্ট অ্যাক্সেস নাও থাকতে পারে। Key-এর অনুমতি ও সাবস্ক্রিপশন অ্যাক্সেস দেখুন।
429অনুরোধ throttle বা upstream ট্র্যাফিক নিয়ন্ত্রণ প্রযোজ্য হয়েছে। গতি কমিয়ে ক্রমবর্ধমান বিরতিতে আবার চেষ্টা করুন।
500প্রোভাইডার ব্যবহারযোগ্য completion ফেরত দেয়নি অথবা সেবায় ত্রুটি হয়েছে। সতর্কভাবে retry করুন; সময় ও গোপন তথ্য বাদ দেওয়া request ID দিয়ে সহায়তায় যোগাযোগ করুন।

সাধারণ জিজ্ঞাসা

প্রদর্শিত নাম model value হিসেবে ব্যবহার করতে পারি?

শুধু সেই হুবহু string আলাদাভাবে রাউটিং শনাক্তকারী হিসেবে প্রকাশিত হলে। শনাক্তকারী কলাম ব্যবহার করুন; ফাঁকা থাকলে এখানে কোনো রাউটিং মান প্রকাশিত নেই।

Claude SDK ব্যবহার করা যাবে?

হ্যাঁ। মডেল কর্মক্ষেত্রে Claude বেছে নিয়ে দেখানো base URL-সহ Anthropic SDK ব্যবহার করুন। এটি native Messages অনুরোধ পাঠায়, Chat Completions নয়। মডেলভিত্তিক সক্ষমতার সীমা তবুও প্রযোজ্য।

তালিকাভুক্ত মডেল কাজ নাও করতে পারে কেন?

মডেল অনুপলভ্য হতে পারে, আপনার অ্যাকাউন্ট বা key-তে অ্যাক্সেস চালু নাও থাকতে পারে, অথবা upstream প্রযুক্তিগত সীমা প্রযোজ্য হতে পারে। অবস্থা, শনাক্তকারী, key scope ও error response যাচাই করুন।

সহায়তার অনুরোধে কী দেব?

প্রোভাইডার, হুবহু মডেল শনাক্তকারী, অনুরোধের সময়, HTTP status ও গোপন তথ্য বাদ দেওয়া request ID দিন। API key ও সংবেদনশীল prompt data সরিয়ে দিন।