🖥️ CLI Usage¶
YomiToku-Client をインストールすると、専用の CLI コマンド yomitoku-client が使用できます。
SageMaker 上の YomiToku エンドポイントにアクセスし、ドキュメントの解析や結果変換を行います。
🚀 ファイル単体の処理¶
指定したファイルを解析するためのコマンドです。 ファイルを処理し、解析結果を指定のフォーマットで出力します。
クイックスタート¶
| 引数 | 説明 |
|---|---|
${path_file} |
解析対象のファイルパスを指定します。 (必須) |
-e |
SageMaker のエンドポイント名を指定します。 (必須) |
-r |
AWS のリージョン名を指定します。 |
-a |
エンドポイントが提供する API を指定します。document-analyzer(既定) / table-semantic-parser |
-f |
出力フォーマットを指定します。 対応形式: json, csv, html, md, pdf |
-o |
解析結果を保存する出力先ディレクトリを指定します。 |
例
🆘 ヘルプの参照¶
CLI の利用可能なオプションは、--help で確認できます。
⚙️ オプション詳細¶
| オプション | 型 / 値 | 説明 |
|---|---|---|
-e, --endpoint |
TEXT |
SageMaker のエンドポイント名(必須) |
-r, --region |
TEXT |
AWS リージョン名(例:ap-northeast-1) |
-a, --api |
[document-analyzer / table-semantic-parser] |
エンドポイントが提供する API(既定:document-analyzer)table-semantic-parser の出力は json のみ |
-f, --file_format |
TEXT(カンマ区切りで複数指定可)例: json,csv,pdf |
解析結果の出力フォーマット(json / csv / html / md / pdf)を複数指定可能 |
-o, --output_dir |
PATH |
解析結果を保存するディレクトリパス |
--dpi |
INTEGER |
画像解析時の解像度(DPI) |
-p, --profile |
TEXT |
使用する AWS CLI プロファイル名 |
--request_timeout |
FLOAT |
各リクエスト単位のタイムアウト(秒) |
--total_timeout |
FLOAT |
全体処理のタイムアウト(秒) |
-v, --vis_mode |
[both / ocr / layout / none] |
出力画像の可視化モード (OCR結果 / レイアウト / 両方 / なし) table-semantic-parser では未対応のためスキップ |
-s, --split_mode |
[combine / separate] |
出力ファイルの分割モード (1つにまとめる / ページごとに分割) |
--ignore_line_break |
(flag) | テキスト抽出時に改行を無視する |
--pages |
TEXT |
解析対象ページを指定(例:0,1,3-5) |
--intermediate_save |
(flag) | 中間生成物(RAW JSON)を保存する |
--workers |
INTEGER |
並列処理に使用するワーカー数(デフォルト: 4) |
--threthold_circuit |
INTEGER |
サーキットブレーカーの失敗閾値(例:5) |
--cooldown_time |
INTEGER |
サーキットブレーカーのクールダウン時間(秒) |
--read_timeout |
INTEGER |
HTTPリクエストの読み取りタイムアウト(秒) |
--connect_timeout |
INTEGER |
HTTPリクエストの接続タイムアウト(秒) |
--max_retries |
INTEGER |
HTTPリクエストの最大再試行回数 |
--help |
(flag) | ヘルプを表示して終了する |
💡 Tips¶
よく使う組み合わせ
- Markdown 形式とCSVで解析結果を保存する:
yomitoku-client single invoice.pdf -e yomitoku-endpoint -f md,csv - OCR 結果を PDF に埋め込み可視化する:
yomitoku-client single report.pdf -e yomitoku-endpoint -f pdf -v both - 中間JSONも同時に保存する:
yomitoku-client single form.png -e yomitoku-endpoint -f csv --intermediate_save - 特定ページのみを解析:
yomitoku-client single book.pdf -e yomitoku-endpoint --pages "1,2-5"
🧾 補足¶
- AWS CLI の設定済み環境で実行することを推奨します。
- 出力ディレクトリ(
-o)が存在しない場合、自動で作成されます。 - CLI の戻り値は解析結果ファイルのパスを返します。
--intermediate_saveを指定すると、内部処理のRAW JSONを同ディレクトリ内に保存します。- 高解像度処理を行う場合は、
--dpi 300などを指定することでOCR精度が向上します。
🚀 バッチ処理(ディレクトリ一括解析)¶
複数ファイルを一括解析するための バッチ処理コマンドです。 指定したディレクトリ内のファイルを順次処理し、解析結果を指定のフォーマットで出力します。
クイックスタート¶
| 引数 | 説明 |
|---|---|
-i, --input_dir |
解析対象のファイルを含むディレクトリのパスを指定します。 (必須) |
-o, --output_dir |
解析結果を保存するディレクトリを指定します。 (必須) |
-e, --endpoint |
SageMaker のエンドポイント名を指定します。 (必須) |
-r, --region |
AWS のリージョン名を指定します。 |
-a, --api |
エンドポイントが提供する API を指定します。document-analyzer(既定) / table-semantic-parser |
-f, --file_format |
出力フォーマットを指定します。 対応形式: json, csv, html, md, pdf |
例
🆘 ヘルプの参照¶
CLI の利用可能なオプションは、--help で確認できます。
⚙️ オプション詳細¶
| オプション | 型 / 値 | 説明 |
|---|---|---|
-i, --input_dir |
PATH |
解析対象ファイルを含む入力ディレクトリのパス(必須) |
-o, --output_dir |
PATH |
解析結果を保存する出力先ディレクトリのパス(必須) |
-e, --endpoint |
TEXT |
SageMaker のエンドポイント名(必須) |
-r, --region |
TEXT |
AWS リージョン名(例:ap-northeast-1) |
-a, --api |
[document-analyzer / table-semantic-parser] |
エンドポイントが提供する API(既定:document-analyzer)table-semantic-parser の出力は json のみ |
-f, --file_format |
TEXT(カンマ区切りで複数指定可)例: json,csv,pdf |
出力フォーマット(json / csv / html / md / pdf)を複数指定可能 |
--dpi |
INTEGER |
画像解析時の DPI(解像度) |
-p, --profile |
TEXT |
使用する AWS CLI プロファイル名 |
--request_timeout |
FLOAT |
各リクエスト単位のタイムアウト(秒) |
--total_timeout |
FLOAT |
全体処理のタイムアウト(秒) |
-v, --vis_mode |
[both / ocr / layout / none] |
OCR 結果やレイアウト構造の可視化モードtable-semantic-parser では未対応のためスキップ |
-s, --split_mode |
[combine / separate] |
出力ファイルの分割モード(1つにまとめる / ページごとに分割) |
--ignore_line_break |
(flag) | テキスト抽出時に改行を無視する |
--pages |
TEXT |
解析対象ページを指定(例:0,1,3-5) |
--workers |
INTEGER |
並列処理に使用するワーカー数(デフォルト: 4) |
--threthold_circuit |
INTEGER |
サーキットブレーカーの失敗閾値(例:5) |
--cooldown_time |
INTEGER |
サーキットブレーカーのクールダウン時間(秒) |
--read_timeout |
INTEGER |
HTTP リクエストの読み取りタイムアウト(秒) |
--connect_timeout |
INTEGER |
HTTP リクエストの接続タイムアウト(秒) |
--max_retries |
INTEGER |
HTTP リクエストの最大再試行回数 |
--help |
(flag) | ヘルプを表示して終了する |
💡 Tips¶
よく使う組み合わせ
- Markdown 形式とSearchable-PDFで全ファイルを一括解析する:
yomitoku-client batch -i ./docs -o ./out -e yomitoku-endpoint -f md,pdf - OCR 結果を PDF に可視化して出力する:
yomitoku-client batch -i ./input -o ./vis -e yomitoku-endpoint -f pdf -v both - CSV 出力で構造化データとして保存する:
yomitoku-client batch -i ./forms -o ./csv -e yomitoku-endpoint -f csv - 特定ページのみを対象に解析:
yomitoku-client batch -i ./pdfs -o ./out -e yomitoku-endpoint --pages 0,2-4
🧾 補足¶
- 指定されたディレクトリ配下のすべての対応ファイル(
PDF,PNG,JPEGなど)が自動的に解析対象になります。 --vis_modeにより OCR / レイアウト枠付きの画像を生成できます。- 並列処理(非同期実行)により複数ファイルを高速に処理します。
- AWS 認証は環境変数または
--profileで指定されたプロファイルを使用します。
Batch Transform出力の変換¶
保存済みのBatch Transform .outを、再推論せずにMarkdown、CSV、HTMLへ変換します。このコマンドはSageMakerエンドポイントやAWS認証を必要としません。
クイックスタート¶
出力先には元文書の拡張子と.outを除いた名前でファイルが生成されます。
ディレクトリを指定すると、配下の.outを一括変換できます。
図の画像を出力する¶
MarkdownまたはHTMLへ図の切り出し画像を含める場合は、元画像または元PDFを--srcで指定します。
yomitoku-client convert document.pdf.out \
--format md,html \
--src document.pdf \
--output-dir ./converted
--srcを省略した場合も変換できますが、図の画像は出力されません。段落、見出し、表などJSONだけで復元できる内容が出力されます。
オプション詳細¶
| オプション | 説明 |
|---|---|
-f, --format |
出力形式。md, csv, htmlをカンマ区切りで指定(デフォルト: md) |
-o, --output-dir |
出力ディレクトリ。省略時は単一ファイルなら入力元、ディレクトリならconverted配下 |
--src |
図の切り出しに使用する元文書、または元文書を保存したディレクトリ |
--split-mode |
combineまたはseparate(デフォルト: combine) |
--pages |
変換するページ(例: 0,1,3-5) |
--dpi |
元PDFを読み込むDPI(デフォルト: 200) |
--ignore-line-break |
本文中の改行を除去 |
--overwrite |
既存の出力ファイルを上書き |
既存ファイルはデフォルトで上書きしません
同名の出力が既に存在する場合はエラーになります。置き換える場合のみ--overwriteを指定してください。