概要
LiteParseは、独立したPDF解析ツールであり、バウンディングボックス付きの空間テキスト解析、柔軟なOCRシステムを提供し、複数の出力形式をサポートしています。ローカルで動作し、Rust、Node.js、Python、およびWASMと統合可能です。
README プレビュー
# LiteParse\n\n[](https://github.com/run-llama/liteparse/actions/workflows/ci.yml)\n|\n[](https://crates.io/crates/liteparse)\n|\n[](https://www.npmjs.com/package/@llamaindex/liteparse)\n|\n[](https://www.npmjs.com/package/@llamaindex/liteparse-wasm)\n|\n[](https://pypi.org/project/liteparse/)\n|\n[](https://opensource.org/licenses/Apache-2.0)\n|\n[Docs](https://developers.llamaindex.ai/liteparse/)\n\n\n\n> Looking for LiteParse V1? Follow this link to [the old code](https://github.com/run-llama/liteparse/tree/logan/liteparse-v1)\n\nLiteParse is a standalone OSS PDF parsing tool focused exclusively on **fast and light** parsing. It provides high-quality spatial text parsing with bounding boxes, without proprietary LLM features or cloud dependencies. Everything runs locally on your machine.\n\n**Hitting the limits of local parsing?**\nFor complex documents (dense tables, multi-column layouts, charts, handwritten text, or\nscanned PDFs), you'll get significantly better results with [LlamaParse](https://developers.llamaindex.ai/python/cloud/llamaparse/?utm_source=github&utm_medium=liteparse),\nour cloud-based document parser built for production document pipelines. LlamaParse handles the\nhard stuff so your models see clean, structured data and markdown.\n\n> [Sign up for LlamaParse free](https://cloud.llamaindex.ai?utm_source=github&utm_medium=liteparse)\n\n## Overview\n\n- **Fast Text Parsing**: Spatial text parsing using PDFium\n- **Flexible OCR System**:\n - **Built-in**: Tesseract (zero setup, bundled with the library)\n - **HTTP Servers**: Plug in any OCR server (EasyOCR, PaddleOCR, custom)\n - **Standard API**: Simple, well-defined OCR API specification\n- **Screenshot Generation**: Generate high-quality page screenshots for LLM agents\n- **Multiple Output Formats**: JSON and Text\n- **Bounding Boxes**: Precise text positioning information\n- **Multi-language**: Use from Rust, Node.js/TypeScript, Python, or the browser (WASM)\n- **Multi-platform**: Linux, ma
FAQ (5)
トラブル対応liteparse が TextItem の x と y に PDF points ではなくグリッド投影座標を返すのはなぜでしょうか?
liteparse v2.0.0-beta.2 では、TextItem.x および TextItem.y が誤ってグリッド投影座標(文字列と行インデックス)に設定されており、PDF ポイント座標ではありません。これは既知のバグです。回避策として、dev CLI ツールを使用して生の PDF ポイント座標を抽出してください:
python -m liteparse.cli extract --pdf-path <your_pdf.pdf>
このコマンドは、正しい x、y、width、height と追加のメタデータを含む投影前のアイテムを返します。チームは恒久的な修正に取り組んでおり、今後のリリースに備えてリポジトリを確認してください。
ハウツーCloudflare Workersやエッジランタイム上でLiteParseを使用してPDFを解析する方法
@llamaindex/liteparse-wasm パッケージを使用します。これは、Cloudflare Workers、Deno Deploy、Vercel Edge、ブラウザと互換性のあるWebAssemblyベースのPDFパーサーを提供します。npm install @llamaindex/liteparse-wasm でインストールし、PDFパーサーを直接インポートします。使用例についてはパッケージのREADMEを確認してください。元のNode.js依存のliteParseパッケージは、ネイティブモジュールのためエッジランタイムをサポートしていません。
トラブル対応liteparse OCRを使用する際の'tessdata/eng.traineddata'エラーを修正する方法は?
TESSDATA_PREFIX 環境変数を、tessdata 言語ファイルが格納されているディレクトリに設定します。
1. https://github.com/tesseract-ocr/tessdata/raw/main/eng.traineddata から eng.traineddata をダウンロードします。
2. 任意のフォルダ(例: Windows では C:\\tessdata、Linux では /usr/share/tessdata)に配置します。
3. TESSDATA_PREFIX をそのフォルダのパスに設定します:
- Windows: $env:TESSDATA_PREFIX='C:\\tessdata'
- Linux/macOS: export TESSDATA_PREFIX=/usr/share/tessdata
liteparse が Tesseract をバンドルしている場合、tessdata フォルダは node_modules/@llamaindex/liteparse/tessdata にある可能性があります。その場合は、変数をそのパスに設定してください。
トラブル対応長いウォーターマークやヘッダーがあるPDFで発生するサイレントOCRエラーを修正する方法
現在のLiteParseバージョンは、ページがOCRを必要とするかどうかを判断するために、ハードコードされたテキスト長の閾値100文字を使用しています。ページに100文字を超えるネイティブテキストがある場合(例:Brazilian TJCEの約289文字のデジタル透かし、または最大約1310文字の長いヘッダー/フッター)、OCRはスキップされ、スキャンされた本文コンテンツが静かにドロップされます。回避策:crateをフォークし、crates/liteparse/src/ocr_merge.rsを編集して、閾値を増やします(例:100を1500に変更)。または、すべてのページでOCRを強制するように条件を変更します。永続的な修正はissue #235で提案されており、閾値を設定可能にします。
トラブル対応LiteParse v2でPDF以外のドキュメント(DOCX、PPTX、画像)のスクリーンショットを撮る方法は?
LiteParse v2では、screenshot()は現在PDF入力のみをサポートしています。他の形式(Office、画像など)をスクリーンショットするには、まずlit parseやLibreOfficeなどの外部ツールを使用してドキュメントをPDFに変換し、その結果のPDFをscreenshotに渡します。例:lit parse input.docx --output converted.pdf && lit screenshot converted.pdf。これは一時的な回避策です。screenshot()のネイティブマルチフォーマットサポートは、issue #214(v1との同等性)で追跡されています。