Spatial AI 可观测性跟踪一个位置感知系统如何从请求出发,经过已授权地点、地理计算、排序结果、地图操作,最终到达宿主系统中的业务结果。模型延迟和 token 数可以说明一次调用已经完成,但这两个数字无法说明该地点是否符合资格,也无法说明客户是否完成了任务。真正有用的记录是决策路径,而且应当足够精简,以便解释结果,同时避免复制私有位置数据。
下面的章节会把系统遥测与地理决策分开,说明应该追踪哪些内容,以及哪些内容应当留在日志之外。相关阅读包括 Spatial AI Accuracy Evaluation 和 An Enterprise Spatial AI Pilot。即使服务图看起来健康,也可能隐藏一个错误的地点。
Spatial AI 可观测性要点
- 追踪决策: 授权、检索、地点身份、地理、资格、排序、工具以及宿主结果应当作为独立 span 记录。
- 保留 ID,而不是副本: 地点、路线、策略、模型和操作的标识符,比粘贴完整 prompt 更能解释决策。
- 最小化内容: 密钥、原始私有记录和精确位置默认不进入遥测存储。
- 记录被移除的候选: 只有最终结果数量还不够,还要知道每个候选为什么离开集合。
- 共享同一套失败词汇: 离线测试案例和生产事故应使用相同的分类。
什么是 Spatial AI 可观测性?
客户可能会问:回家路上哪家商店仍有某件商品,而且在到达时还会营业?答案取决于身份、当前库存、营业时间、路线、资格规则、排序策略、地图操作,以及用户最终是否真的选择了某家商店。如果追踪只停留在模型调用,那么它可以报告 token 数和延迟,却可能漏掉上述每一个步骤。这里的可观测性意味着团队可以从结构化信号中重建决策,而不是把每一个 prompt 都存档。

左侧面板单独监控模型。右侧面板把模型视为检索、地点解析、资格、排序、工具验证和地图操作中的一个 span。这种拆分是一种可观测性模式,并不是 Kaleidr 的基准测试。
三种“事实”需要汇合。系统事实包括延迟、错误、重试以及依赖项健康状况。决策事实包括哪些地点 ID 获得授权、哪些候选因硬性规则被淘汰、执行了哪条路线,以及验证了哪项操作。结果事实包括是否选择了地点、是否打开了路线,以及宿主工作流是否完成。只显示第一类事实的仪表盘可能看起来很平静,但产品却在推荐一家已经关门的商店。只显示地图互动的仪表盘也可能看起来很活跃,而后台正在反复重试一个昂贵的工具。
一条 Spatial AI 追踪应该包含什么?
一次请求应当在所有实际执行的阶段中携带稳定的 request ID。授权记录策略版本以及允许或拒绝结果。检索记录数据来源和返回记录数量,而不是私有行本身。地点解析记录候选 ID。路由记录 route ID 和状态。资格判断记录有多少候选保留,以及其他候选为何被移除。排序记录策略版本和已排序 ID。模型 span 记录提供商、版本标签和 token 数。工具验证记录建议操作是被拒绝还是被执行。最后的事件记录所选地点,以及在宿主系统上报时记录已完成的工作流。

父 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 个看起来像是排序决定,实际上却可能只是资格筛选。

图中的数量只是一次示例请求,不是 Kaleidr 的测量结果。侧边卡片说明了候选为何离开集合。生产追踪应保存这些原因代码,而不仅仅是最终总数。
Kaleidr 关于 grounded Spatial AI 的指南也建议使用结构化 no-result 原因,例如已关门、缺货、超出区域、营业时间未知或未授权,而不是只有一个简单的失败标志 (Kaleidr, 2026)。有效的 no-result 表示所有候选都没有通过硬性规则。系统失败则表示数据源不可用,或者数据已经过时到无法作出判断。这两种结束状态需要不同的告警。静默放宽关键约束,会把正确的空结果集变成错误推荐。
工具调用应该如何追踪?
模型可以提出工具调用建议。但“建议”不等于“批准”,“批准”不等于“执行”,“执行”也不等于业务操作已经完成。应记录工具名称、schema validation 结果、授权判断、策略检查、执行状态、延迟和失败原因。拒绝路径与成功路径同样重要,包括参数无效、调用方未授权、策略阻止或执行错误。像“已完成预订”这样的宿主结果,应继续保留在拥有该交易的系统中。

每个 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 层。

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 原因添加文档化属性。
参考资料
- Kaleidr. Spatial AI Accuracy Evaluation. https://kaleidr.com/blog/spatial-ai-accuracy-evaluation
- Kaleidr. An Enterprise Spatial AI Pilot Before Scaling. https://kaleidr.com/blog/enterprise-spatial-ai-pilot-before-scaling
- 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/
- OpenTelemetry. Inside the LLM Call: GenAI Observability with OpenTelemetry. James Newton-King, May 14, 2026. https://opentelemetry.io/blog/2026/genai-observability/
- OpenTelemetry. Semantic Conventions. Documentation labeled 1.44.0. Accessed October 1, 2026. https://opentelemetry.io/docs/specs/semconv/
- 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/
- Kaleidr. Private Location Data for AI Map Workflows. https://kaleidr.com/blog/private-location-data-for-ai-map-workflows
- Kaleidr. Grounded Spatial AI for Business Data. https://kaleidr.com/blog/grounded-spatial-ai-business-data
- 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/
- Kaleidr. Map Engagement and Location Analytics. Accessed October 1, 2026. https://kaleidr.com/analytics
- Kaleidr. Location Intelligence APIs and Map SDK. Accessed October 1, 2026. https://kaleidr.com/enterprise
- 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}
}