> 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), और [स्व-होस्टेड इनफ़रेंस](https://docs.roboflow.com/deployment/self-hosted/self-hosted).

## कोड नमूना

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) और इसे अपने shell के लिए उपलब्ध कराएँ:

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

{% endstep %}

{% step %}

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

कॉल करें `/infer/lmm` endpoint के साथ `curl`:

```bash
curl --location 'https://serverless.roboflow.com/infer/lmm' \
  --header 'Content-Type: application/json' \\
  --data '{
    "api_key": "'"$ROBOFLOW_API_KEY"'",
    "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) और इसे अपने shell के लिए उपलब्ध कराएँ:

```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

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"],
)
result = client.infer_lmm(
    image,
    model_id="glm-ocr",
    prompt="OCR",
    max_new_tokens=128,
)
print(result["response"])
```

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

```
280 SE
AUTOMATIC
34 T 6511
```

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

## इनफ़रेंस गति

विलंबता मापी गई [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 टोकन (मि.से.)</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` को अपने deployment target से मिलाने के लिए:

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

## Inference (self-hosted) के साथ उपयोग करें

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

{% hint style="warning" %}
स्व-होस्टेड GLM-OCR के लिए एक GPU और साथ सक्षम Inference बिल्ड की आवश्यकता होती है `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="Text Recognition:",
    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/)
