Claude Code का मुख्य सत्र Opus 5 पर चले, और प्रयास (effort) भी high ही रहे, यही आप चाहते हैं। लेकिन अनुवाद या ढेर सारी फ़ाइलें जाँचने जैसे काम भी उसी मॉडल से करवाना फ़िज़ूलख़र्ची लगती है। तो सवाल यह है: क्या सिर्फ़ सबएजेंट को Sonnet या Haiku पर चलाया जा सकता है?

सीधा जवाब: हाँ। सबएजेंट का मॉडल मुख्य सत्र से अलग तय होता है, और इसे बुलाते समय दिए गए मॉडल, परिभाषा फ़ाइल के model, या एनवायरनमेंट वेरिएबल, किसी से भी बदला जा सकता है। प्रयास भी हर सबएजेंट के लिए अलग सेट किया जा सकता है।

इस लेख में मैं 15 सितंबर 2026 तक के आधिकारिक दस्तावेज़ में लिखे व्यवहार को व्यवस्थित करता हूँ, और फिर सबएजेंट को सच में अलग मॉडल पर चलाकर बातचीत लॉग में जो देखा, उसके नतीजे साझा करता हूँ। मैंने एक ही अनुवाद का काम Opus 5, Sonnet 5 और Haiku 4.5 को दो-दो बार दिया, और समय, लागत और अनुवाद की गुणवत्ता की तुलना की।

सबएजेंट का मॉडल ऊपर से नीचे जाँचने पर पहली लागू शर्त से तय होता है

इनमें से कुछ भी लागू न हो, तो यह मुख्य बातचीत के मॉडल पर चलता है

1
बुलाते समय दिया गया मॉडल: Claude सबएजेंट शुरू करते समय जो model जोड़ता है
2
परिभाषा फ़ाइल का model: inherit हो तो मुख्य सत्र वाला ही
3
एनवायरनमेंट वेरिएबल CLAUDE_CODE_SUBAGENT_MODEL: जब और कहीं से तय न हुआ हो, तब का डिफ़ॉल्ट
4
मुख्य सत्र का मॉडल

स्रोत: Claude Code आधिकारिक दस्तावेज़, Create custom subagents (Choose a model)। v2.1.251 से पहले 3 नंबर सबसे ऊपर था

1. क्या संभव है: सबएजेंट को मुख्य सत्र से अलग मॉडल और अलग प्रयास पर चलाना

सबएजेंट एक अलग कॉन्टेक्स्ट वाला सहायक है, जिसे Claude Code काम का कोई हिस्सा सौंपने के लिए शुरू करता है। यह मुख्य सत्र के साथ बातचीत का इतिहास साझा नहीं करता, और काम पूरा होने पर सिर्फ़ नतीजा मुख्य सत्र को लौटाता है (एजेंट टीम से यह कैसे अलग है, इस पर Claude Code: Subagents बनाम Agent Teams में बात की है)।

सबएजेंट के बारे में आधिकारिक दस्तावेज़ कहता है कि नीचे की दो चीज़ें अलग-अलग सेट की जा सकती हैं।

मॉडल (model)

sonnet, opus, haiku, fable, पूरी मॉडल ID, inherit

पूरी मॉडल ID claude-opus-5 जैसी दिखती है। inherit का मतलब है मुख्य सत्र वाला ही मॉडल। न लिखें, तो ऊपर के क्रम से तय होता है।

प्रयास (effort)

low, medium, high, xhigh, max

न लिखें, तो मुख्य सत्र का प्रयास ही लिया जाता है। कौन-से स्तर उपलब्ध हैं, यह मॉडल पर निर्भर है, और Haiku 4.5 प्रयास को सपोर्ट नहीं करता। एनवायरनमेंट वेरिएबल CLAUDE_CODE_EFFORT_LEVEL सेट हो, तो उसे प्राथमिकता मिलती है।

यानी "मुख्य सत्र Opus 5 पर प्रयास high, अनुवादक Sonnet 5 पर प्रयास medium" जैसा संयोजन आधिकारिक व्यवहार के दायरे में सीधे बनाया जा सकता है। प्रयास का ख़ुद क्या मतलब है, इसके लिए Claude Code का प्रयास (effort) सेटिंग गाइड देखें।

स्रोत: Claude Code आधिकारिक दस्तावेज़, Create custom subagents (Supported frontmatter fields), Model configuration (प्रयास की प्राथमिकता)

2. मॉडल किस क्रम में तय होता है

शुरुआत के चित्र के अनुसार, सबएजेंट का मॉडल "बुलाते समय दिया गया मॉडल" → "परिभाषा फ़ाइल का model" → "एनवायरनमेंट वेरिएबल CLAUDE_CODE_SUBAGENT_MODEL" → "मुख्य सत्र का मॉडल" के क्रम में, पहली लागू शर्त से तय होता है। तीन बातों पर ध्यान देना ज़रूरी है।

पहली, क्रम वर्ज़न के हिसाब से बदलता है। v2.1.251 से पहले एनवायरनमेंट वेरिएबल सबसे ऊपर था, और बुलाते समय दिए गए मॉडल व परिभाषा फ़ाइल के model (inherit सहित) को भी ओवरराइड कर देता था। अगर "परिभाषा में model: sonnet लिखा, फिर भी असर नहीं दिखता", तो सबसे पहले वर्ज़न और एनवायरनमेंट वेरिएबल जाँचें।

दूसरी, सब कुछ एक ही मॉडल पर लाने के लिए एक अलग सेटिंग है। सिर्फ़ एनवायरनमेंट वेरिएबल से वे सबएजेंट नहीं बदलते जिनकी परिभाषा फ़ाइल में model लिखा है। सभी पर लागू करना हो, तो CLAUDE_CODE_SUBAGENT_MODEL के साथ CLAUDE_CODE_SUBAGENT_MODEL_FORCE को 1 करें (v2.1.257 और बाद में)।

{
  "env": {
    "CLAUDE_CODE_SUBAGENT_MODEL": "haiku",
    "CLAUDE_CODE_SUBAGENT_MODEL_FORCE": "1"
  }
}

इसे लागू करने पर बिल्ट-इन Explore और Plan समेत परिभाषा फ़ाइलों का model अनदेखा हो जाता है, और Claude बुलाते समय मॉडल भी नहीं दे पाता। दो अपवाद हैं, जो मुख्य सत्र के मॉडल पर ही रहते हैं: पूरी बातचीत साथ ले जाने वाला fork, और model: inherit वाली स्किल को सबएजेंट में चलाना।

तीसरी, sonnet और opus किस मॉडल की ओर इशारा करते हैं, यह प्रदाता पर निर्भर है। एक ही sonnet लिखने पर भी मिलने वाला मॉडल नीचे की तरह बदलता है।

प्रदाताopussonnet
Anthropic APIOpus 5Sonnet 5
Claude Platform on AWSOpus 5Sonnet 4.6
Amazon Bedrock, Google Cloud का Agent PlatformOpus 5Sonnet 4.5
Microsoft FoundryOpus 4.6Sonnet 4.5

स्रोत: Claude Code आधिकारिक दस्तावेज़, Model configuration (15 सितंबर 2026 की तालिका)। किसी ख़ास वर्ज़न पर टिकाना हो, तो उपनाम (alias) की जगह पूरी मॉडल ID लिखें

अगर संगठन की प्रबंधित सेटिंग्स में इस्तेमाल होने वाले मॉडल सीमित किए गए हैं (availableModels), तो सबएजेंट का model और एनवायरनमेंट वेरिएबल भी उसी दायरे में आते हैं।

3. सेट करने के तरीक़े (पाँच)

(1) परिभाषा फ़ाइल में लिखें (जिस भूमिका को हमेशा एक ही मॉडल पर चलाना हो)

सबसे सुविधाजनक तरीक़ा है हर भूमिका के लिए एक परिभाषा फ़ाइल बनाना। प्रोजेक्ट के .claude/agents/ में रखें तो git से साझा की जा सकती है, और अपने सभी प्रोजेक्ट में इस्तेमाल करनी हो तो ~/.claude/agents/ में रखें।

---
name: translator
description: जापानी लेखों का अंग्रेज़ी में अनुवाद करता है। अनुवाद के लिए कहा जाए तब इस्तेमाल करें
model: sonnet
effort: medium
tools: Read, Write, Grep
---
आप तकनीकी लेखों के अनुवादक हैं। HTML टैग और एट्रिब्यूट न बदलें,
सिर्फ़ दिखने वाले पाठ को स्वाभाविक अंग्रेज़ी में बदलें।

एक ही नाम की कई परिभाषाएँ हों, तो प्राथमिकता का क्रम है: संगठन की प्रबंधित सेटिंग्स, शुरू करते समय का --agents, प्रोजेक्ट, यूज़र, और प्लगइन। v2.1.198 से /agents कमांड बनाने वाली स्क्रीन नहीं खोलता, इसलिए Claude से फ़ाइल बनवाएँ या ख़ुद लिखें।

(2) बुलाते समय बताएँ (सिर्फ़ इस बार बदलना हो)

परिभाषा बनाए बिना भी, Claude सबएजेंट शुरू करते समय मॉडल जोड़ सकता है। बातचीत में "यह जाँच Haiku वाले सबएजेंट को सौंप दो" जैसा कहें, तो Claude उस कॉल में मॉडल जोड़कर सबएजेंट शुरू करता है। यह परिभाषा फ़ाइल से ऊपर प्राथमिकता पाता है। मॉडल सच में जुड़ा या नहीं, यह खंड 5 के तरीक़े से जाँचें।

(3) एनवायरनमेंट वेरिएबल से डिफ़ॉल्ट तय करें (जिनमें मॉडल नहीं लिखा, उन सबको एक साथ बदलना हो)

{
  "env": {
    "CLAUDE_CODE_SUBAGENT_MODEL": "sonnet"
  }
}

settings.json के env में लिखने पर यह उन सबएजेंट पर लागू होता है जिनका मॉडल और कहीं से तय नहीं हुआ। आधिकारिक दस्तावेज़ के अनुसार, एजेंट टीम के सदस्य और वर्कफ़्लो के एजेंट भी इसके दायरे में हैं। लेकिन सिर्फ़ इससे बिल्ट-इन Explore और Plan का मॉडल नहीं बदलता (खंड 4)।

(4) शुरू करते समय --agents से दें (सिर्फ़ उस सत्र के लिए)

claude --agents '{
  "translator": {
    "description": "Translates Japanese articles into English.",
    "prompt": "You are a technical translator. Keep all HTML tags.",
    "model": "sonnet",
    "effort": "medium"
  }
}'

यह किसी फ़ाइल में सहेजा नहीं जाता, और सिर्फ़ उसी सत्र के दौरान इस्तेमाल होता है।

(5) Claude Agent SDK में परिभाषित करें

from claude_agent_sdk import ClaudeAgentOptions, AgentDefinition

options = ClaudeAgentOptions(
    agents={
        "translator": AgentDefinition(
            description="Translates Japanese articles into English.",
            prompt="You are a technical translator. Keep all HTML tags.",
            tools=["Read", "Write"],
            model="sonnet",
            effort="medium",
        ),
    }
)

SDK के AgentDefinition में भी model के लिए उपनाम, inherit या पूरी मॉडल ID लिखी जा सकती है। न लिखें, तो ऊपर के क्रम से तय होता है। साथ ही आधिकारिक दस्तावेज़ बताता है कि Opus 5 पिछले मॉडलों की तुलना में सबएजेंट को काम ज़्यादा आसानी से बाँटता है, और एक साथ चलने वाले सबएजेंट की संख्या (डिफ़ॉल्ट 20) व ख़र्च की रक़म पर सीमा लगाने वाली सेटिंग्स की ओर इशारा करता है।

स्रोत: Claude Code आधिकारिक दस्तावेज़, Create custom subagents (रखने की जगह और प्राथमिकता, --agents, /agents में बदलाव, एनवायरनमेंट वेरिएबल), Model configuration (CLAUDE_CODE_SUBAGENT_MODEL का दायरा), Subagents in the SDK (AgentDefinition, सीमा की सेटिंग)

4. बिल्ट-इन सबएजेंट किस मॉडल पर चलते हैं

ख़ुद कुछ परिभाषित न करें, तब भी Claude Code में शुरू से कुछ सबएजेंट मौजूद हैं। उनके मॉडल इस प्रकार हैं।

नाममॉडलटिप्पणी
Exploreमुख्य सत्र का मॉडल लेता है। Claude API पर ऊपरी सीमा Opusसिर्फ़ पढ़ने के लिए। CLAUDE.md और git की स्थिति नहीं पढ़ता
Planमुख्य सत्र का मॉडल लेता हैप्लान मोड में इस्तेमाल होता है। सिर्फ़ पढ़ने के लिए। CLAUDE.md और git की स्थिति नहीं पढ़ता
general-purposeबुलाते समय मॉडल न दिया गया हो तो एनवायरनमेंट वेरिएबल का मॉडल, वह भी न हो तो मुख्य सत्र काखोजबीन और बदलाव, दोनों करता है
claude-code-guideHaikuClaude Code की सुविधाओं के बारे में सवाल पूछने पर
claudeइसका अपना कोई मॉडल नहीं, खंड 2 के क्रम से तय होता हैजब कोई और भूमिका फ़िट न हो, तब का सामान्य सहायक
statusline-setupSonnet/statusline चलाने पर

स्रोत: Claude Code आधिकारिक दस्तावेज़, Create custom subagents (Built-in subagents, 15 सितंबर 2026 तक)

v2.1.198 से Explore हमेशा Haiku पर नहीं चलता। यह मुख्य सत्र का मॉडल लेता है, और Claude API पर इसकी ऊपरी सीमा Opus है। मुख्य सत्र Fable जैसे ऊँचे मॉडल पर हो, तो भी Explore Opus पर चलता है, और मुख्य सत्र Sonnet या Haiku पर हो तो उसी मॉडल पर। इसे वापस Haiku पर लाने के लिए आधिकारिक दस्तावेज़ Explore नाम की परिभाषा फ़ाइल बनाकर उसमें model: haiku लिखने का तरीक़ा बताता है (क्योंकि उसी नाम के बिल्ट-इन सबएजेंट से आपकी अपनी परिभाषा को प्राथमिकता मिलती है)।

Explore और Plan का मॉडल एनवायरनमेंट वेरिएबल से बदलना हो, तो खंड 2 का CLAUDE_CODE_SUBAGENT_MODEL_FORCE भी सेट करना होगा।

5. माप (1): क्या सच में उसी मॉडल पर चला?

यह दस्तावेज़ के मुताबिक़ चलता है या नहीं, यह मैंने अपने माहौल (मुख्य सत्र Opus 5, प्रयास high) में जाँचा। बिल्ट-इन general-purpose को "README पढ़कर तीन पंक्तियों में सारांश दो" वाला एक ही छोटा काम तीन तरह से सौंपा: मॉडल sonnet बताकर, haiku बताकर, और बिना बताए

जाँचने के दो तरीक़े हैं। चलते समय /tasks की सूची में सबएजेंट का मॉडल दिखता है (आधिकारिक दस्तावेज़ में लिखा है)। काम ख़त्म होने के बाद, अपनी मशीन के बातचीत लॉग के subagents/ फ़ोल्डर में मौजूद agent-*.jsonl फ़ाइलों में हर जवाब का message.model देखें। लॉग कहाँ रहते हैं और उन्हें कैसे पढ़ें, इस पर Claude Code का सत्र-वार उपयोग: कैसे मापें में विस्तार से बात की है।

बुलाते समय दिया गया मॉडललॉग में दर्ज मॉडल
sonnetclaude-sonnet-5
haikuclaude-haiku-4-5-20251001
नहीं दियाclaude-opus-5 (मुख्य सत्र वाला ही)

स्रोत: मेरे माहौल में माप (15 सितंबर 2026, Windows पर डेस्कटॉप ऐप। हर सबएजेंट के सभी जवाबों में एक ही मॉडल दर्ज था)

हर सबएजेंट बताए गए मॉडल पर चला, और जिसे मॉडल नहीं बताया गया उसने मुख्य सत्र का मॉडल लिया। उसी फ़ोल्डर की agent-*.meta.json फ़ाइल में, सिर्फ़ मॉडल बताए जाने पर ही, "model": "sonnet" जैसा बताया गया मान दर्ज रहता है।

6. माप (2): सिर्फ़ शुरू होने में दसियों हज़ार टोकन

उन्हीं लॉग से एक और बात पता चली। सबएजेंट काम शुरू करने से पहले, अपने पहले ही जवाब में दसियों हज़ार टोकन पढ़ लेता है। वजह यह है कि उसका अपना सिस्टम प्रॉम्प्ट, टूल की परिभाषाएँ, CLAUDE.md वग़ैरह सबसे पहले भरे जाते हैं।

मॉडलबिना कैश के शुरू किया
(कैश राइट)
लगभग 1 मिनट बाद उसी मॉडल को शुरू किया
(रीड / राइट)
Sonnet 583,00744,846 / 38,385
Haiku 4.565,95834,008 / 32,122
Opus 577,23539,159 / 38,298

स्रोत: मेरे माहौल में माप (15 सितंबर 2026। हर सबएजेंट के पहले जवाब के टोकन। सभी राइट 5 मिनट वाले कैश में थे)

इन आँकड़ों से तीन बातें पढ़ी जा सकती हैं।

पहली, एक ही मॉडल वाले सबएजेंट आपस में साझा शुरुआती हिस्सा कैश से पढ़ते हैं। दूसरी बार शुरू करने पर Sonnet 5 में लगभग 45,000 टोकन कैश रीड (इनपुट क़ीमत का 0.1 गुना) बन गए। आधिकारिक दस्तावेज़ भी कहता है कि एक ही मॉडल और एक जैसे शुरुआती हिस्से वाले अनुरोध कैश साझा करते हैं। इसके उलट, कैश हर मॉडल का अलग होता है, और सबएजेंट मुख्य सत्र का कैश भी नहीं पढ़ता (क्योंकि शुरुआती हिस्से की सामग्री अलग होती है)।

दूसरी, सब्सक्रिप्शन पर भी सबएजेंट का कैश 5 मिनट में ख़त्म हो जाता है। आधिकारिक दस्तावेज़ के अनुसार, प्लान के दायरे में इस्तेमाल करने पर मुख्य बातचीत का कैश 1 घंटे चलता है, पर सबएजेंट का 5 मिनट। 5 मिनट से ज़्यादा रुककर अगला सबएजेंट शुरू करें, तो फिर से राइट से शुरुआत होती है। इसे 1 घंटे का करना हो, तो सेटिंग subagentPromptCacheTtl या एनवायरनमेंट वेरिएबल CLAUDE_CODE_SUBAGENT_PROMPT_CACHE_TTL को 1h करें (v2.1.242 और बाद में)। हर सबएजेंट के लिए अलग तय करना हो, तो परिभाषा फ़ाइल के experimental में cacheTtl लिखें (v2.1.248 और बाद में। सब्सक्रिप्शन में अतिरिक्त उपयोग (usage credits) इस्तेमाल होने के दौरान यहाँ लिखा 1h अनदेखा हो जाता है)। 1 घंटे वाले कैश में राइट की क़ीमत इनपुट क़ीमत की 2 गुना होती है (5 मिनट वाले में 1.25 गुना)।

तीसरी, एक ही पाठ के लिए Haiku 4.5 के टोकन कम दिखते हैं। आधिकारिक प्राइसिंग पेज के अनुसार, Claude 4.7 और उसके बाद के मॉडल नया टोकनाइज़र इस्तेमाल करते हैं, जो एक ही पाठ के लगभग 30% ज़्यादा टोकन गिनता है। Haiku 4.5, 4.7 से पहले की पीढ़ी का है, और नया टोकनाइज़र इस्तेमाल करने वाले मॉडलों में उसका नाम नहीं है। तालिका के आँकड़े सीधे तुलना करें, तो Haiku असल से हल्का दिखता है।

इन आँकड़ों से जुड़ी सावधानियाँ

  • मेरे प्रोजेक्ट का CLAUDE.md बड़ा है (लगभग 57,000 बाइट), इसलिए ये आँकड़े आम प्रोजेक्ट से ज़्यादा आते हैं। CLAUDE.md का आकार सीधे हर एक सबएजेंट के पढ़े जाने वाले हिस्से में जुड़ता है
  • परिभाषा फ़ाइल में omitClaudeMd: true लिखने पर वह सबएजेंट यूज़र, प्रोजेक्ट और लोकल CLAUDE.md नहीं पढ़ता (संगठन की प्रबंधित नीति वाली फ़ाइलें फिर भी पढ़ी जाती हैं। v2.1.271 और बाद में)। बिल्ट-इन Explore और Plan इसे पहले से ही नहीं पढ़ते
  • 🟡 शुरू होते समय कितने टोकन किस चीज़ में पढ़े जाते हैं, इसका ब्यौरा आधिकारिक रूप से प्रकाशित नहीं है। यहाँ दिए आँकड़े मेरे माहौल के कुल योग हैं

छोटे-छोटे कामों को कई सबएजेंट में बाँटने पर यह "सिर्फ़ शुरू होने की लागत" हर एक पर जुड़ती है। सस्ते मॉडल को काम देने से सिर्फ़ काम वाला हिस्सा ही नहीं, यह हिस्सा भी सस्ता होता है।

स्रोत: Claude Code आधिकारिक दस्तावेज़, How Claude Code uses prompt caching (मॉडल-वार कैश, सबएजेंट और कैश, कैश की अवधि), Claude Platform Docs, Pricing (टोकनाइज़र, कैश के गुणक), Claude Code आधिकारिक दस्तावेज़, Create custom subagents (omitClaudeMd)

7. माप (3): एक ही अनुवाद, तीन मॉडलों पर दो-दो बार

शुरुआत वाला सवाल, "सिर्फ़ अनुवाद को सस्ते मॉडल पर ले जाना", मैंने सच में आज़माया। इस साइट के एक लेख के जापानी संस्करण से एक खंड चुना (HTML में 6,265 अक्षर, जिसमें तालिका, आँकड़ों वाले कार्ड और कोड के टुकड़े थे) और टैग की संरचना बदले बिना उसे अंग्रेज़ी में अनुवाद करने का काम, एक जैसे निर्देश के साथ हर मॉडल को दो-दो बार, कुल छह बार दिया। Opus 5 और Sonnet 5 में प्रयास मुख्य सत्र से लिया गया high था (Haiku 4.5 प्रयास को सपोर्ट नहीं करता)।

मॉडललगा समय
(पहली बार / दूसरी बार)
टैग की संख्या49 आँकड़ेलागत (इनपुट और कैश का हिस्सा)
Opus 546 सेकंड / 45 सेकंडदोनों बार मूल से मेलदोनों बार सभी मौजूद$0.46 / $0.46
Sonnet 539 सेकंड / 74 सेकंडदोनों बार मूल से मेलदोनों बार सभी मौजूद$0.23 / $0.25
Haiku 4.599 सेकंड / 94 सेकंडपहली बार एक <strong> ग़ायबदोनों बार सभी मौजूद$0.10 / $0.10

स्रोत: मेरे माहौल में माप (15 सितंबर 2026। लागत बातचीत लॉग के टोकन को आधिकारिक दरों से गुणा करके निकाली गई सूची-मूल्य गणना है। आउटपुट का हिस्सा शामिल नहीं, नीचे की टिप्पणी देखें)

लागत वाले कॉलम में आउटपुट का हिस्सा इसलिए नहीं जोड़ा, क्योंकि लॉग के आउटपुट टोकन भरोसे लायक नहीं थे। लगभग 8,800 अक्षर का अनुवाद फ़ाइल में लिखने वाले एक जवाब में आउटपुट सिर्फ़ 18 टोकन दर्ज था। आउटपुट की क़ीमत प्रति 10 लाख टोकन Opus 5 के लिए $25, Sonnet 5 के लिए $10 और Haiku 4.5 के लिए $5 है, और सभी अंग्रेज़ी अनुवाद लगभग 8,500 से 8,900 अक्षर के थे।

अनुवाद की गुणवत्ता मैंने ख़ुद जापानी मूल से एक-एक वाक्य मिलाकर जाँची।

  • छह में से किसी भी बार अर्थ की ग़लती नहीं मिली। आँकड़े, तालिकाएँ और आंतरिक लिंक भी सही बने रहे। हालाँकि आँकड़ों और बुलेट पॉइंट से भरा पाठ अनुवाद के लिहाज़ से आसान श्रेणी में आता है
  • फ़र्क़ पढ़ने की सहजता और शब्दों की एकरूपता में दिखा। Haiku 4.5 ने पहली बार उत्तम पुरुष के लिए "my" और "the author's" मिला दिए, और दूसरी बार "G from 9th rises to 6th" जैसा अटपटा शब्द-क्रम लिखा। Sonnet 5 की अंग्रेज़ी स्वाभाविक थी, पर उसने "subagent" को पहली बार "Sub-agent" और दूसरी बार "Subagent" लिखा, यानी हर बार वर्तनी बदली। Opus 5 ने दोनों बार शब्दावली एक जैसी रखी
  • सबसे ज़्यादा समय सबसे सस्ते Haiku 4.5 ने लिया। Sonnet 5 के दोनों बार के समय में लगभग दोगुना फ़र्क़ रहा। बार कम हैं, इसलिए रफ़्तार के क्रम को सिर्फ़ मोटा अंदाज़ा मानें

इस तुलना से क्या पता नहीं चलता

  • यह सिर्फ़ एक खंड का दो-दो बार अनुवाद था। लंबे लेख, बहुत अलग शब्द-क्रम वाली भाषाएँ, अरबी की तरह दाएँ से बाएँ लिखी जाने वाली भाषाएँ, या तकनीकी शब्दों से भरे पाठ में फ़र्क़ बढ़ सकता है
  • "मूल की ग़लती पकड़ने की क्षमता" मैंने नहीं मापी। इस साइट पर, अनुवाद सौंपे गए Opus सबएजेंट ने जापानी मूल की तथ्यात्मक ग़लतियाँ (जैसे प्लान-वार अक्षर सीमा ग़लत लिखी होना) बताई हैं। इस तरह की पकड़ मॉडल के हिसाब से कितनी बदलती है, यह इस प्रयोग के दायरे से बाहर है

8. लागत और उपयोग सीमा पर असर

सबएजेंट का मॉडल सस्ता करने से कितना फ़ायदा होता है, यह API के इस्तेमाल-आधारित भुगतान या Pro, Max जैसे सब्सक्रिप्शन के हिसाब से अलग ढंग से सोचना पड़ता है।

API का इस्तेमाल-आधारित भुगतान: क़ीमतों का अनुपात सीधे लागू होता है

मॉडलइनपुटआउटपुट5 मिनट कैश राइटकैश रीड
Claude Opus 5$5$25$6.25$0.50
Claude Sonnet 5$2$10$2.50$0.20
Claude Haiku 4.5$1$5$1.25$0.10

स्रोत: Claude Platform Docs, Pricing (प्रति 10 लाख टोकन, 15 सितंबर 2026 तक। Sonnet 5 की शुरुआती क़ीमत ही उसकी स्थायी क़ीमत बन गई)

प्रति टोकन क़ीमत में Sonnet 5, Opus 5 का पाँच में से दो हिस्सा है, और Haiku 4.5 पाँचवाँ हिस्सा। खंड 7 के माप में इनपुट और कैश का हिस्सा Sonnet 5 में Opus 5 का लगभग आधा, और Haiku 4.5 में लगभग पाँचवाँ हिस्सा रहा। Haiku 4.5 क़ीमतों के अनुपात के क़रीब रहा, जबकि Sonnet 5 क़ीमतों के अनुपात (पाँच में से दो) से कुछ ऊँचा आया। वजह यह है कि जवाबों की संख्या और हर जवाब में पढ़ी गई मात्रा हर मॉडल में अलग थी (Sonnet 5 में 4 और 6 जवाब, Opus 5 में दोनों बार 4। Haiku 4.5 में टोकनाइज़र का अंतर भी मिला हुआ है)।

सब्सक्रिप्शन: कुछ सीमाएँ मॉडल बदलने से वापस नहीं मिलतीं

Pro और Max में सत्र की सीमा और साप्ताहिक सीमा सभी मॉडलों के लिए साझा है। इन्हें ख़त्म करने के बाद /model से मॉडल बदलने पर भी काम जारी नहीं रख सकते। इनसे अलग, "Opus की सीमा" और "Sonnet की सीमा" जैसी मॉडल-परिवार वाली सीमाएँ भी हैं, और सिर्फ़ इन तक पहुँचने पर ही उस परिवार से बाहर के मॉडल पर जाकर काम जारी रखा जा सकता है।

🟡 सबएजेंट को Sonnet या Haiku पर करने से प्लान की सीमा कितनी देर ज़्यादा चलती है, यह प्रकाशित नहीं है। API की क़ीमतों का अनुपात एक अंदाज़ा ज़रूर देता है, पर कहीं नहीं लिखा कि सीमा उसी अनुपात में घटती है। कौन-सा सबएजेंट सबसे ज़्यादा इस्तेमाल कर रहा है, यह /usage में प्लान के ब्यौरे (स्किल, सबएजेंट, प्लगइन और MCP सर्वर के हिसाब से प्रतिशत) में देखा जा सकता है।

स्रोत: Claude Code आधिकारिक दस्तावेज़, Error reference (You've hit your session limit: सभी मॉडलों के लिए साझा सीमा और मॉडल-परिवार वाली सीमा), Manage costs effectively (/usage में प्लान का ब्यौरा)

9. कौन-सा काम सस्ते मॉडल को दें

आधिकारिक दस्तावेज़ मोटे नियम के तौर पर बताता है कि ज़्यादातर कोडिंग के काम Sonnet अच्छी तरह कर लेता है और यह Opus से सस्ता है, Opus को जटिल डिज़ाइन फ़ैसलों या कई चरणों वाले तर्क के लिए बचाकर रखें, और सरल सबएजेंट कामों के लिए परिभाषा फ़ाइल में model: haiku लिखें। एजेंट टीम के सदस्यों के लिए भी Sonnet की सलाह दी गई है।

इसके आधार पर, खंड 7 के माप और इस साइट को चलाने के मेरे अनुभव से, फ़ैसले के लिए तीन कसौटियाँ।

आसानी से सस्ते मॉडल पर

ऐसे काम जिनका नतीजा मशीन से जाँचा जा सके

तय फ़ॉर्मैट में बदलना, फ़ाइलें खोजना या पढ़ना, बड़ी संख्या वाली नियमित जाँचें। खंड 7 में <strong> का ग़ायब होना भी मशीन से टैग गिनकर ही पकड़ा गया था।

सस्ता करें तो जाँच के साथ

ऐसे काम जिनमें पढ़ने की सहजता और एकरूप शब्दावली अहम हो

अनुवाद जैसे काम, जिनमें अर्थ सही होकर भी शब्दों की वर्तनी बदलती रहती है। निर्देश में शब्दावली की सूची देना, या बाद में शब्दों को एकरूप करने का चरण रखना जैसे उपाय चाहिए।

सस्ता न करना बेहतर

ऐसे काम जिनमें फ़ैसला या "कुछ गड़बड़ है" भाँपना सौंपा जाए

ऐसे काम जिनमें आप चाहते हैं कि मूल या डिज़ाइन की ग़लती पकड़ी जाए, या जिनका नतीजा मशीन से जाँचना मुश्किल हो। यह क्षमता मॉडल के हिसाब से अलग हो सकती है, और इस प्रयोग में इसे मापा नहीं जा सका।

दुविधा हो, तो सबसे भरोसेमंद तरीक़ा है अपना कोई एक रोज़ का काम सस्ते मॉडल को देना और उसके नतीजे को मौजूदा मॉडल के नतीजे के साथ रखकर तुलना करना। इसके लिए परिभाषा फ़ाइल में model की एक पंक्ति बदलना काफ़ी है, और ठीक न लगे तो तुरंत वापस कर सकते हैं। अगर आप सबएजेंट का नहीं, बल्कि मुख्य सत्र का मॉडल बाँटना चाहते हैं, यानी योजना के लिए Opus और कार्यान्वयन के लिए Sonnet, तो यह काम opusplan करता है, विवरण Claude Code का opusplan क्या है? में देखें।

FAQ

Q1. बातचीत के बीच मुख्य सत्र का /model बदलूँ, तो क्या सबएजेंट भी बदलते हैं?
जिन सबएजेंट का मॉडल बुलाते समय दिए गए मॉडल, परिभाषा फ़ाइल के model (inherit के अलावा) या एनवायरनमेंट वेरिएबल में से किसी से तय होता है, वे नहीं बदलते। जिनमें इनमें से कुछ भी नहीं है, और जिनकी परिभाषा फ़ाइल में inherit है, वे मुख्य सत्र के मॉडल के साथ चलते हैं। ध्यान रहे, मुख्य सत्र का मॉडल बदलने पर मुख्य सत्र का कैश फिर से बनता है।

Q2. मॉडल वही रखकर सिर्फ़ प्रयास कम किया जा सकता है?
हाँ। परिभाषा फ़ाइल में effort: medium जैसा लिखें, तो वह सबएजेंट जितनी देर चलता है, उतनी देर वही प्रयास लागू रहता है। लेकिन एनवायरनमेंट वेरिएबल CLAUDE_CODE_EFFORT_LEVEL सेट हो, तो उसे प्राथमिकता मिलती है।

Q3. Amazon Bedrock पर model: sonnet लिखूँ, तो कौन-सा मॉडल मिलेगा?
15 सितंबर 2026 तक के आधिकारिक दस्तावेज़ के अनुसार Sonnet 4.5। Anthropic API पर यह Sonnet 5 है, इसलिए एक ही परिभाषा फ़ाइल प्रदाता के हिसाब से अलग नतीजा देती है। वर्ज़न टिकाना हो, तो पूरी मॉडल ID लिखें।

Q4. क्या सबएजेंट का कैश 1 घंटे का करना फ़ायदेमंद है?
यह आपके इस्तेमाल पर निर्भर है। अगर एक ही तरह के सबएजेंट को 5 मिनट से ज़्यादा के अंतराल पर बार-बार शुरू करते हैं, तो हर बार का राइट कम होगा। दूसरी ओर, 1 घंटे वाले कैश में राइट की क़ीमत इनपुट क़ीमत की 2 गुना (5 मिनट वाले में 1.25 गुना) है, इसलिए अगर कम समय में एक साथ ही चलाते हैं, तो 5 मिनट वाला सस्ता पड़ता है। 1 घंटे का कैश करने की सेटिंग और उसकी शर्तें खंड 6 में दी गई हैं।

Q5. मॉडल बताया, फिर भी लगता है कि असर नहीं हो रहा।
इस क्रम में जाँचें: (1) कहीं CLAUDE_CODE_SUBAGENT_MODEL_FORCE चालू तो नहीं (इससे परिभाषा फ़ाइल की सेटिंग अनदेखी हो जाती है), (2) कहीं आप v2.1.251 से पहले के वर्ज़न पर तो नहीं और एनवायरनमेंट वेरिएबल सेट तो नहीं, (3) संगठन की प्रबंधित सेटिंग्स में वह मॉडल अनुमत है या नहीं। असल में कौन-से मॉडल पर चला, यह चलते समय /tasks में, और ख़त्म होने के बाद बातचीत लॉग के message.model में देखा जा सकता है।

स्रोत

  • Claude Code Docs — Create custom subagents (परिभाषा फ़ाइल के फ़ील्ड, मॉडल तय होने का क्रम और वर्ज़न के हिसाब से अंतर, CLAUDE_CODE_SUBAGENT_MODEL_FORCE, बिल्ट-इन सबएजेंट, रखने की जगह और प्राथमिकता, --agents, omitClaudeMd, /tasks में जाँच)
  • Claude Code Docs — Model configuration (उपनाम किस मॉडल पर जाते हैं, CLAUDE_CODE_SUBAGENT_MODEL का दायरा, प्रयास की प्राथमिकता, availableModels)
  • Claude Code Docs — How Claude Code uses prompt caching (मॉडल-वार कैश, सबएजेंट के कैश की अवधि, subagentPromptCacheTtl और एनवायरनमेंट वेरिएबल व परिभाषा फ़ाइल से इसे सेट करना)
  • Claude Code Docs — Manage costs effectively (मॉडल चुनने के मोटे नियम, एजेंट टीम के सदस्यों के लिए Sonnet की सलाह, /usage का ब्यौरा)
  • Claude Code Docs — Error reference (सभी मॉडलों के लिए साझा सीमा और मॉडल-परिवार वाली सीमा)
  • Claude Code Docs — Subagents in the SDK (AgentDefinition का model और effort, Opus 5 और सीमा की सेटिंग)
  • Claude Code Docs — Orchestrate teams of Claude Code sessions (एजेंट टीम के सदस्यों का मॉडल कैसे तय होता है)
  • Claude Platform Docs — Pricing (मॉडल-वार क़ीमतें, कैश के गुणक, टोकनाइज़र)