ज्ञानकोश अनुभाग ▾

नेविगेशन

▸ यहाँ से शुरू करें भूमिका के अनुसार

श्रेणियाँ

उपकरण 54
शब्दावली 12

उपकरण

पाइडांटिक AI + गोंका - बहुत कम लागत पर टाइप किए गए AI-एजेंट

PydanticAI — Pydantic टीम (वही वैलिडेशन लाइब्रेरी जिस पर आधा Python इकोसिस्टम टिका है) द्वारा AI-एजेंट बनाने के लिए एक Python-फ्रेमवर्क है। PydanticAI की मुख्य खूबी टाइप्ड आउटपुट (typed output) है: आप परिणाम को एक सामान्य Pydantic-मॉडल के रूप में वर्णित करते हैं, और फ्रेमवर्क यह सुनिश्चित करता है कि मॉडल ठीक उसी स्ट्रक्चर में उत्तर दे, जो वैलिडेटेड और उपयोग के लिए तैयार हो। इसके अलावा @agent.tool tool calling, डिपेंडेंसी इंजेक्शन और किसी भी प्रोवाइडर के लिए समर्थन भी शामिल है।

समस्या वही है जो सभी एजेंट फ्रेमवर्क के साथ है — टोकन की कीमत। टूल के साथ एक एजेंट संदर्भ को बार-बार चलाता है: क्वेरी → टूल कॉल → परिणाम → दोबारा क्वेरी। एक टास्क में आसानी से कई मिलियन टोकन खर्च हो जाते हैं। OpenAI ($2.50–15 प्रति 1M) और Anthropic ($3–15 प्रति 1M) की दरों पर, एक प्रोटोटाइप भी महंगा हो जाता है, और प्रति दिन हजारों अनुरोधों वाला प्रोडक्शन तो बिल्कुल भी किफायती नहीं रहता।

PydanticAI OpenAIChatModel और OpenAIProvider क्लासेज के माध्यम से किसी भी OpenAI-संगत एंडपॉइंट के साथ काम करता है। इसका मतलब है कि JoinGonka Gateway को केवल कुछ लाइनों के साथ कनेक्ट किया जा सकता है — बिना अलग पैकेज या एडेप्टर के। परिणाम: टाइप्ड एजेंट जो OpenAI/Anthropic के $2.50–15 के बजाय $0.0062/1M इनपुट टोकन पर चलते हैं — सैकड़ों और हजारों गुना सस्ता।

त्वरित शुरुआत: कोड में कनेक्शन

सबसे पहले कुंजी लें: gate.joingonka.ai/register पर रजिस्टर करें — रजिस्ट्रेशन पर हम 3M मुफ़्त टोकन देते हैं — और Dashboard → API Keys में jg-xxx कुंजी बनाएँ।

इंस्टॉलेशन:

pip install pydantic-ai
# or the slim variant with only the OpenAI dependencies:
# pip install "pydantic-ai-slim[openai]"

न्यूनतम उदाहरण — Gonka के ज़रिए एक एजेंट। PydanticAI OpenAIProvider(base_url=..., api_key=...) के ज़रिए कस्टम endpoint सेट करता है, जिसे OpenAIChatModel में पास किया जाता है:

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

model = OpenAIChatModel(
    "MiniMaxAI/MiniMax-M2.7",
    provider=OpenAIProvider(
        base_url="https://gate.joingonka.ai/v1",
        api_key="jg-your-key",
    ),
)

agent = Agent(model)

result = agent.run_sync("Explain in two sentences what PoUW is")
print(result.output)

बस इतना ही — आपका PydanticAI एजेंट विकेंद्रीकृत Gonka नेटवर्क के ज़रिए बेहद कम खर्च में चलता है। run_sync मेथड स्क्रिप्ट के लिए सुविधाजनक है; async कोड के लिए await agent.run(...) है।

मॉडल पैरामीटर: MiniMax M2.7 का कॉन्टेक्स्ट विंडो 180K टोकन (180000) है, DeepSeek V4 Flash का 380K, GLM-5.3 Flash का 390K; Gateway के ज़रिए जवाब की अधिकतम लंबाई MiniMax और GLM-5.3 Flash में 8192 टोकन तक, DeepSeek में 32768 तक। आउटपुट को मॉडल सेटिंग्स (OpenAIChatModelSettings(max_tokens=8192)) के ज़रिए सीमित किया जा सकता है। MiniMaxAI/MiniMax-M2.7, deepseek-ai/DeepSeek-V4-Flash-0731 और zai-org/GLM-5.3-Flash उपलब्ध हैं — बस OpenAIChatModel के पहले आर्ग्युमेंट में मॉडल का नाम बदलें।

पाइडांटिक AI की विशेषता: टाइप किया गया आउटपुट

PydanticAI चुनने की मुख्य वजह है — structured output। जवाब के टेक्स्ट को regex से पार्स करने के बजाय, आप नतीजे को Pydantic मॉडल के रूप में लिखते हैं और उसे output_type पैरामीटर में पास करते हैं। फ़्रेमवर्क मॉडल के tool calling का इस्तेमाल करके उसे स्कीमा के मुताबिक़ डेटा लौटाने पर मजबूर करता है, उसे वैलिडेट करता है और तैयार ऑब्जेक्ट 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(
    "MiniMaxAI/MiniMax-M2.7",
    provider=OpenAIProvider(
        base_url="https://gate.joingonka.ai/v1",
        api_key="jg-your-key",
    ),
)


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


agent = Agent(model, output_type=Profile)

result = agent.run_sync(
    "Extract the data: Anna is a backend developer who knows Python, Go and Postgres"
)
print(result.output)
# name='Anna' role='backend developer' skills=['Python', 'Go', 'Postgres']
print(result.output.skills)  # ['Python', 'Go', 'Postgres'] — already a list[str], not text

यह इसलिए काम करता है क्योंकि Gonka के तीनों मॉडल (MiniMax M2.7, DeepSeek V4 Flash और GLM-5.3 Flash) नेटिव tool calling सपोर्ट करते हैं — PydanticAI वैध JSON स्ट्रक्चर लौटाने के लिए उसी पर निर्भर करता है। आउटपुट में आपको टाइप्ड Python ऑब्जेक्ट मिलता है, न कि ऐसा स्ट्रिंग जिसे हाथ से पार्स करना पड़े। डेटा एक्सट्रैक्शन, क्लासिफिकेशन, फ़ॉर्म भरने और RAG पाइपलाइनों के लिए एकदम सही, जहाँ नतीजा सख़्त फ़ॉर्मैट में आगे कोड तक जाना चाहिए।

लागत की तुलना

PydanticAI उन एजेंट्स और पाइपलाइन्स के लिए एक फ्रेमवर्क है जो लगातार काम करते हैं: डेटा निकालना, टूल्स को कॉल करना, रिक्वेस्ट स्ट्रीम्स को प्रोसेस करना। यहाँ टोकन की लागत यह तय करती है कि प्रोजेक्ट प्रोटोटाइप बना रहेगा या production में जाएगा। आइए सामान्य वर्कलोड की तुलना करें:

परिदृश्यटोकनOpenAI / AnthropicJoinGonka Gonka
डॉक्यूमेंट से स्ट्रक्चर निकालना~3K$0.008 — $0.045~$0.000028
टूल कॉलिंग वाला एजेंट (एक चक्र)~15K$0.04 — $0.22~$0.00014
RAG-पाइपलाइन (1000 रिक्वेस्ट/दिन)~5M/दिन$12 — $75/दिन~$0.048/दिन
Production-एजेंट (100K रिक्वेस्ट/दिन)~500M/दिन$1,250 — $7,500/दिन~$4.80/दिन

अंतर सैकड़ों और हजारों गुना है। प्रोटोटाइप के लिए, इसका मतलब है कि 3M मुफ्त टोकन पहले कुछ रन के लिए पर्याप्त हैं। Production के लिए, जो दिन में लाखों रिक्वेस्ट हैंडल करता है, यह बचत महीने में हजारों डॉलर की है — उसी PydanticAI कोड के साथ, बस एक अलग base_url का उपयोग करके।

एक jg-xxx कुंजी और एक बैलेंस OpenAI फॉर्मेट (/v1) और Anthropic फॉर्मेट (/v1/messages) दोनों के लिए काम करते हैं — लेकिन PydanticAI के लिए ऊपर दिखाया गया OpenAI-कम्पैटिबल endpoint ही काफी है।

टूल कॉलिंग और मॉडल चयन

PydanticAI की दूसरी अहम क्षमता है — टूल्स। किसी फ़ंक्शन को @agent.tool_plain डेकोरेटर (बिना कॉन्टेक्स्ट) या @agent.tool (जिसमें RunContext और dependency injection तक पहुँच होती है) से रजिस्टर किया जा सकता है। मॉडल ख़ुद तय करता है कि टूल कब कॉल करना है, नतीजा पाता है और अपनी सोच आगे बढ़ाता है:

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

model = OpenAIChatModel(
    "MiniMaxAI/MiniMax-M2.7",
    provider=OpenAIProvider(
        base_url="https://gate.joingonka.ai/v1",
        api_key="jg-your-key",
    ),
)

agent = Agent(
    model,
    instructions="You are an assistant. Use the tools when needed.",
)


@agent.tool_plain
def roll_dice() -> str:
    """Rolls a six-sided die and returns the result."""
    return str(random.randint(1, 6))


@agent.tool_plain
def calculator(expression: str) -> str:
    """Evaluates a math expression."""
    return str(eval(expression))


result = agent.run_sync("Roll the die and multiply the result by 7")
print(result.output)

चूँकि Gonka में tool calling नेटिव है, टूल्स भरोसेमंद तरीक़े से कॉल होते हैं — टेक्स्ट जवाबों की नाज़ुक पार्सिंग के बिना। पूरा चक्र (क्वेरी → tool कॉल → अंतिम जवाब) Gonka के ज़रिए लगभग $0.00007 का पड़ता है, जबकि OpenAI/Anthropic पर यह $0.04–0.22 है।

कौन सा मॉडल चुनें: MiniMaxAI/MiniMax-M2.7 — लंबी बातचीत और संतुलित कामों के लिए, आउटपुट 8192 तक। deepseek-ai/DeepSeek-V4-Flash-0731 — नेटवर्क के सबसे लंबे कॉन्टेक्स्ट में से एक (380K) और बड़े प्रॉम्प्ट सस्ते, आउटपुट 32768 तक। zai-org/GLM-5.3-Flash — जटिल सोच-विचार के लिए reasoning मॉडल और नेटवर्क का सबसे लंबा कॉन्टेक्स्ट (390K), आउटपुट 8192 तक; सोच-विचार max_tokens का हिस्सा खर्च करता है, इसे पर्याप्त रखें (600 से)। तीनों अभी एक ही कुंजी से उपलब्ध हैं — बस मॉडल की लाइन बदलनी है। इसी तरह के टूल्स: चेन और RAG के लिए LangChain, डेटा इंडेक्सिंग के लिए LlamaIndex।

PydanticAI + Gonka = बेहद कम कीमत में Python पर टाइप्ड AI-एजेंट। Pydantic-मॉडल पर स्ट्रक्चर्ड आउटपुट, नेटिव tool calling, डिपेंडेंसी इंजेक्शन — सब कुछ OpenAIChatModel + OpenAIProvider के माध्यम से एक बेस URL के साथ। लागत — OpenAI और Anthropic के $2.50–15 के बजाय $0.0062/1M टोकन से शुरू।

अधिक जानना चाहते हैं?

अन्य अनुभागों का अन्वेषण करें या अभी GNK कमाना शुरू करें।

मुफ्त टोकन प्राप्त करें →