LlamaParse - RAG用ドキュメント 解析 チートシート
LlamaParseはドキュメント 解析サービス LlamaIndexチームから、具体的にLLMおよびRAGパイプライン向けに構築。フォーカスは困難なケース:複雑な表、マルチ列レイアウト、数字、埋め込みチャート持つPDF。汎用テキスト エクストラクター 平坦化の使用不可能なテキスト。クリーンマークダウン出力構造を保持し、顕著な機能は自然言語 解析指示—レイアウト および何をするか記述し、抽出ルール設定ではなく。
LlamaParse はホスト型サービス フリー ティア付き(APIキー 必須)。完全ローカル 解析用DoclingまたはMarkerを参照。
インストール
| Method | Command |
|---|
| pip | pip install llama-parse |
| With LlamaIndex | pip install llama-index llama-parse |
| API key | export LLAMA_CLOUD_API_KEY="llx-..." |
| Verify | python -c "from llama_parse import LlamaParse; print('ok')" |
基本的な解析
from llama_parse import LlamaParse
parser = LlamaParse(result_type="markdown")
documents = parser.load_data("./report.pdf")
print(documents[0].text)
| Parameter | Purpose |
|---|
result_type | "markdown"(構造保持)または"text" |
num_workers | 平行ページ 処理 |
verbose | 進歩 出力 |
language | ドキュメント言語 ヒント |
parsing_instruction | 自然言語 ガイダンス(以下) |
解析指示(差別化因子)
parser = LlamaParse(
result_type="markdown",
parsing_instruction="""
これはファイナンシャル レポートです。すべてのテーブルをマークダウン テーブルとして保持します。
各グラフ場合、傾向を説明する1段落を記述します。
ページ ヘッダーおよびフッターを無視します。
""",
)
プレーン言語データ および目的のハンドリングで説明してコード記述抽出ではなく—ドメイン固有レイアウト用有用(請求書、科学論文、法律契約)汎用パーサー 悪い場所。
非同期 & バッチ
import asyncio
async def parse_many(paths):
parser = LlamaParse(result_type="markdown", num_workers=8)
return await parser.aload_data(paths)
docs = asyncio.run(parse_many(["a.pdf", "b.pdf", "c.pdf"]))
| Method | Use |
|---|
load_data(path) | 単一 ファイル、同期 |
aload_data([paths]) | 非同期、複数ファイル |
get_json_result(path) | ページ メタデータ持つ構造化JSON |
get_images(...) | 埋め込み画像抽出 |
サポートされた入力
| Format | Note |
|---|
| PDF | プライマリー ターゲット、スキャン(OCR)含む |
| DOCX / PPTX / XLSX | Office形式 |
| HTML | Web ドキュメント |
| Images | PNG/JPEGビアOCR |
RAGパイプラインにワイアリング
from llama_parse import LlamaParse
from llama_index.core import VectorStoreIndex
from llama_index.core.node_parser import MarkdownElementNodeParser
docs = LlamaParse(result_type="markdown").load_data("./manual.pdf")
# マークダウン対応チャンキング テーブルおよびセクション かじります
node_parser = MarkdownElementNodeParser()
nodes = node_parser.get_nodes_from_documents(docs)
index = VectorStoreIndex(nodes)
マークダウン出力とマークダウン対応ノード パーサーをペアリング 点:テーブルは解析およびチャンキング生き残る、これはほとんどのRAGパイプライン 表形式の事実が失われるところ。
テーブル処理
| Technique | Why |
|---|
result_type="markdown" | テーブル マークダウン グリッド |
| Parsing instruction for tables | 強制一貫 テーブル ハンドリング |
MarkdownElementNodeParser | テーブル 1つのチャンク保つ |
| Row-per-sentence serialization | 個々 ラインが検索可能 |
コスト & 実際的なメモ
| Consideration | Detail |
|---|
| Hosted service | ドキュメント LlamaCloud に送信 |
| Free tier | 制限 ページ毎日 |
| Caching | 同じファイル再解析 結果を再利用できます |
| Privacy | 機密ドキュメント ローカル パーサー 好む |
LlamaParse対ローカルパーサー
| Aspect | LlamaParse | Docling | Marker |
|---|
| Hosting | Cloud service | Local | Local |
| Complex tables | 非常に強い | 強い | 良い |
| Custom instructions | 自然言語 | 設定 | 設定 |
| Privacy | データはマシン 離れる | 完全ローカル | 完全ローカル |
| Best for | 困難 レイアウト、高速結果 | Self-ホスト RAG 摂取 | GPU バルク 変換 |
プライバシー敏感コーパス用Doclingを使用;バルク ローカル 変換Markerを使用。
リソース