建築図面のひろい出しをAIに任せる仕組みを、何度か作り替えてきました。最初はAIが処理しやすい形を人間が先回りして用意していましたが、途中から、業務画面までAIに組み立ててもらえるようになりました。
そうなると、非エンジニアでもシステムは作れるのか、という問いが現実味を帯びてきます。いまの答えは「原本の置き場所さえ決めておけば、かなりのところまで作れる。ただし、承認の決まりのような部分は、エンジニアが設計したほうがよい」です。
最初は、処理をコードでつないでいた
最初の構成では、OCRにGemini APIを使い、Pythonでモデルへ渡すデータを整形していました。Excelへの直接記帳は信頼性に欠けたため、抽出結果をいったんJSONへ保存し、別の処理でExcelへ反映しました。図面を読む処理、データを整える処理、Excelへ戻す処理を、人が一つずつつないでいたのです。
次は、チャットに手順を渡した
その後、ChatGPT DesktopでPDFとExcelを直接扱い、業務の手順を SKILL.md に書く形へ変えました。専用のOCR処理や中間JSONは要らなくなりました。ただし入口はチャットのままで、使う人が依頼文を考え、会話から今の状態を読み取る必要がありました。
画面まで、AIが組み立てた
次に、ChatGPT Sitesで業務画面を作りました。ダッシュボードから案件を選び、「同期する」「候補を確認する」「Excelを作る」と、業務の言葉のまま進める形です。使う人にはコマンドや会話のスレッドを見せませんでした。
画面の多くは、ChatGPT Sitesに大まかな要件を渡すだけで組み上がりました。AIの出した候補を、人が根拠と見比べて直し、承認する画面も、ChatGPT Sitesがかなり自然に組み立てました。AIに仕事をさせるだけでなく、その出力を人が判断する画面まで同じ流れで作れるようになったことが、いちばん大きな変化でした。コードを書かない人でも、画面と業務の流れまではたどり着けると思います。
原本をDriveに置いておけば、破綻しにくい
非エンジニアが作るシステムで怖いのは、動かなくなったときに、大事なデータまで一緒に失うことです。そこで、図面や指示書などの原本は、Google Driveに置いたままにする作りにしました。AIは原本を読むだけで、変更しません。ChatGPT Sitesで作ったときは、案件ごとのフォルダを次のように分けていました。
案件名/
├── 01_受領原本/ ← AIが読む原本。変更しない
├── 03_AI加工物/ ← 確認前のExcelなど
└── 04_承認済み成果物/ ← 人が確認したものだけ
システムの側が持つのは、候補、承認の状態、履歴といった「仕事の途中経過」だけです。もしシステムが壊れても、原本はDriveに残っていて、いちばん悪い場合でもDriveとこれまでの手作業に戻れます。戻れる場所があるので、多少荒い作りでも試してみてよい、と考えられます。
フォルダを分けておくことにも意味があります。AIが作ったExcelは 03_AI加工物 に置き、人が確認したものの置き場所として 04_承認済み成果物 を分けていました(04への保存までは作っていません)。確認していないものを、画面の言葉だけでなく保存先でも区別するための分け方です。
それでも、エンジニアが要るところ
とはいえ、ここまでで作れるのは試作です。実際の業務に載せるには、次のような部分が残ります。
- 誰がどの操作をしてよいかという権限
- 顧客資料を、どこに、誰の権限で置くか
- 処理が途中で止まったときの再開と、同じ成果物を二重に作らない仕組み
- 二人が同時に直したとき、古い画面の値で上書きしない仕組み
- 人の承認を通ったものだけを正式な成果物にする関門
いまは同じ業務を、GrokBot 5体と人のチーム図面屋さんに作り替えています。承認の決まりは画面やbotではなくDBに置き、版が変わると前の版への承認を引き継がない、一度書いた記録は直さずに足す、といった形にしました。一方で、公開デモなので、権限と本人確認は、botの鍵を1つにして申告だけで見分ける形に割り切っています。作りは図面屋さんの作りについてにまとめています。この部分は、いまもエンジニアが設計したほうが安全だと思います。
それでも、画面と流れを自分で作り、原本の置き場所を決めておくところまでは、非エンジニアでも十分にできます。そこまで作ってあれば、エンジニアに頼むときも「何を守りたいのか」がはっきりした状態で相談できます。