申請様式4,024件のうち、オンラインで終わるのは26.9%だった
申請書の Word・Excel・PDF を上げると、空欄を見つけて分かるところだけを埋め、元の書式のまま返す道具を作りました。
デモ: https://kurage.exbridge.jp/kfillout.php/
作る前に、この面倒がどれくらいの規模なのかを測りました。
名古屋市の申請様式は4,024件ある
名古屋市の「申請・手続き検索」には、全申請様式のデータが埋め込まれています。集計するとこうなりました。
Word 1,652件(41.1%)、PDF 1,230件(30.6%)、Excel 367件(9.1%)、外部サイト 775件(19.3%)。
ダウンロードして書くオフィス文書が80.8%。オンラインで完結できるのは26.9%しかありません。127の課、698ページに散らばっています。
さらに分野別に見ると、偏りがはっきり出ました。
障害福祉 18.8%、介護保険 25.4%、子育て・妊娠・出産 26.8%、高齢者福祉 28.2%。対して国民健康保険・国民年金は42.4%、医療・薬務は41.8%です。
窓口へ行くのがいちばん大変な人の手続きほど、オンライン化されていない。
Word が41%というのも効きます。スマホしか持っていない人は、Word ファイルを開いて書いて印刷することが実質できません。
様式を変えないことが要件だった
同種のサービスは海外にあります。Instafill.ai、pdfFiller、Filly AI、AutoFillPDF。ただ、多くは PDF に変換してから埋めるので様式が変わります。
日本の行政や研究機関は「この様式で出してください」と指定します。変換されたら提出できません。
そこで .docx と .xlsx は中の文字だけを差し替え、旧形式(.doc / .xls)はいったん今の形式に直して埋めてから元の形式に戻すようにしました。
AIに文章を作らせない
入る文字は3つだけです。今日の日付、保存した会社情報、利用者が書いた値。
AI がするのは「この空欄はどの項目か」を見分けることだけで、当てはまらない欄は空のまま残して「人が書く欄」として画面に出します。申請書で作文されたら事故です。
判定に使う LLM もローカル(Ollama の gemma4)で動かしています。ファイルも会社情報も外部の AI サービスへは送りません。
実物で踏んだ罠
様式が「〇〇株式会社」で、商号が「株式会社エクスブリッジ」のとき、空欄だけを埋めると「エクスブリッジ株式会社」という存在しない会社名になります。法人格の位置が違うときは様式の法人格ごと置き換えるよう直しました。
「令和○年」の欄に完全な日付を入れると「令和8年9月14日○月○日」と後ろが残ります。空欄の見た目に合わせた形を返すようにしました。どちらも回帰テストに入れてあります。
画像のPDFは、埋めない
PDF には3つの型があります。記入できる PDF、平らな PDF(罫線とラベルで作った紙の様式。文字は入っている)、画像の PDF。
名古屋市の戸籍証明交付申請書は2つめでした。入力欄は0個、テキストは2,840字取れます。千種区の洪水ハザードマップは3つめで、5.5MB・1ページ、抽出できた文字は1字。
3つめで「どこが空欄か」を機械が当てようとすると、当て推量になります。だから「この様式は画像のPDFです。埋められません」と返します。
できないことをできないと言う。申請書を扱う道具では、これが機能だと思っています。
買い切り版
ソース同梱・MIT・MCP 同梱で税込110,000円です。
https://kappstore.exbridge.jp/app.php?id=6ae90e27bf778a42
共有レンタルサーバーでは動きません。Word・Excel・PDF の中身を書式を保ったまま書き換える処理とローカル LLM での判定が、常駐プロセス不可・実行時間制限・外部コマンド不可という制約では成り立たないためです。VPS か専用サーバー、社内サーバーが要ります。
公開だけはレンタルサーバーからできます。同梱の PHP プロキシを置けば独自ドメインで使えます。