> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/workflows/hi/blocks/blocks/run-a-model/glmocr.md).

# GLM-OCR

GLM-OCR का उपयोग करके छवियों में पाठ पहचानें, जो Zhipu AI का एक विज़न भाषा मॉडल है और ऑप्टिकल कैरेक्टर रिकग्निशन के लिए विशेषीकृत है.

GLM-OCR तीन अंतर्निर्मित पहचान मोडों का समर्थन करता है:

* **पाठ पहचान** - सीरियल नंबर, लेबल, दृश्य पाठ, और दस्तावेज़ों के लिए सामान्य-उद्देश्य पाठ पहचान.
* **सूत्र पहचान** - गणितीय सूत्रों और समीकरणों को पहचानता है.
* **तालिका पहचान** - तालिका संरचनाओं और सामग्री को पहचानता है.

आप यह भी चुन सकते हैं **कस्टम प्रॉम्प्ट** अपने विशेषीकृत पहचान कार्यों के लिए अपना स्वयं का प्रॉम्प्ट प्रदान करने के लिए, या **संरचित आउटपुट** छवि से मानों को एक उपयोगकर्ता-परिभाषित स्कीमा वाले JSON दस्तावेज़ में निकालने के लिए (कुंजियों को वर्कफ़्लो आउटपुट के रूप में मूर्त रूप देने हेतु JSON Parser ब्लॉक के साथ जोड़ें).

यह ब्लॉक OCR चलाने से पहले रुचि के क्षेत्रों को अलग करने के लिए डिटेक्शन मॉडल और DynamicCropBlock के साथ अच्छी तरह मेल खाता है। उदाहरण के लिए, लेबल या पाठ क्षेत्रों को खोजने के लिए किसी ऑब्जेक्ट डिटेक्शन मॉडल का उपयोग करें, उन्हें क्रॉप करें, फिर उन क्रॉप्स को GLM-OCR को पास करें.

नोट: GLM-OCR को इन्फ़रेंस के लिए GPU की आवश्यकता होती है.

### प्रकार पहचानकर्ता

स्टेप में निम्नलिखित पहचानकर्ता का उपयोग करें `"type"` फ़ील्ड: `roboflow_core/glm_ocr@v1` अपने वर्कफ़्लो में ब्लॉक को एक स्टेप के रूप में जोड़ने के लिए।

### गुण

| **नाम**            | **प्रकार**       | **विवरण**                                                                                                                                                                                  | संदर्भ |
| ------------------ | ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------ |
| `name`             | `str`            | इस स्टेप के लिए एक विशिष्ट पहचानकर्ता दर्ज करें..                                                                                                                                          | ❌      |
| `task_type`        | `str`            | किया जाने वाला पहचान कार्य। यह GLM-OCR को भेजे जाने वाले प्रॉम्प्ट को निर्धारित करता है। एक चयनकर्ता (जैसे $inputs.task\_type) स्वीकार करता है ताकि मोड को गतिशील रूप से सेट किया जा सके.. | ✅      |
| `प्रॉम्प्ट`        | `str`            | GLM-OCR के लिए कस्टम पाठ प्रॉम्प्ट। केवल तब उपयोग किया जाता है जब task\_type 'custom' हो..                                                                                                 | ✅      |
| `output_structure` | `Dict[str, str]` | अपेक्षित JSON प्रतिक्रिया की संरचना का वर्णन करने वाला शब्दकोश। कुंजियाँ JSON फ़ील्ड नाम हैं; मान बताते हैं कि मॉडल प्रत्येक फ़ील्ड में क्या रखे..                                         | ❌      |
| `max_new_tokens`   | `int`            | उत्पन्न किए जाने वाले अधिकतम टोकन की संख्या। यदि सेट नहीं है, तो मॉडल का डिफ़ॉल्ट उपयोग किया जाएगा..                                                                                       | ❌      |
| `मॉडल संस्करण`     | `str`            | अनुमान के लिए उपयोग किया जाने वाला GLM-OCR मॉडल..                                                                                                                                          | ✅      |

यह **संदर्भ** स्तंभ यह इंगित करता है कि संपत्ति को वर्कफ़्लो रनटाइम में उपलब्ध गतिशील मानों के साथ पैरामीटराइज़ किया जा सकता है `वर्कफ़्लो` रनटाइम। देखें *बाइंडिंग्स* अधिक जानकारी के लिए।

### रनटाइम संगतता

`कठिन` - रनटाइम `self_hosted_cpu`; निष्पादन `स्थानीय` : एक GPU की आवश्यकता है; run\_locally() एक ऐसा मॉडल लोड करता है जिसे CUDA की आवश्यकता होती है।

### इनपुट और आउटपुट बाइंडिंग्स

उपलब्ध कनेक्शन उसके बाइंडिंग प्रकारों पर निर्भर करते हैं। देखें कि कौन-से बाइंडिंग प्रकार `GLM-OCR` संस्करण `v1` है।

<details>

<summary>इनपुट और आउटपुट बाइंडिंग्स</summary>

* इनपुट
  * `छवियाँ` ([*`छवि`*](/workflows/hi/developer-guide/developer-guide/kinds/image.md)): जिस छवि पर अनुमान लगाना है..
  * `task_type` ([*`string`*](/workflows/hi/developer-guide/developer-guide/kinds/string.md)): किया जाने वाला पहचान कार्य। यह GLM-OCR को भेजे जाने वाले प्रॉम्प्ट को निर्धारित करता है। एक चयनकर्ता (जैसे $inputs.task\_type) स्वीकार करता है ताकि मोड को गतिशील रूप से सेट किया जा सके..
  * `प्रॉम्प्ट` ([*`string`*](/workflows/hi/developer-guide/developer-guide/kinds/string.md)): GLM-OCR के लिए कस्टम पाठ प्रॉम्प्ट। केवल तब उपयोग किया जाता है जब task\_type 'custom' हो..
  * `मॉडल संस्करण` ([*`roboflow_model_id`*](/workflows/hi/developer-guide/developer-guide/kinds/roboflow-model-id.md)): अनुमान के लिए उपयोग किया जाने वाला GLM-OCR मॉडल..
* आउटपुट
  * `पार्स किया गया आउटपुट` (*Union\[*[*`string`*](/workflows/hi/developer-guide/developer-guide/kinds/string.md)*,* [*`language_model_output`*](/workflows/hi/developer-guide/developer-guide/kinds/language-model-output.md)*]*): स्ट्रिंग मान यदि `string` या LLM / VLM आउटपुट यदि `language_model_output`.

</details>

<details>

<summary>उदाहरण JSON परिभाषा</summary>

```json
{
	    "name": "<your_step_name_here>",
	    "type": "roboflow_core/glm_ocr@v1",
	    "images": "$inputs.image",
	    "task_type": "<block_does_not_provide_example>",
	    "prompt": "छवि में पाठ का वर्णन करें.",
	    "output_structure": {
	        "my_key": "description"
	    },
	    "max_new_tokens": "<block_does_not_provide_example>",
	    "model_version": "glm-ocr"
	}
```

</details>
