Spatial AI 可觀測性

作者 The Kaleidr Team · 發布於 2026年10月1日 · 13 分鐘讀完

一條 Spatial AI 可觀測性追蹤在包含三個地點的地圖上,從請求與授權經過資料、地理計算、排序、動作一路延伸到結果。

Spatial AI 可觀測性追蹤一個位置感知系統如何從請求開始,經過已授權地點、地理計算、排序結果、地圖動作,最後到達主機系統中的業務結果。模型延遲與 token 數可以顯示一次呼叫已完成,但這兩個數字無法說明該地點是否符合資格,也無法說明客戶是否完成工作。真正有用的紀錄是決策路徑,而且應維持足夠精簡,讓團隊能解釋結果,同時不複製私人位置資料。

以下章節會把系統遙測與地理決策分開,說明應追蹤哪些內容,以及哪些內容應留在日誌之外。相關閱讀包括 Spatial AI Accuracy Evaluation 與 An Enterprise Spatial AI Pilot。即使服務圖看起來健康,也可能隱藏錯誤的地點。

Spatial AI 可觀測性重點

  • 追蹤決策: 授權、擷取、地點身分、地理、資格、排序、工具與主機結果應作為獨立 span 紀錄。
  • 保留 ID,而不是副本: 地點、路線、政策、模型與動作的識別碼,比貼入完整 prompt 更能解釋決策。
  • 最小化內容: 機密資訊、原始私人紀錄與精確位置,預設不進入遙測儲存區。
  • 記錄被移除的候選: 只有最終結果數量還不夠,還要知道每個候選為何離開集合。
  • 共享同一套失敗詞彙: 離線測試案例與正式環境事故應使用相同分類。

什麼是 Spatial AI 可觀測性?

客戶可能會問:回家路上哪一家商店還有某件商品,而且抵達時仍然營業?答案取決於身分、目前庫存、營業時間、路線、資格規則、排序政策、地圖動作,以及使用者最後是否真的選了某家商店。如果追蹤只停在模型呼叫,就算能回報 token 數與延遲,也可能漏掉以上每一個步驟。這裡的可觀測性代表團隊能從結構化訊號中重建決策,而不是把每一個 prompt 都封存。

比較只監控延遲、token、錯誤與工具呼叫的語言模型監控,以及從使用者經過擷取、地理、排序與驗證到最終結果的 Spatial AI 追蹤。

左側面板只看模型本身。右側面板則把模型視為擷取、地點解析、資格、排序、工具驗證與地圖動作中的一個 span。這種拆分是一種可觀測性模式,不是 Kaleidr 的基準測試。

三種「事實」必須匯合。系統事實包含延遲、錯誤、重試與相依服務健康狀態。決策事實包含哪些地點 ID 已授權、哪些候選因硬性規則被淘汰、執行了哪一條路線,以及驗證了哪一項動作。結果事實包含是否選擇地點、是否開啟路線,以及主機工作流程是否完成。只顯示第一種事實的儀表板可能看起來很平靜,但產品卻正在推薦一家已打烊的商店。只顯示地圖互動的儀表板也可能顯得很活躍,而背景正在不斷重試高成本工具。

一條 Spatial AI 追蹤應包含什麼?

一次請求應在所有實際執行階段中攜帶穩定的 request ID。授權會記錄政策版本與允許或拒絕結果。擷取會記錄資料來源與傳回紀錄數量,而不是私人資料列本身。地點解析會記錄候選 ID。路由會記錄 route ID 與狀態。資格判斷會記錄剩下多少候選,以及其他候選為何被移除。排序會記錄政策版本與已排序 ID。模型 span 會記錄供應商、版本標籤與 token 數。工具驗證會記錄建議動作是被拒絕還是執行。最後的事件會記錄所選地點,以及在主機系統回報時記錄已完成的工作流程。

端到端 Spatial AI 追蹤示意圖,包含授權、擷取、地點解析、路由、資格、排序、模型、工具驗證與地圖執行等子 span。

父 span 是請求。子 span 涵蓋可獨立失敗的階段,最後標記分別是「已選擇地點」與「工作流程已完成」。圖中的時間只是示意,不是 Kaleidr 的實測延遲。

並不是每個請求都需要每一個 span。「顯示這個地點」這類動作可以跳過排序。服務推薦則可能使用完整鏈路。追蹤應明確指出哪些階段已執行、哪些階段被略過,這樣缺少路由 span 時就不會被誤判為路由成功。圖中的版本標籤,包括卡片上可能出現的模型名稱,都只是範例中繼資料,不是 Kaleidr 模型目錄。

Trace、Metric、Event 與 Log 應如何區分?

Trace 回答一次請求中的時間花在哪裡。Metric 回答某個比例是否在多個請求之間持續惡化,例如 p95 延遲、no-result 比例或工具失敗率。Event 回答某個時間點發生了什麼變化,例如候選被移除、地點被選擇或動作被拒絕。Log 保存不必成為正式指標的診斷細節,例如 parser warning。把這些工作混在一起,會讓成本最高的儲存方式變成預設儲存方式。

OpenTelemetry 的事件指南也畫出相同邊界。具有持續時間與明確邊界的操作應放在 span 中。檢查點、狀態變更,或較長操作中的某個時點結果,則適合作為 event (OpenTelemetry, 2026)。James Newton-King 在 2026 年 5 月 14 日的一篇文章中展示了如何把生成式 AI 操作記錄為 trace,包括模型呼叫與工具活動,並指出 prompt 內容與工具參數預設不會進入遙測,因為可能含有敏感資料 (Newton-King, 2026)。本文查閱的 Semantic Conventions 文件頁面標示為 1.44.0,其中定義了 trace、metric 與 log 的共享名稱 (OpenTelemetry, 2026)。像地點結果集 ID 或 no-result 原因這類空間屬性,可以與這些名稱並存;但這些空間名稱只是應用範例,不是 OpenTelemetry 官方空間語意規範。

哪些內容應留在遙測儲存區之外?

如果遙測系統變成客戶、位置或企業資料的第二份副本,可觀測性本身就失敗了。預設應記錄識別碼、版本、數量、狀態、延遲與原因代碼。經過遮罩的片段、抽樣內容與泛化地理資訊應視為條件性資料,只在有明確需求、保留期限與存取控制時使用。應避免記錄機密資訊、原始私人紀錄、完整且未受限制的 prompt、問題不需要的精確座標,以及存取 token。許多時候,一個城市代碼或市場代碼就能回答原始地址能回答的營運問題。

隱私邊界示意圖:優先記錄識別碼、版本、數量與原因代碼;遮罩內容屬條件性資料;機密資訊、原始紀錄與不必要的精確位置不進入遙測儲存區。

左欄是預設紀錄。中間欄需要額外保護措施。右欄除非有明確控制理由,否則不應進入儲存區。這張圖展示的是資料最小化模式,不是認證。

OpenTelemetry 的 Generative AI 屬性登錄表警告,檢索查詢文字可能包含敏感資訊,並把多個承載內容的屬性標示為可能含有使用者資料或個人資料 (OpenTelemetry, 2026)。Kaleidr 關於私人位置資料的指南已要求在模型取得紀錄之前完成授權,也警告不要上傳未受限制的內部資料庫 (Kaleidr, 2026)。追蹤應維持這個邊界。可以記錄某個結果集 ID 的授權已通過,但不要記錄該檢查允許存取的私人資料列。

為什麼要記錄候選為何消失?

單一結果數量無法解釋錯誤推薦。真正有用的漏斗應記錄擷取了多少候選、授權後還剩多少、套用硬性規則後還剩多少。每一次移除都需要原因代碼,例如已打烊、缺貨、超出服務區域、缺少營業時間、未授權,或資料新鮮度未知。沒有這些原因時,候選從 20 個降到 6 個,看起來像排序決策,實際上卻可能只是資格篩選。

資格漏斗示意圖:將 24 個擷取候選縮減為 20 個已授權候選與 6 個合格候選,並顯示已打烊、缺貨、超出服務區域與缺少營業時間等移除原因。

圖中的數量只是一次範例請求,不是 Kaleidr 的測量結果。側邊卡片說明候選為何離開集合。正式環境中的追蹤應保存這些原因代碼,而不只是最終總數。

Kaleidr 關於 grounded Spatial AI 的指南也建議使用結構化 no-result 原因,例如已打烊、缺貨、超出區域、營業時間未知或未授權,而不是只有一個簡單失敗旗標 (Kaleidr, 2026)。有效的 no-result 表示所有候選都沒通過硬性規則。系統失敗則表示資料來源不可用,或資料已過舊而無法判斷。這兩種結束狀態需要不同警示。靜默放寬關鍵限制,會把正確的空結果集變成錯誤推薦。

工具呼叫應如何追蹤?

模型可以提出工具呼叫建議。但「建議」不等於「批准」,「批准」不等於「執行」,「執行」也不等於業務動作已完成。應記錄工具名稱、schema validation 結果、授權決策、政策檢查、執行狀態、延遲與失敗原因。拒絕路徑與成功路徑同樣重要,包括參數無效、呼叫者未授權、政策封鎖或執行錯誤。像「已完成預訂」這類主機結果,應繼續保留在擁有該交易的系統中。

工具可觀測性流程,從模型建議經過 schema validation、授權、政策檢查與執行到結果,並在每個 gate 都設置拒絕出口。

每個 gate 都可以在執行前終止呼叫。最終問題是主機工作是否完成,而不只是工具是否傳回 payload。狀態標籤只是架構示意,不是 Kaleidr 固定權限清單。

地圖動作也遵循同一模式。顯示地點、調整邊界與繪製路線都是語意動作。與 renderer 溝通的 adapter 應發出 executed 或 rejected 事件。不能只靠模型 span 來證明地圖上出現了標記。如果助理描述了一個地圖從未顯示的地點,追蹤應讓這種不一致變得可見。

應如何依地點分析正式環境行為?

全域平均值會隱藏局部失敗。應依市場、語言、資料來源、任務類型與系統版本切分品質,並使用仍能回答問題的最粗粒度地理資訊。城市代碼或市場 ID 往往就足夠。要發現某個區域正在傳回空結果,或某個路由供應商正在失敗,並不需要裝置的精確座標。新市場、地點資料供應商變更、新語言,以及使用者提問方式改變,都是 drift 的形式;模型 drift 只是其中之一。

NIST Measure 2.4 指出,應在正式環境中監控 AI 系統及其元件的功能與行為,因為環境改變可能帶來新的問題與風險。該頁面將這種現象稱為 drift,並說明 drift 代表系統不再符合原始設計的假設與限制。其中一項建議是記錄正式環境觀測到的指標,與部署前測試收集的相同指標之間有何差異 (NIST, 2026)。同一頁面也指出 AI RMF 1.0 正在更新,playbook 會在該修訂後更新。該頁面為監控內容提供背景,不是 Kaleidr 的控制清單。

評估如何與正式環境銜接?

離線評估關注系統在具有已知真值的受控案例中表現如何。正式環境監控關注系統在真實使用者、即時資料與真實地理環境中如何表現。兩套計畫應共享失敗分類,例如解讀、grounding、空間計算、排序、動作與復原。如此一來,正式環境事故可以變成測試案例,基準回歸也可以成為上線後儀表板能識別的訊號。Kaleidr 的準確度指南評估的是這條決策鏈,而不是把所有內容壓成單一模型總分 (Kaleidr, 2026)。

透過共同失敗詞彙連接離線評估與正式環境可觀測性的閉環,讓正式環境事故可以變成測試,測試也能保護後續版本。

評估提供案例、ground truth 與迴歸測試套件。正式環境提供真實請求、事故、drift 與結果。中間共享的分類就是兩者之間的契約。這個閉環是一種方法,不是 Kaleidr 公布的分數。

Kaleidr Analytics 在哪裡發揮作用?

Kaleidr Analytics 目前描述的儀表板包括觸及、瀏覽與互動、受眾位置與活動、每張地圖的 session、view 與 interaction、地點比較,以及空間模式 (Kaleidr, 2026)。這些訊號描述人們如何使用地圖與地點,但它們不是授權、擷取、路由、模型呼叫或主機交易的分散式追蹤。主機仍應持續為私人服務以及記錄預訂、購買和其他結果的系統做 instrumentation。穩定的 map ID、place ID 或 workflow ID 可以連接兩邊,而不必把每一筆內部紀錄複製到 Analytics 層。

主機可觀測性架構,透過穩定的 map、place 與 workflow ID,把 Kaleidr 地圖互動與主機授權、企業系統及交易結果連接起來。

Analytics 涵蓋已文件化的地圖與地點互動。主機欄涵蓋私人追蹤與交易結果。兩邊透過識別碼連接;預訂與購買標籤是主機紀錄,不代表 Kaleidr Analytics 儲存這些交易。

Kaleidr Enterprise 是產品團隊可以放在主機技術堆疊旁的 Spatial Intelligence 層,其中包含 inference APIs、排序與 Analytics (Kaleidr, 2026)。地圖與助理訊號仍不能取代主機擁有的業務結果,也不能取代財務認可的單位價值。Kaleidr 的 ROI 指南清楚區分兩者:領先訊號用來解釋路徑,主機紀錄承載價值 (Kaleidr, 2026)。

Spatial AI 可觀測性如何成為發布門檻?

在位置感知工作流程擴大之前,團隊應能只靠追蹤回答一組簡短問題。哪一個政策版本授權了這些紀錄?擷取了哪些 place ID,又有哪些原因代碼移除了其他候選?執行了哪一條路線與哪一版排序政策?當時啟用了哪些模型與工具版本?執行了哪一項地圖動作,主機工作是否完成?敏感內容應最小化,版本應記錄,正式環境事故應進入與離線測試套件相同的失敗詞彙體系。探索 Kaleidr Analytics,了解已文件化的地圖與地點互動。探索 Kaleidr Enterprise,在已經擁有使用者、資料與結果的系統旁加入空間能力。

註:Kaleidr 在創意與開發工作流程中使用 AI 輔助工具進行影像製作、內容優化與研究。

常見問題

Spatial AI 可觀測性和語言模型監控是一回事嗎?

不是。模型延遲、token 與工具錯誤只涵蓋一個 span。地點身分、權限、企業資料、地理服務、排序、地圖狀態與主機結果,都可能影響最後結果是否正確。

應該記錄使用者 prompt 嗎?

只有在有明確需求、保留期限與存取控制時才記錄 prompt。許多位置請求包含私人地址或企業事實,而追蹤並不需要完整保存這些內容。

應該在追蹤中儲存使用者的精確位置嗎?

應使用能回答營運問題的最粗粒度地理資訊,例如市場代碼、place ID 或 route ID。

監控和評估有什麼差別?

監控觀察真實正式環境行為。評估把定義好的案例與 ground truth 比較。成熟的計畫使用共同失敗詞彙,讓事故可以變成測試,也讓迴歸在上線後仍能被看見。

最重要的指標是什麼?

沒有一個通用指標。應把指標與實際工作連結,例如合格結果品質、地點解析、no-result 正確性、路由成功率、授權正確性或任務完成率。

工具呼叫應如何追蹤?

記錄工具名稱、schema validation、授權、政策結果、執行狀態、延遲與失敗原因。應清楚區分「建議的動作」「已執行的動作」以及「已完成的主機結果」。

Kaleidr Analytics 會取代應用程式可觀測性嗎?

不會。公開 Analytics 頁面描述地圖與地點互動、session、view、interaction、受眾活動與空間模式。除非特定整合另有說明,私人服務追蹤、內部授權與交易結果仍應保留在主機系統中。

OpenTelemetry 可以用於 Spatial AI 嗎?

可以。OpenTelemetry 是 trace、metric、log、event 以及目前 Generative AI 規範的實用基礎。如果共享規範尚未定義,團隊可以為 place ID、route ID、資格、排序、地圖動作與 no-result 原因加入文件化屬性。

參考資料

  1. Kaleidr. Spatial AI Accuracy Evaluation. https://kaleidr.com/blog/spatial-ai-accuracy-evaluation
  2. Kaleidr. An Enterprise Spatial AI Pilot Before Scaling. https://kaleidr.com/blog/enterprise-spatial-ai-pilot-before-scaling
  3. OpenTelemetry. Semantic Conventions for Events. Operations with a duration belong in spans. Checkpoints and point-in-time outcomes are event candidates. Accessed October 1, 2026. https://opentelemetry.io/docs/specs/semconv/general/events/
  4. OpenTelemetry. Inside the LLM Call: GenAI Observability with OpenTelemetry. James Newton-King, May 14, 2026. https://opentelemetry.io/blog/2026/genai-observability/
  5. OpenTelemetry. Semantic Conventions. Documentation labeled 1.44.0. Accessed October 1, 2026. https://opentelemetry.io/docs/specs/semconv/
  6. OpenTelemetry. Generative AI Semantic Convention Attributes. Registry warns that retrieval query text may contain sensitive information. Accessed October 1, 2026. https://opentelemetry.io/docs/specs/semconv/registry/attributes/gen-ai/
  7. Kaleidr. Private Location Data for AI Map Workflows. https://kaleidr.com/blog/private-location-data-for-ai-map-workflows
  8. Kaleidr. Grounded Spatial AI for Business Data. https://kaleidr.com/blog/grounded-spatial-ai-business-data
  9. National Institute of Standards and Technology. AI RMF Playbook, Measure. Production monitoring, drift, and the difference from pre-deployment testing. Notes that the AI RMF 1.0 is being updated and that the playbook will be revised afterward. Accessed October 1, 2026. https://airc.nist.gov/airmf-resources/playbook/measure/
  10. Kaleidr. Map Engagement and Location Analytics. Accessed October 1, 2026. https://kaleidr.com/analytics
  11. Kaleidr. Location Intelligence APIs and Map SDK. Accessed October 1, 2026. https://kaleidr.com/enterprise
  12. Kaleidr. Spatial AI ROI Business Case. https://kaleidr.com/blog/spatial-ai-roi-business-case
@misc{kaleidr_accuracy_observability_2026,
  title  = {Spatial AI Accuracy Evaluation},
  author = {{Kaleidr}},
  year   = {2026},
  url    = {https://kaleidr.com/blog/spatial-ai-accuracy-evaluation}
}

@misc{kaleidr_pilot_observability_2026,
  title  = {An Enterprise Spatial AI Pilot Before Scaling},
  author = {{Kaleidr}},
  year   = {2026},
  url    = {https://kaleidr.com/blog/enterprise-spatial-ai-pilot-before-scaling}
}

@misc{otel_events_2026,
  title  = {Semantic Conventions for Events},
  author = {{OpenTelemetry}},
  year   = {2026},
  note   = {Accessed October 1, 2026},
  url    = {https://opentelemetry.io/docs/specs/semconv/general/events/}
}

@misc{otel_genai_observability_2026,
  title  = {Inside the LLM Call: GenAI Observability with OpenTelemetry},
  author = {Newton-King, James},
  year   = {2026},
  note   = {May 14, 2026},
  url    = {https://opentelemetry.io/blog/2026/genai-observability/}
}

@misc{otel_semconv_2026,
  title  = {Semantic Conventions},
  author = {{OpenTelemetry}},
  year   = {2026},
  note   = {Documentation labeled 1.44.0. Accessed October 1, 2026},
  url    = {https://opentelemetry.io/docs/specs/semconv/}
}

@misc{otel_genai_attributes_2026,
  title  = {Generative AI Semantic Convention Attributes},
  author = {{OpenTelemetry}},
  year   = {2026},
  note   = {Accessed October 1, 2026},
  url    = {https://opentelemetry.io/docs/specs/semconv/registry/attributes/gen-ai/}
}

@misc{kaleidr_private_location_2026,
  title  = {Private Location Data for AI Map Workflows},
  author = {{Kaleidr}},
  year   = {2026},
  url    = {https://kaleidr.com/blog/private-location-data-for-ai-map-workflows}
}

@misc{kaleidr_grounded_observability_2026,
  title  = {Grounded Spatial AI for Business Data},
  author = {{Kaleidr}},
  year   = {2026},
  url    = {https://kaleidr.com/blog/grounded-spatial-ai-business-data}
}

@misc{nist_rmf_playbook_measure_2026,
  title  = {AI RMF Playbook, Measure},
  author = {{National Institute of Standards and Technology}},
  year   = {2026},
  note   = {Accessed October 1, 2026. Page states the playbook will be updated after the AI RMF revision},
  url    = {https://airc.nist.gov/airmf-resources/playbook/measure/}
}

@misc{kaleidr_analytics_observability_2026,
  title  = {Map Engagement and Location Analytics},
  author = {{Kaleidr}},
  year   = {2026},
  note   = {Accessed October 1, 2026},
  url    = {https://kaleidr.com/analytics}
}

@misc{kaleidr_enterprise_observability_2026,
  title  = {Location Intelligence APIs and Map SDK},
  author = {{Kaleidr}},
  year   = {2026},
  note   = {Accessed October 1, 2026},
  url    = {https://kaleidr.com/enterprise}
}

@misc{kaleidr_roi_observability_2026,
  title  = {Spatial AI ROI Business Case},
  author = {{Kaleidr}},
  year   = {2026},
  url    = {https://kaleidr.com/blog/spatial-ai-roi-business-case}
}