MaxCompute SQL AI 实操

简介: MaxCompute SQL AI全新上线,通过AI_GENERATE函数在SQL中直接调用大模型,实现工作总结智能分析,支持内容分类、情感判断与多模态处理,提升数据分析效率。

在企业日常运营中,工作总结统计是一项高频且重要的数据分析任务。传统的数据分析方法往往需要编写复杂的SQL查询、使用多种工具进行数据处理和可视化,耗时耗力。随着大模型技术的发展,MaxCompute SQL AI 全新上线,让数据分析师可以用熟悉的SQL语言直接调用大模型,实现更智能、更高效的数据分析。

本文将以"工作总结统计类数据"为主题,展示如何使用MaxCompute SQL AI功能,通过简单的SQL语句完成工作总结的智能分析,包括工作内容分类、情感倾向分析、关键信息提取等任务,帮助企业快速洞察员工工作状态和业绩情况。


AI_GENERATE是MaxCompute提供的AI Function,用于调用模型结合提示词执行推理任务,支持自然语言生成、复杂逻辑分析、情感分类、多模态理解等场景。用户可通过SQL直接完成非结构化数据的智能处理,无需外部服务依赖。

命令格式

AI_GENERATE在调用LLM大语言模型和MLLM多模态大语言模型时,会有不同的函数签名。

  • 当model_type为LLM大语言模型时,函数签名如下:
STRING AI_GENERATE(
  STRING <model_name> , 
  STRING <version_name>, 
  STRING <prompt> 
  [, STRING <model_parameters>]
);
  • 当model_type为MLLM多模态大语言模型时,函数签名如下:
STRING AI_GENERATE(
  STRING <model_name>, 
  STRING <version_name>, 
  STRING | BINARY <unstructured_data> ,
  STRING <prompt> 
  [, STRING <model_parameters>]
);

参数说明

  • model_name:必填。STRING类型。待使用的模型名。支持模型的model_type为LLM或MLLM。
  • version_name:必填。STRING类型。待使用的模型版本名。如果调用默认version,支持直接输入DEFAULT_VERSION
  • prompt:必填。STRING类型。待输入的模型提示词。STRING类型常量、列名或表达式。
  • unstructured_data:必填(当model_type为MLLM时)。STRING或BINARY类型。需要处理的多模态数据,支持指定为图片STRING类型的URL地址,或图片BINARY类型二进制表示,当指定为BINARY类型时,需要在创建模型时同时指定BINARY类型的输入参数。
  • model_parameters:选填。STRING类型。支持指定模型调用相关参数max_tokens、temperature、top_p,格式为'{"max_tokens": 500, "temperature": 0.6, "top_p": 0.95}'。参数说明如下:
  • max_tokens:设置模型单次调用输出token的最大数量,对于MaxCompute公共模型,默认值为4096。
  • temperature:介于0到1之间的值,用于控制模型输出的随机性。越高的值会导致模型输出的多样化和随机性越高。
  • top_p:介于0到1之间的值,用于控制模型的随机性和多样性,越大的值会导致模型输出的随机性越高。

说明

使用AI Function调用公共模型推理时,需要SET odps.sql.using.public.model=true;打开使用公共模型开关。

返回值说明

返回STRING类型,模型的生成内容结果。

使用示例

  • 示例1:调用模型进行内容生成。
    调用MaxCompute提供的公共模型Qwen3-0.6B-GGUF,直接进行模型调用与内容生成。
SET odps.sql.using.public.model=true;
-- 返回结果。
-- "The capital of China is **Beijing**."
SELECT AI_GENERATE(bigdata_public_modelset.default.Qwen3-0.6B-GGUF,DEFAULT_VERSION,'what is the capital of China');
  • 示例2:调用模型进行情感分析。
    调用MaxCompute提供的公共模型Qwen3-1.7B-GGUF,对网络用户评论数据进行情感分析。
SET odps.sql.using.public.model=true;
SELECT 
    prompt,
    AI_GENERATE(
        bigdata_public_modelset.default.Qwen3-1.7B-GGUF,
        DEFAULT_VERSION,
        concat('请对以下评论进行情感分析分类,输出结果仅限于以下三个选项之一:正面、负面、中性。待分析的评论:', prompt)
    ) AS generated_text
FROM (
    VALUES 
        ('今天天气真好,心情很不错!阳光明媚,适合出去散步。 /no_think'),
        ('今天天气真好,心情很不错!阳光明媚 /no_think'),
        ('科技发展日新月异,人工智能改变生活。 /no_think'),
        ('防控措施很到位,为医护人员点赞! /no_think'),
        ('这个商品质量很差 /no_think')
) t (prompt);
-- 返回结果:
+-----------------------------------------------------+----------------+
| prompt                                              | generated_text |
+-----------------------------------------------------+----------------+
| 今天天气真好,心情很不错!阳光明媚,适合出去散步 /no_think  | "正面"          |
| 今天天气真好,心情很不错!阳光明媚 /no_think              | "正面"          |
| 科技发展日新月异,人工智能改变生活。 /no_think            | "正面"          |
| 防控措施很到位,为医护人员点赞! /no_think            | "正面"          |
| 这个商品质量很差 /no_think                             | "负面"          |
+-----------------------------------------------------+----------------+
  • 示例3:调用模型进行多模态数据处理。
    调用已经创建好的模型PAI_EAS_Qwen25_Omni_3B(PAI-EAS远程模型),并创建好名为image_demo的Object Table,详细步骤参考使用MaxCompute远程模型自动生成电商选品描述,即可调用AI Function。基于图片的URL地址及提示词进行模型调用,实现商品类目打标。
    说明
    当前MC远程模型仅支持配置EAS公网地址,在使用AI Function调用模型时,请参考通过项目管理编辑外部网络地址将EAS公网地址设置可用的MaxCompute外部网络地址。
SELECT
  key,
  AI_GENERATE(
    PAI_EAS_Qwen25_Omni_3B, v1, image_url,
    "从电商商品销售海报中识别并提取商品所属的类目。返回结果仅限于如下六个选项之一:美妆、服装、日用、食品、其他、电子产品,不包含其他文字或信息"
  ) AS item_catagory
  FROM (
    SELECT GET_SIGNED_URL_FROM_OSS(
      'pd_test_model.default.image_demo', key, 604800
    ) AS image_url, key AS key
    FROM pd_test_model.default.image_demo
) Limit 10;
-- 返回结果:
+--------------------+----------------+
| key                | item_catagory  |
+--------------------+----------------+
| alimamazszw-1.jpg  | 食品           | 
| alimamazszw-10.jpg | 电子产品        | 
| alimamazszw-11.jpg | 电子产品        | 
| alimamazszw-12.jpg | 美妆           | 
| alimamazszw-13.jpg | 电子产品        | 
| alimamazszw-14.jpg | 日用           | 
| alimamazszw-15.jpg | 美妆           | 
| alimamazszw-16.jpg | 美妆           | 
| alimamazszw-18.jpg | 日用           | 
+--------------------+---------------+
目录
相关文章
|
14天前
|
数据采集 人工智能 监控
告别“垃圾进垃圾出”:打造高质量数据集的完整指南
本文深入解析AI时代“数据比算法更重要”的核心理念,系统阐述高质量数据集的定义、黄金标准(含16条可操作规范)与七步构建法,并提供自动化检查、基线验证及人工评审等实用评估手段,助力开发者高效打造可靠、合规、可持续迭代的优质训练数据。(239字)
204 12
|
22天前
|
数据采集 人工智能 IDE
告别碎片化日志:一套方案采集所有主流 AI 编程工具
本文介绍了一套基于MCP架构的轻量化、多AI工具代码采集方案,支持CLI、IDE等多类工具,实现用户无感、可扩展的数据采集,已对接Aone日志平台,助力AI代码采纳率分析与研发效能提升。
396 46
告别碎片化日志:一套方案采集所有主流 AI 编程工具
|
8天前
|
XML 前端开发 Serverless
自建一个 Agent 很难吗?一语道破,万语难明
本文分享了在奥德赛TQL研发平台中集成BFF Agent的完整实践:基于LangGraph构建状态图,采用Iframe嵌入、Faas托管与Next.js+React框架;通过XML提示词优化、结构化知识库(RAG+DeepWiki)、工具链白名单及上下文压缩(保留近3轮对话)等策略,显著提升TQL脚本生成质量与稳定性。
164 17
自建一个 Agent 很难吗?一语道破,万语难明
|
8天前
|
人工智能 Java Nacos
构建开放智能体生态:AgentScope 如何用 A2A 协议与 Nacos 打通协作壁垒?
AgentScope 全面支持 A2A 协议和 Nacos 智能体注册中心,实现跨语言跨框架智能体互通。
268 34
|
1月前
|
人工智能 安全 API
Nacos 安全护栏:MCP、Agent、配置全维防护,重塑 AI Registry 安全边界
Nacos安全新标杆:精细鉴权、无感灰度、全量审计!
644 66
|
14天前
|
数据采集 机器学习/深度学习 人工智能
关于数据集的采集、清理与数据,看这篇文章就够了
本文用通俗语言解析AI“隐形王者”——数据集,涵盖本质价值、三类数据形态、全生命周期七步法(需求定义→采集→清洗→标注→存储→划分→评估),并以垃圾评论拦截为例手把手实操。强调“数据即新石油”,质量决定模型上限。
115 16
|
1月前
|
存储 SQL 运维
Hologres Dynamic Table:高效增量刷新,构建实时统一数仓的核心利器
在实时数据架构中,Hologres Dynamic Table 基于有状态增量计算模型,有效解决“海量历史+少量新增”场景下的数据刷新难题。相比传统全量刷新,其通过持久化中间状态,实现复杂查询下的高效增量更新,显著降低延迟与资源消耗,提升实时数仓性能与运维效率。
|
15天前
|
人工智能 JSON 调度
架构设计实践:如何构建基于 LLM 的 AI Agent "指挥官" (Commander) 模式
本文提出一种基于“指挥官(Commander)”的中心化调度架构,解决多Agent协作中的循环沟通、目标漂移等问题。通过Prompt工程与状态机设计,实现任务拆解、分发与验收,并结合阿里云百炼平台与通义千问模型,提供可落地的代码级实现方案,构建稳定可控的AI多智能体系统。(238字)
154 3
|
28天前
|
安全 Java Maven
【RuoYi-SpringBoot3-Pro】:ClassFinal 代码加密
本文介绍RuoYi-SpringBoot3-Pro如何集成ClassFinal实现Java代码加密,保护核心业务逻辑。通过Maven插件对class文件与配置文件进行AES加密,防止反编译泄露,支持选择性加密、密码验证与机器码绑定,适用于商业交付、私有化部署等场景,保障知识产权安全。
273 5
|
21天前
|
人工智能 运维 前端开发
阿里云百炼高代码应用全新升级
阿里云百炼高代码应用全新升级,支持界面化代码提交、一键模板创建及Pipeline流水线部署,全面兼容FC与网关多Region生产环境。开放构建日志与可观测能力,新增高中低代码Demo与AgentIdentity最佳实践,支持前端聊天体验与调试。
362 52