AI एजेंट · पाठ

क्रॉस-मोडल तर्क पैटर्न

इमेज में टेक्स्ट दावों का आधार-निर्धारण और बहु-स्रोत, बहु-मोडल संदर्भ का संश्लेषण।

पाठ 4, कुल 4 में से13 चरण

क्रॉस-मोडल तर्क पैटर्न, CoddyKit पर AI एजेंट का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह AI एजेंट सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। AI एजेंट पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

बहु-माध्यमीय तर्क

बहु-माध्यमीय तर्क तब होता है जब किसी एजेंट को दो या अधिक माध्यमों—पाठ, छवियों, चार्ट और तालिकाओं—से मिली ऐसी जानकारी का सामंजस्य करना हो, जो एक-दूसरे से सहमत, विरोधी या पूरक हो सकती है। उदाहरण के लिए: किसी रिपोर्ट के पाठ में कहा गया है कि राजस्व 20% बढ़ा, लेकिन संलग्न चार्ट में रेखा स्थिर दिखाई देती है।

एजेंट को तय करना होगा कि कौन-सा स्रोत सही है या विसंगति को मानव समीक्षा के लिए चिह्नित करना होगा।

पाठ-चित्र आधार-सत्यापन

पाठ-चित्र आधार-सत्यापन का अर्थ है यह जाँचना कि पाठ में किए गए दावों की दृश्य रूप से साथ दी गई छवि में पुष्टि की जा सकती है या नहीं। उदाहरण के लिए: क्या उत्पाद का विवरण उत्पाद की तस्वीर से मेल खाता है? क्या दस्तावेज़ में जिस तालिका का उल्लेख है, वह वास्तव में छवि में दिखाई देती है?

import anthropic
import base64

def ground_text_in_image(
    text_claim: str,
    image_path: str
) -> dict:
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    with open(image_path, 'rb') as f:
        b64 = base64.standard_b64encode(f.read()).decode('utf-8')

    prompt = (
        f'Text claim: "{text_claim}"\n\n'
        'Does the image above support, contradict, or partially support this claim?\n'
        'Return JSON: {"verdict": "support|contradict|partial|insufficient_evidence", '
        '"confidence": 0.0, "evidence": "..."}'
    )
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=256,
        messages=[{'role': 'user', 'content': [
            {'type': 'image', 'source': {'type': 'base64',
              'media_type': 'image/jpeg', 'data': b64}},
            {'type': 'text', 'text': prompt}
        ]}]
    )
    import json
    return json.loads(response.content[0].text)

चार्ट और पाठ के विरोधाभास का पता लगाना

वास्तविक दुनिया में एक सामान्य स्थिति यह है: किसी वित्तीय रिपोर्ट का विवरण एक बात कहता है, लेकिन दस्तावेज़ में लगा चार्ट अलग कहानी बताता है। एजेंट चार्ट के आँकड़ों को दृश्य रूप से निकालकर पाठ में दिए गए संख्यात्मक दावों से उनकी तुलना कर सकता है।

def compare_chart_to_text(
    chart_image_path: str,
    text_with_claims: str
) -> dict:
    import anthropic, base64, json
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    with open(chart_image_path, 'rb') as f:
        b64 = base64.standard_b64encode(f.read()).decode('utf-8')

    prompt = (
        'The following text makes claims about data.\n'
        f'TEXT: {text_with_claims}\n\n'
        'Compare the chart image to the text claims. '
        'List any contradictions and agreements. '
        'Return JSON: {"agreements": [str], "contradictions": [str], '
        '"verdict": "consistent|inconsistent|partial"}'
    )
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=512,
        messages=[{'role': 'user', 'content': [
            {'type': 'image', 'source': {'type': 'base64',
              'media_type': 'image/jpeg', 'data': b64}},
            {'type': 'text', 'text': prompt}
        ]}]
    )
    return json.loads(response.content[0].text)

संकेतों को मिलाने की रणनीतियाँ

जब कई माध्यमों से मिले संकेत सहमत हों, तो विश्वास-स्तर बढ़ाएँ। जब वे असहमत हों, तो विरोधाभास-समाधान रणनीति अपनाएँ: अधिक संरचित स्रोत पर भरोसा करें (संख्याओं के लिए गद्य की तुलना में चार्ट बेहतर हैं), मानव समीक्षा के लिए चिह्नित करें, या LLM से यह तर्क करने के लिए कहें कि कौन-सा स्रोत अधिक विश्वसनीय है।

SIGNAL_SOURCES = {
    'chart': 0.9,     # high trust for quantitative data
    'table': 0.85,
    'photo': 0.8,
    'prose': 0.6,     # lower trust — may be imprecise or outdated
    'caption': 0.7
}

def combine_signals(signals: list) -> dict:
    """
    signals: list of {'source': str, 'claim': str, 'supports': bool}
    Returns weighted verdict.
    """
    support_weight = 0.0
    total_weight = 0.0
    for sig in signals:
        w = SIGNAL_SOURCES.get(sig['source'], 0.5)
        total_weight += w
        if sig['supports']:
            support_weight += w

    confidence = support_weight / total_weight if total_weight > 0 else 0.0
    return {
        'confidence': round(confidence, 3),
        'verdict': 'supported' if confidence >= 0.6 else 'contested',
        'needs_review': 0.4 <= confidence < 0.6
    }

if __name__ == '__main__':
    signals = [
        {'source': 'chart', 'claim': 'Revenue grew 20%', 'supports': True},
        {'source': 'prose', 'claim': 'Revenue grew 20%', 'supports': False},
    ]
    print(combine_signals(signals))

पाठ से छवि सत्यापन कार्यप्रवाह

उत्पाद सत्यापन कार्यप्रवाह में उत्पाद का विवरण और उसकी तस्वीर लेकर जाँच करें कि पाठ में उल्लिखित प्रत्येक महत्वपूर्ण विशेषता छवि में दिखाई देती है या नहीं। मेल और असंगतियों की एक संरचित रिपोर्ट लौटाएँ।

def verify_product_description(
    description: str,
    product_image_path: str
) -> dict:
    import anthropic, base64, json
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    with open(product_image_path, 'rb') as f:
        b64 = base64.standard_b64encode(f.read()).decode('utf-8')

    prompt = (
        f'Product description:\n{description}\n\n'
        'For each attribute mentioned in the description (color, shape, material, '
        'size, features), check whether it is visible in the product photo.\n'
        'Return JSON: {"verified": [{"attribute": str, "status": str}], '
        '"unverified": [str], "overall_match": float}\n'
        'status: confirmed / contradicted / not_visible\n'
        'overall_match: 0.0-1.0'
    )
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=512,
        messages=[{'role': 'user', 'content': [
            {'type': 'image', 'source': {'type': 'base64',
              'media_type': 'image/jpeg', 'data': b64}},
            {'type': 'text', 'text': prompt}
        ]}]
    )
    return json.loads(response.content[0].text)

दस्तावेज़ और छवि का परस्पर मिलान

स्कैन किए गए दस्तावेज़ों का विश्लेषण करते समय OCR पाठ और मूल छवि दोनों मौजूद होते हैं। उनका परस्पर मिलान करें: क्या निकाला गया पाठ दृश्य रूप से मौजूद सामग्री से मेल खाता है? असंगतियाँ उन OCR त्रुटियों का संकेत दे सकती हैं जिन्हें ठीक करने की आवश्यकता है।

def crossref_ocr_with_image(
    ocr_text: str,
    document_image_path: str
) -> dict:
    import anthropic, base64, json
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    with open(document_image_path, 'rb') as f:
        b64 = base64.standard_b64encode(f.read()).decode('utf-8')

    prompt = (
        f'The OCR system produced this text from the document image:\n\n'
        f'{ocr_text}\n\n'
        'Compare the OCR text to what you actually see in the image. '
        'Identify any OCR errors, missed text, or hallucinated characters.\n'
        'Return JSON: {"ocr_errors": [{"incorrect": str, "correct": str}], '
        '"missed_sections": [str], "accuracy_estimate": float}'
    )
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=512,
        messages=[{'role': 'user', 'content': [
            {'type': 'image', 'source': {'type': 'base64',
              'media_type': 'image/jpeg', 'data': b64}},
            {'type': 'text', 'text': prompt}
        ]}]
    )
    return json.loads(response.content[0].text)

बहु-स्रोत तर्क एजेंट

बहु-स्रोत तर्क एजेंट प्रत्येक माध्यम से व्यवस्थित रूप से प्रमाण एकत्र करता है, संकेतों को मिलाता है और विश्वास-स्तर के साथ अंतिम निष्कर्ष तैयार करता है। यह बताता है कि कौन-से स्रोत उसके निष्कर्ष के समर्थन में थे और कौन-से उसके विरोध में।

def multi_source_reasoning(
    claim: str,
    evidence_sources: list  # list of {'type': 'text'|'image', 'content': str|path}
) -> dict:
    import anthropic, base64, json
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    content_blocks = [
        {'type': 'text',
         'text': f'Evaluate this claim using ALL sources below:\nClaim: "{claim}"\n'}
    ]
    for i, src in enumerate(evidence_sources):
        if src['type'] == 'text':
            content_blocks.append(
                {'type': 'text', 'text': f'Source {i+1} (text): {src["content"]}'}
            )
        elif src['type'] == 'image':
            with open(src['content'], 'rb') as f:
                b64 = base64.standard_b64encode(f.read()).decode('utf-8')
            content_blocks.append(
                {'type': 'text', 'text': f'Source {i+1} (image):'}
            )
            content_blocks.append(
                {'type': 'image', 'source': {'type': 'base64',
                  'media_type': 'image/jpeg', 'data': b64}}
            )
    content_blocks.append({'type': 'text', 'text':
        'Return JSON: {"verdict": str, "confidence": float, '
        '"supporting_sources": [int], "contradicting_sources": [int]}'
    })
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=512,
        messages=[{'role': 'user', 'content': content_blocks}]
    )
    return json.loads(response.content[0].text)

छवि से पाठ्य तथ्य तैयार करना

कभी-कभी आपके पास एक छवि होती है और आगे के पाठ-आधारित तर्क के लिए उससे संरचित तथ्य तैयार करने होते हैं। चार्ट और तालिकाओं से मात्रात्मक तथ्यों को जेसन के रूप में निकालें, ताकि पाठ में किए गए दावों के विरुद्ध उनका गणितीय सत्यापन किया जा सके।

def extract_facts_from_chart(chart_path: str) -> dict:
    import anthropic, base64, json
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    with open(chart_path, 'rb') as f:
        b64 = base64.standard_b64encode(f.read()).decode('utf-8')

    prompt = (
        'Extract all quantitative data from this chart. '
        'Return JSON with: chart_type, x_axis_label, y_axis_label, '
        'and data_points as [{label: str, value: float}].\n'
        'Also extract any trend: increasing/decreasing/stable/volatile.'
    )
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=512,
        messages=[{'role': 'user', 'content': [
            {'type': 'image', 'source': {'type': 'base64',
              'media_type': 'image/jpeg', 'data': b64}},
            {'type': 'text', 'text': prompt}
        ]}]
    )
    return json.loads(response.content[0].text)

विश्वास-सीमा आधारित मार्ग-निर्धारण

बहु-माध्यमीय तर्क के बाद विश्वास-स्तर के आधार पर परिणाम का मार्ग निर्धारित करें: उच्च विश्वास-स्तर → स्वतः स्वीकृति, मध्यम → वैकल्पिक समीक्षा के लिए चिह्नित करें, निम्न → मानव के पास भेजें। विश्वास-स्कोर चाहे जो हो, विरोधी संकेतों को कभी भी स्वतः स्वीकृत न करें।

def route_cross_modal_result(result: dict) -> str:
    confidence = result.get('confidence', 0.0)
    has_contradiction = bool(result.get('contradicting_sources'))

    if has_contradiction:
        return 'ESCALATE'
    if confidence >= 0.85:
        return 'AUTO_APPROVE'
    if confidence >= 0.6:
        return 'OPTIONAL_REVIEW'
    return 'ESCALATE'

# Example routing table:
# confidence >= 0.85, no contradiction -> AUTO_APPROVE
# confidence 0.6-0.85, no contradiction -> OPTIONAL_REVIEW
# any contradiction, or confidence < 0.6 -> ESCALATE

def handle_routing(claim: str, evidence_sources: list):
    result = multi_source_reasoning(claim, evidence_sources)
    action = route_cross_modal_result(result)
    print(f'Claim: "{claim}"')
    print(f'Verdict: {result["verdict"]} (confidence={result["confidence"]:.2f})')
    print(f'Action: {action}')
    return action, result

अपर्याप्त दृश्य प्रमाण का प्रबंधन

कभी-कभी कोई छवि इतनी कम रिज़ॉल्यूशन वाली, धुंधली या आंशिक रूप से ढकी होती है कि उससे उपयोगी प्रमाण नहीं मिल पाता। एजेंट को इसकी पहचान करनी चाहिए और मनगढ़ंत बहु-माध्यमीय निष्कर्ष देने के बजाय निष्कर्ष देने से बचना चाहिए।

def assess_image_evidence_quality(
    image_path: str,
    claim: str
) -> dict:
    import anthropic, base64, json
    client = anthropic.Anthropic(api_key='YOUR_API_KEY')
    with open(image_path, 'rb') as f:
        b64 = base64.standard_b64encode(f.read()).decode('utf-8')

    prompt = (
        f'Claim to verify: "{claim}"\n\n'
        'Assess whether this image provides sufficient evidence to evaluate the claim.\n'
        'Consider: image quality, relevance, completeness, and readability.\n'
        'Return JSON: {"sufficient": bool, "quality_issues": [str], '
        '"usable_evidence": str}'
    )
    response = client.messages.create(
        model='claude-opus-4-5', max_tokens=256,
        messages=[{'role': 'user', 'content': [
            {'type': 'image', 'source': {'type': 'base64',
              'media_type': 'image/jpeg', 'data': b64}},
            {'type': 'text', 'text': prompt}
        ]}]
    )
    return json.loads(response.content[0].text)

बहु-माध्यमीय तथ्य-जाँचकर्ता बनाना

इसे एक साथ लागू करने पर ऐसा दस्तावेज़ तथ्य-जाँचकर्ता बनाया जा सकता है जो एक रिपोर्ट (पाठ और उसमें लगी छवियाँ) लेकर पाठ में किए गए प्रत्येक मात्रात्मक दावे का सहायक चार्ट और तालिकाओं के विरुद्ध सत्यापन करता है। यह एक संरचित सत्यापन रिपोर्ट लौटाता है।

def fact_check_report(
    report_text: str,
    image_paths: list
) -> dict:
    import re
    # Extract numeric claims from text (simple regex pattern)
    claim_pattern = r'[A-Z][^.!?]*[0-9][%$][^.!?]*[.!?]'
    claims = re.findall(claim_pattern, report_text)

    results = []
    for claim in claims:
        sources = [
            {'type': 'text', 'content': report_text},
        ] + [{'type': 'image', 'content': p} for p in image_paths]

        reasoning = multi_source_reasoning(claim, sources)
        action = route_cross_modal_result(reasoning)
        results.append({
            'claim': claim,
            'verdict': reasoning['verdict'],
            'confidence': reasoning['confidence'],
            'action': action
        })

    total = len(results)
    auto_approved = sum(1 for r in results if r['action'] == 'AUTO_APPROVE')
    return {
        'total_claims': total,
        'auto_approved': auto_approved,
        'escalated': total - auto_approved,
        'details': results
    }

ज्ञान-जाँच

जब पाठ और चार्ट के संकेत एक-दूसरे का विरोध करते हैं, तो सर्वोत्तम प्रथाओं के अनुसार बहु-माध्यमीय एजेंट को क्या करना चाहिए?

पुनरावलोकन: बहु-माध्यमीय तर्क के प्रतिरूप

आपने यह पाठ पूरा कर लिया है। मुख्य बिंदु:

  • पाठ-चित्र आधार-सत्यापन: पाठ के दावों का दृश्य प्रमाण के विरुद्ध सत्यापन करें
  • संकेतों का संयोजन: भारित विश्वास (संख्याओं के लिए गद्य की तुलना में चार्ट अधिक विश्वसनीय), संरचित स्रोत असंरचित स्रोतों से बेहतर होते हैं
  • विरोधाभास का पता लगाना: हमेशा मानव के पास भेजें—विरोधाभासों का समाधान कभी भी स्वतः न करें
  • विश्वास-स्तर आधारित मार्ग-निर्धारण: स्वतः स्वीकृति (उच्च) → वैकल्पिक समीक्षा (मध्यम) → मानव के पास भेजें (निम्न या विरोधाभास)
  • अपर्याप्त प्रमाण: मनगढ़ंत बहु-माध्यमीय निष्कर्ष देने के बजाय निष्कर्ष देने से बचें

अगला पाठ्यक्रम: आईओटी और सेंसर-आधारित एजेंट—MQTT के साथ वास्तविक दुनिया के डेटा प्रवाहों का प्रसंस्करण।

शुरुआत निःशुल्क

एआई शिक्षक के साथ AI एजेंट सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
60
पाठ
239

अक्सर पूछे जाने वाले प्रश्न

क्या “क्रॉस-मोडल तर्क पैटर्न” पाठ निःशुल्क है?

हाँ—“क्रॉस-मोडल तर्क पैटर्न” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और AI एजेंट पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। AI एजेंट पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“क्रॉस-मोडल तर्क पैटर्न” में मैं क्या सीखूँगा?

इमेज में टेक्स्ट दावों का आधार-निर्धारण और बहु-स्रोत, बहु-मोडल संदर्भ का संश्लेषण। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ AI एजेंट का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या AI एजेंट शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर AI एजेंट शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“क्रॉस-मोडल तर्क पैटर्न” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस AI एजेंट पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर AI एजेंट पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Claude Vision और GPT-4V से इमेज + टेक्स्ट एजेंट
  2. ऑडियो + टेक्स्ट एजेंट कार्यप्रवाह
  3. एजेंट में वीडियो की समझ
  4. क्रॉस-मोडल तर्क पैटर्न
← AI एजेंट पर वापस जाएँ