项目地址: https://github.com/Canner/WrenAI
关于 Wren AI 及其使命
Wren AI 是一款开源的 SQL AI 代理,它使数据团队、产品团队和业务团队能够通过聊天、内置精巧直观的界面,以及与 Excel 和 Google Sheets 等工具的无缝集成来获取洞察。
为什么现在选择文本转 SQL?
在快速演变的数据领域中,数据分析师在数据与组织内多元业务情境之间扮演着至关重要的桥梁角色。不同业务单元,各自拥有独特的视角和需求,常常期望从业务数据中获取特定的见解,这让数据分析师的工作既关键又充满挑战。分析师能够以贴合各类利益相关者独特需求的方式解读、转化并传递数据信息,这一点极为关键。
随着大型语言模型(LLM)和检索增强生成(RAG)等先进技术的出现,这一领域正经历变革。RAG 进一步强化了这一进程,通过整合检索到的外部信息,助力 LLM 产出更全面且精准的信息。
凭借对情境的理解和自然语言处理能力,配备 RAG 的 LLM 使分析师能够高效且细致地驾驭和解读海量数据集。
使用 RAG 与 LLM 查询数据库的挑战
将 RAG 与 LLM 结合用于查询数据库并非新概念。虽有许多方案被提出以应对这一问题,但在情境收集、检索、SQL 生成和协作这四个关键阶段仍面临挑战。尽管各方努力试图克服这些难题,但目前所有阶段的挑战依然存在。
挑战
第一阶段:情境收集的挑战
- 跨多元来源的互操作性 :为使从不同来源搜索和整合的信息实现通用化与规范化,以便在不同来源、元数据服务和 API 间无缝集成。
- 数据与元数据的复杂关联 :这涉及在文档存储中将数据与其元数据相关联,涵盖存储元数据、架构以及情境(如关系、计算和聚合)。
第二阶段:检索的挑战
- 向量库的优化 :开发并向量库实施优化技术(如索引和分块)对于提升搜索效率和精准度至关重要。
- 语义搜索的精准度 :挑战在于精准把握查询在情境中的细微差别,这对结果的准确性有着显著影响。通常涉及查询重写、重排序器等技术。
第三阶段:SQL 生成的挑战
- SQL 查询的精准度与可执行性 :生成既精准又可执行的 SQL 查询是一项重大挑战。这要求 LLM 深入理解 SQL 语法、数据库架构以及不同数据库系统的特定方言。
- 适配查询引擎方言 :不同数据库常有独特的 SQL 实现方言和细微差异。设计能够适应这些差异并在不同系统中生成兼容查询的 LLM,为挑战增添了又一层复杂性。
第四阶段:协作的挑战
- 集体知识的积累 :挑战在于创建一种机制,有效汇集、整合并利用来自不同用户群体的集体见解和反馈,以提升 LLM 检索数据的精准度和相关性。
- 访问控制 :在我们最终检索到数据后,下一个极为重要的挑战是确保现有的组织数据访问政策和隐私法规同样适用于新的 LLM 和 RAG 架构。
介绍 Wren AI —— 面向数据和业务团队的一站式文本转 SQL 解决方案。
在开发 Wren AI 时,我们秉持一些核心设计理念。
- 用任意语言与数据对话 :Wren AI 能说你的语言,像英语、德语、西班牙语、法语、日语、韩语、葡萄牙语、中文等。通过向 Wren AI 提出你的业务问题,解锁有价值的见解。它超越了表面的数据分析,揭示出有意义的信息,简化了从潜在客户评分模板到客户细分等问题的答案获取过程。
- 带有精巧 UI/UX 的语义索引 :Wren AI 实现了语义引擎架构,为 LLM 提供业务上下文;你可以轻松在数据架构上建立逻辑展示层,助力 LLM 更好地了解业务情境。
- 带上下文生成 SQL 查询 :借助 Wren AI,你可以用 “建模定义语言” 处理元数据、架构、术语、数据关系以及计算和聚合背后的逻辑,减少重复编码,简化数据连接。
- 无需编写代码获取见解 :在 Wren AI 中开启新对话时,你的问题将用于查找最相关的表。从这些表中,LLM 会为用户生成三个相关问题供选择。你还可以提出后续问题以深入获取见解。
- 生成式商业智能(GenBI) :GenBI 功能为用户提供直观的 AI 生成摘要,提供关键见解,搭配 SQL 查询简化复杂数据。能瞬间将查询结果转化为 AI 生成的报告、图表,把原始数据转化为清晰、可操作的可视化内容。借助 GenBI,你能更轻松快捷地做出明智决策。