> 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/models/hi/supported-models/glm-ocr.md).

# GLM-OCR

GLM-OCR, GLM विज़न-लैंग्वेज मॉडल परिवार पर आधारित एक OCR मॉडल है। यह किसी छवि से पाठ को ट्रांसक्राइब करता है और दस्तावेज़ों, संकेतों, तथा मिश्रित लेआउट वाले लेबलों के लिए उपयुक्त है। हम GLM-OCR को हमारे माध्यम से समर्थित करते हैं [सर्वरलेस क्लाउड API](https://docs.roboflow.com/deployment/roboflow-cloud/serverless-api), [समर्पित डिप्लॉयमेंट्स](https://docs.roboflow.com/deployment/roboflow-cloud/dedicated-deployments), और [स्व-होस्टेड Inference](https://docs.roboflow.com/deployment/self-hosted/self-hosted).

## GLM-OCR API

GLM-OCR साझा के माध्यम से चलता है `/infer/lmm` एंडपॉइंट। इसे HTTP एंडपॉइंट के माध्यम से सीधे इस तरह कॉल करें `curl`या साथ में [`inference-sdk`](https://docs.roboflow.com/reference/inference/inference-sdk) रैपर।

{% tabs %}
{% tab title="HTTP (curl)" icon="webhook" %}
{% stepper %}
{% step %}

### अपनी API कुंजी प्राप्त करें

एक Roboflow खाता बनाएँ, अपनी कुंजी यहाँ खोजें [Roboflow API सेटिंग्स पेज](https://app.roboflow.com/settings/api) और इसे अपने शेल में उपलब्ध कराएँ:

```bash
export ROBOFLOW_API_KEY="your-key-here"
```

{% endstep %}

{% step %}

### मॉडल चलाएँ

कॉल करें `/infer/lmm` एंडपॉइंट के साथ `curl`:

```bash
curl --location 'https://serverless.roboflow.com/infer/lmm' \
  --header 'Content-Type: application/json' \\
  --header "Authorization: Bearer $ROBOFLOW_API_KEY" \\
  --data '{
    "image": {"type": "url", "value": "https://media.roboflow.com/inference/license_plate_1.jpg"},
    "model_id": "glm-ocr",
    "prompt": "OCR",
    "max_new_tokens": 128
  }'
```

{% endstep %}
{% endstepper %}
{% endtab %}

{% tab title="SDK (Python)" icon="python" %}
{% stepper %}
{% step %}

### अपनी API कुंजी प्राप्त करें

एक Roboflow खाता बनाएँ, अपनी कुंजी यहाँ खोजें [Roboflow API सेटिंग्स पेज](https://app.roboflow.com/settings/api) और इसे अपने शेल में उपलब्ध कराएँ:

```bash
export ROBOFLOW_API_KEY="your-key-here"
```

{% endstep %}

{% step %}

### निर्भरताएँ इंस्टॉल करें

यह पैकेज मॉडल को कॉल करता है:

```bash
pip install -U inference-sdk supervision
```

{% endstep %}

{% step %}

### मॉडल चलाएँ

पाठ वाली किसी छवि पर GLM-OCR चलाएँ:

```python
import os
import supervision as sv
from inference_sdk import InferenceHTTPClient, InferenceConfiguration

image = sv.load_image_from_url("https://media.roboflow.com/inference/license_plate_1.jpg")

client = InferenceHTTPClient(
    api_url="https://serverless.roboflow.com",
    api_key=os.environ["ROBOFLOW_API_KEY"],
).configure(InferenceConfiguration(api_key_transport="header"))
result = client.infer_lmm(
    image,
    model_id="glm-ocr",
    prompt="OCR",
    max_new_tokens=128,
)
print(result["response"])
```

ऊपर दिया गया कोड पहचाने गए पाठ को टर्मिनल पर प्रिंट करता है:

```
280 SE
ऑटोमैटिक
34 T 6511
```

<figure><img src="/files/d872907dc1007459445936df355251e95570c6e2" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}
{% endtab %}
{% endtabs %}

## GLM-OCR इन्फरेंस गति

लेटेंसी मापी गई [Roboflow Inference](https://docs.roboflow.com/deployment/self-hosted/self-hosted) 1x NVIDIA L4 पर, बैच आकार 1 के साथ, एक निश्चित प्रॉम्प्ट से greedy decoding का उपयोग करके ठीक 128 टोकन जनरेट करते हुए। लेटेंसी आउटपुट लंबाई के साथ स्केल करती है, इसलिए अन्य लंबाइयों का अनुमान लगाने के लिए tokens/sec का उपयोग करें।

<table data-search="false"><thead><tr><th>उपनाम</th><th>लेटेंसी, 128 टोकन (ms)</th><th>टोकन/सेकंड</th></tr></thead><tbody><tr><td><code>glm-ocr</code></td><td>1850</td><td>69</td></tr></tbody></table>

{% hint style="info" %}
सेट करें `api_url` को अपने परिनियोजन लक्ष्य से मिलाएँ:

* `https://serverless.roboflow.com` सर्वरलेस क्लाउड API के लिए।
* `http://localhost:9001` एक स्थानीय [इन्फ़रेंस](https://docs.roboflow.com/deployment/self-hosted/self-hosted) सर्वर।
* आपका [समर्पित परिनियोजन](https://docs.roboflow.com/deployment/roboflow-cloud/dedicated-deployments) एक निजी एंडपॉइंट के लिए URL.
  {% endhint %}

## स्व-होस्टेड इन्फरेंस के साथ GLM-OCR चलाएँ

GLM-OCR एक पर भी चलता है [इन्फ़रेंस](https://docs.roboflow.com/deployment/self-hosted/self-hosted) सर्वर जिसको आप स्वयं होस्ट करते हैं।

{% hint style="warning" %}
स्व-होस्टेड GLM-OCR के लिए एक GPU और इन्फरेंस बिल्ड की आवश्यकता होती है, जिसमें `inference-models` समर्थन सक्षम हो (`USE_INFERENCE_MODELS=true`).
{% endhint %}

एक स्थानीय सर्वर शुरू करें:

```bash
pip install inference-cli
inference server start  # http://localhost:9001 प्रदान करता है
```

फिर मान्यता प्रॉम्प्ट के साथ साझा मल्टीमॉडल एंडपॉइंट को कॉल करें। GLM-OCR कस्टम प्रॉम्प्ट स्वीकार करता है, इसलिए आप इसे सीरियल नंबर, लेबल, या दस्तावेज़ पाठ की ओर निर्देशित कर सकते हैं:

```python
import os
from inference_sdk import InferenceHTTPClient

client = InferenceHTTPClient(
    api_url="http://127.0.0.1:9001",
    api_key=os.environ["ROBOFLOW_API_KEY"],
)

result = client.infer_lmm(
    inference_input="./serial_number.png",
    prompt="पाठ पहचान:",
    model_id="glm-ocr",
)
print(result["response"])
```

## अधिक पढ़ें

* [Hugging Face पर GLM-OCR](https://huggingface.co/zai-org/GLM-OCR)
* [OCR के साथ छवियों में पाठ का पता कैसे लगाएँ](https://blog.roboflow.com/ocr-api/)
