インドの住所に関するフィードバックを取得する

課題: インドの住所の品質を理解する

インドの住所体系は、多様性と複雑さで知られています。住所は非常に詳細に記述されることがあり、標準化されておらず、地元のランドマークが含まれていることもあります。また、正確な PIN コードや一貫したコンポーネントの順序がないこともよくあります。これは、正確な位置情報に依存する個人、e コマース プラットフォーム、物流会社、サービス プロバイダにとって大きな課題となります。インドの住所でよく発生する主な問題は次のとおりです。

  • PIN コードがないか、間違っている: 郵便物や荷物の効率的なルーティングに不可欠ですが、不正確であったり、記載されていなかったりすることがよくあります。
  • スペルミス: 地域区分、都市、州の名前のスペルミスは、誤解につながる可能性があります。
  • 標準外のコンポーネントの順序: 住所要素(番地、通り、地域区分、都市など)の順序は大きく異なるため、自動処理が困難になります。
  • 標準化されていない: 口語的な用語、略語、説明的な参照(「古い寺院の近く」など)は一般的ですが、標準システムでは理解されません。
  • 関係情報の記載: 「S/o」(Son of)、「D/o」(Daughter of)、「C/o」(Care of)などの用語が住所に埋め込まれていることが多く、位置情報以外のデータが追加されます。
  • サブプレミス表記のバリエーション: ユニット番号、番地、区画番号(「2/1」など)などのコンポーネントは、「2/1」、「2-1」、「2 by 1」、「No 2, 1st part」など、さまざまな方法で記述されるため、一貫して解析することが困難です。
  • サブプレミスの詳細の普及: 多くの住所、特に都市部では、アパート番号、フラット番号、建物の棟の詳細など、ラストワンマイル配送に不可欠なサブプレミスの情報が含まれていますが、構造化されていないことがよくあります。
  • 曖昧さ: 住所が複数の方法で解釈されることがあり、正確な位置を特定できないことがあります。

これらの課題により、配送の失敗、運用コストの増加、カスタマー エクスペリエンスの低下、データ分析とサービス計画の困難が生じる可能性があります。住所の品質に関する迅速で実用的なフィードバックを得る方法が明らかに必要です。

解決策: AI を活用した住所フィードバック

これらの課題に対処するため、生成 AI を使用したソリューションをご紹介します。

このシステムは、インドのユーザーに住所に関する貴重なフィードバックを提供し、潜在的な問題と、ジオコーディングの結果と全体的な精度を向上させるための適切な形式を理解できるように設計されています。

基本的な考え方は、Vertex AI で Gemini モデルを使用して次のことを行うことです。

  • 複雑で、多くの場合形式が正しくないインドの住所を分析して解釈する。
  • 一般的なエラーと不整合を特定する。
  • 標準化された修正バージョンを提案する。
  • 変更内容を明確に説明する。

このシステムには、次の 2 つのフォーム ファクタがあります: - REST API - ウェブ UI

インドのお客様がこのツールを使用する方法

主な目的は住所の品質に関するフィードバックを提供することですが、次のような特典もあります。

  1. 配送可能性の向上: 企業の場合、住所の構造を改善する方法を理解することで、配送の失敗を減らし、運用コストを削減し、顧客満足度を向上させることができます。個人も、適切な形式の住所を使用することで、荷物や郵便物をより確実に受け取ることができます。
  2. データの強化: 企業は、このツールから得られた分析情報を使用して(または基盤となる API を統合して)、既存の顧客住所データベースのクリーンアップと標準化をガイドし、分析とターゲット サービスの向上につなげることができます。
  3. 視覚的な確認: デュアルピン マップ表示は特に便利です。ユーザーは、元の住所と修正された住所が同じ場所を指しているか、異なる場所を指しているかを視覚的に確認できます。これにより、「クリーンアップ」されたバージョンが目的の場所を正確に反映しているかどうか、または元の入力が曖昧すぎたり、誤りがあったりして正しいジオコーディングができないかどうかを特定できます。

提供されたフィードバックを通じて住所の具体的な課題を把握することで、ユーザーは是正措置を講じ、記録を更新し、位置情報をより効果的に伝達できます。

このアプリケーションとは

このウェブ アプリケーションは、AI を活用した住所フィードバック システムのインターフェースとして機能します。ユーザーと企業が物理的な住所を検証、理解、改善できるように設計されており、特にインドの住所のニュアンスに重点を置いています。このアプリケーションは、ユーザーが次のことを行えるユーザー フレンドリーなインターフェースを提供します。

  • 住所を入力する: 直接入力するか、複数の住所を貼り付けて一括処理します。
  • クリーンアップされた住所を受け取る: アプリケーションは入力を処理し、AI モデルの理解に基づいて標準化された修正バージョンを提供します。
  • 変更内容を把握する: 元の住所に加えられた具体的な変更がハイライト表示され、フィードバック プロセスの透明性が確保されます。
  • 違いを視覚化する: 元の住所とクリーンアップされた住所の両方がインタラクティブ マップにピン留めされるため、ユーザーは位置情報を視覚的に比較し、潜在的な不一致を一目で特定できます。
  • 詳細なコンポーネントを取得する: ジオコーディングされた(クリーンアップされた)住所は、構成要素(番地、地域区分、都市、郵便番号など)に分割され、構造化されたビューが提供されます。

このアプリは、住所の品質を迅速に評価し、潜在的な問題を把握し、標準化された形式に依存するシステムで住所の構造を改善する方法を確認するのに特に便利です。

バックエンド アーキテクチャ: Gemini と Vertex AI を活用

このアプリケーションが住所を理解して修正できるインテリジェンスは、Google Cloud の高度な AI テクノロジーに由来しています。

  • **コア住所処理: ** 住所文字列の解析、理解、修正、標準化という基本的なタスクは Google の Gemini 2.5 Flash モデルによって処理されます。住所が送信されると、次のようになります。
    • フロントエンド アプリケーションは、入力された住所をバックエンド サービスに送信します。
    • このバックエンド サービスは Gemini API を活用します。Gemini 2.5 Flash モデルには、正確で標準化された処理を確認するための詳細なプロンプトが指示されます。モデルに与えられるコア指示は次のとおりです。
You are an address cleaning expert. Your task is to take malformed addresses
and output cleaned and standardized versions. All addresses will be from India.

BEGIN:
Follow these instructions:
Remove any mention of "House Number," "H.No," "Door Number," "D.No,"
"Building No", "Flat No." etc. along with the number it's associated with
Remove any "C/O," "S/O," etc.
DO NOT REMOVE any name of building
It should also remove any name of person or actual house numbers etc which
appear after the texts mentioned in the previous point
Ensure there are no duplicate mentions of town names, state names, etc.
If no valid zip code is available, add an error in the Errors field:
"No valid zip code found. Please verify."
Remove mention of any Floors in the address
If there are any mention of "Near or landmark" put that in a new field called
"address_descriptors"
Expand any rd, ln, st and similar other abbreviations to road, lane, street etc.
END:

BEGIN: Structuring the output
Output the cleaned address in a single line.
Output address should put State, Country, Zip code at the end in that order.
If any critical component of the address is missing, mention that in errors section.
**Critically important:** Provide a detailed description of every change made
to the address in the "changes_made" field. Do not omit this field.
IF a House number or unit number was removed add that in a separate field
called "subpremise_details".
Output the errors in the field called "errors". If no errors, provide an empty
array.
Output all responses in JSON format.
END:

この構造化されたプロンプトにより、Gemini 2.5 Flash は次のことを行います。

  • 複雑で構造化されていない住所入力を分析する。
  • 主要な住所コンポーネント(例: 番地 /フラット番号、建物名、通り、地域区分、地域の下位区分、 都市、州、PIN コード)を特定して抽出する。
  • 一般的なスペルミスとバリエーションを修正する。
  • コンポーネントをインドに適した標準化された形式に並べ替える
  • 可能な場合は、不足している重要な情報を推測またはフラグ設定する。
  • 「変更内容」とエラーのリストを生成し、 透明性を提供する。 多様な言語パターンとコンテキスト情報を処理しながら、これらの詳細な指示に従うモデルの能力は、さまざまな住所形式での有効性の鍵となります。

  • サービングとスケーラビリティ(Vertex AI/Google Cloud 上の Cloud Run): Gemini API への呼び出しをオーケストレートし、結果をフロントエンドに返すバックエンド サービスは、サーバーレス コンテナ化アプリケーションとして構築されます。

このサーバーレス アーキテクチャは、このようなサービスをデプロイする方法を示しています。デモ アプリケーションとしての主な目的は、お客様が住所の品質に関するフィードバックを迅速に取得できるようにすることです。

アプリケーションの使用方法

このアプリケーションは、インドの住所フィードバック アプリでご利用いただけます。

使用方法は次のとおりです。

  1. 住所を入力する: 入力フィールドにインドの住所を入力または貼り付けます。
  2. 住所を処理する: [Clean Address] ボタンをクリックします。
  3. 結果を確認する: アプリケーションに次の情報が表示されます。
    • クリーンアップされた住所。
    • 元の場所とクリーンアップされた場所の両方を示す地図。
    • 住所コンポーネントの内訳。
    • AI によって行われた変更のリスト。
    • 検出されたエラー。

直接 API 呼び出しの例(デベロッパー向け)

住所処理機能を直接統合しようとしているデベロッパーやシステムの場合は、バックエンド サービスをプログラムで呼び出すことができます。cURL を使用した例を次に示します。

curl -X POST \
  https://gemini-address-cleaner-480439120941.us-central1.run.app/clean_address \
  -H "Content-Type: application/json" \
  -d '{
    "input_address": "S/O Laum Mirzapur Mirzapur Muzaffarpur Bihar India Mirzapur purani Darbhanga road SELAMBA BIHAR 843103"
  }'

このコマンドは、JSON ペイロードに住所文字列を含む POST リクエストを送信し、アプリケーションに表示されるものと同様に、処理された住所とその他の関連情報を含む JSON レスポンスを返します。
このアプリケーションは、住所の複雑さをシンプルにし、特にインドのような多様で動的な環境で精度と効率を高めるための貴重なツールを提供することを目的としています。