জ্ঞানকোষের বিভাগসমূহ ▾

বিনিয়োগকারীদের জন্য

সরঞ্জাম

সরঞ্জাম

PydanticAI + Gonka — টাইপড এআই এজেন্ট নগণ্য খরচে

PydanticAI হল Pydantic (যে একই ভ্যালিডেশন লাইব্রেরি যার উপর অর্ধেক পাইথন ইকোসিস্টেম চলে) দল থেকে এআই এজেন্ট তৈরির জন্য একটি পাইথন ফ্রেমওয়ার্ক। PydanticAI এর প্রধান বৈশিষ্ট্য হল টাইপড আউটপুট: আপনি একটি সাধারণ Pydantic মডেল হিসাবে ফলাফল বর্ণনা করেন, এবং ফ্রেমওয়ার্ক নিশ্চিত করে যে মডেলটি এই কাঠামোটিই ফেরত দেবে, ভ্যালিডেটেড এবং ব্যবহারের জন্য প্রস্তুত। এছাড়াও একটি সুস্পষ্ট @agent.tool টুল কলিং, নির্ভরতা ইনজেকশন এবং যেকোনো প্রদানকারীর সমর্থন।

অন্যান্য এজেন্ট ফ্রেমওয়ার্কের মতো একই সমস্যা হল টোকেন খরচ। একটি টুল সহ এজেন্ট প্রসঙ্গটিকে বৃত্তাকারে চালায়: অনুরোধ → টুল কল → ফলাফল → পুনরাবৃত্তি অনুরোধ। একটি একক কাজের জন্য কয়েক মিলিয়ন টোকেন সহজেই খরচ হয়। OpenAI ($2.50–15 প্রতি 1M) এবং Anthropic ($3–15 প্রতি 1M) এর ট্যারিফে, এমনকি একটি প্রোটোটাইপও ব্যয়বহুল হয়ে ওঠে, এবং প্রতিদিন হাজার হাজার অনুরোধ সহ একটি প্রোডাকশন - অসহনীয়।

PydanticAI OpenAIChatModel এবং OpenAIProvider ক্লাসগুলির মাধ্যমে যেকোনো OpenAI-সামঞ্জস্যপূর্ণ এন্ডপয়েন্টের সাথে নেটিভভাবে কাজ করে। এর অর্থ হল JoinGonka Gateway কয়েকটি লাইন দিয়ে সংযুক্ত হয় - পৃথক প্যাকেজ এবং অ্যাডাপ্টার ছাড়াই। ফলস্বরূপ: টাইপড এজেন্ট, OpenAI/Anthropic এর $2.50–15 এর পরিবর্তে 1M ইনপুট টোকেন প্রতি $0.0005 এর জন্য কাজ করে - শতগুণ এবং হাজারগুণ সস্তা।

দ্রুত শুরু: কোডে সংযোগ

প্রথমে একটি কী পান: gate.joingonka.ai/register এ নিবন্ধন করুন - নিবন্ধনের সময় আমরা 10M বিনামূল্যে টোকেন দিচ্ছি - এবং ড্যাশবোর্ড → API কীগুলিতে jg-xxx একটি কী তৈরি করুন।

ইনস্টলেশন:

pip install pydantic-ai
# অথবা শুধুমাত্র OpenAI-নির্ভরতা সহ একটি হালকা সংস্করণ:
# pip install "pydantic-ai-slim[openai]"

সর্বনিম্ন উদাহরণ - Gonka এর মাধ্যমে একটি এজেন্ট। PydanticAI OpenAIProvider(base_url=..., api_key=...) এর মাধ্যমে একটি কাস্টম এন্ডপয়েন্ট সেট করে, যা OpenAIChatModel এ পাস করা হয়:

from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider

model = OpenAIChatModel(
    "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    provider=OpenAIProvider(
        base_url="https://gate.joingonka.ai/v1",
        api_key="jg-আপনার-কী",
    ),
)

agent = Agent(model)

result = agent.run_sync("PoUW কি তা দুটি বাক্যে ব্যাখ্যা করুন")
print(result.output)

এটুকুই - আপনার PydanticAI এজেন্ট Gonka এর বিকেন্দ্রীভূত নেটওয়ার্কের মাধ্যমে নগণ্য খরচে কাজ করে। run_sync পদ্ধতি স্ক্রিপ্টের জন্য সুবিধাজনক; অসিঙ্ক-কোডের জন্য await agent.run(...) বিদ্যমান।

মডেল প্যারামিটার: Qwen3-235B এর প্রসঙ্গ উইন্ডো - 128K টোকেন (131072), গেটওয়ের মাধ্যমে সর্বোচ্চ উত্তরের দৈর্ঘ্য - 8192 টোকেন পর্যন্ত। আউটপুট মডেল সেটিংসের মাধ্যমে সীমাবদ্ধ করা যেতে পারে (OpenAIChatModelSettings(max_tokens=8192))। moonshotai/Kimi-K2.6 (3072 টোকেন আউটপুট পর্যন্ত) এবং MiniMaxAI/MiniMax-M2.7 (4096 পর্যন্ত)ও উপলব্ধ - কেবল OpenAIChatModel এর প্রথম আর্গুমেন্টে মডেলের নাম পরিবর্তন করুন।

PydanticAI এর বৈশিষ্ট্য: টাইপ করা আউটপুট

PydanticAI বেছে নেওয়ার প্রধান কারণ হল গঠনবদ্ধ আউটপুট। রেগুলার এক্সপ্রেশন দিয়ে উত্তরের টেক্সট পার্স করার পরিবর্তে, আপনি একটি Pydantic মডেল হিসাবে ফলাফল বর্ণনা করেন এবং এটিকে output_type প্যারামিটারে পাস করেন। ফ্রেমওয়ার্ক মডেলের টুল কলিং ব্যবহার করে যাতে এটি কঠোরভাবে স্কিমা অনুযায়ী ডেটা ফেরত দেয়, সেগুলিকে যাচাই করে এবং result.output এর মাধ্যমে একটি প্রস্তুত অবজেক্ট ফেরত দেয়।

from pydantic import BaseModel
from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider

model = OpenAIChatModel(
    "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    provider=OpenAIProvider(
        base_url="https://gate.joingonka.ai/v1",
        api_key="jg-আপনার-কী",
    ),
)


class Profile(BaseModel):
    name: str
    role: str
    skills: list[str]


agent = Agent(model, output_type=Profile)

result = agent.run_sync(
    "ডেটা এক্সট্র্যাক্ট করুন: অ্যানা - ব্যাকএন্ড ডেভেলপার, পাইথন, গো এবং পোস্টগ্রেস জানে"
)
print(result.output)
# name='আনা' role='ব্যাকএন্ড-ডেভেলপার' skills=['পাইথন', 'গো', 'পোস্টগ্রেস']
print(result.output.skills)  # ['পাইথন', 'গো', 'পোস্টগ্রেস'] — ইতিমধ্যেই list[str], টেক্সট নয়

এটি কাজ করে কারণ Qwen3-235B (এবং অন্য দুটি Gonka মডেল) নেটিভ টুল কলিং সমর্থন করে - PydanticAI একটি বৈধ JSON কাঠামো ফেরত দিতে এর উপর নির্ভর করে। আউটপুটে আপনি একটি টাইপ করা পাইথন অবজেক্ট পান, ম্যানুয়ালি পার্স করার জন্য একটি স্ট্রিং নয়। এটি ডেটা নিষ্কাশন, শ্রেণীবিভাগ, ফর্ম পূরণ এবং RAG-পাইপলাইনগুলির জন্য আদর্শ, যেখানে ফলাফল কঠোর ফর্ম্যাটে কোডের আরও এগিয়ে যেতে হবে।

খরচের তুলনা

PydanticAI হল এজেন্ট এবং পাইপলাইনগুলির জন্য একটি ফ্রেমওয়ার্ক যা অবিচ্ছিন্নভাবে কাজ করে: ডেটা নিষ্কাশন করে, টুলগুলিকে কল করে, অনুরোধের স্ট্রিমগুলি প্রক্রিয়া করে। এখানে টোকেন খরচ নির্ধারণ করে যে প্রকল্পটি একটি প্রোটোটাইপ থাকবে নাকি প্রোডাকশনে যাবে। সাধারণ লোডগুলির তুলনা করা যাক:

দৃশ্যপটটোকেনOpenAI / AnthropicJoinGonka Gonka
একটি নথি থেকে গঠন নিষ্কাশন~3K$0.008 — $0.045~$0.000002
টুল কলিং সহ এজেন্ট (এক চক্র)~15K$0.04 — $0.22~$0.00001
RAG-পাইপলাইন (প্রতিদিন 1000 অনুরোধ)~5M/দিনপ্রতিদিন $12 — $75প্রতিদিন ~$0.003
প্রোডাকশন-এজেন্ট (প্রতিদিন 100K অনুরোধ)~500M/দিনপ্রতিদিন $1,250 — $7,500প্রতিদিন ~$0.30

পার্থক্য শতগুণ এবং হাজারগুণ। একটি প্রোটোটাইপের জন্য এর অর্থ হল, 10M বিনামূল্যে টোকেন দিয়ে এজেন্টের শত শত রান করা যায়। প্রোডাকশনের জন্য, প্রতিদিন লক্ষ লক্ষ অনুরোধ প্রক্রিয়া করা হলে, প্রতি মাসে হাজার হাজার ডলার সাশ্রয় হয় - একই PydanticAI কোডে, শুধুমাত্র ভিন্ন base_url ব্যবহার করে।

একটি jg-xxx কী এবং একটি ব্যালেন্স OpenAI-ফর্ম্যাটের (/v1) এবং Anthropic-ফর্ম্যাটের (/v1/messages) উভয়ের জন্যই কাজ করে - তবে PydanticAI এর জন্য উপরে দেখানো OpenAI-সামঞ্জস্যপূর্ণ এন্ডপয়েন্টই যথেষ্ট।

টুল কলিং এবং মডেল নির্বাচন

PydanticAI-এর দ্বিতীয় প্রধান ক্ষমতা হল সরঞ্জাম। একটি ফাংশনকে @agent.tool_plain ডেকোরেটরের মাধ্যমে (প্রসঙ্গ ছাড়া) অথবা @agent.tool (RunContext এবং ডিপেনডেন্সি ইনজেকশনে অ্যাক্সেস সহ) নিবন্ধন করা যেতে পারে। মডেল নিজেই সিদ্ধান্ত নেয় কখন একটি টুল কল করতে হবে, ফলাফল গ্রহণ করে এবং আলোচনা চালিয়ে যায়:

import random
from pydantic_ai import Agent
from pydantic_ai.models.openai import OpenAIChatModel
from pydantic_ai.providers.openai import OpenAIProvider

model = OpenAIChatModel(
    "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
    provider=OpenAIProvider(
        base_url="https://gate.joingonka.ai/v1",
        api_key="jg-আপনার-কী",
    ),
)

agent = Agent(
    model,
    instructions="আপনি একজন সহকারী। প্রয়োজনে টুলস ব্যবহার করুন।",
)


@agent.tool_plain
def roll_dice() -> str:
    """ছয়-পার্শ্বযুক্ত পাশা রোল করে এবং ফলাফল ফেরত দেয়।"""
    return str(random.randint(1, 6))


@agent.tool_plain
def calculator(expression: str) -> str:
    """একটি গাণিতিক অভিব্যক্তি গণনা করে।"""
    return str(eval(expression))


result = agent.run_sync("পাশা রোল করুন এবং ফলাফল 7 দিয়ে গুণ করুন")
print(result.output)

যেহেতু Gonka এর টুল কলিং নেটিভ, তাই সরঞ্জামগুলি নির্ভরযোগ্যভাবে কল করা হয় - টেক্সট উত্তরের ভঙ্গুর পার্সিং ছাড়াই। Gonka এর মাধ্যমে পুরো চক্র (অনুরোধ → টুল কল → চূড়ান্ত উত্তর) প্রায় $0.00001 খরচ হয়, যেখানে OpenAI/Anthropic এর জন্য $0.04–0.22 খরচ হয়। এজেন্ট অ্যাপ্লিকেশনগুলির জন্য, যেখানে ব্যবহারকারীর প্রতিটি অনুরোধ 5-10 ধাপে বিভক্ত হয়, প্রোডাকশনে খরচ সাশ্রয় প্রতি মাসে হাজার হাজার ডলার পরিমাপ করা হয়।

কোন মডেলটি বেছে নেবেন: Qwen/Qwen3-235B-A22B-Instruct-2507-FP8 - ডিফল্ট, গুণমান এবং বৃহত্তম আউটপুটLimite এর সেরা ভারসাম্য (8192)। moonshotai/Kimi-K2.6 - কোডিং এবং জটিল যুক্তিতে শক্তিশালী (আউটপুট 3072 পর্যন্ত)। MiniMaxAI/MiniMax-M2.7 - দীর্ঘ সংলাপের জন্য (আউটপুট 4096 পর্যন্ত)। তিনটিই একই কী দিয়ে এখনই উপলব্ধ - শুধুমাত্র মডেলের স্ট্রিং পরিবর্তন হয়। একই ধরণের সরঞ্জাম: LangChain এর চেইন এবং RAG এর জন্য, LlamaIndex ডেটা ইনডেক্সিং এর জন্য।

PydanticAI + Gonka = পাইথনের টাইপ করা A.I. এজেন্ট যা নগণ্য খরচে কাজ করে। Pydantic_models_on structured output, নেটিভ টুল কলিং, ডিপেন্ডেন্সি ইনজেকশন — সব OpenAIChatModel + OpenAIProvider এর মাধ্যমে একটি একক base_url ব্যবহার করে। OpenAI এবং Anthropic এর $2.50–15 এর পরিবর্তে 1M টোকেন প্রতি $0.0005 থেকে শুরু হয়।

আরও জানতে চান?

অন্যান্য বিভাগগুলি অন্বেষণ করুন অথবা এখনই GNK উপার্জন শুরু করুন।

10M বিনামূল্যে টোকেন পান →