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

# GLM-OCR

GLM-OCR은 GLM 비전-언어 모델 계열을 기반으로 한 OCR 모델입니다. 이미지를 텍스트로 전사하며, 혼합된 레이아웃의 문서, 표지판, 라벨에 매우 적합합니다. 우리는 우리의 [Serverless Hosted API](/roboflow/roboflow-ko/deploy/serverless-hosted-api-v2.md), [Dedicated Deployments](/roboflow/roboflow-ko/deploy/dedicated-deployments.md)그리고 [자체 호스팅 Inference](https://inference.roboflow.com/).

## 코드 샘플

GLM-OCR은 공유된 `/infer/lmm` endpoint입니다. 다음을 사용해 HTTP endpoint를 통해 직접 호출하세요: `curl`또는 [`inference-sdk`](https://inference.roboflow.com/inference_helpers/inference_sdk/) 래퍼를 사용하세요.

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

### API Key를 받으세요

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' \
  --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 Key를 받으세요

Roboflow 계정을 만들고, 다음에서 키를 찾으세요: [Roboflow API 설정 페이지](https://app.roboflow.com/settings/api) 그리고 이를 셸에서 사용할 수 있도록 설정하세요:

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

{% endstep %}

{% step %}

### 종속성을 설치하세요

이 패키지는 다음 모델을 호출합니다:

```bash
pip install inference-sdk
```

{% endstep %}

{% step %}

### 모델을 실행하세요

텍스트가 포함된 이미지에 GLM-OCR을 실행합니다:

```python
import os
import cv2
import numpy as np
import requests
from inference_sdk import InferenceHTTPClient

content = requests.get("https://media.roboflow.com/inference/license_plate_1.jpg").content
image = cv2.imdecode(np.frombuffer(content, np.uint8), cv2.IMREAD_COLOR)

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/f1920718d870e16ca6a16bbcd9daf6dd22be7d08" alt=""><figcaption></figcaption></figure>
{% endstep %}
{% endstepper %}
{% endtab %}
{% endtabs %}

## 추론 속도

다음 기준으로 측정한 지연 시간 [Roboflow Inference](https://inference.roboflow.com/) 1x NVIDIA L4에서 배치 크기 1로, 고정 프롬프트에서 greedy decoding을 사용해 정확히 128개의 토큰을 생성할 때의 결과입니다. 지연 시간은 출력 길이에 따라 증가하므로, 다른 길이를 추정할 때는 tokens/sec를 사용하세요.

<table data-search="false"><thead><tr><th>별칭</th><th>지연 시간, 128 토큰(ms)</th><th>Tokens/sec</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` Serverless Hosted API용입니다.
* `http://localhost:9001` 로컬 [Inference](https://inference.roboflow.com/) 서버용입니다.
* 귀하의 [Dedicated Deployment](/roboflow/roboflow-ko/deploy/dedicated-deployments.md) 비공개 엔드포인트용 URL입니다.
  {% endhint %}
