技術仕様書や社内ナレッジベースのPDFをClaude Codeから直接呼び出せるSkillに変換することが2026年には一般的になりました。しかし「動かせる」ことと「コストと速度を把握している」ことは別の話です。
これはbook-to-skillの完全デプロイガイドです。PDF解析からSkillパッケージングまでの各フェーズで、環境要件・処理時間・コスト構造を解説し、Cloud Mac M4の実測データも紹介します。マーケティング資料ではなく、調達や設計レビューに持ち込めるチェックリストです。
1. book-to-skillとは
book-to-skillは、書籍・技術仕様書・社内PDF文書をClaude Skills(Claude Codeが呼び出せる知識スキルパッケージ)に変換するワークフローです。主なユースケース:
- 技術ドキュメント:APIリファレンス、SDKマニュアル、プロトコル仕様——コーディング中にClaude Codeが直接参照でき、毎回RAG検索不要
- 仕様書:規格、業界規制、コンプライアンス文書——Agentが随時呼び出せる「ルールエンジン」としてパッケージ化
- プライベート知識ベース:社内調査レポート、製品マニュアル、研修資料——外部サービスにアップロード不要の専有知識レイヤー
book-to-skill vs 通常のRAG
通常のRAGは毎回全検索チェーンを実行します。book-to-skillは知識を構造化されたSkillとしてパッケージ化し、Claude Codeが特定の章や項目をオンデマンドで呼び出せます。構造が明確で頻繁に参照される専門知識ベースに最適です。両者を組み合わせることも可能です。
2. パイプライン全体像
PDFファイル
↓
[フェーズ1] PDF解析(Docling / MinerU)
→ 構造化Markdown / JSON(見出し階層、表、数式を含む)
↓
[フェーズ2] テキスト分割(Chunking)
→ セマンティック段落チャンク(300〜600トークン/チャンク)
↓
[フェーズ3] Embedding
→ 密ベクトル(768 / 1024 / 1536次元)
↓
[フェーズ4] ベクトルストア(Qdrant / Chroma / PGVector)
→ 検索可能なベクトルインデックス+原文メタデータ
↓
[フェーズ5] Skillパッケージング
→ CLAUDE.mdツール説明+MCPツール登録+検索ロジック
↓
Claude Code呼び出し
3. フェーズ1:PDF解析
ツール選定:Docling vs MinerU
| ツール | 得意分野 | 表/図 | 日本語/中国語 | GPU加速 | ライセンス |
|---|---|---|---|---|---|
| Docling | 学術論文、構造化仕様書 | 優秀(DocLayNet) | 良好 | 対応(CUDA) | MIT |
| MinerU | 日中文書、混在レイアウト | 良好 | 優秀 | 対応(CUDA/MPS) | AGPL-3.0 |
| LlamaParse | 迅速なプロトタイプ、ホスティング | 良好 | 普通 | クラウドのみ | 商用 |
| Marker | テキスト中心のPDF | 普通 | 普通 | 対応(CUDA) | GPL-3.0 |
解析コスト試算
| シナリオ | ハードウェア | 300ページPDF処理時間 | コスト概算 | 備考 |
|---|---|---|---|---|
| CPUモード(ローカル) | M4 Pro / 8コアx86 | 8〜15分 | 電気代のみ(~$0.01) | 小〜中規模バッチ、GPU不要 |
| CPUモード(クラウド) | 4 vCPU / 8 GB RAM | 10〜20分 | ~$0.05–0.15/冊 | 時間課金、スケールで低下 |
| GPU加速(CUDA) | RTX 4090 / A10G | 2〜5分 | ~$0.02–0.05/冊 | GPU時間~$0.35–0.8/時間 |
| GPU加速(MPS、M4) | Apple M4 Max | 3〜6分 | 電気代~$0.005/冊 | MinerU MPS対応;DoclingはCPUフォールバックあり |
| クラウドAPI(LlamaParse) | ホスティング | 1〜3分 | ~$0.003/ページ → ~$0.90/冊 | ローカル不要、データ外部送信あり |
環境依存関係を見落とさないように
DoclingとMinerUはともに重いPython環境(PyTorch、OCRモデルファイル1〜3 GB)が必要です。初回インストールは約5〜10分。Dockerイメージを作成して依存関係を固定し、各マシンでの再インストールを避けることをお勧めします。Python ≥ 3.10、推奨は3.11。
4. フェーズ2:テキスト分割
分割戦略は検索品質とEmbeddingコストに直接影響します:
- 固定サイズ分割:最もシンプル(300〜500トークン+50トークンオーバーラップ)。純テキスト文書に適用可能。
- セマンティック分割:見出し階層と段落境界で分割。Docling/MinerUの構造化出力がネイティブサポートするため、まずこれを試す。
- 再帰文字分割(LangChain RecursiveCharacterTextSplitter):セマンティック境界が不明確な場合のフォールバック。
推奨パラメータ:
# 推奨設定(英語技術文書)
chunk_size = 400 # トークン数
chunk_overlap = 60 # セマンティック切断を防ぐオーバーラップ
min_chunk_size = 80 # 極端に短いチャンク(見出し行のみ等)は破棄
max_chunk_size = 600 # 過度に長い段落を防ぐ
分割処理自体はほぼコンピューティングリソースを消費せず(CPU、ミリ秒単位)、コストは実質$0です。
5. フェーズ3:Embedding
クラウドAPIアプローチ
| サービス | モデル | 次元数 | 価格($/Mトークン) | 300ページ書籍試算(~150Kトークン) |
|---|---|---|---|---|
| OpenAI | text-embedding-3-small | 1536 | $0.02 | ~$0.003 |
| OpenAI | text-embedding-3-large | 3072 | $0.13 | ~$0.02 |
| Cohere | embed-v4.0 | 1024 | $0.10 | ~$0.015 |
| Voyage AI | voyage-3 | 1024 | $0.06 | ~$0.009 |
| Jina AI | jina-embeddings-v3 | 1024 | $0.02 | ~$0.003 |
ローカルモデルアプローチ
| モデル | 次元数 | VRAM/メモリ | M4速度(トークン/秒) | 300ページ書籍処理時間 |
|---|---|---|---|---|
| bge-m3(BAAI) | 1024 | ~2.5 GB | ~3,000 | ~50秒 |
| nomic-embed-text-v1.5 | 768 | ~0.8 GB | ~6,000 | ~25秒 |
| mxbai-embed-large-v1 | 1024 | ~1.3 GB | ~4,500 | ~33秒 |
| text2vec-large-chinese | 1024 | ~1.4 GB | ~4,000 | ~38秒 |
ローカルEmbeddingコスト ≈ $0(電気代のみ)。オンプレミスのプライベート知識ベースやデータコンプライアンス要件が高い場合はローカルモデルが第一選択です。
6. フェーズ4:ベクトルストア
| ソリューション | デプロイ方式 | 無料枠 | 有料参考 | 最適なシナリオ |
|---|---|---|---|---|
| Qdrant Cloud | マネージド/セルフホスト | 1 GB(~100万ベクトル) | $25/月(8 GB) | 大規模知識ベース、高性能フィルタリング |
| Chroma | ローカル/組み込み | 無制限(ローカル) | $0(セルフホスト) | 開発・テスト、単機能小規模KB |
| PGVector | PostgreSQL拡張 | PGインスタンス依存 | PGインスタンスと一緒に課金 | 既存PostgreSQL基盤のチーム |
| Weaviate Cloud | マネージド | Sandbox(14日) | $25/月〜 | ハイブリッド検索(ベクトル+BM25) |
| Qdrant(セルフホスト) | Docker | 無料 | $0+サーバーコスト | オフライン環境、データ主権 |
ストレージ試算:1024次元ベクトル1つあたり約4 KB(float32)。300ページ書籍で約800〜1,200チャンク、ベクトルストレージ約3〜5 MB、メタデータ込みで約10〜20 MBです。中小規模知識ベース(50冊)はQdrant Cloudの無料枠内に収まります。
7. フェーズ5:SkillパッケージングとClaude Code統合
典型的なSkill構造:
my-knowledge-skill/
├── CLAUDE.md # Skill説明、ユースケース、呼び出し例
├── mcp_server.py # MCPツールサーバー(検索インターフェース)
├── config.json # ベクトルストア接続設定
└── requirements.txt # 依存関係宣言
Skillパッケージング自体のコストは$0です。主な投資は開発時間(初回構築2〜4時間、テンプレート化後30分以内で再利用可能)です。
8. コスト試算まとめ
300ページの技術PDF 1冊(約150Kトークン)を基準とした全工程コスト:
| フェーズ | 最小コスト(完全ローカル) | 典型的なクラウド | 高性能 | 備考 |
|---|---|---|---|---|
| PDF解析 | $0(ローカルCPU) | $0.05–0.15 | $0.02–0.05(GPU) | MinerU/Doclingセルフホスト |
| テキスト分割 | $0 | $0 | $0 | 純CPUのみ |
| Embedding | $0(ローカルモデル) | $0.003–0.02 | $0.02(text-embedding-3-large) | ローカルbge-m3の品質はクラウドに近い |
| ベクトルストア(初期) | $0(Chromaローカル) | $0(Qdrant無料枠) | $25/月(Qdrant 8 GB) | 50冊以下は無料枠でカバー |
| Skillパッケージング | $0 | $0 | $0 | 開発工数は別途 |
| 1冊合計 | ~$0(完全ローカル) | $0.05–0.20 | $0.04–0.07 | Claude呼び出しコスト除く |
大規模化時のコスト変化
100冊の知識ベース:完全ローカルの構築コストはほぼ$0(開発工数を除く);クラウドAPI Embeddingは約$1〜5;ベクトルストアをQdrantの有料プランにアップグレードすると月約$25〜50。規模が大きくなるほど、ローカルアプローチの優位性が増します。
9. Cloud Mac M4ベンチマーク
Vuncloud Cloud Mac M4 Pro(12コアCPU / 18 GBユニファイドメモリ)での実測データ:
| タスク | 設定 | 処理時間 | ピークRAM |
|---|---|---|---|
| MinerU解析(中国語PDF、300ページ) | CPUモード | 9分23秒 | 4.2 GB |
| Docling解析(英語仕様書、200ページ) | CPU+MPSハイブリッド | 5分41秒 | 5.8 GB |
| bge-m3 Embedding(150Kトークン) | MPS加速 | 48秒 | 2.9 GB |
| nomic-embed Embedding(150Kトークン) | MPS加速 | 22秒 | 1.1 GB |
| Qdrantローカル書き込み(1,000ベクトル) | ローカルDocker | 1.2秒 | 0.3 GB |
| 全工程(300ページ、ローカル) | M4 Pro | 約12分 | ピーク6 GB |
M4 Proの18 GBユニファイドメモリにより、解析モデルとEmbeddingモデルを同時に保持でき、スワップなしで全工程を実行可能です。1日5〜20文書を処理するワークフローなら、単体のCloud Mac M4 Proで十分対応できます。
10. 最適化のヒント
増分更新戦略
毎回フルインデックスを再構築しないでください。各文書のコンテンツハッシュを管理し、新規・変更されたページのみ再解析・再Embeddingを行います:
import hashlib
def get_doc_hash(pdf_path: str) -> str:
with open(pdf_path, "rb") as f:
return hashlib.sha256(f.read()).hexdigest()[:16]
# このドキュメントバージョンがインデックスに存在するか確認
existing = qdrant.scroll(
collection_name="knowledge",
scroll_filter={"must": [{"key": "doc_hash", "match": {"value": doc_hash}}]},
limit=1
)
if existing[0]: # 既存——再構築をスキップ
print(f"文書 {pdf_path} は変更なし、再構築をスキップ")
キャッシュ戦略
- クエリキャッシュ:同一クエリのEmbeddingベクトルを1時間キャッシュ(RedisまたはインメモリDict)
- 結果キャッシュ:高頻度クエリのtop-k結果を15分キャッシュ
- Skill応答キャッシュ:構造化クエリ(「第3章を取得」等)は永続キャッシュ、文書更新時に無効化
FAQ
book-to-skillと通常のRAGの違いは?
通常のRAGは毎回全検索チェーンを実行します。book-to-skillは知識をClaude Skillとしてパッケージ化し、特定の章や項目をオンデマンドで呼び出せます。構造が明確で頻繁に参照される知識ベースに最適です。
300ページのPDFの処理コストは?
解析のみ:CPUモード約$0.05〜0.15、GPU加速約$0.02〜0.05。Embedding(約150Kトークン):クラウドAPI約$0.003〜0.02、ローカルモデル約$0。全工程1冊:クラウド方式で約$0.05〜0.20、完全ローカルはほぼ$0。
DoclingとMinerUどちらを選ぶべきか?
Doclingは学術論文やテーブル密度の高い文書に優れています。MinerUは日本語・中国語や混在レイアウトの文書でより安定しています。両者ともGPU加速で約3〜5倍高速化します。
Cloud Mac M4でのbook-to-skill実行は価値があるか?
M4のユニファイドメモリはローカルEmbeddingモデルに最適です。16〜24 GBで解析とEmbeddingを同時実行でき、GPUサーバー不要です。500冊未満の中小規模知識ベースのオフラインビルドに適しています。
Claude Skillの呼び出しコストを削減するには?
1. 精確なスニペット(2Kトークン未満)のみ返す;2. 増分更新を使用;3. 頻繁なクエリの結果をキャッシュ;4. Haikuで検索ルーティングを処理し、Sonnet/Opusは複雑な推論のみに使用する。
11. まとめ
book-to-skillのデプロイコストは多くの人が想定するよりはるかに低いです。300ページの技術PDFなら、完全ローカルは電気代のみでほぼ$0、クラウドAPIでも$0.05〜0.20です。実際の投資は開発工数(初回パイプライン構築1〜2日)とベクトルストアの継続コスト(大規模知識ベースは月$25以上)です。
3つの重要な意思決定ポイント:
- データコンプライアンス優先:プライベートデータはローカル解析+ローカルEmbeddingを選択——安価でデータがオンプレミスに留まる
- 規模がソリューションを決定する:50冊未満→Chroma+ローカル;50〜500冊→Qdrant Cloud無料枠;500冊以上→Qdrantセルフホスト
- 品質はテストで担保する:パイプライン構築後、必ず実際のQAペアで検索品質をベンチマークすること
Cloud Mac M4でbook-to-skillを実行しますか?
M4のユニファイドメモリにより、解析+Embedding+ベクトルストアの全工程を1台のMacで完結できます。GPUサーバー不要です。Vuncloud Cloud Macは長時間バックグラウンドタスクをサポートし、オフラインでのバッチ知識ベース構築に最適です。
関連記事
- PDFパーサー2026比較:Docling、MinerU、LlamaParse & Marker
- 2026年 最良AI Agentメモリフレームワーク
- DeepSeekパフォーマンス最適化完全ガイド(2026)
- LLM API価格・仕様・パフォーマンス選定ガイド
コストデータは2026年8月の公開価格に基づくものであり、参考値です。最新情報は各サービスプロバイダーの公式サイトでご確認ください。最終更新:2026年8月10日。