LLM Functions

最近更新时间:2026-05-20 14:11:21

我的收藏

功能介绍

腾讯云数据仓库 TCHouse-X 始终致力于探索更高效、更智能的数据分析路径。TCHouse-X 深度整合了腾讯云自建大语言模型,将前沿的 LLM 能力直接赋予数据底座,实现了“数据在哪,分析就在哪”的极简体验。通过内置的 LLM 函数,TCHouse-X 让数据分析师无需编写复杂的 Python 代码或维护推理环境,只需通过标准的 SQL 语句即可调用腾讯云顶级的大模型能力,实现海量文本的批处理与智能化分析。

适用场景

目前 LLM 函数可应用的场景包括但不限于:
智能交互与路由:利用语义理解实现高效互动。在电商场景下精准识别用户意图(例如“售后退货”或“售前咨询”)并感知情绪,动态匹配客服优先级与差异化回复策略。
合规与安全防护:自动化维护内容生态。实时监测并拦截违规信息,并在数据外传前对姓名、身份证号等敏感信息进行自动脱敏,确保隐私合规。
多维用户洞察:将海量非结构化反馈转化为量化决策依据。通过自动聚类与摘要技术,从万级别评论中快速捕捉核心痛点,助力产品经理定位高频需求。
动态数据治理:标准化非结构化数据,释放资产价值。在 ETL 环节实现字段(例如日期、金额)的精准提取与格式纠偏,确保入库数据的统一性与准确性。

函数列表

文本生成与优化

函数名称
参数说明
核心功能
SQL 示例
预期输出
AI_GENERATE
prompt: 指令文本
指令驱动内容生成:基于提示词工程(Prompt Engineering),实现逻辑续写、创意润色及多风格文案创作。
SELECT AI_GENERATE('为 AI 产品发布会写一段开场白')
"未来已来。今天,我们共同见证AI重塑世界的起点..."
AI_FIXGRAMMAR
text: 待修正文本
文本语法与规范修正:智能识别并修复句法结构、拼写错误及表达偏差,提升文案的专业性与准确度。
SELECT AI_FIXGRAMMAR('The data are incorrect.')
"The data is incorrect."
AI_SUMMARIZE
text: 待处理的长文本内容。
max_len: 目标输出长度,按词数(words)计算。(默认值为50,建议最大值为2000)
语义聚焦性摘要:通过语义聚类提取核心观点,在限定长度内实现长篇幅信息的高度浓缩与重组。
SELECT AI_SUMMARIZE('我家的后面有一个很大的园,相传叫作百草园。...', 50)
"我家后园曾叫百草园,现已卖给朱家多年,虽只剩野草,却是儿时乐园。"
AI_SUMMARIZE_AGG
text: 待处理的多行长文本内容
多行文本信息聚合摘要函数。将多行文本按行进行语义聚合,输出一个汇总语义后的统一摘要文本。调用方式与其他聚合函数(例如 SUM、AVG)一致,支持 GROUP BY 语法。
WITH reviews AS (SELECT '这家餐厅太棒了,食物美味,服务周到。' AS review
UNION ALL SELECT '太棒了!我超爱他们的披萨!'
UNION ALL SELECT '食物不错,但服务一般般。'
UNION ALL SELECT '普通的食物和普通的服务')
SELECT AI_SUMMARIZE_AGG(review) FROM reviews;
"用户主要需求包括:增加深色模式、优化搜索、数据导出功能、通知设置个性化以及简化界面设计。"
AI_TRANSLATE
text: 源文本
t_lang: 目标语言
s_lang: 源语言,可选
跨语言语义映射:在严谨保留原文语义权重的基础上,实现多语种间的流畅对齐与文化适配。
SELECT AI_TRANSLATE('Hello world!', 'zh-CN')
"你好,世界!"
说明:
1. AI_SUMMARIZE 函数参数 max_len 为引导性建议值,英文按空格分隔的单词计数;中文无天然分词边界,1 个汉字可近似视为 1 个词。模型将尽量控制输出长度,不做强制截断。
2. AI_TRANSLATE 函数参数 t_langs_lang 无强制格式约束,支持 "中文" / "zh" / "zh-CN" 等多种写法。建议参考 ISO 639-1BCP 47 标准传入。

文本理解与分析

函数名称
参数规格
核心功能描述
SQL 调用示例
预期输出
AI_SENTIMENT
text: 目标文本
情感极性识别:深度分析主观文本,量化并输出情感正负倾向(positive/negative/neutral/mixed)。
SELECT AI_SENTIMENT('这物流慢得离谱')
"negative"
AI_CLASSIFY
text: 目标文本
labels: 预设分类数组
multi_label:可选参数,是否多标签(bool,默认 false
零样本语义分类:基于语义锚点将文本精准映射至预定义的标签体系,无需额外训练即可实现自动化分类。支持选择多标签模式,单条文本可同时归类到多个标签下。
SELECT AI_CLASSIFY('无法登录账号', array('投诉','咨询'))

SELECT ai_classify('快递送得快,但商品有瑕疵,客服态度还不错', array['物流速度', '包装质量', '商品质量', '客服服务', '性价比'], true)
"投诉"

['物流速度', '客服服务', '客服服务']
AI_SIMILARITY
text1: 文本 A
text2: 文本 B
语义相似度度量:由生成式AI模型判定两个文本的相似度,返回 0 至 1 之间的关联度数值,数值越高表示关联度越大。
SELECT AI_SIMILARITY('我想退钱', '申请退款')
0.9
AI_FILTER
text: 待审文本
policy: 过滤策略
合规性风险审计:根据自定义安全策略判定内容是否触碰违规红线,输出布尔值(Boolean)判定结果。
SELECT AI_FILTER('怎么才能像大神一样优秀呢', '色情暴力')
0

信息提取与处理

函数名称
参数规格
核心功能描述
SQL 调用示例
预期输出
AI_EXTRACT
text: 目标文本
entities:抽取规则,支持三种形式:
array(string):仅标签名字;返回 json string
array(string, schema):标签名字 + 指定返回 schema;返回 struct
stringJSON Schema 字符串描述;返回 json string
结构化字段抽取:从非结构化文本中精准识别并捕获特定维度的关键信息,实现数据的标准化沉淀,支持多种输入/输出形式。
SELECT AI_EXTRACT('我是一名来自清华大学计算机专业的研究生', array('学校','专业'))

SELECT ai_extract('我的名字是张三,年龄为25岁', struct<姓名:string, 年龄:int>)

SELECT ai_extract('李四居住在上海,是一名软件工程师','{"type": "object","properties": {"姓名": {"type": "string","description": "人员的全名"},"地点": {"type": "string", "description": "城市或国家"},"年龄": {"type": ["integer", "null"], "description": "人员的年龄"},"职业": {"type": ["string", "null"], "description": "人员的职业"}}}')
{"学校": "清华大学", "专业": "计算机"}

{姓名: "张三", 年龄: 25}

{"姓名": "李四", "地点": "上海", "年龄": null, "职业": "软件工程师"}
AI_MASK
text: 原始文本
tags: 脱敏标签数组
隐私数据脱敏:基于预设标签自动定位敏感数据,采用 [MASKED] 掩码技术进行置换遮蔽,确保合规性。
SELECT AI_MASK('联系 13800138000', array('phone'))
"联系 [MASKED]"
说明:
AI_TRANSLATE 函数参数 entities 除了支持标签数组的基本形式,还支持 array(string, schema)(通过 struct<...> 指定返回字段及其类型,结果以 struct 形式返回,便于直接对接表字段)和 string(以 JSON Schema 字符串描述抽取结构,能更细粒度地约束字段类型与描述,建议参考 JSON Schema 2020-12 标准描述)。

场景模拟:构建一个“舆情处理中心”

数据集准备

-- 创建原始舆情数据表
CREATE DATABASE IF NOT EXISTS d_llm_function_demo;
DROP TABLE IF EXISTS d_llm_function_demo.t_social_media_raw;
CREATE TABLE d_llm_function_demo.t_social_media_raw (
id INT COMMENT '唯一标识',
source_platform STRING COMMENT '来源平台:微博、小红书、贴吧等',
author_name STRING COMMENT '发布者昵称',
content STRING NOT NULL COMMENT '原始非结构化评论内容'
)
COMMENT '舆情处理中心-原始数据表';

-- 插入模拟测试数据集
INSERT INTO d_llm_function_demo.t_social_media_raw (id, source_platform, author_name, content) VALUES
(1, '微博', '快乐的小羊', '刚才在静安区世纪大道发生了快递车起火,我的包裹号是 SF142335,商品是一件裙子,联系电话 13812345678,急死我了!'),
(2, '小红书', '避雷达人', '这种垃圾产品也敢卖 2999 元?退钱!张三你这个经理是怎么当的?@官方账号'),
(3, '朋友圈', '科技狂热者', '收到新款手机了,质感无敌!上海发货速度就是快,推荐大家购买。'),
(4, '贴吧', '兼职助手', '诚招兼职,加微信:wx_12345,月入过万不是梦,详询 18900001111。'),
(5, '官方 App', '用户9527', '登录一直提示系统错误,重启也没用。我身份证号是 310115199001011234 你们查一下账号状态。');

核心 SQL 样例

-- 逻辑:过滤违规 -> 情感分析 -> 生成回复
SELECT
id,
AI_GENERATE(CONCAT('针对该问题生成技术回复:', content)) AS 预制回复
FROM d_llm_function_demo.t_social_media_raw
WHERE AI_FILTER(content, '谩骂') = FALSE -- 过滤掉纯谩骂
AND AI_SENTIMENT(content) = 'negative' -- 仅针对负面舆情

执行结果展示

+------+-----------------------------------------------------------------------------+
| id | 预制回复 |
+------+-----------------------------------------------------------------------------+
| 1 | SF142335包裹已记录,将优先处理。客服稍后联系13812345678确认理赔/补发。请保持电话畅通。 |
| 4 | 该信息涉嫌违规招聘,请勿轻信。建议通过正规平台求职,谨防诈骗。 |
| 5 | 账号状态正常。系统错误已反馈技术排查,请稍后再试。 |
+------+-----------------------------------------------------------------------------+