Upgrade to Pro — share decks privately, control downloads, hide ads and more …

地図と生成AI

 地図と生成AI

2025/7/18(金)に開催されたAzure OpenAI Service Dev Days 2025 ( https://azureai.connpass.com/event/354972/ ) の懇親会LT大会に参加した時に発表した資料です。

Avatar for なかしょ

なかしょ

July 19, 2025
Tweet

More Decks by なかしょ

Other Decks in Technology

Transcript

  1. 自己紹介 • なかしょ(中島進也) @nakasho_dev • 所属:NTTテクノクロス株式会社 デジタルトランスフォーメーション事業部 • 業務:MaaS関連のスマートフォンアプリ開発担当 •

    趣味: ➢妻とモンハンデート ➢IT関連の勉強会(主にモバイル系 or アジャイル系 or Microsoft系) ➢技術コミュニティの運営スタッフ ✓eXtreme Programming Japan User Group(XPJUG) 2019〜 ✓TDD BootCamp Online (TDDBC) 2020~ ※本資料は私個人の意見であり、所属企業・部門見解を代表するものではありません。
  2. GeoJSONは地図の設計図 6 • 地理空間情報を扱うJSONフォーマット • Feature ➢Geometry ✓Point, LineString, Polygon,

    MultiPoint, MultiLineString, MultiPolygon ➢Properties ✓属性情報をKey-Valueで持つ ✓GeoJSONに対応したSDKによっては特定のKeyを自動で解釈できる
  3. 7 https://www.geospatial.jp/ckan/dataset/ksj-p29-13 { "type": "Feature", "properties": { "行政区域コード": "13112", "公共施設大分類":

    "16", "公共施設小分類": "16001", "学校分類": "16001", "名称": "太子堂小学校", "所在地": "太子堂5-7-4", "管理者コード": 3.0 }, "geometry": { "type": "Point", "coordinates": [ 139.666776, 35.646405 ] } } G空間情報センターで無料 で配布されている国土数 値情報(学校)ー東京都 を使用。
  4. 8 https://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-N02-v2_3.html { "type": "Feature", "properties": { "N02_001": "11", "N02_002":

    "2", "N02_003": "山手線", "N02_004": "東日本旅客鉄道" }, "geometry": { "type": "MultiLineString", "coordinates": [[ [139.7066,35.72145], [139.70596,35.71933] ]] } } 国土交通省の国土数値情 報ダウンロードサイトで 無料で配布されている鉄 道データから「新幹線」 と山手線を抽出して使用。
  5. 地図操作アプリを作りたい 9 • 以下のライブラリ、サービスを使用したWebアプリ ➢Kotlin ➢Spring Boot ➢Spring AI ➢Azure

    Open AI ➢ホットペッパーグルメサーチAPI ✓https://webservice.recruit.co.jp/doc/hotpepper/reference.html • IntelliJ + Github Copilot Agent modeで開発 ➢Claude Sonnet 4を使用 • ソースコードは触らない • AIが開発したコードは原則Accept
  6. 指示内容 10 • 右側にチャット欄、左側にAzureMapsのWeb地図が表示されて いて、チャットで指示をすると地図を自動で移動してくれて、 ピン立てやルート案内をしてくれるWebアプリを作りたい。 チャットの解釈にはAzure OpenAIを使用する。 GISの情報につ いてはAzureMapsのAPIを使う。

    • RECRUIT_API_KEY という環境変数でリクルートWEBAPIの キーを設定している。 リクルートWeb APIのグルメAPIを使用して、 地図上にピンを立てるようにしてほしい。 APIで受け取った結果を GeoJSON形式にしてAzureMapsに渡してピンを表示したい。