एक दोस्त ने काम पर मुझसे एक मामूली सवाल पूछा और मैंने एक एजेंट को अपने हाल के चैट और डॉक्स रिसर्च करने के लिए कहा। उसने सही जवाब तो ढूंढ लिया, लेकिन इसकी कीमत मुझे $38!!! पड़ी। यह बहुत खराब ROI (निवेश पर प्रतिफल) था। हाँ, मेरा समय मूल्यवान है, लेकिन मैं वास्तव में इतना समय नहीं लगाता और इस कार्य के लिए महंगी प्लानिंग क्षमताओं की जरूरत नहीं थी।
हम बेहतर कर सकते हैं।
Google Cloud का Gemini Enterprise Agent Platform Model Garden प्रदान करता है, जिसमें Google, Anthropic, और यहाँ तक कि xAI सहित कई शीर्ष मॉडलों तक सुविधाजनक API एक्सेस उपलब्ध है। वास्तव में, Huggingface पर मौजूद हर मॉडल को आप अपने दम पर डिप्लॉय कर सकते हैं, लेकिन इस लेख में हम Anthropic के नए Claude Fable 5.1 और Google के नए Gemini 3.8 Flash पर ध्यान केंद्रित करेंगे। डेवलपर्स अब दो अलग-अलग आकार वाले फ्रंटियर मॉडलों को बिल्कुल समान एंटरप्राइज़ API सतह के पीछे बैठा पाते हैं।
Fable 5.1 Mythos-श्रेणी की स्वतंत्र प्लानिंग, 1 मिलियन टोकन का कॉन्टेक्स्ट विंडो, और गहरी बहु-चरणीय जांच लाता है। Gemini 3.8 Flash फ्लैश अर्थव्यवस्था ($0.75 प्रति मिलियन इनपुट टोकन, $3.75 प्रति मिलियन आउटपुट टोकन) पर लगभग फ्रंटियर तर्क और अविश्वसनीय टोकन गति लाता है, जिसमें ट्यूनेबल थिंकिंग कंट्रोल्स भी शामिल हैं।
शायद किसी एक को चुनकर और सब कुछ उसके माध्यम से भेजना आसान लगे। यह एक गलती है।
यदि आप नियमित डेवलपर कार्यों को गहरे प्लैनर के माध्यम से चलाते हैं, तो आप git diffs को पार्स करने के लिए फ्रंटियर टोकन दरों का भुगतान कर रहे होते हैं। यदि आप किसी तेज मॉडल को बिना औपचारिक योजना के अपरिवर्तनीय डेटाबेस माइग्रेशन संभालने के लिए मजबूर करते हैं, तो वह बिना रुके आगे बढ़ जाएगा और आपके कॉफी खत्म होने से पहले ही स्टेट तोड़ देगा।
हम बहुत सरल तरीके से "टोकनोमिक्स" में भारी सुधार कर सकते हैं, बस 2 मॉडलों का उपयोग करके और कार्यों को रूट करके।

एलन ब्लौंट द्वारा (@zeroasterisk
आपको वहां तक पहुंचाने के लिए पूरी वॉकथ्रू यहाँ दी गई है:
- दोनों मॉडलों को एक एकीकृत गवर्नेंस प्लेन के पीछे कॉन्फ़िगर करें।
- डिफ़ॉल्ट चुनने से पहले नियमित कार्यों का बेंचमार्क करें।
- तेज मॉडल को अपनी फ्रंटलाइन समन्वयक के रूप में उपयोग करें और जब आपको अधिक शक्ति की आवश्यकता हो या जब तेज मॉडल को एस्केलेट करना हो, तब गहरे प्लैनर का उपयोग करें।
- Task ROI और अपने टोकनों के मूल्य (केवल लागत नहीं) के बारे में एक मानसिक मॉडल बनाएं।
1. दोनों मॉडलों को एक एकीकृत गवर्नेंस प्लेन के पीछे कॉन्फ़िगर करें
अपने LLM इन्फरेंस प्लेटफॉर्म को चुनने के लिए कई डिजाइन विकल्पों पर विचार करने की आवश्यकता होती है। लागत, क्षमता, सुरक्षा, मॉडल का चुनाव, सर्विंग फीचर्स, डेवलपर घर्षण, और भी अधिक सुरक्षा (API कुंजियाँ जोखिमपूर्ण होती हैं)। Gemini Enterprise Agent Platform (पूर्व में Vertex AI) एक व्यापक विकल्प है जिसमें अनूठी क्षमताएं हैं, और क्योंकि यह दोनों Gemini और Anthropic मॉडलों को प्रबंधित APIs के रूप में प्रकट करता है, एक ही सुरक्षित प्रमाणीकरण दोनों वर्कलोड्स को कवर करता है।
लेकिन ईमानदार रहें, कुछ यात्राएं उतनी आसान नहीं हैं जितनी मैं चाहता हूं। मैं मजाक में कहता हूं कि "असंभव चीजें आसान हैं, लेकिन आसान चीजें कठिन हैं।" इसी कारण से मैं यह पोस्ट लिख रहा हूं।
मॉडलों के साथ काम करने से पहले, gcloud में लॉगिन करें, विभिन्नताओं के लिए docs पढ़ें।
1gcloud auth application-default login
Claude Fable 5.1 तक पहुँच पाने के लिए, आपको API को सक्षम करना होगा और फिर Claude Fable 5.1 को सक्षम करें और अपने उपयोग के मामले के बारे में एक बहुत ही छोटा फॉर्म भरें। लेकिन आप अभी काम खत्म नहीं किया है।
अब Fable Google Cloud के Advanced AI Safety Addendum के अंतर्गत आता है। aiplatform.googleapis.com को एक भी प्रॉम्प्ट भेजने से पहले, आपको स्पष्ट रूप से प्रोजेक्ट स्तर पर prompt-response sharing को कॉन्फ़िगर करना होगा और publisher terms स्वीकार करने होंगे।
यहाँ वैश्विक एंडपॉइंट के लिए सटीक कार्यशील निर्देश दिए गए हैं, विभिन्नताओं के लिए docs पढ़ें।
सबसे पहले, आइए कुछ वेरिएबल्स सेट करें जो हमारी मदद करेंगे। ध्यान दें कि URL path में मॉडल का नाम hyphens के साथ claude-fable-5-1 है, dots के साथ नहीं, और सुनिश्चित करें कि आप अपना project ID और location दर्ज करें, फिर संभवतः अपने region के अनुसार endpoint बदलें:
1export PROJECT_ID="YOUR_PROJECT_ID"2export LOCATION="global"3export MODEL="claude-fable-5-1"45# Global endpoint: aiplatform.googleapis.com (recommended)6# Multi-Regional endpoints: aiplatform.eu.rep.googleapis.com7# Regional endpoints: us-central1-aiplatform.googleapis.com8export ENDPOINT="https://aiplatform.googleapis.com"
अगला, setPublisherModelConfig API को कॉल करें जिसमें dataSharingEnabledProvider को ANTHROPIC पर सेट किया गया हो - ध्यान दें कि यह सभी कैप्स में है:
1curl -X POST \2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \3 -H "Content-Type: application/json; charset=utf-8" \4 -d '{ "publisherModelConfig": { "dataSharingEnabledProvider": "ANTHROPIC" } }' \5"${ENDPOINT}/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/anthropic/models/${MODEL}:setPublisherModelConfig"
प्रारंभिक कॉल एक पूर्ण ऑपरेशन ऑब्जेक्ट लौटाता है जो पुष्टि करता है कि डेटा शेयरिंग सक्रिय है:
1{2 "name": "projects/YOUR_PROJECT_NUMBER/locations/global/operations/1234567",3 "metadata": {4 "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.SetPublisherModelConfigOperationMetadata",5 "genericMetadata": {6 "createTime": "...",7 "updateTime": "..."8 }9 },10 "done": true,11 "response": {12 "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.PublisherModelConfig",13 "loggingConfig": {},14 "dataSharingEnabledProvider": "ANTHROPIC"15 }16}
यदि आपने पहले ही यह कर लिया है, तो आपको HTTP 409 त्रुटि मिलेगी कि यह सेटिंग पहले से मौजूद है:
1409 ALREADY_EXISTS: The same PublisherModelConfig already exists.
यह 409 कोई समस्या नहीं है।
मॉडल तक अपनी पहुँच का परीक्षण करें, और आपको एक प्रतिक्रिया मिलनी चाहिए:
1curl -X POST \2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \3 -H "Content-Type: application/json; charset=utf-8" \4 -d '{"anthropic_version": "vertex-2023-10-16","messages": [{"role": "user", "content": "Hello world."}], "max_tokens": 1024, "stream": true}' \5"${ENDPOINT}/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/anthropic/models/${MODEL}:streamRawPredict"
यदि आपने इसे सही ढंग से नहीं किया है, तो आपको HTTP 403 त्रुटि मिलेगी जो इस प्रकार दिखती है:
1403 PERMISSION_DENIED: Access to this model requires data sharing to be enabled for publisher 'anthropic'. Please set `PublisherModelConfig.data_sharing_enabled_provider`2to 'anthropic' via the setPublisherModelConfig API to use this model.
Gemini 3.8 Flash तक पहुँच पाने के लिए, सुनिश्चित करें कि आप इसे model card पर सक्षम देखते हैं और यह सीधे काम करना चाहिए:
1curl -X POST \2 -H "Authorization: Bearer $(gcloud auth print-access-token)" \3 -H "Content-Type: application/json; charset=utf-8" \4 -d '{"contents": [{"role": "user", "parts": [{"text": "Hello world"}]}],"generationConfig": {"thinkingConfig": {"thinkingLevel": "LOW"}}}' \5"${ENDPOINT}/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/publishers/google/models/gemini-3.8-flash:streamGenerateContent"
… उफ़। हमने कर दिखाया 🎉!
अधिक quota की जरूरत है? आप किसी भी मॉडल के लिए quotas प्रबंधित कर सकते हैं और कुछ मॉडलों के लिए provisioned throughput के लिए भुगतान कर सकते हैं।
2. Benchmarks पर भरोसा न करें, अपने खुद के चलाएं
यदि आप पाँच इंजीनियरों से पूछें कि एजेंट सेटअप के लिए किस मॉडल का उपयोग करना है, तो आपको Twitter vibes और synthetic leaderboards पर आधारित पाँच से अधिक विरोधाभासी राय मिलेंगी।
सार्वजनिक benchmarks एक शानदार संसाधन प्रदान करते हैं, लेकिन वे अलग-थलग prompts या बढ़ती हुई tasks को vacuum में टेस्ट करते हैं। उत्पादन उपयोग के मामले, या आपके स्थानीय agentic SDLC agents कभी भी सार्वजनिक benchmarks के साथ पूर्ण मेल नहीं खाते। आज आपका काम किसी भी benchmark से अलग आकार का होता है।
तो आप अपने खुद के benchmarks बना सकते हैं (Agent Ops and Evals FTW!) और इसे बड़े पैमाने पर स्वचालित कर सकते हैं, या आप बस अपने सरल कार्यों को side-by-side कर सकते हैं। जब तक आप अपने कार्य में files नहीं बदलते, आप ठीक रहेंगे और लगभग बिना किसी प्रयास के आपको कार्यों का अनुभव हो जाएगा।
यहाँ promptfoo का उपयोग करके opencode को प्रत्येक मॉडल के साथ समान 2 कार्य करने के लिए चलाने का एक उदाहरण दिया गया है। इसके काम करने के लिए आपको task description बदलनी होगी और अपना environment सेट करना होगा, लेकिन यह बहुत कठिन नहीं होना चाहिए।

GIF
1# opencode.json2{3 "$schema": "https://opencode.ai/config.json",4 "provider": {5 "google-vertex": {6 "options": { "project": "alanblount-demo", "location": "global" },7 "models": {8 "gemini-3.8-flash": { "id": "gemini-3.8-flash", "name": "Gemini 3.8 Flash" }9 }10 },11 "google-vertex-anthropic": {12 "options": { "project": "alanblount-demo", "location": "global" },13 "models": {14 "claude-fable-5-1": { "id": "claude-fable-5-1", "name": "Claude Fable 5.1" }15 }16 }17 },18...
Promptfoo को केवल single prompts और models की तुलना के लिए नहीं, बल्कि opencode agentic task executions की तुलना के लिए कॉन्फ़िगर करें।
1# promptfooconfig.yaml2description: "Benchmarking OpenCode Agent Harness: Gemini 3.8 Flash vs. Claude Fable 5.1"34prompts:5 - "Summarize git branch status in one sentence."6 - "Design a zero-downtime database migration strategy from Postgres to Spanner."78providers:9 - id: "exec:opencode run --auto -m google-vertex/gemini-3.8-flash"10 label: "Gemini 3.8 Flash (OpenCode Agent)"11 - id: "exec:opencode run --auto -m google-vertex-anthropic/claude-fable-5-1"12 label: "Claude Fable 5.1 (OpenCode Agent)"1314defaultTest:15 options:16 timeoutMs: 60000
Promptfoo का उपयोग करके अपना स्वयं का side-by-side comparison चलाएं:
promptfoo eval -c promptfooconfig.yaml --no-cache
यहाँ एक cleanroom dev container में इस evaluation को चलाने के मेरे परिणाम दिए गए हैं:

PR branch की जांच करते समय, Claude Fable 5.1 ने meta-reflection के कई turns किए, उन tree hashes को दोबारा inspect किया जो बदले नहीं थे। इसमें लगभग 6 seconds लगे और इसकी लागत 23 गुना अधिक थी। Gemini 3.8 Flash ने intent को तुरंत पहचान लिया, git tools को fire किया, और 1.1 seconds में एक दसवें सेंट से भी कम कीमत में जवाब दिया।
जटिल database migration पर, चित्र बदल गया। Gemini 3.8 Flash ने 3 seconds में एक ठोस, साफ linear sequence उत्पन्न की। लेकिन Fable 5.1 ने 12 seconds में एक पूर्ण, औपचारिक directed acyclic graph (DAG) बनाने में बिताए। इसने dual writes में clock skew risks की पहचान की, idempotency key requirements उत्पन्न की, और एक reversible rollback gate को परिभाषित किया।
यह केवल एक illustrative उदाहरण है, आपको अपने खुद के कार्यों के साथ तुलना करनी चाहिए।
3. दिन-प्रतिदिन के उपयोग और उत्पादन में व्यावहारिक उपयोग
चाहे आप off-the-shelf coding tools का उपयोग करें या custom agent services बनाएं, जीतने वाला pattern asymmetric coordination है: frontline execution के लिए सस्ता speed, architectural checkpoints के लिए जानबूझकर depth के साथ जोड़ा गया। कठिन समस्याओं या planning work पर महंगे tokens खर्च करें, लेकिन सरल कार्यों के लिए सस्ते tokens को default रखें।
Coding Agent Harnesses (OpenCode, Aider, आदि)
किसी एक मॉडल को अपने universal default के रूप में मजबूर न करें। विशिष्ट मॉडलों से mapped specialized subagents को कॉन्फ़िगर करें। समान unified provider का उपयोग करने से सुरक्षा और लागत लाभ आते हैं। अलग-अलग model families का उपयोग करने से उन्हें एक दूसरे की जांच करने में लाभ हो सकता है।
Deep thinker agent का उपयोग इस समस्या के root cause की पहचान करने और समाधान की योजना बनाने के लिए करें, और फिर worker agent का उपयोग प्रत्येक कार्य को संभालने और status रिपोर्ट करने के लिए करें। Deep planner उनके काम की जांच करता है और या तो सफलता की पुष्टि करता है या पुनः नियुक्त करता है।
1# opencode.json2{3 "$schema": "https://opencode.ai/config.json",4 "model": "google-vertex/gemini-flash-latest",5 "agent": {6 "plan": {7 "model": "google-vertex/gemini-flash-latest"8 },9 "build": {10 "model": "google-vertex/gemini-flash-latest"11 },12 "worker": {13 "model": "google-vertex/gemini-3.8-flash",14 "mode": "primary",15 "description": "General worker agent using gemini-3.8-flash"16 },17 "deep-thinker": {18 "model": "google-vertex-anthropic/claude-fable-5-1@default",19 "mode": "primary",20 "description": "Deep thinking agent using Claude Fable 5.1"21 }22 },23...
Custom Agents "as a Service" (Google ADK, LangGraph, custom code, आदि)
जब आप अपने खुद के agent harnesses और अपने खुद के agent services बनाते हैं, तो आपके पास पूर्ण architectural freedom होती है
- मॉडल के लिए harness को reshape करें: Gemini 3.8 Flash को strict JSON schemas के साथ 3 से 5 focused tools (read_file, write_file, run_tests) दें। Fast models focused execution में उत्कृष्ट होते हैं, लेकिन 50-tool catalog parameter confusion और context waste का कारण बनता है। Claude Fable 5.1 को architecture docs, schemas, और guidelines दें, लेकिन direct file write permissions को हटा दें।
- Evals में Ground करें: अनुमान न लगाएं कि कौन सा मॉडल किस node के लिए fit होता है। अपने repo tasks पर deterministic assertion checks के साथ automated evaluation suites चलाएं ताकि यह पता चल सके कि कहाँ एक smaller model 10% cost पर 95% quality प्रदान करता है। यह कहना आसान है लेकिन करना कठिन है, यह जानना कठिन है कि आप किन scenarios का मूल्यांकन करना चाहते हैं। अधिक जानकारी के लिए हमारे Kaggle 5 day courses (agents, videcoding) देखें।
- "Ask for Help" Escalation Pattern का उपयोग करें: प्रत्येक incoming request को fast worker पर शुरू करें। Worker को एक explicit tool दें: ask_for_help(reason, failed_attempts, context)। Worker 85% से 90% requests को सीधे संभालता है। यह केवल ambiguity, irreversible actions, या दो लगातार tool failures पर escalate करता है।
Automated "Smart" Model Routers पर Reality Check
Smart routers predictive ML (ad tech, fraud detection) में लंबा इतिहास रखते हैं। Multi-armed bandits और cost-quality routers mature हैं क्योंकि features tabular होते हैं, inputs bounded होते हैं, और feedback (clicks, chargebacks) तत्काल होता है और लंबे time horizon पर मापा जा सकता है।
Generative AI में, multi-turn agents एक अलग कहानी है। Dynamic routers तीन production realities के साथ संघर्ष कर सकते हैं:
- Single turn context में task के बारे में choose करने के लिए पर्याप्त signal नहीं हो सकता
- Success metrics features पर स्पष्ट रूप से extrapolate नहीं किए जाते, इसलिए router तेजी से "learn" नहीं कर सकता
- False choices दूसरे path पर re-run हो जाते हैं, जिससे किसी भी potential savings को खा जाता है और latency जुड़ जाती है
Verdict: इसे boring रखें। अपने agents को explicitly compose करें और task boundary के आधार पर route करें। स्पष्ट roles परिभाषित करें, और concrete code assertions या human intent को handoffs को नियंत्रित करने दें।
4. Token ROI Equation: आप वास्तव में किसके लिए भुगतान कर रहे हैं?
Raw pricing sheets ($/1M tokens) production value का अच्छा map नहीं हैं। Costs की गणना करना समीकरण का केवल एक हिस्सा है। आपको एक ऐसा calculation देना असंभव है जो हमेशा काम करे, coding, product, manufacturing और हर अन्य job-to-be-done में।
एक starting point यह हो सकता है कि आप उस business value के बारे में सोचें जिसे आप प्राप्त कर रहे हैं।
- बचाए गए human time की लागत, employees द्वारा अधिक काम पूरा करना, और toil और automated tasks पर कम समय बिताना।
- Production में features को तेजी से ship करने का मूल्य, जबकि उन features के कारण customer satisfaction और retention में सुधार हो रहा है।
- Improved safeguards और engineering practices के कारण mitigated errors और avoided production outages।
Token cost को घटाएं, और अपने team को upskill करने की लागत को build और manage their agents के लिए, और आपके पास एक rough ROI calculation है।

आप कम और सस्ते tokens का उपयोग करके इन calculations को प्रभावित कर सकते हैं, लेकिन आप शायद सबसे ज्यादा प्रभावित करेंगे अधिक काम को तेजी से पूरा करके। High leverage tasks चुनें। ऐसे tasks चुनें जिनसे saved overhead या increased revenue हो, जिन्हें verify किया जा सके, और जो automate करने के योग्य हों। और जैसे ही आप उन tasks को decompose करते हैं, शायद आप super deeply think और plan करना चाहते हैं और अधिक भुगतान करने और इंतजार करने को तैयार हैं, या शायद आप तेजी से और reliably execute करना चाहते हैं। आपको दोनों की जरूरत होगी।
Tokenomics अभी एक hot topic है, और costs को कम करने और value को maximize करने के लिए कई और विकल्प हैं। इस लेख का मुख्य बिंदु यह है कि 2 मॉडलों पर अलग-अलग profiles वाले कुछ अलग agents सेटअप करना और खुद tasks को route करना वास्तव में आसान है। यह शुरू करने के लिए सबसे आसान जगह है।
यदि आपको यह breakdown उपयोगी लगा, तो agent sandboxes के बारे में AI engineer को जानने चाहिए वाली 5 बातों पर हमारा पिछला piece check out करें। Builder trenches से और deep dives के लिए @GoogleCloudTech और @zeroasterisk को follow करें।





