AI问数架构supersonic简介
Supersonic 定位
Supersonic 是一款融合 Chat BI(由大语言模型 LLM 驱动) 和 Headless BI(由语义层驱动) 的新一代 BI 平台。其核心价值在于:
- 让 Chat BI 能像传统 BI 一样访问统一治理的语义数据模型,提升自然语言转 SQL(Text2SQL)的可靠性;
- 通过语义层增强 Text2SQL(减少幻觉和复杂度),同时为 Headless BI 扩展自然语言 API 能力;
- 提供可扩展、可配置的框架,支持通过 Java SPI 机制添加自定义实现。
整体技术架构
Supersonic 的架构以 “语义层” 为核心纽带,连接 Chat BI 和 Headless BI 两大范式,整体流程围绕 “用户自然语言查询→语义解析→SQL 生成→数据查询→结果可视化” 展开。关键架构升级包括:
- 核心框架:基于 SpringBoot 3.x 构建,依赖 LangChain4j 等工具,支持 Swagger 接口文档;
- 扩展性:采用 Java SPI 机制,允许自定义组件实现;
- 多数据库支持:兼容 Oracle、StarRocks、SAP HANA、DuckDB、Kyuubi 等多种数据引擎;
- 性能优化:通过 GC 优化(Generational ZGC)、并行处理、Docker 镜像体积缩减等提升系统效率。
核心组件及功能
模型知识库(Knowledge Base)
- 定期从语义模型中提取 schema 信息(如指标、维度、实体等),构建词典和索引;
- 为后续的模式映射和语义解析提供基础数据支持,确保 LLM 能理解业务语义。
模式映射器(Schema Mapper)
- 识别用户查询中的 schema 元素(指标、维度、实体、值等);
- 将查询文本与知识库匹配,为语义解析提供上下文关联。
语义解析器(Semantic Parser)
- 理解用户自然语言查询,抽取语义信息并生成语义查询语句 S2SQL;
- 结合规则引擎和 LLM,针对不同场景(如演示、测试)优化解析效率。
语义修正器(Semantic Corrector)
- 检查 S2SQL 的合法性,对不合法内容进行修正和优化;
- 结合规则校验和 LLM 能力,提升语义查询的准确性。
语义翻译器(Semantic Translator)
- 将语义查询语句 S2SQL 转换为可在物理数据模型上执行的 SQL 语句;
- 适配多数据库语法,确保 SQL 兼容性。
问答插件(Chat Plugin)
- 通过第三方工具扩展功能(如集成外部 API);
- 基于 LLM 自动选择最适合的插件处理用户查询(需提供插件功能描述和示例问题)。
问答记忆(Chat Memory)
- 存储历史查询轨迹,支持多轮对话;
- 可召回历史记录作为 few-shot 样例嵌入提示词,提升 LLM 的理解能力。
关键特性
- 开箱即用:内置 Chat BI 界面(供业务用户查询)和 Headless BI 界面(供分析师构建语义模型);
- 高级功能:支持输入联想、多轮对话、查询后问题推荐;
- 权限控制:支持数据集级、列级、行级三级数据访问控制;
- 可扩展性:通过插件机制和 SPI 框架,支持定制化功能开发。

