← 文章 / AI技术
InfoQ 1小时前 · 2026-08-11 15:12:24 · 0 阅读

让 Agent 读懂业务世界:Snowflake Cortex Agents 的本体驱动推理实践

2026 年,智能体将在企业级应用中取得哪些实质性突破?点击下载《2026 年 AI 与数据发展预测》白皮书,获悉专家一手前瞻,抢先拥抱新的工作方式!

Snowflake 正持续投入,让 AI 智能体能够更轻松地原生理解并推理业务概念及其关系。

本文展示了已经拥有本体的团队在当下可以实现哪些能力。许多行业都维护着正式本体,为基于表、列和连接关系所表达的语义推理补充一层领域专属推理能力。这有助于 AI 智能体理解层级关系、同义词,以及仅靠语义层未必能够完整捕获的领域概念。

我们使用一个高度简化的生物医学数据集,将基于 Semantic View 的 Cortex Agent 基线方案,与基于知识图谱、GraphRAG 和针对性术语映射的本体感知方案进行了比较。本次基准测试结果表明,在所评估的条件下,更充分的结构化知识锚定有望提升准确性与可靠性;同时,这也为需要构建更精准、可解释、更可信的企业级 AI 智能体的团队提供了一套可落地的参考框架。

将本体融入 Snowflake Cortex Agents

企业数据中充满了从未在数据库模式中被显式呈现的含义。这些内在的领域知识必须被捕获,才能为可靠的智能体系统提供支撑。

在各个行业,组织都会维护正式本体、分类体系和受控词表,用于编码类层级、类型化关系、约束条件和规范标识符。在医疗与生命科学领域,这类资源包括 SNOMED CT、UMLS、Gene Ontology(基因本体)和 Cell Ontology(细胞本体);在供应链与零售领域,GS1 等标准定义了产品与包装语义;在金融服务领域,FIBO 为金融工具、实体和监管分类提供共享模型。这些行业资产通常以 OWL、RDF 或 SKOS 等表示格式发布,往往包含数千个概念、丰富的同义词集合,以及数以万计的层级边和关联边。然而,大多数企业 AI 与分析系统仍主要运行在关系抽象之上,也就是表、列、键和连接,并不能原生访问定义概念继承、传递关系、等价映射或领域约束的知识层。由此,组织对真实世界含义的建模方式,与 AI 系统检索和推理业务数据的方式之间,可能存在一道鸿沟。

例如,供应链分析师提出“显示所有电子元器件的总支出”时,“电子元器件”位于一个分类体系的顶端,其下包括电容器、电阻器、集成电路以及数十个子类别。又如,生物医学研究者提出“显示 PD-1 抑制剂在上皮来源癌细胞系中的药物疗效”时,系统需要将一个父概念扩展到数十种细胞类型和 13 个组织类别。两种情况下,Snowflake 的 Semantic View 都提供了关系构造的基础,包括实体、关系、指标和维度;同时,递归 CTE 这一 SQL 扩展能力提供了动态路径长度查询机制,可支持层级类型以及 subclass-of、传递属性和逆属性等关系公理。

本文将讨论:把更深层的本体语义引入 Snowflake,并与业务数据结合,用来锚定 AI 智能体的推理,会带来怎样的效果。具体而言,我们在一个用于测试智能体数据检索中本体依赖型推理能力的生物医学基准上,评估了一个语义层基线方案和三种本体感知增强方案。

生物医学基准测试

在药物发现领域,寻找新的候选疗法,需要沿着编码在多个本体中的“基因—通路—细胞—疾病—药物—结果”关系进行推理,而这些本体往往与实验数据彼此割裂。我们的目标,是构建并测试能够进行本体驱动推理、消解语义歧义,并从癌细胞系药物筛选的细胞存活率数据中提取洞察的智能体架构。这里的细胞存活率,是根据存活细胞比例衡量药物疗效的指标。

这项基准测试旨在提供方向性证据。我们引入一个行业本体,在受控条件下处理一项复杂的数据洞察任务,以衡量本体感知技术能够带来的增量提升。我们在 Snowflake 中结合了两个公开资源:

  • Cell Ontology(细胞本体,CL):用于分类和描述细胞类型的本体,包含 33,651 个术语,由约 50,000 条层级边和关系边连接。

  • PRISM(Profiling Relative Inhibition Simultaneously in Mixtures)药物再利用数据集:记录 4,518 种药物在 578 个人类癌细胞系上的生长抑制活性,共产生 260 万余条细胞存活率测量数据。

真正的难点在于:PRISM 按组织类型(如肺、乳腺)标注数据,而 Cell Ontology 按细胞谱系(如上皮细胞、基质细胞)组织概念。智能体必须跨越这道语义鸿沟,才能回答分析问题。

我们设计了 22 个高难度问题,刻意聚焦一个特定问题:以本体知识为基础的智能体,在术语解析、队列比较、跨组织分析、药物排序、分布分析和多类别比较等任务中的表现如何。为衡量一致性,每种智能体配置都重复运行了 5 次。

起点:Semantic View 与 Cortex Analyst

我们的基线智能体使用 Semantic View,并借助 Cortex Analyst 将自然语言转换为针对该语义层、经过验证的 SQL。

Semantic View 在物理表之上引入受治理的语义层,使 AI 系统能够面向清晰、贴合领域的模型工作,而不是直接处理原始数据库模式。一个 Semantic View 中可以包含实体表、关系、事实、维度和指标。

在生物医学场景中,这个语义层可以把药物、蛋白质靶点、细胞系和疾病表型表示为逻辑实体;用事实记录药物—靶点相互作用等可测量事件;用维度提供组织类型或疾病状态等分析上下文;再用指标编码效力或疗效等派生度量。这个基线方案构成了一个受治理的对照点,用于衡量叠加在语义模型之上的本体感知技术能够带来多少增量提升。

因此,基线智能体也是评估其他技术增益的对照基准。

知识图谱

图 1:知识图谱的查询处理流程

在 Semantic View 之上,我们使用 Snowflake 表实现了一个简单的知识图谱,使系统能够更自然地支持图遍历操作。这里的知识图谱,是以相互连接的实体和类型化关系来表示知识的一种方式。

知识图谱遍历

知识图谱直接存储在 Snowflake 中,采用节点—边表模型:

  • KG_NODE 表存储所有实体,包括唯一标识符、类型(药物、疾病、细胞)和属性;属性通常保存在灵活的 VARIANT 列中。

  • KG_EDGE 表存储关系,包括源节点 ID、目标节点 ID、边类型(例如 treats、targets、expressed_in),以及时间戳或置信度分数等可选元数据。

这种实现方式充分利用 Snowflake 的分布式存储、自动扩展、查询优化、安全与治理能力,不需要额外引入独立的图数据库。

递归 CTE

知识图谱的一项关键能力是遍历,也就是在事先不知道需要多少步的情况下,从一个实体出发,跨越多个跳数访问与其相连的邻居。在 Snowflake 中,这种动态、可变长度的遍历可以通过递归公共表表达式(Recursive CTE)实现。递归 CTE 会反复将边表与自身连接,逐步扩展可达节点的搜索边界,直到找不到新节点、达到设定的深度上限,或运行超时。固定自连接需要预先写死跳数,而递归 CTE 则允许路径长度由数据决定,保持动态和灵活。

假设我们希望识别通过生物通路与某种药物存在机制关联的疾病,一个简化图谱中可能包含如下关系:

  • 药物 → targets → 蛋白质

  • 蛋白质 → triggers → 通路

  • 通路 → expressed in → 细胞类型

  • 细胞类型 → affected in → 疾病

  • 疾病 → subClassOf → 疾病类别(本体层级)

我们可能无法预先判断,某种疾病需要两跳、三跳,还是还要经过更多子类扩展才能到达。递归 CTE 可以动态遍历这张网络。

在基线 Semantic View 之上,知识图谱智能体还可以访问四个存储过程:expand cohort、get ancestors、get hierarchy path 和 get cohort efficacy,以及两个专用的 Cortex Analyst Semantic View,总计拥有 7 个工具。

下面是其中一个工具的示例:

  get_ancestors (GET_ANCESTORS_TOOL)  Input: CONCEPT (e.g., "squamous epithelial cell")  Data accessed: Ontology only -- KG_NODE + KG_EDGE  Output: List of all ancestor nodes walking upward via subClassOf    squamous epithelial cell      → epithelial cell (depth 1)        → eukaryotic cell (depth 2)          → cell (depth 3)            → anatomical structure (depth 4)              → material anatomical entity (depth 5)                → anatomical entity (depth 6)  No PRISM data. Pure upward graph traversal.
复制代码

优势:可在支持的层级深度内进行确定性遍历。以“epithelial cell”为例,可以遍历 10 层以上层级中的全部 693 个后代概念。

局限:7 个工具带来了编排复杂性。智能体必须选择正确的工具调用顺序,而且存储过程要求输入精确的概念名称,不具备同义词解析能力。

扁平化 GraphRAG

GraphRAG 索引构建与查询处理流程

另一种互补方案是扁平化 GraphRAG。它不在查询运行时遍历本体或知识图谱,而是预先为每个概念计算一份反规范化画像,将概念名称、定义、同义词、局部邻域,以及从后代概念聚合得到的属性组合在一起,再把这些画像索引到 Cortex Search 中,以支持关键词与向量的混合检索。

在运行时,智能体会检索最相关的概念画像,从中提取有明确知识依据的业务或科学上下文,再把这些上下文传递给 Cortex Analyst 或下游 SQL 生成环节。

在 Snowflake 中,这一实现模式十分直接:把本体存储在关系表中,使用递归 CTE 或预处理管道为每个节点构建一份富化画像,通过 Cortex Search 服务为这些画像建立索引,并把检索到的画像作为分析时的语义锚定层。

它的优势是检索架构更简单,能够通过更强的同义词处理提升一致性,而且运行时不需要进行图遍历;相应的权衡在于,系统质量高度依赖扁平化画像的构建质量与更新机制。

索引构建

预处理管道会为每个本体节点构建一份邻域画像文档。递归 CTE 遍历完整层级,沿 subClassOf 边最多深入 15 层;针对每个节点收集后代属性并向上聚合。最终,祖先节点会包含从其后代树中汇总得到的组织类型列表。

索引中的每份文档包括:

  • 节点的正式名称、定义和所有已知同义词

  • 直接父节点与子节点(一阶邻居)

  • 祖父节点与孙节点样本(二阶邻居)

  • 从全部后代概念聚合得到的领域数据类别

这些画像会以关键词和向量嵌入两种形式,索引到 Cortex Search 服务中。

在基线 Semantic View 之上,GraphRAG 智能体只需要两个工具:一个搜索工具和一个 Cortex Analyst SQL 工具。查询到来时,智能体先搜索相关实体画像,提取相应类别,再把这些类别显式传递给 SQL 工具。

优势:通过语义搜索解析同义词,例如将“flat epithelial”解析为“squamous epithelial cell”;仅需两个工具,架构更简单;运行时不需要进行图遍历。

局限:无法解析映射到多个细胞类型类别并集的复合术语,例如“internal organ lining”;索引需要定期重建。

添加术语映射指令

在 GraphRAG 智能体基础上,我们进一步增强了智能体指令,将人工整理的映射直接嵌入系统提示词。例如,在这项生物医学挑战中,8 组权威的“细胞类型—组织类型”映射和复合术语定义,会在适用时作为覆盖规则生效。其中一条映射为:Squamous Epithelial Cell(CL:0000076)→ Skin、Lung、Esophagus、Bladder、Cervix。这相当于将相关 PRISM 组织类型的映射,硬编码到 Cell Ontology 中该细胞类型的所有后代概念上。

优势:把多步查找压缩为一张确定性映射表,从而消除“最后一公里”误差。

局限:静态知识需要人工维护,只能覆盖已经建立映射的概念;未映射概念仍需回退到动态搜索。

使用 Cortex Code 优化智能体

完成每种智能体配置只做完了一半工作;另一半,是调优系统提示词、工具描述和工具选择启发式规则,以尽可能提升准确性。我们使用 Cortex Code 的智能体优化技能,迭代优化全部四种智能体。Cortex Code 的优化工作流让以下过程变得直接而高效:

  • 针对每种智能体配置运行包含 22 个问题的评估套件

  • 分析多次运行中的失败模式

  • 提出并应用提示词改进,例如为 GraphRAG 加入显式的组织类型透传指令

  • 重新评估并比较结果

这种紧密的“优化—评估”循环至关重要。多项推动准确性提升的设计选择,包括使用组织类型关键词富化搜索文本、强制透传组织类型,以及统一统计阈值规则,都直接来自 Cortex Code 的优化迭代。

结果

下表汇总了本次基准评估的结果:

在这一评估框架内,每种增强方案都改善了基准表现。知识图谱方案通过穷举式层级扩展,使评估准确率提升约 10 个百分点;GraphRAG 又在此基础上提升约 10 个百分点,这可能与架构简化以及预先集成后代数据有关。术语映射方案则通过解析复杂的领域别名和复合术语,在本次基准中进一步提升了评估准确率。

核心结论:在本次基准中,观察到的改进与结构化上下文的相关性,似乎强于其与增加计算推理能力的相关性。

关键观察

  1. 先修复数据层。在本次基准中,在不使用静态映射的情况下,GraphRAG 配合聚合后代属性,已经取得了相对基线总体增益中的大部分,约为 80%。预先计算组织类型列表,是本次基准中影响最显著的干预之一。在投入人工整理规则之前,应先确保索引能够为每个概念提供完整数据。

  2. 工具更少,同样可以获得良好结果。在本次基准中,扁平化 GraphRAG 智能体的表现与拥有 7 个工具的知识图谱智能体相当。更多工具能够提供更强的原始能力,但也扩大了可能发生编排错误的范围。GraphRAG 的简洁架构——一个搜索工具加一个 SQL 工具——缩小了智能体的决策空间,并产生了本次基准中最低的观测方差。GraphRAG 智能体的多次运行结果波动最小;硬编码映射方案虽然峰值准确率更高,但运行间方差也最高。

  3. 有针对性的硬编码可以弥合最后的差距。术语映射智能体相较基线 GraphRAG 配置的优势,主要集中在“internal organ lining”“carcinoma-like models”这类无法仅通过层级遍历推导出的复合术语上。对于已知且范围有限的词表,在智能体提示词中嵌入人工整理的映射是有效的。这一层应保持精简:它应当补充索引,而不是取代索引。

  4. Cortex Code 的优化技能让这套工作流可以重复执行。构建本体感知智能体是一个迭代过程。Cortex Code 的智能体优化技能提供了一套“评估—优化—比较”循环,能够把架构选择转化为可衡量的准确性增益。在我们的结果中,最关键的设计决策——搜索文本富化、组织类型透传和阈值规则,都来自这一优化过程。任何把本体导入 Snowflake 的团队,都可以遵循同样的流程:加载本体;构建索引;创建智能体;再使用 Cortex Code 进行优化。

关于生物医学场景的说明

这项基准测试更适合被理解为对不同本体技术的比较性评估,而不是一次试图在真实世界生物医学推理的完整范围内追求最高性能的测试。

我们的目标并非声称覆盖完整的生物医学推理技术栈,而是在简化、受控的设定下,理解不同本体感知方案各自带来的相对贡献,以及它们在复杂性、一致性和可维护性方面的权衡。

生产级生物医学系统自然会超出这套设置。真实部署往往需要同时跨越多个本体和多种关系类型,包括细胞类型、解剖结构、疾病、通路、化合物标识、靶点生物学和检测上下文。

随着系统演进,还应纳入更多本体和受控词表,并为每一步映射加入显式的数据来源追踪和不确定性处理。

不过,这些属于后续架构问题。本次基准的目标更为聚焦:通过比较相对表现,在一个简化的共同问题上评估不同本体技术。

原文地址:https://www.snowflake.com/en/blog/engineering/ontology-grounded-cortex-agents/

点击链接立即报名注册:https://www.snowflake.com/events/ascent-snowflake-platform-training-china-cn/ 更多 Snowflake 精彩活动请关注https://www.infoq.cn/space/snowflake

原始来源: InfoQ

评论 (0)