Skip to main content
डॉक्यूमेंटेशन
लर्निंग सेंटर

विस्तृत गाइड, ट्यूटोरियल और API डॉक्यूमेंटेशन के साथ कंटेंट मॉडरेशन में महारत हासिल करें

क्विक लिंक

OCR टेक्स्ट एक्सट्रैक्शन

Discuse इमेज और दस्तावेज़ों से टेक्स्ट निकालता है, ताकि आप ऐसा कंटेंट पढ़ — और मॉडरेट — कर सकें जो वरना टेक्स्ट फ़िल्टर को दिखाई ही नहीं देता। POST /api/v2/ocr पर अधिकतम 5 इमेज या दस्तावेज़ URL भेजें और आपको पहचाना गया टेक्स्ट वापस मिलता है, और डिफ़ॉल्ट रूप से वही टेक्स्ट आपके प्रोजेक्ट की कंटेंट जाँचों से भी गुज़रता है।

मॉडरेशन के लिए OCR क्यों?

बहुत-सा दुरुपयोग इमेज के अंदर छिपा होता है: किसी मीम में जोड़ा गया अपमानजनक शब्द, स्क्रीनशॉट में फ़िशिंग लिंक, किसी फ़्लायर पर स्कैम वाला फ़ोन नंबर। सामान्य टेक्स्ट जाँच इन्हें कभी देख ही नहीं पाती। OCR पहले शब्दों को निकालता है, ताकि टेक्स्ट पर आप जो sentiment, spam, badword, और भाषा जाँच पहले से चलाते हैं, वही इमेज और दस्तावेज़ के कंटेंट पर भी लागू हो सके।

मैं टेक्स्ट कैसे निकालूँ?

एक या अधिक फ़ाइल URL भेजें। moderate का डिफ़ॉल्ट true होता है, इसलिए निकाले गए टेक्स्ट की भी जाँच होती है और आपको एक results ऑब्जेक्ट वापस मिलता है; अगर आपको सिर्फ़ कच्चा टेक्स्ट चाहिए, तो इसे false पर सेट करें।

curl -X POST https://api.discuse.com/api/v2/ocr \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
  -d '{
    "file_urls": ["https://example.com/user-meme.jpg"],
    "moderate": true
  }'

एक ही अनुरोध में अधिकतम 5 इमेज या दस्तावेज़ URL भेजे जा सकते हैं।

रिस्पॉन्स

{
  "text": "BUY FOLLOWERS NOW — dm @spammer for 50% off",
  "has_text": true,
  "num_files": 1,
  "has_violations": true,
  "results": {
    "hits": true,
    "spamfinder": {
      "label": "spam",
      "confidence": 0.94,
      "is_spam": true,
      "hit": true
    }
  },
  "usage": {
    "api_requests_used": 412,
    "api_requests_limit": 10000,
    "api_requests_remaining": 9588
  }
}

जब moderate false होता है (या कोई टेक्स्ट नहीं मिला), तो results शामिल नहीं किया जाता और has_violations false होता है — आपको बस निकाला गया text मिलता है।

अनुरोध फ़ील्ड

फ़ील्ड प्रकार नोट्स
api_key string बॉडी में वैकल्पिक; इसके बजाय आप X-API-Key भेज सकते हैं
file_urls string[] पढ़ने के लिए इमेज या दस्तावेज़ URL। कम से कम एक ज़रूरी, अधिकतम 5
moderate boolean निकाले गए टेक्स्ट को आपकी टेक्स्ट जाँचों से गुज़ारें। डिफ़ॉल्ट true है

रिस्पॉन्स फ़ील्ड

फ़ील्ड प्रकार विवरण
text string पहचाना गया टेक्स्ट, सभी फ़ाइलों से जोड़कर
has_text boolean अगर कोई भी खाली न होने वाला टेक्स्ट पहचाना गया हो, तो True
num_files number सफलतापूर्वक पढ़ी गई फ़ाइलों की संख्या
has_violations boolean अगर मॉडरेट किए गए टेक्स्ट ने किसी जाँच को ट्रिगर किया हो, तो True
results object टेक्स्ट-जाँच के परिणाम (Text Analysis देखें), केवल तब मौजूद जब मॉडरेशन चला हो और टेक्स्ट मिला हो
usage object api_requests_used, api_requests_limit, api_requests_remaining

results ऑब्जेक्ट का ढाँचा POST /api/v2/check जैसा ही होता है — spamfinder, sentiment, language, badwords, और टॉप-लेवल hits फ़्लैग। फ़ील्ड की जानकारी के लिए Text Analysis देखें।

उपयोग सीमाएँ

OCR एक पेड-प्लान सुविधा है; आप जिस भी फ़ाइल से टेक्स्ट निकालते हैं, वह आपके OCR कोटा में एक बार गिनी जाती है।

प्लान मासिक OCR एक्सट्रैक्शन ओवरेज दर
Basic उपलब्ध नहीं -
Gold 1,000 $0.0015/extraction
Platinum 2,000 $0.001275/extraction (15% छूट)
Ultimate 4,000 $0.001125/extraction (25% छूट)

अगर किसी प्रोजेक्ट की कोई सक्रिय सदस्यता नहीं है, तो OCR अनुरोध अस्वीकार कर दिए जाते हैं।

सर्वोत्तम तरीके

एक ही कॉल में मॉडरेट करें

जब आपका लक्ष्य इमेज में नीति उल्लंघन पकड़ना हो, तो moderate चालू रखें (डिफ़ॉल्ट)। इससे एक OCR कॉल टेक्स्ट भी निकालती है और उसकी जाँच भी करती है, बजाय इसके कि पहले OCR कॉल और फिर अलग से /check कॉल करनी पड़े।

async function moderateImage(fileUrl) {
  const res = await ocr([fileUrl], true);
  if (res.has_violations) {
    await flagForReview(fileUrl, res.results);
  }
  return res.text;
}

कार्रवाई से पहले has_text जाँचें

जिस इमेज में पढ़ने योग्य टेक्स्ट नहीं होता, वह has_text: false और खाली text लौटाती है। इसलिए इसके आधार पर अलग रास्ता रखें, ताकि आप "पढ़ने के लिए कुछ नहीं" को "साफ़ और पुष्टि किया गया" न मान लें।

संबंधित फ़ाइलों को बैच करें

अगर किसी सबमिशन में कई इमेज हैं, तो हर फ़ाइल के लिए अलग कॉल करने के बजाय उन्हें एक ही अनुरोध में साथ भेजें (अधिकतम 5) — कम राउंड ट्रिप, और एक कोटा-ट्रैक्ड रिस्पॉन्स।

इंटीग्रेशन उदाहरण

Node.js

async function ocr(fileUrls, moderate = true) {
  const response = await fetch('https://api.discuse.com/api/v2/ocr', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'X-API-Key': process.env.DISCUSE_API_KEY
    },
    body: JSON.stringify({ file_urls: fileUrls, moderate })
  });
  return response.json();
}

Python

import os
import requests

def ocr(file_urls, moderate=True):
    response = requests.post(
        'https://api.discuse.com/api/v2/ocr',
        headers={
            'Content-Type': 'application/json',
            'X-API-Key': os.environ['DISCUSE_API_KEY']
        },
        json={'file_urls': file_urls, 'moderate': moderate}
    )
    return response.json()

इमेज से टेक्स्ट पढ़ने के लिए तैयार हैं? Discuse के साथ शुरू करें.

Discuse टीम द्वारा लिखा गया · अंतिम अपडेट June 2026

संबंधित लेख

Text Analysis और Sentiment Detection

टेक्स्ट content में spam, toxicity, profanity का पता लगाएँ और sentiment का विश्लेषण करें

Image NSFW Detection

अनुपयुक्त images और adult content का अपने-आप पता लगाएँ और फ़िल्टर करें

Spam Detection

टेक्स्ट और messages के लिए AI-संचालित spam filtering