募集図面の画像から間取り・面積・設備・方位をポータル掲載用の項目に読み取り、登録内容との食い違いを掲載前に出す
元付業者から届く募集図面の画像を読み、間取り・各室の畳数・専有面積・方位・設備を、ポータルに掲載する項目にそろえて取り出します。登録済みの物件情報と突き合わせ、食い違いを掲載の前に一覧にします。
- 生成AI
- ChatGPT/Claude/Gemini
- 連携・自動化
- Google Apps Script/Make/Power Automate/Python
- 対象業界
- 不動産/建設
- 対象部門
- マーケティング/営業
- 対象業務
- データ入力・転記/内容確認・チェック
- 主な課題
- 人手が足りない/入力作業が多い/確認ミスが多い
- AIで行う処理
- 画像認識
- 主な効果
- 入力漏れ削減/品質標準化/工数削減
- 導入難易度
- ★★☆☆☆
- 実装レベル
- 本格構成
- 費用感
- API連携(中)
- 人間の確認
- 条件付き
01導入前 / 導入後の業務フロー
- 物件登録の担当が受付用のメールアドレスから図面のPDFを取り出し、共有のドライブに保存する
- 物件管理の画面で、該当する物件の登録を探して開く
- 図面を見ながら、間取りのタイプ、各室の畳数、専有面積、所在階、主要な開口部の方位を入れる
- 設備の一覧を見ながら、ポータルの設備の項目にチェックを付ける
- 登録されていた面積や間取りが図面と違えば、元付業者に電話で確かめる
- 掲載の担当が、写真と図面を添えてポータルへの掲載を予約する
- 人受付用のメールアドレスに届いた図面を、物件ごとの受付フォルダに保存する(自動で振り分けられないものだけ)
- 自動時間主導のトリガーでスクリプトが動き、受付フォルダの新しい図面を拾う
- 自動図面のPDFまたは画像を Gemini API に渡し、掲載項目と、それぞれが図面のどこに書かれていたかを受け取る
- 自動スクリプトが、読み取った値の形と範囲を確かめ、ポータルの項目の値に置き換える
- 自動物件管理の仕組みから書き出した登録済みの項目と突き合わせ、食い違いを出す
- 自動項目の案と食い違いの一覧を、物件ごとのシートに書き出す
- 人物件登録の担当が、図面と項目の案を並べて確かめ、食い違いのあるものは元付業者に確かめる
- 人確かめた内容を物件管理の画面に取り込み、掲載に回す
各工程の詳しい説明を読む
- 物件登録の担当が受付用のメールアドレスから図面のPDFを取り出し、共有のドライブに保存する
- 物件管理の画面で、該当する物件の登録を探して開く
- 図面を見ながら、間取りのタイプ、各室の畳数、専有面積、所在階、主要な開口部の方位を入れる
- 設備の一覧を見ながら、ポータルの設備の項目にチェックを付ける
- 登録されていた面積や間取りが図面と違えば、元付業者に電話で確かめる
- 掲載の担当が、写真と図面を添えてポータルへの掲載を予約する
(a)設備の付け漏れが多い。 ポータルの設備の項目は数十個あり、図面の設備の一覧と並びが違います。図面の上から順に探していく途中で、1つ2つ飛ばします。 「独立洗面台」「宅配ボックス」「浴室乾燥機」の付け漏れは、掲載の後にお客様からの問い合わせで気づきます。
(b)似た数字の打ち間違い。 「25.12㎡」を「25.21」と打つ、6畳と6.5畳を取り違える、といった間違いは、画面を見直しても見落とします。 図面と画面を往復しているうちに、どちらを見ていたか分からなくなります。
(c)登録と図面の食い違いが放置される。 先に作られた登録の専有面積が図面と違っていても、忙しい日は図面の値で上書きして先に進みます。どちらが正しいかを元付業者に確かめないまま掲載し、内見の後に食い違いが分かります。
(d)担当者ごとに入れ方が違う。 「サービスルーム」「納戸」を居室に数えるか、方位をバルコニーで取るか窓で取るか。決まりが担当者の頭の中にあり、同じ図面でも掲載の内容が変わります。
- 【人】 受付用のメールアドレスに届いた図面を、物件ごとの受付フォルダに保存する(自動で振り分けられないものだけ)
- 【自動】 時間主導のトリガーでスクリプトが動き、受付フォルダの新しい図面を拾う
- 【自動】 図面のPDFまたは画像を Gemini API に渡し、掲載項目と、それぞれが図面のどこに書かれていたかを受け取る
- 【自動】 スクリプトが、読み取った値の形と範囲を確かめ、ポータルの項目の値に置き換える
- 【自動】 物件管理の仕組みから書き出した登録済みの項目と突き合わせ、食い違いを出す
- 【自動】 項目の案と食い違いの一覧を、物件ごとのシートに書き出す
- 【人】 物件登録の担当が、図面と項目の案を並べて確かめ、食い違いのあるものは元付業者に確かめる
- 【人】 確かめた内容を物件管理の画面に取り込み、掲載に回す
7番目が、この設計の分かれ目です。 項目の案は、そのまま物件管理の仕組みに書き込みません。掲載の内容に責任を持つのは仲介会社で、図面と登録が食い違うときにどちらを採るかは、元付業者に確かめてから人が決めます。
7番目で人が見るのは、全部の項目ではありません。 食い違いと「読めなかった」項目を先に見て、残りは図面の該当箇所に印が付いた画面で流し見ます。
4番目をAIの外に置いているのも、意図してのことです。 図面の「シャンプードレッサー」をポータルの「独立洗面台」に置き換える、方位記号とバルコニーの位置から向きを決める、といった作業は、自社の決まりそのものです。 AIには図面の言い方のまま写させ、置き換えはスクリプトの一覧で行います。決まりが変わっても、直すのは一覧だけです。
02今回想定するシステム構成
図面(PDF・画像)── メールで受け取り、物件ごとの受付フォルダへ ▼【トリガー】時間主導のトリガー(15分ごと) Google Apps Script ├──▶ 新しい図面を拾う/ファイルの形式と大きさを確かめる ▼ Gemini API ── 図面を読み、掲載項目と記載の位置を返す │ 間取り・各室の畳数・専有面積・所在階・方位・設備・条件欄 ▼ Google Apps Script ├──▶ 値の形と範囲の確認、ポータルの項目への置き換え ├──▶ 登録済みの項目(物件管理の仕組みの書き出し)と突き合わせ ▼ 物件ごとのシート ── 項目の案/食い違い/読めなかった項目 ▼ 【人が確かめ、元付業者に確認】── 物件管理の仕組みへ取り込み、掲載
| 役割 | 想定する製品 | 代替候補 |
|---|---|---|
| 処理 | Gemini API(図面の画像の読み取り) | Claude API、OpenAI API |
| 連携 | Google Apps Script(受付フォルダの監視、Gemini API の呼び出し、シートへの書き出し) | Make、Power Automate |
| 差異計算 | Google Apps Script(登録済みの項目との突き合わせ) | Python |
| 保管 | 物件ごとのシート、共有のドライブ | 物件管理の仕組みの添付 |
ワークフローの製品を足さず、Apps Script で組んでいるのは、図面と結果の置き場所が共有のドライブとシートで足りるからです。 処理は「フォルダから拾う、APIを呼ぶ、シートに書く」の3つだけで、条件分岐も少ない。仕組みを増やすより、言い換えの一覧と入力の決まりを整えるほうに手間をかけます。
物件管理の仕組みには、この構成から書き込みません。 突き合わせに使う登録済みの項目は、毎朝の書き出しを読むだけです。取り込みは、人が確かめた後に、これまでどおりの画面か一括取り込みで行います。
土台になるのは、Gemini API の画像と文書の読み取りです。 画像は PNG、JPEG、WEBP、HEIC、HEIF を受け付け、本文とあわせて送る場合はリクエスト全体で20MBまでです。大きいファイルや何度も使うファイルは Files API で先に送ります。図面がPDFで届く場合は、PDFのまま渡せます。 PDFは50MBまたは1,000ページまでで、各ページは258トークンとして数えられます。Files API に送ったファイルは48時間保存されます。
座標を返せることも使います。 Gemini API は、画像の中の物の位置を、0〜1000に正規化した [ymin, xmin, ymax, xmax] の枠で返せます。読み取った値ごとに、図面のどこに書かれていたかの枠を返させ、確認の画面で図面に印を付けます。 人は図面全体を読み直さず、印の場所だけを見れば済みます。
03どうやって実装するのか
処理の起点を決める
時間主導のトリガーで15分ごとにスクリプトを動かし、受付フォルダの新しい図面を拾います。 Apps Script の時間主導のトリガーは、毎分から月1回までの間隔を選べます。毎日決まった時刻の指定は、その時刻から1時間のうちのどこかに決まるとされているので、時刻の正確さが要る処理には向きません。この業務は届いた順に処理すれば足りるので、間隔で回します。
図面は、物件ごとの受付フォルダに入れます。 フォルダ名を物件管理の仕組みの物件番号にしておけば、どの物件の図面かをファイル名から推し量る必要がありません。メールの件名に物件番号が入っているものは自動で振り分け、入っていないものだけを人が置きます。
処理が終わった図面は、処理済みのフォルダへ移します。移すのは、シートへの書き出しまで成功したときだけです。 受付フォルダに残っている数が、そのまま未処理の数になります。
入力データを集める
| データ | 中身 | 取得元 |
|---|---|---|
| 募集図面 | PDFまたは画像。間取り図、各室の表記、面積、設備の一覧、条件欄、方位記号 | 受付フォルダ |
| 登録済みの項目 | 物件番号、間取りのタイプ、専有面積、所在階、方位、設備、賃料・価格 | 物件管理の仕組みの毎朝の書き出し |
| 掲載項目の定義 | ポータルの項目名、取りうる値、設備の項目の一覧 | 掲載担当が作る一覧 |
| 設備の言い換えの一覧 | 図面に書かれる言い方と、ポータルの設備の項目との対応 | 掲載担当が作る一覧 |
| 自社の入力の決まり | 方位の取り方、サービスルームの扱い、面積の小数の扱い | 物件登録の担当が作る一覧 |
質を決めるのは、設備の言い換えの一覧です。 図面には「シャンプードレッサー」「洗髪洗面化粧台」「独立洗面」と書かれ、ポータルの項目は「独立洗面台」です。この対応をAIに毎回考えさせると、担当者が決めていた対応と少しずつずれます。 図面に書かれた言い方を写させ、対応はスクリプトの側で一覧を引いて決めます。
自社の入力の決まりも、文章にして一覧にします。 第3章の(d)にある「担当者の頭の中の決まり」を、ここで書き出します。
データの取得方法を決める
図面のファイルは、Apps Script で受付フォルダから読み、20MBを超えるものは Files API で送ってから、Gemini API を呼びます。登録済みの項目は、物件管理の仕組みが毎朝書き出すCSVをシートに取り込んでおき、物件番号で引きます。
| 取るもの | どこから | 何に使うか |
|---|---|---|
| 図面のファイル | 受付フォルダ | Gemini API に渡す |
| 読み取った値と記載の位置 | Gemini API の応答 | 項目の案と、確認の画面の印 |
| 登録済みの項目 | 毎朝の書き出し | 食い違いの突き合わせ |
| 設備の言い換えの一覧 | シート | 図面の言い方をポータルの項目に置き換える |
Files API は、同じ図面を何度も読ませるときにも使います。 確認の画面で人が「この室の畳数をもう一度読んで」と頼む場合、送り直さずに同じファイルを指定できます。保存は48時間なので、その日のうちに確認を終える運用と合わせます。図面の細かい文字が読みにくい場合は、画像1枚あたりに割り当てるトークンの上限を決める media_resolution を上げて試します。
1つのPDFに複数の物件の図面が入っていることがあります。 管理会社が空室をまとめて送ってくる場合です。1ページ1物件かどうかを先に確かめ、ページごとに分けてから渡します。
AIへ渡す前に整形する
- 形式の確認 … PDFまたは画像(PNG、JPEG、WEBP、HEIC、HEIF)であることを確かめます。それ以外は人へ戻します
- 大きさの確認 … 本文とあわせて20MBを超えるものは Files API で送ります。PDFは50MB、1,000ページが上限です
- ページの分割 … 1ファイルに複数の物件があれば、ページで分けます
- 向きの確認 … FAXを取り込んだ図面は横向きや逆さまのことがあります。向きを直してから渡します
- 解像度の確認 … PDFのページは3072×3072ピクセルより大きければ縮められ、小さければ768×768ピクセルに引き伸ばされます。FAXの図面は文字がつぶれやすいので、元付業者にPDFで送り直してもらう対象にします
- 重複の確認 … 同じ物件番号で前に処理した図面があれば、差し替えとして印を付けます
5番目を軽く見ないでください。 小さく取り込まれた図面は、引き伸ばされても文字は増えません。「洋6.0」が「洋8.0」に見える図面は、AIにも人にも同じように見えます。 読めない図面を読ませるより、送り直してもらうほうが確実です。
AIに処理させる
させるのは、図面に書かれている文字と記号を、決めた項目に写し、それぞれの位置を返すことです。
| 読み取る項目 | 読み取り方 | 読めないときの扱い |
|---|---|---|
| 間取りのタイプ | 図面に書かれた「1LDK」等の表記を写す | 表記が無ければ null。部屋数から作らない |
| 各室の名前と畳数 | 「洋6.0」「LDK 9.5」等の表記を室ごとに写す | 表記が無い室は畳数を null |
| 専有面積・延べ面積 | 数値と単位を写す。「壁芯」「登記」の別があれば写す | 書かれていなければ null |
| 所在階・階建て | 条件欄の記載を写す | 同上 |
| 方位 | 方位記号の向きと、主要な開口部・バルコニーの位置 | 方位記号が無ければ null |
| 設備 | 設備の一覧・アイコンの言い方をそのまま写す | 読めないアイコンは unreadable |
| 注記 | 「納戸」「サービスルーム」「図面と現況が異なる場合は現況優先」等 | そのまま写す |
方位だけは、記号の読み取りと位置の関係を見る必要があります。 方位記号の向きと、バルコニーや大きな窓がどちら側にあるかを返させ、「南向き」と決めるのはスクリプトの側の決まりで行います。 方位をどう取るかは自社の入力の決まりで、AIの判断にしません。
| させないこと | 理由 |
|---|---|
| 線の長さや縮尺から畳数・面積を測る | 書かれていない値を作ることになる |
| 部屋数から間取りのタイプを作る | 「1LDK」と書くかどうかは表示の決まりに関わる |
| 設備の言い方をポータルの項目に置き換える | 言い換えの一覧で決める。AIに毎回考えさせない |
| 登録済みの項目とどちらが正しいかの判断 | 元付業者に確かめて人が決める |
| 賃料や価格の読み取り | 条件の変更が多く、別の経路で確かめる |
設備のアイコンは、言い方より読み違いが起きやすい箇所です。 管理会社ごとにアイコンの絵柄が違い、凡例が図面の隅に小さく書かれていることもあります。凡例があればその文字を写させ、凡例の無いアイコンは unreadable にします。 絵柄から「たぶん浴室乾燥機」と決めさせると、似た絵柄の換気扇と取り違えます。
1行目がいちばん起きやすい失敗です。 畳数の書かれていない室があると、AIは図面の他の室と比べて「約4.5畳」と埋めます。その数字は、どの書類にも根拠がありません。
指示内容を固定する
あなたは不動産仲介会社の物件登録の担当として、募集図面に書かれている
内容を、決められた項目に写す役割です。図面に書かれている文字と記号だけを
根拠にしてください。
【写す項目】
1. 間取りのタイプ(図面に書かれた表記)
2. 各室の名前と畳数(室ごとに、書かれた表記のまま)
3. 専有面積または延べ面積(数値、単位、壁芯・登記などの注記)
4. 所在階と階建て
5. 方位記号の向きと、バルコニー・主要な窓が図面のどちら側にあるか
6. 設備(一覧やアイコンの言い方のまま)
7. 注記(納戸、サービスルーム、現況優先などの記載)
【厳守事項】
- 書かれていない値は null にしてください。推測で埋めないでください。
- 間取り図の線の長さ、縮尺、他の部屋との比較から、畳数や面積を
計算しないでください。
- 部屋の数から「1LDK」などの間取りのタイプを作らないでください。
図面に表記が無ければ null です。
- 設備は図面の言い方のまま写してください。言い換えないでください。
- 「南向き」などの向きを決めないでください。方位記号の向きと、
バルコニーと窓の位置だけを返してください。
- 文字がつぶれて読めない場合は、読めたように見える値を入れず、
status を unreadable にしてください。
- 値ごとに、図面のどこに書かれていたかを box_2d で返してください。
座標は 0〜1000 に正規化した [ymin, xmin, ymax, xmax] です。
- 1枚に複数の物件の図面があると判断した場合は、読み取りをせず
multiple_properties を true にしてください。
- 賃料、価格、管理費は読み取らないでください。
「縮尺から計算しない」を明記しないと、計算します。 間取り図には寸法線や縮尺が描かれていることがあり、AIはそれを手がかりに畳数を出します。出てきた数字がもっともらしいほど、人の確認で通ってしまいます。
「賃料、価格を読み取らない」も意図して入れています。 図面の条件欄の賃料は、届いた後に変わることが多く、図面の賃料で掲載すると、古い条件で募集することになります。 賃料と価格は物件管理の仕組みの登録だけを使います。
出力形式を固定する
JSON Schema を渡し、次の形のJSONで受け取ります。
{
"property_no": "",
"page": 1,
"multiple_properties": false,
"fields": [
{ "item": "layout_type | room | area | floor | orientation | equipment | note",
"label": "", "value": "", "unit": "",
"status": "ok | not_written | unreadable",
"box_2d": [0, 0, 0, 0] }
],
"orientation_hint": { "north_arrow_deg": null, "balcony_side": "top | bottom | left | right | null" }
}
1つ目の理由は、status で「書かれていない」と「読めない」を分けられることです。 not_written は図面に無いので元付業者に聞くもの、unreadable は図面を送り直してもらうものです。同じ空欄でも、次にすることが違います。
2つ目は、box_2d で確認が速くなることです。 確認の画面で図面に枠を描けば、人は値と図面の該当箇所を並べて見られます。
構文の正しさと値の正しさは別です。 Gemini の構造化出力は、JSONとして正しい形を返しますが、値はアプリケーションの側で確かめるよう公式の説明にもあります。スクリプトで次を確かめます。
| 確かめること | 規則 |
|---|---|
| 面積の範囲 | 数値で、0より大きく、物件の種別ごとの上限以下 |
| 畳数の合計 | 各室の畳数 × 1.62㎡ の合計が専有面積を超えていないか |
| DK・LDKの表記 | 居室の数に応じた広さの目安を下回っていないか |
| 設備の対応 | 言い換えの一覧に無い言い方は「対応未登録」 |
2行目と3行目は、表示の決まりから来ています。 不動産の表示に関する公正競争規約の施行規則は、畳数で表示する場合の1畳あたりの広さを1.62平方メートル以上(各室の壁心面積を畳数で除した数値)としています。また、DK・LDKの広さの目安となる指導基準は、居室が1部屋ならDKは4.5畳・LDKは8畳、2部屋以上ならDKは6畳以上・LDKは10畳以上を目安(下限)としています。目安を下回る表記の図面は、食い違いとは別に「表記の確認」として出します。
システムへ連携する
| つなぎ先 | 方式 | 内容 |
|---|---|---|
| 受付フォルダ | Apps Script で読み取り | 新しい図面を拾い、処理済みへ移す |
| Gemini API | API呼び出し | 図面の読み取りと記載の位置 |
| 登録済みの項目 | 毎朝の書き出しを取り込んだシート | 食い違いの突き合わせ |
| 物件ごとのシート | 書き出し | 項目の案、食い違い、読めなかった項目 |
| 物件管理の仕組み | 人が確かめた後の一括取り込み | 掲載の内容を登録する |
食い違いの突き合わせは、項目ごとに決まりを分けます。
| 項目 | 食い違いとする条件 |
|---|---|
| 専有面積 | 小数第2位まで比べて違う。登記と壁芯の別が違う場合は別に出す |
| 間取りのタイプ | 表記が違う。「SLDK」と「LDK+納戸」は同じとみなす等、自社の決まりで寄せる |
| 設備 | 登録にあって図面に無い、図面にあって登録に無い |
| 方位 | 自社の決まりで出した向きと登録の向きが違う |
シートに書き出す食い違いの一覧は、次の形にします。
| 物件番号 | 項目 | 図面の値 | 登録の値 | 種類 | 次にすること |
|---|---|---|---|---|---|
| 10234 | 専有面積 | 25.12㎡(壁芯) | 25.21㎡ | 値の違い | 元付業者に確認 |
| 10234 | 設備 | (記載なし) | エアコン | 登録にあって図面に無い | 現況を確認 |
| 10251 | 間取り | 1LDK(LDK 7.0) | 1LDK | 表記の確認 | 表記を決める |
「次にすること」の列まで出すと、担当者は一覧を上から片付けるだけになります。
設備の「登録にあって図面に無い」を必ず出してください。 登録が先に作られた物件では、前の入居のときの設備が残っていることがあります。 撤去されたエアコンを掲載し続けるのは、この型です。
人が確認する
multiple_propertiesとunreadableを先に見る … 図面の分け直しか、元付業者への送り直しの依頼です- 食い違いを見る … 図面の印の場所と登録の値を並べて見ます。どちらが正しいかは、元付業者に確かめてから決めます
- 「表記の確認」を見る … DK・LDKの目安を下回る表記や、畳数の合計が面積を超えるものです。掲載の表記をどうするかを決めます
- 残りを流し見る … 印の付いた図面と項目の案を並べて見て、取り込みに回します
目標は、1件をならして4分です。 食い違いの無い図面は流し見て1〜2分、元付業者への確認が要るものは電話を含めて10分を超えます。それより多い月は、言い換えの一覧が足りないか、読みにくい図面が増えています。
例外に対処する
| 起きること | 対応 |
|---|---|
| 1ファイルに複数の物件の図面がある | ページで分けて再投入。分けられないものは人へ |
| FAXの図面で文字がつぶれている | unreadable で人へ。元付業者にPDFで送り直してもらう |
| 図面が横向き・逆さま | 向きを直して再投入 |
| 物件番号の無い図面が届く | 受付フォルダに置かず、物件登録の担当へ戻す |
| 言い換えの一覧に無い設備の言い方 | 「対応未登録」として出し、一覧に足すかを掲載担当が決める |
| 図面が差し替えで届く | 前の読み取り結果と比べ、変わった項目だけを出す |
| 図面に「現況優先」の注記がある | 注記を写し、食い違いは現況の確認を先にする |
| 売買の図面で土地と建物の面積が並ぶ | 項目を分けて写させ、取り違えを突き合わせで見る |
| Gemini API が応答しない | 受付フォルダに残し、次の回で再処理する |
下から2行目は、条件の変更を拾う機会にもなります。 差し替えの図面で設備や面積が変わっていれば、掲載中の内容も直す必要があります。
記録を残す
- 元の図面のファイルと、受け取った日時、物件番号
- Gemini API に渡した指示と、返ってきたJSONの全文
- スクリプトの値の確認の結果と、食い違いの一覧
- 人が項目の案を直した記録 … どの項目を、どの値に変えたか
- 元付業者に確かめた日時と、確かめた結果
- 物件管理の仕組みへ取り込んだ日時
4つ目が、言い換えの一覧を育てる材料になります。 同じ言い方の設備で毎回直しているなら、一覧の対応が足りていません。
04実装レベルの3段階
最小構成では件数がさばけません。 月450件を1枚ずつ貼るのは、打ち込むのと変わりません。確かめるための段階です。 半自動化で、1件12分が7分程度になります。 打ち込みは無くなりますが、設備の言い換えと、登録との見比べが手作業で残ります。本格構成で4分になり、この段階が本記事の想定です。 差が大きいのは、登録との見比べが、画面と図面を往復する手作業だからです。 段階を飛ばさないでください。 半自動化を1か月回すと、言い換えの一覧に足りない言い方と、読めない図面を送ってくる元付業者が分かります。そこを整えてから突き合わせを足すほうが、食い違いの一覧が「読めなかっただけ」で埋まらずに済みます。
05工数削減シミュレーション
導入後 450件 × 4分 ÷ 60 = 30 時間/月
自社条件で導入効果を整理したい方へ
このユースケースを自社に当てはめた場合の前提値と削減見込みを、業務ヒアリングをもとに整理します。
06向いている企業・向いていない企業
- 管理会社や元付業者から募集図面(マイソク)をPDFや画像で受け取り、賃貸・売買のポータルサイトへ毎月数百件を掲載している仲介会社。図面を見ながら間取り・面積・設備を物件管理の画面に手で打ち込んでおり、設備の付け漏れや畳数の打ち間違いが掲載後に見つかる場合。物件管理の仕組みから登録済みの項目を書き出せる場合。
- 掲載する物件の大半が自社の管理物件で、図面ではなく物件のデータベースから項目を直接出せる場合。図面が手書きの見取り図だけで、数字や設備の記載がほとんど無い場合。掲載が月に数十件で、目で見て入れても負担が小さい場合。なお、広告の表示が規約に合っているかの最終的な判断は、この構成では代替できません。
07最小構成で試す方法
- 先月掲載した物件の図面から20件を選ぶ(うち数件は、掲載の後に設備や面積の誤りが見つかったものを入れる)
- 手元の Gemini のアプリに、図面を1枚ずつ貼り付ける
- 「この図面に書かれている間取りのタイプ、各室の畳数、専有面積、所在階、設備を、書かれているとおりに写してください。書かれていない値は空欄にし、縮尺から計算しないでください」と指示する
- 出てきた値を、実際に掲載した内容と突き合わせる
- 誤りが見つかった物件で、AIが正しく読めていたかを見る
20件は必ずやってください。 スクリプトを組む前に、「自社に届く図面の書式で読めるのか」を確かめます。
| 出てきた内容 | 判断 |
|---|---|
| 掲載した内容と同じ値が出た | スクリプトと突き合わせの組み立てに進む |
| 書かれていない畳数を計算で埋めた | 指示の書き方で直る。構成は有効 |
| FAXの図面で読めない件数が多い | 図面の受け取り方が先。 AIの問題ではない |
掲載の後に誤りが見つかった物件でAIが正しく読めていれば、それがこの構成の価値です。 人が見落とした設備や打ち間違えた数字を、図面から正しく写せていたかを1件ずつ確かめてください。逆に、AIも同じ箇所を読み違えていれば、図面そのものが読みにくいということで、受け取り方を直す材料になります。
08実装時につまずきやすいポイント
| 問題 | 対策 |
|---|---|
| 書かれていない畳数が縮尺から埋まる | 計算を禁じ、not_written を返させる |
| 部屋数から間取りのタイプが作られる | 表記を写させ、無ければ null |
| 設備の言い換えが担当者の決まりとずれる | 言い方を写させ、置き換えは一覧で行う |
| 方位の取り方が担当者ごとに違う | 記号と位置だけを返させ、向きは自社の決まりで決める |
| FAXの図面で数字を読み違える | 解像度を確かめ、送り直してもらう |
| 1ファイルに複数の物件がある | ページで分けてから渡す |
| 図面の賃料で掲載してしまう | 賃料・価格は読み取らせない |
| JSONの形は正しいのに値がおかしい | 範囲と合計をスクリプトで確かめる |
| 登録にあって図面に無い設備を見落とす | 両方向の食い違いを出す |
| 毎日決まった時刻に動かない | 時刻の指定は1時間のうちのどこかに決まる。間隔で回す |
上の2行が、この構成の失敗のほとんどです。 どちらも「図面に無いものをAIが作る」という同じ形で、作られた値ほど人の確認を通ってしまいます。
下から2行目も早く効いてきます。 図面だけを正として突き合わせると、撤去された設備が登録に残り続けます。食い違いは両方向に出し、どちらを採るかは人が決めます。
09セキュリティ・AIガバナンス上の注意点
この構成で扱うデータ: 物件の所在地、間取り、面積、設備、元付業者の連絡先です。図面に貸主や前の入居者の氏名が書き込まれていることがあります。
- 個人の氏名が書かれた図面に気をつける … 図面の余白に貸主の氏名や連絡先の書き込みがあるものは、その部分を読み取りの項目に含めず、シートにも写しません
- 掲載の内容を自動で確定しない … 出すのは項目の案までです。掲載の内容に責任を持つのは仲介会社です
- 表示の決まりの判断を代替しない … 不動産の表示に関する公正競争規約は、物件の方位について実際よりも優良であると誤認されるおそれのある表示などを不当な表示として挙げています。「表記の確認」は判断の材料で、どう表示するかは担当者と、必要に応じて社内の表示の責任者が決めます
- 生成AIのサービスは、入力を学習に使わない契約と設定のものを選ぶ … 掲載前の物件の情報は、元付業者から預かった情報です
- 図面の受け取り方を見直す材料にする …
unreadableが続く元付業者には、PDFでの送付を頼みます。読み取りの精度を上げようとするより確実です - Files API に送ったファイルの扱いを決める … 送ったファイルは48時間保存されます。処理が終わったら削除する運用にするかを決めておきます
誤りが起きた場合のリスクは、図面に無い値で掲載することと、図面と登録の食い違いを見落として掲載することの2つです。 前者はAIに計算させると起き、後者は片方向の突き合わせで起きます。どちらも設計の段階で防げます。
10まず何から始めるか
1週目:言い換えの一覧と入力の決まりを書く
掲載担当と物件登録の担当で、図面に書かれる設備の言い方とポータルの項目の対応、方位の取り方、サービスルームと納戸の扱いを書き出します。件数の多い管理会社の図面10枚から言い方を拾うと、大半が埋まります。
この一覧が、後でスクリプトが読む言い換えの一覧そのものになります。
2週目:20件で試す
先月の図面から20件を選び、手元の Gemini のアプリで項目を写させます。書かれていない畳数を埋めていないかを最優先で見ます。
3週目:受け取り方を決める
FAXで図面を送ってくる元付業者を洗い出し、PDFでの送付を頼みます。 あわせて、メールの件名に物件番号を入れる運用を決めます。
4週目:受付フォルダからシートまでをつなぐ
Apps Script で受付フォルダを見張り、Gemini API を呼び、項目の案をシートに書き出すところまで作ります。この時点では登録との突き合わせをしません。
2か月目: 登録済みの項目との突き合わせと、表記の確認を足します。人が項目の案を直した割合を毎週数えます。3か月目以降: 図面への印を足し、1件12分が何分になったかを実測します。掲載の後に設備や面積の誤りを指摘される件数が減った時点で、この構成は完成です。
11関連ユースケース
12この仕組みを理解するための記事
13技術仕様の確認日・参考情報
| 確認した内容 | 情報源 | 確認日 |
|---|---|---|
画像の形式(PNG、JPEG、WEBP、HEIC、HEIF)、本文とあわせて20MBまでのインラインの上限、Files API、画像のトークン(384ピクセル以下は258、それより大きければ768×768の区画ごとに258)、0〜1000に正規化した [ymin, xmin, ymax, xmax] の枠、media_resolution | Google AI for Developers: Image understanding | 2026-10-06 |
| PDFが50MBまたは1,000ページまでであること、1ページ258トークン、3072×3072より大きいページは縮小・小さいページは768×768へ拡大、Files API のファイルが48時間保存されること | Google AI for Developers: Document understanding | 2026-10-06 |
| 構造化出力で JSON Schema を渡せること、対応する型と制約、出力の構文は正しくても値はアプリケーションで確かめるべきこと | Google AI for Developers: Structured output | 2026-10-06 |
| 時間主導のトリガーが毎分から月1回まで選べること、決まった時刻の指定はその時刻から1時間のうちのどこかに決まること | Google for Developers: Installable triggers | 2026-10-06 |
| 施行規則第9条第13号(面積はメートル法)、第15号(建物の面積は延べ面積、マンションは専有面積)、第16号(畳1枚当たり1.62平方メートル以上、各室の壁心面積を畳数で除した数値)、第17号(納戸等の表示)。DK・LDKの広さの目安となる指導基準(平成23年11月11日。居室1部屋でDK4.5畳・LDK8畳、2部屋以上でDK6畳以上・LDK10畳以上)。方位について誤認されるおそれのある表示が不当表示に挙げられていること | 不動産公正取引協議会連合会: 不動産の表示に関する公正競争規約・同施行規則等(規約集) | 2026-10-06 |
広告の表示が規約に合っているかの判断は、社内の表示の責任者と、必要に応じて所属する不動産公正取引協議会に確認してください。 本記事は規約集で確認できた範囲だけを扱っています。
実装ステータス:構成例。 公開仕様に基づいて設計した構成であり、当社で実際に構築・検証したものではありません。工数の数値はモデル条件による試算です。
自社の業務に使えるAI活用候補を整理します
このユースケース(UC-0492)についてのご相談はこちらから。
