「AIにPDF図面を読ませる」を失敗させない設計 段階的解析Pipelineの作り方

IT ~Lifehack~

会社の図面PDFをAIに読ませようとして、一発でうまくいかない経験はありませんか。工学図面は普通の文章PDFと違い、図枠・表題欄・Revision欄・注記・機器記号・線種・端子・接続線・座標・複数Viewの組み合わせで意味が形成されます。文字だけでは意味が完結しないのです。

この記事では、「PDF全体を1回入力して完成した設備知識を出す」というワンショット方式を避け、観測・分類・抽出・関係構成・照合・検証・統合を別タスクとして反復する設計を、複数の研究知見と実務知見から整理します。

この記事でわかること

  • なぜ1回の解析で完結させてはいけないのか
  • 図面を分割する軸と、推奨する10段階の解析Pipeline
  • 失敗パターンと対策一覧
  • 複数AIモデルを役割分担で使う方法

1回の解析で完了させない理由

DocLLMの論文は、企業文書の理解にはText semanticsとSpatial layoutの両方が重要であり、複雑なLayoutや異種Contentでは精度や信頼性に課題が残ると説明しています。機械図面向けMechVQA論文も、一般的なMultimodal LLMは高密度AnnotationやDomain knowledge不足、Spatial reasoningの不安定さにより、決定的な手掛かりを見落としやすいと報告しています。

つまり「PDF全体を1回入力して完成した設備知識を出す」方式は、見落としや過剰統合、根拠位置の喪失、Revision混同を検出しにくい設計です。

本記事は特定論文の手順をそのまま実装するものではなく、複数の研究結果と運用知見から導いた設計提案です。

研究から得られる設計上の示唆

知見引用元設計への反映
Layoutと座標を失わないDocLLMOCR TextだけでなくPage・Bounding box・Reading orderをSource Pointerへ保持
認識・推論・判定を分けるMechVQA文字・記号認識、接続・機能推論、整合性・採否判定を別段階に
Open-loopよりClosed-loopIterCAD抽出結果をValidatorと再読込で検査し、失敗箇所だけを再解析
Graph SchemaはDomainに合わせるDocument GraphRAG等汎用的entity-relatedTo-entityではなくEquipment・Terminal・Cable等のDomain relationへ分ける

解析対象の分割軸

分割はToken数だけではなく、図面の意味境界を優先します。

分割軸主目的
DocumentPDF単位、Drawing set単位原本とVersionの固定
PageSheet、Page独立した再処理
RegionTitle block、Revision、Note、Legend、Main drawingLayout別抽出
Object classText、Symbol、Line、Table、Image専用Extractor適用
Engineering concernPower、Control、Protection、Interlock責務別解析
EntityEquipment、Panel、Cable、TerminalAtomic Record化
RelationFeeds、ConnectedTo、ControlledByGraph構築
VerificationOCR、Topology、Rating、RevisionValidator分離

ワンポイントメモ
PageをGridで機械的に切るだけでは、線の接続や注記の参照先が分断されます。Region cropにはPage全体Thumbnail、隣接Region、座標、Overlap、Region間Linkを付けます。

推奨する10段階の解析Pipeline

Stage内容
0 原本固定Source ID/Version ID/Hash/Page count/アクセス境界
1 PDF品質判定Text layer有無/Raster/Rotation/解像度/Page size
2 Layout inventoryTitle block/Revision table/Legend/Notes/Drawing area
3 独立抽出OCR text/Tables/Symbols/Lines/Dimensions/Callouts
4 Domain別解釈Equipment/Power/Control/Protection/Interlock/Reference
5 Relation候補生成Source-target/Terminal-terminal/Parent-child/Cross-page reference
6 Cross-checkTitle vs File name/Revision vs metadata/Rating vs schedule
7 ConflictとUnknownの登録Confirmed/Candidate/Conflict/Unreadable/Not present
8 Knowledge integrationAtomic Records/System Links/Entity Graph/Event
9 Projection生成HTML view/Equipment view/Revision comparison/Evidence view
10 Targeted retryLow-confidence箇所と矛盾箇所だけを別Model/別Crop/別Promptで再解析

図面向けSystem Links

Link意味
DerivedFromClaimがどのPage/Regionから得られたか
DepictsDrawing/RegionがどのEntityを表すか
FeedsPower sourceからLoadへの給電
ConnectedToCable、Terminal、Equipmentの接続
ControlledByActuatorとControl deviceの関係
ProtectedByLoad/CircuitとProtection deviceの関係
ReferencesDrawingCross-reference先Drawing
SupersedesRevisionの新旧関係
ConflictsWith異なるSource間の不一致

停止条件と反復Loop

解析は「Observe→Extract→Normalize→Link→Validate→Score uncertainty→次Region選択→RetryまたはStop」を反復します。停止は「Agentが完了と回答した」ではなく、機械判定可能な条件へ寄せます。

  • 必須Regionがすべて処理済み
  • 全TaskがComplete、Conflict、Unreadableのいずれか
  • Schema validationを通過
  • Critical relationに未検証Candidateがない
  • Retry上限に達した項目はHuman Reviewへ移送

複数AIモデルの使い方

複数Modelは同じPromptを多数決させるだけでなく、責務を変えます。

Role主な確認
Visual observer実際に見える文字、記号、線
Layout analyst表題欄、Revision、表、座標関係
Domain analyst電気的意味、設備関係、規則
Skeptic根拠不足、読み飛ばし、矛盾
IntegratorAtomic RecordとSystem Linksへの統合

多数決で少数意見を消すのではなく、異なる結果はConflictとして保持します。確定はSource evidence→決定論的Check→承認済みRule→人間Reviewの順で行います。

失敗パターンと対策

Failure mode対策
OCRだけで線接続を推測Symbol、Line、Terminalを別抽出
Page全体を縮小して文字欠落Region cropと全体Contextを併用
Cropで線が切れるOverlapと隣接Region Link
旧版と新版を上書き統合Source Version単位のImmutable package
不明値を補完Unknown/Unreadableとして保存
巨大Markdownを更新Atomic Record + Projection再生成
同じModelの多数決Role、Model、Crop、Promptを変えて独立性確保

評価方法は単一の正答率ではない

OCR文字精度、Title block field精度、Symbol precision/recall、Connection edge精度、Claim provenance completeness、Conflict detection recall、Human review correction rateなど、複数指標を別々に追います。Ground truthは担当者がReviewした少数の代表図面から作り、図種・年代・Scan品質で分けて評価します。

既存運用知見との整合

  • Whole drawing one-shotではなくTask queue
  • Raw observationとEngineering interpretationを分離
  • EquipmentとConnectionを別Record化
  • 全体Graphではなく必要Subgraphを取得
  • Retry対象だけ再解析
  • Original PDFは変更しない

参考論文・公開資料

こんな人におすすめ

  • 工学図面や図面PDFをAIに読ませようとしている
  • 1回の解析で精度が不安定だった経験がある
  • AIの見落としを前提にしたワークフローを知りたい

よくある質問

Q. PDFを一気に読ませる方が早いのではないですか?

A. 早さと引かえに、見落としや矛盾の検知難度を天秤にかける必要があります。重要な図面ほど分割・反復型の方が安全です。

Q. この設計は電気図面以外にも応用できますか?

A. 分割軸やDomain relationの中身を入れ替えれば、建築図面や配管P&IDなど他の図面種にも応用できます。

コメント

タイトルとURLをコピーしました