You need to enable JavaScript to run this app.
文档中心
AI 原生 BaaS 平台 Supabase 版

AI 原生 BaaS 平台 Supabase 版

复制全文
下载 pdf
AI Function 智能处理(rds_ai)
语义抽取(ai_extract)
复制全文
下载 pdf
语义抽取(ai_extract)
  1. 定义​
rds_ai.ai_extract 使用 chat/LLM 模型按调用者给定的 schema 从文本中抽取结构化字段,并以固定 JSONB 信封返回结果。​
  1. 语法​
​
rds_ai.ai_extract(​
content text,​
schema jsonb,​
options jsonb DEFAULT '{}'::jsonb,​
model_name text DEFAULT NULL,​
model_args jsonb DEFAULT '{}'::jsonb​
) RETURNS jsonb​
​
  1. 参数​
​
参数​
类型​
默认值​
说明​
content​
text​
无​
待抽取文本;SQL NULL 返回 SQL NULL,空白文本不允许。​
schema​
jsonb​
无​
字段定义。简写可用字符串数组;完整形式支持 string、integer、number、boolean、object、array 和 enum。​
options​
jsonb​
{}​
闭合控制对象,只支持下表所列键。​
model_name​
text​
SQL NULL​
chat/LLM 模型;NULL 时使用 ai_query 默认模型。​
model_args​
jsonb​
{}​
传给模型请求体的开放参数对象。​
​
options 键​
​
键​
默认值​
说明​
version​
1.0​
当前仅支持字符串 1.0。​
instructions​
空字符串​
附加抽取指令。​
mode​
空字符串​
传入提示词的抽取模式字符串,例如 precision。​
enableConfidenceScores​
false​
是否要求每个叶子值附带 confidence_score。​
​
布尔选项必须使用 JSON 布尔值;当前不支持 citations,enableCitations 等未知键会被拒绝。​
  1. 返回​
返回固定 JSONB 信封:response 是按 schema 组织的对象;每个叶子字段使用 {"value": ...},启用置信度时增加 confidence_score;metadata.version 当前为 1.0;成功时 error_message 为 JSON null。content 为 SQL NULL 时整个函数返回 SQL NULL。​
  1. 错误行为​
  • 空白输入、schema 结构或字段类型不合法、选项或模型参数不是对象、出现未知选项时立即抛出参数错误。​
  • 默认/显式模型不存在或类型不兼容,以及普通 HTTP/鉴权/超时错误时抛出错误。​
  • 模型输出不是合法 JSON,或值类型、枚举值、对象/数组结构、置信度字段不符合 schema 时返回 response: null 和非空 error_message。​
  • 结构化输出能力被模型拒绝时返回错误信封;资源不足或响应大小超限等资源类错误仍会直接抛出。​
  1. 示例​
  • 简写 schema​
​
SELECT rds_ai.ai_extract(​
'extract simple',​
'["name","city"]'::jsonb,​
'{}'::jsonb,​
'Doc-Semantic-Chat'​
);​
​
  • 带类型与置信度的 schema​
​
SELECT rds_ai.ai_extract(​
'extract advanced',​
'{"active":{"type":"boolean"},"score":{"type":"number"},"person":{"type":"object","properties":{"age":{"type":"integer"},"tags":{"type":"array","items":{"type":"string"}}}},"status":{"type":"enum","enum":["active","inactive"]}}'::jsonb,​
'{"mode":"precision","enableConfidenceScores":true}'::jsonb,​
'Doc-Semantic-Chat'​
);​
​
  1. 提示优化建议​
抽取质量主要取决于 schema 与指令的清晰度。评测复盘显示,多数误抽/漏抽源于 schema 过宽或字段约束不清,遵循以下原则可显著提升精确率与召回率:​
  • schema 尽量收窄:只声明真正需要的字段。字段越宽泛,模型越容易抽出"合法但你并不想要"的额外值,拉低精确率。​
  • 把约束写进字段描述:明确字段是否要求专有名词/具体实体、允许的取值边界与排除条件,而不是仅给字段名。​
  • 需要原文片段时明确说明:在字段描述或 instructions 中要求“抽取原文中连续出现的片段”,减少模型重构或泛化。​
  • 用 options 表达取向:精度优先场景可设 mode(如 precision)并补充 instructions;需下游过滤时开 enableConfidenceScores。​
  • 分而治之:字段语义差异很大时,拆成多次窄 schema 调用通常比一次大而全的 schema 更稳。​
  1. 质量指标​
基于公开评测集(QMSum、WikiLingua EN/ZH)的基准测试结果:​
​
质量维度​
指标​
结果​
可用性​
有效输出率​
100%​
准确性​
字段精确率​
89.36%–92.44%​
完整性​
字段召回率​
89.11%–93.49%​
完整性​
三切片 micro 汇总​
90.45%​
可信性​
源忠实度​
98.16%–99.44%​
​
​
最近更新时间:2026.10.21 12:50:08
这个页面对您有帮助吗?
有用
有用
无用
无用