谷歌云 | Gemini 大模型赋能 BigQuery 情感分析:解码客户评论,洞悉市场风向

news2024/10/3 10:48:32

情感分析是企业洞察客户需求和改进产品服务的重要工具。近年来,随着自然语言处理 (NLP) 技术的飞速发展,情感分析变得更加精准高效。Google 推出的 Gemini 模型,作为大型语言模型 (LLM) 的代表,拥有强大的文本处理能力,可帮助企业轻松实现情感分析。

Gemini 模型在 BigQuery 中的应用

BigQuery 作为 Google 云数据仓库,拥有强大的数据分析能力。将 Gemini 模型与 BigQuery 结合,可以实现更加高效的情感分析。具体来说,BigQuery 提供了 ML.GENERATE_TEXT 函数,该函数允许您直接在 SQL 查询中利用 Gemini 模型来分析 BigQuery 表中的文本。这意味着您无需将数据从 BigQuery 迁移到其他平台或编写复杂的代码,就可以进行深入的文本分析。

ML.GENERATE_TEXT 函数还可用于使用基于gemini-pro-vision 多模态模型的远程模型来生成描述视觉内容的文本。该功能主要具有以下优势:

  • 易于使用: 基于 SQL 的查询方式,即使非专业人员也能轻松上手。

  • 可扩展性: BigQuery 可以处理海量数据,Gemini 模型可以高效分析大规模文本数据。

  • 强大的分析能力: Gemini 模型可以进行细粒度的文本分析,提取情感、主题、关键词等信息。

  • 灵活的应用场景: 情感分析、主题提取、文本摘要、文本生成等多种场景。

接下来,我们以假设的一个打车公司为例,了解如何使用 ML.GENERATE_TEXT 函数:

设置说明:

  1. 开始之前,请选择您的 GCP 项目,链接结算帐户,并启用必要的API;

  2. 创建云资源连接并获取连接的服务账户;

  3. 授予服务帐户访问权限。 

  4. 加载数据。要从公共存储帐户加载,请使用以下命令:

    1. 请将“[PROJECT_ID.DATASET_ID]”替换为您的 project_id,并输入数据集的名称

    2. 该命令将在您的数据集中创建一个名为“ customer_review ”的表

CREATE SCHEMA IF NOT EXISTS `[PROJECT_ID.DATASET_ID]` OPTIONS (location='us');


LOAD DATA OVERWRITE `[PROJECT_ID.DATASET_ID].customer_review`
FROM FILES ( format = 'PARQUET',
uris = ['gs://data-analytics-golden-demo/rideshare-lakehouse-raw-bucket/rideshare_llm_export/v1/raw_zone/customer_review/000000000000.parquet']);

情感分析

然后,让我们来看一个执行情感分析的例子。

1.创建模型

在 BigQuery 中创建一个利用 Vertex AI 基础模型的远程模型。

句法:

CREATE OR REPLACE MODEL
`PROJECT_ID.DATASET_ID.MODEL_NAME`
REMOTE WITH CONNECTION `PROJECT_ID.REGION.CONNECTION_ID`
OPTIONS (ENDPOINT = 'ENDPOINT');

代码示例

  • 请替换'[PROJECT_ID.DATASET_ID.MODEL_NAME]'  为您的 project_id、dataset_id 和模型名称

  • 请替换'[PROJECT_ID.REGION.CONNECTION_ID]'  为您的 project_id、region 和 connection_id

CREATE OR REPLACE MODEL `[PROJECT_ID.DATASET_ID.MODEL_NAME]`
REMOTE WITH CONNECTION `[PROJECT_ID.REGION.CONNECTION_ID]`
OPTIONS (ENDPOINT = 'gemini-pro');

2.生成文本

只需几行 SQL,您就可以使用该模型和 ML.GENERATE_TEXT 函数分析 BigQuery 表中的文本或视觉内容。

ML.GENERATE_TEXT 语法因远程模型所针对的 Vertex AI 模型而异。阅读文档以了解 ML.GENERATE_TEXT 函数的所有参数。

句法:

ML.GENERATE_TEXT(
MODEL project_id.dataset.model,
{ TABLE project_id.dataset.table | (query_statement) },
STRUCT(
  [max_output_tokens AS max_output_tokens]
  [, top_k AS top_k]
  [, top_p AS top_p]
  [, temperature AS temperature]
  [, flatten_json_output AS flatten_json_output]
  [, stop_sequences AS stop_sequences])
)

代码示例:

  • 请替换'[PROJECT_ID.DATASET_ID]'  为您的 project_id 和 dataset_id

  • 请替换'[PROJECT_ID.REGION.CONNECTION_ID]'  为您的 project_id、region 和 connection_id

CREATE OR REPLACE TABLE `[PROJECT_ID.DATASET_ID].review_sentiment_analysis` AS
WITH PROMPT AS (
 SELECT CONCAT ('For the given review classify the sentiment as Positive, Neutral or Negative.',


'\n input: The driver was able to make some small talk, but he didn\'t go overboard. I liked that he was friendly and chatty, but he also knew when to leave me alone. The trunk fit my belongings, and the car was clean and comfortable. Overall, it was a good ride.',


'\n output: \n Positive - Trunk fit my belongings, friendly, chatty',


'\n input: I took a rideshare last night and it was an okay experience. The car was adequately clean, but it was a bit warm for my liking. The driver was able to make some small talk, but I wasn\'t really in the mood to talk. Overall, it was a fine ride.',


'\n output: Neutral - Clean, A bit warm, fun ride',
 '\n input: ', customer_review_text,
'\n output: '
) AS prompt, customer_id, 
customer_review_text
 FROM `[PROJECT_ID.DATASET_ID].customer_review`
 LIMIT 20
),
REVIEW_RESPONSE_GENERATION AS (
 SELECT *
 FROM
 ML.GENERATE_TEXT(
    MODEL `[PROJECT_ID.DATASET_ID.MODEL_NAME]`,
   (SELECT * FROM PROMPT),
   STRUCT(
     200 AS max_output_tokens,
     0.5 AS temperature,
     40 AS top_k,
     1.0 AS top_p,
     TRUE AS flatten_json_output))
)
SELECT ml_generate_text_llm_result, customer_id, customer_review_text, prompt, ml_generate_text_status FROM REVIEW_RESPONSE_GENERATION;


SELECT ml_generate_text_llm_result, customer_id, customer_review_text, prompt, ml_generate_text_status  FROM `[PROJECT_ID.DATASET_ID].review_sentiment_analysis`;

3.结果:

在提示中,我们为模型提供了上下文以及两个示例,清晰地展示了我们期望的输出格式。您可以通过少量样本提示的方法,验证生成的输出是否与我们提供的示例保持一致。

少量样本提示中,包含一些带有相应情感标签的评论示例对于引导模型行为至关重要。为了确保模型在各种情况下都能有效工作,提供足够数量的结构良好的示例(涵盖各种评论场景)是必不可少的。

然后,通过对客户评论进行情感分析,我们可以深入了解他们对我们产品的偏好和痛点。通过识别评论中的关键主题,我们可以有效地将宝贵的反馈传达给产品团队,使他们能够做出数据驱动的明智决策并进行改进。

在上表中,您可以看到 ML.GENERATE_TEXT 的结果,其中包括输入表以及以下列:

  1. ml_generate_text_result:这是 JSON 响应,生成的文本位于文本元素中。

  2. ml_generate_text_llm_result:包含生成文本的 STRING 值。当 flatten_json_output 为 TRUE 时返回此列。

  3. ml_generate_text_rai_result:包含安全属性的 STRING 值。当 flatten_json_output 为 TRUE 时返回此列。

  4. ml_generate_text_status:一个字符串值,包含相应行的 API 响应状态。如果操作成功,则此值为空。

提取主题

接着,让我们使用上面创建的模型从评论中提取主题:

  • 请替换'[PROJECT_ID.DATASET_ID]'  为您的 project_id 和 dataset_id

CREATE OR REPLACE TABLE `[PROJECT_ID.DATASET_ID].extract_themes` AS


WITH PROMPT AS (
 SELECT CONCAT(
"""
Classify the text as one or more of the following categories and return in the below json format.
- "trunk space small"
- "trunk space large"
- "driving too fast"
- "driving too slow"
- "clean car"
- "dirty car"
- "car too hot"
- "car too cold"
- "driver likes conversation"
- "driver likes no conversation"
- "driver likes music"
- "driver likes no music"
- "distracted driver"


JSON format: [ "value" ]
Sample JSON Response: [ "dirty car", "car too cold" ]


Text:
""", customer_review_text) AS prompt, customer_id, customer_review_text
         FROM `[PROJECT_ID.DATASET_ID].customer_review`
         LIMIT 10
),
EXTRACT_THEMES AS (
 SELECT *
 FROM
 ML.GENERATE_TEXT(
    MODEL `[PROJECT_ID.DATASET_ID.MODEL_NAME]`,
   (SELECT * FROM PROMPT),
   STRUCT(
     1024 AS max_output_tokens,
     0 AS temperature,
     1 AS top_k,
     0 AS top_p,
     TRUE AS flatten_json_output))
)
SELECT ml_generate_text_llm_result, customer_id, customer_review_text, prompt, ml_generate_text_status FROM EXTRACT_THEMES;


SELECT ml_generate_text_llm_result, customer_id, customer_review_text, prompt, ml_generate_text_status  FROM `[PROJECT_ID.DATASET_ID].extract_themes`;

结果:

使用 BigQuery 控制台中的 ML.GENERATE_TEXT 函数和 SQL,我们可以高效地识别客户评论中的关键主题。这让我们能够更深入地了解客户的看法,并提供可操作的数据来改进我们的产品。

分析主题

现在我们已经确定了评论的主题,让我们更深入地了解BigQuery 中的数据画布,这是我们在 Next '24 上推出的以AI 为中心的体验,旨在重新构想数据分析。BigQuery 数据画布可让您使用自然语言发现、转换、查询和可视化数据。它还提供了一个图形界面,可让您在有向无环图 (DAG) 中使用数据源、查询和可视化,从而让您可以查看映射到您的思维模型的分析工作流程。

鉴于我们的主题存储在“extract_themes”表中,让我们创建一个数据画布来进一步分析它们。单击“+”图标旁边的向下箭头,然后选择“创建数据画布”

您将进入以下图示的页面,在其中搜索“提取主题”表并开始操作:

选择一个表,您就会在画布上看到它,您可以在其中直接查询它或将其与其他表连接。

要创建主题条形图,请单击“查询”按钮并输入“最常见主题的条形图,删除空值并将结果限制为前 10 个值”。即使“主题”不在专用列中,AI 也能理解您的请求并自动生成正确的查询 - AI 识别出主题位于“ml_genertae_text_llm_result”列中。最后,单击“运行”以查看查询结果。

到这里,您的主题数据已准备就绪!单击“可视化”即可立即查看您的条形图。 

最后,您就可以成功拥有从客户评论中提取的主题的条形图,以及基于数据和发现的解释自动生成的有用见解。 

简而言之,BigQuery 数据画布可让您使用简单的自然语言命令从头到尾分析数据:发现相关数据、将其与客户信息合并、找到关键见解、与团队成员协作以及创建报告 - 所有这些都在一个地方完成。此外,您可以保存这些结果或将它们与其他数据合并以进行进一步分析,或将其提取到笔记本中。

总结

Gemini 模型与 BigQuery 的结合,为企业提供了强大的情感分析工具。借助 Gemini 模型,企业可以轻松解码客户评论中的情感,洞察市场趋势,从而更好地改进产品服务,提升客户满意度。

立即联系 Cloud Ace云一,解锁您的商业洞察力!

Cloud Ace云一,致力于为中国出海企业提供专业、高效的云服务,助力您实现数字化转型,成功掌握更多商机!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1912281.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

共生与变革:AI在开发者世界的角色深度剖析

在科技日新月异的今天,人工智能(AI)已不再是遥不可及的概念,而是逐步渗透到我们工作与生活的每一个角落。对于开发者这一群体而言,AI的崛起既带来了前所未有的机遇,也引发了关于其角色定位的深刻讨论——AI…

electron在VSCode和IDEA及webStrom等编辑器控制台打印日志乱码

window10环境下设置 1.打开Windows设置 2.打开时间和语言,选择语言菜单、如何点击管理语言设置 3.打开之后选择管理,选择更改系统区域设置,把Beta版:使用Unicode UTF-8提供全球语言支持 勾上,点击确定,…

氛围感视频素材高级感的去哪里找啊?带氛围感的素材网站库分享

亲爱的创作者们,大家好!今天我们来聊聊视频创作中至关重要的一点——氛围感。一个好的视频,不仅要有视觉冲击力,还要能够触动观众的情感。那我们应该去哪里寻找这些充满氛围感且高级的视频素材呢?别急,我这…

isaac sim 与 WLS2 ros2实现通信

Omniverse以及isaac还是windows下使用顺手一点,但是做跟ros相关的开发时候,基本就得迁移到ubuntu下了,windows下ros安装还是过于复杂,那不想用双系统或者ubuntu或者虚拟机,有啥别的好方法呢?这里想到了wind…

希喂、鲜朗和牧野奇迹主食冻干怎么样?第一次喂冻干哪款更好

我是个宠物医生,每天很长时间都在跟猫猫狗狗打交道,送到店里来的猫猫状态几乎是一眼就能看出来,肥胖、肝损伤真是现在大部分家养猫正面临的,靠送医治疗只能减缓无法根治,根本在于铲屎官的喂养方式。 从业这几年&#…

打开ps提示dll文件丢失如何解决?教你几种靠谱的方法

在日常使用电脑过程中,由于不当操作,dll文件丢失是一种常见现象。当dll文件丢失时,程序将无法正常运行,比如ps,pr等待软件。此时,我们需要对其进行修复以恢复其功能,下面我们一起来了解一下出现…

EtherCAT总线冗余让制造更安全更可靠更智能

冗余定义 什么是总线冗余功能?我们都知道,EtherCAT现场总线具有灵活的拓扑结构,设备间支持线型、星型、树型的连接方式,其中线型结构简单、传输效率高,大多数的现场应用中也是使用这种连接方式,如下图所示…

MiniGPT-Med 通用医学视觉大模型:生成医学报告 + 视觉问答 + 医学疾病识别

MiniGPT-Med 通用医学视觉大模型:生成医学报告 视觉问答 医学疾病识别 提出背景解法拆解 论文:https://arxiv.org/pdf/2407.04106 代码:https://github.com/Vision-CAIR/MiniGPT-Med 提出背景 近年来,人工智能(AI…

单链表(C语言详细版)

1. 链表的概念及结构 概念:链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 链表的结构跟火车车厢相似,淡季时车次的车厢会相应减少,旺季时车次的车厢会额外增加几节。…

Java面试八股之描述一下MySQL使用索引查询数据的过程

描述一下MySQL使用索引查询数据的过程 1.解析查询语句与查询优化 用户提交一个 SQL 查询语句,MySQL 的查询解析器对其进行词法分析和语法分析,生成解析树。 查询优化器根据解析树、表结构信息、统计信息以及索引信息,决定是否使用 B树索引…

解锁AI大模型潜能:预训练、迁移学习与中间件编程的协同艺术

在人工智能的浩瀚星空中,大型预训练模型(Large Language Models, LLMs)犹如璀璨的星辰,引领着技术革新的浪潮。这些模型通过海量数据的滋养,学会了理解语言、生成文本乃至执行复杂任务的能力。然而,要让这些…

符号同步、定时同步和载波同步

符号同步、定时同步和载波同步是通信系统中重要的同步技术,它们各自承担着不同的功能和作用。以下是对这三种同步技术的详细解释: 符号同步 定义: 符号同步,也称为定时恢复或时钟恢复,是指在数字通信系统中&#xff…

mysql 5.7.44 32位 zip安装

前言 因为研究别人代码,他使用了5.7的 32位 mysql ,同时最新的 8.4 64位 mysql 不能用官方lib连接。所以安装这个版本使用,期间有些坑,在这里记录一下。 下载路径 mysql官方路径:https://downloads.mysql.com/archi…

更深入了解汽车与航空电子等安全关键型应用的IP核考量因素

作者:Philipp Jacobsohn,SmartDV高级应用工程师 中国已经连续十多年成为全球第一大汽车产销国,智能化也成为了汽车行业发展的一个重要方向,同时越来越多的制造商正在考虑进入无人机和飞行汽车等低空设备,而所有的这些…

一周IT资讯 | B站、小红书等应用崩溃,系阿里云服务器异常所致;余承东回西工大演讲,网友:“史上最强招生guang告”

4.B站、小红书等应用崩溃,系阿里云服务器异常所致 7月2日上午,“B站崩了”“小红书崩了”等话题登上热搜。B站APP无法使用浏览历史关注等内容,消息界面、更新界面、客服界面均不可用,用户也无法评论和发弹幕,视频评论…

React+TS前台项目实战(二十六)-- 高性能可配置Echarts图表组件封装

文章目录 前言CommonChart组件1. 功能分析2. 代码详细注释3. 使用到的全局hook代码4. 使用方式5. 效果展示 总结 前言 Echarts图表在项目中经常用到,然而,重复编写初始化,更新,以及清除实例等动作对于开发人员来说是一种浪费时间…

浏览器开发者视角及CSS表达式选择元素

点击想要查看的接口,然后点击检查,便可以切换到该接口对应的html代码 如果F12不起作用的话,点击更多工具,然后选择开发者工具即可 ctrlF可以去查阅相关的CSS表达式选择元素 如果没有加#t1,那么表示的是选择所有的p 使用…

对比学习和多模态任务

1. 对比学习 对比学习(Contrastive Learning)是一种自监督学习的方法,旨在通过比较数据表示空间中的不同样本来学习有用的特征表示。其核心思想是通过最大化同类样本之间的相似性(或降低它们之间的距离),同…

使用F1C200S从零制作掌机之debian文件系统完善NES

一、模拟器源码 源码:https://files.cnblogs.com/files/twzy/arm-NES-linux-master.zip 二、文件系统 文件系统:debian bullseye 使用builtroot2018构建的文件系统,使用InfoNES模拟器存在bug,搞不定,所以放弃&…

这8款宝藏软件,才是安卓手机必装App!

​AI视频生成:小说文案智能分镜智能识别角色和场景批量Ai绘图自动配音添加音乐一键合成视频https://aitools.jurilu.com/ 1.我的日记——My Diary My Diary 是一款带锁的免费安卓日记工具。 它可用于记录每日日记、秘密想法、旅程、心情追踪或任何私人时刻。 你可…