# 非構造化データ向けOCR

> 非構造化データ向けOCR - データソースを構造化して、エージェントワークフローでAIを利用できるようにします。

This Markdown file sits beside the HTML page at the same path (with a `.md` suffix). It summarizes the topic and lists links for tools and LLM context.

Companion generated at `2026-07-15T05:55:45.015104+00:00` (UTC).

## Primary page

- [非構造化データ向けOCR](https://docs.datarobot.com/ja/docs/reference/data-ref/ocr-ref.html.md): Full documentation for this topic (Markdown sidecar).

## Sections on this page

- [OCRの実行](https://docs.datarobot.com/ja/docs/reference/data-ref/ocr-ref.html.md#perform-ocr): In-page section heading.

## Documentation content

DataRobotのOCR（光学式文字認識）は、エージェントワークフローにおける最も重大なボトルネックの1つに対処します。スキャンしたPDF、PowerPoint、ドキュメントなどの煩雑で構造化されていないデータを、AIが利用できる形式に確実に変換します。 OCRを使用すると、カスタム解析コードや脆弱なスクリプトを必要とせずに、ドキュメント階層、表、および図の抽出が自動化されるため、AIエージェントは実際の企業データを大規模に処理できます。 ドキュメント構造の維持は、検索拡張生成（RAG）パイプラインにとって非常に重要です。これは、データの「フラット化」を防ぐためです。データのフラット化は、サイレントエラー、不正確なグラウンディング、推論中のコンテキストの損失につながることがよくあります。

RESTエコシステムに直接統合された高度な解析機能により、開発者は手動でのドキュメント準備から本番環境に対応したエージェントのデプロイにわずかな時間で移行できます。 この統合により、幅広い形式への対応と標準化されたJSON出力が実現し、DataRobotのオーケストレーション、評価、および監視ツールにシームレスに連携します。 この統合されたアプローチにより、断片的な「グルーコード」や個別の解析ツールが不要になります。これにより、組織は、複雑な知識ベースに対してより高い信頼性で推論を行う高度なエージェントを、メンテナンスのオーバーヘッドを削減しながら構築、運用、およびガバナンスすることが可能になります。

## OCRの実行

非構造化データでOCRを実行するには、DataRobotのPythonクライアントを使用します。

```
import datarobot as dr

from datarobot import OCREngineSpecificParameters, OCRJobResource
from datarobot import OCRJobDatasetLanguage

dr_client = dr.Client(
    token='YOUR TOKEN',
    endpoint='ENGPOINT'
)

# upload file
file_path = 'OCR_files_integration/demo_files.zip'
f = dr.Files.upload(file_path, use_archive_contents=True)

resp = dr_client.post(
    url='ocrJobResources/',
    data={
        'dataset_id': input_file_id,
        'language': 'ENGLISH',
        'engine_specific_parameters': {'engine_type': 'ARYN', 'output_format': 'JSON'},  # we can try JSON or MARDOWN here
    }
)

job_resource_id = resp.json()['id']
output_file_id = resp.json()['outputCatalogId']
job_resource = OCRJobResource.get(job_resource_id)
start_resp = job_resource.start_job()

output_file = dr.Files.get(output_file_id)
output_file.list_contained_files(). # view all the files inside

output_file.download('demo_files/file1.arynjson', file_path='output_file1.json') 
```
