-
Notifications
You must be signed in to change notification settings - Fork 4
/
index.xml
165 lines (165 loc) · 85.9 KB
/
index.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>项目介绍 on SuperSonic</title>
<link>https://supersonicbi.github.io/</link>
<description>Recent content in 项目介绍 on SuperSonic</description>
<generator>Hugo</generator>
<language>en-us</language>
<atom:link href="https://supersonicbi.github.io/index.xml" rel="self" type="application/rss+xml" />
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/chat-bi/%E6%A6%82%E5%BF%B5/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/chat-bi/%E6%A6%82%E5%BF%B5/</guid>
<description><h1 id="概念">
 概念
 <a class="anchor" href="#%e6%a6%82%e5%bf%b5">#</a>
</h1>
<h3 id="助理">
 <strong>助理</strong>
 <a class="anchor" href="#%e5%8a%a9%e7%90%86">#</a>
</h3>
<p>智能助理可以理解为SuperSonic一系列工具的集合, 一个智能助理可以同时具备规则解析, 大模型语义解析, 插件召回等多种工具和能力。
用户可以根据自己的需要进行配置, 问答对话时也可以灵活选择需要的智能助理。 此外,因为智能助理可以选择特定的工具,
配置适合的智能助理可以减少不同工具之间的干扰,使得用户可以更加专注在自己需要的工具中。
而工具中又可以配置特定的数据集, 也可以减少不同数据集数据之间的干扰, 使得用户更容易获取到自己需要的数据。</p>
<h3 id="工具">
 <strong>工具</strong>
 <a class="anchor" href="#%e5%b7%a5%e5%85%b7">#</a>
</h3>
<p>SuperSonic中的工具主要分为以下三种:</p>
<p><strong>1. 规则解析</strong>: 由规则实现的Text2SQL方式,优化点是解析速度快,成本低,非常适合Demo或者一些简单场景,但准确率没有大模型语义解析高。</p>
<p><strong>2. 大模型语义解析</strong>: 基于大模型实现的Text2SQL方式,能实现较复杂的Text解析。</p>
<p><strong>3. 第三方插件</strong>: 对以上两种工具的拓展,意在实现Text2SQL之外的能力,下面有详细介绍。</p>
<h3 id="插件">
 <strong>插件</strong>
 <a class="anchor" href="#%e6%8f%92%e4%bb%b6">#</a>
</h3>
<p>为了更好的实现用户的自定义需求,SuperSonic提供了插件市场的功能。 用户录入插件信息之后, 插件就可以被向量数据库和LLM召回, 进而执行对应的插件逻辑。目前插件分为Web页面插件和Web服务插件两类。</p>
<p><strong>Web页面插件</strong>: 插件形式为任意一个网页, 可以是一个看板, 也可以是一个解读报告, 召回之后可以把这个网页渲染到问答会话列表;</p>
<p><strong>Web服务插件</strong>: 插件形式为任意一个HTTP服务链接, 通过插件召回之后, 问答服务可以根据配置自动去调用HTTP服务链接并获取结果, 并把结果呈现到问答会话列表进行渲染。</p></description>
</item>
<item>
<title>Docker部署</title>
<link>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/docker%E9%83%A8%E7%BD%B2/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/docker%E9%83%A8%E7%BD%B2/</guid>
<description><h1 id="部署前提">
 部署前提
 <a class="anchor" href="#%e9%83%a8%e7%bd%b2%e5%89%8d%e6%8f%90">#</a>
</h1>
<p>下载安装Docker和Docker Compose,并启动docker<br>
Docker版本:26.0.0+<br>
Docker Compose:v2.26.1+</p>
<blockquote class="book-hint info">
 <p><strong>注意</strong></p>
<p>1 如果报如下错:<br>
Cannot connect to the Docker daemon at unix:///Users/lexluo/.docker/run/docker.sock. Is the docker daemon running?<br>
说明docker没有启动</p>
<p>2 supersonic_db_init主要作用是数据库数据初始化,不是常驻服务。执行完成后,exited是正常现象。</p>

</blockquote>

<h1 id="启动部署">
 启动部署
 <a class="anchor" href="#%e5%90%af%e5%8a%a8%e9%83%a8%e7%bd%b2">#</a>
</h1>
<h2 id="进入docker目录执行脚步启动">
 进入docker目录,执行脚步启动
 <a class="anchor" href="#%e8%bf%9b%e5%85%a5docker%e7%9b%ae%e5%bd%95%e6%89%a7%e8%a1%8c%e8%84%9a%e6%ad%a5%e5%90%af%e5%8a%a8">#</a>
</h2>
<p><code>docker-compose up -d</code>
<blockquote class="book-hint info">
 <strong>注意</strong>
支持按SuperSonic版本启动,不指定版本默认是:latest<br>
<code>SUPERSONIC_VERSION=0.9.2-SNAPSHOT docker-compose up -d</code>
</blockquote>
</p>
<figure><img src="https://supersonicbi.github.io/img/docker_ps.png#center">
</figure>

<blockquote class="book-hint info">
 <p><strong>注意</strong>
镜像下载慢,可配置国内镜像源,许多国内的云服务提供商提供了Docker镜像加速服务。你可以配置Docker使用这些镜像源来加速下载。
以阿里云为例:</p>
<ol>
<li>登录阿里云控制台,进入容器镜像服务。</li>
<li>在左侧导航栏中选择“镜像加速器”。</li>
<li>复制加速器地址,例如 https://<!-- raw HTML omitted -->.mirror.aliyuncs.com。</li>
<li>编辑 Docker 配置文件 /etc/docker/daemon.json,添加以下内容:<br>
{
&ldquo;registry-mirrors&rdquo;: [&ldquo;https://<!-- raw HTML omitted -->.mirror.aliyuncs.com&rdquo;]
}</li>
<li>重启 Docker 服务:<br>
sudo systemctl daemon-reload<br>
sudo systemctl restart docker</li>
</ol>
</blockquote>

<h2 id="运维操作">
 运维操作
 <a class="anchor" href="#%e8%bf%90%e7%bb%b4%e6%93%8d%e4%bd%9c">#</a>
</h2>
<p>1 查看进程运行状况:<br>
<code>docker-compose ps</code>
正常会出现三个服务:
<figure><img src="https://supersonicbi.github.io/img/docker_service.png#center">
</figure>
</p></description>
</item>
<item>
<title>概念</title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E6%A6%82%E5%BF%B5/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E6%A6%82%E5%BF%B5/</guid>
<description><h1 id="概念">
 概念
 <a class="anchor" href="#%e6%a6%82%e5%bf%b5">#</a>
</h1>
<h3 id="总览">
 <strong>总览</strong>
 <a class="anchor" href="#%e6%80%bb%e8%a7%88">#</a>
</h3>
<p>下面这个图清晰地表达了SuperSonic中Headless部分的各种概念之间的关系:</p>
<ol>
<li>
<p>数据集、数据模型都归属于一个主题域</p>
</li>
<li>
<p>数据集可由多个模型组装而来</p>
</li>
<li>
<p>数据模型由指标、维度和标签组装而成</p>
</li>
<li>
<p>它们之间类似DB中的对应关系:</p>
<p>Database(主题域)-&gt;View(数据集)-&gt;Table(数据模型)-&gt;Column(指标/维度/标签)</p>
</li>
</ol>
<figure><img src="https://supersonicbi.github.io/img/supersonic_headless_concept.png#center">
</figure>

<h3 id="主题域">
 <strong>主题域</strong>
 <a class="anchor" href="#%e4%b8%bb%e9%a2%98%e5%9f%9f">#</a>
</h3>
<p>主题域可以理解为一个分类的概念,用户可以根据自己的业务场景来划分主题域。SuperSonic中的数据模型,数据集,术语等概念都归属于一个主题域。</p>
<h3 id="数据模型">
 <strong>数据模型</strong>
 <a class="anchor" href="#%e6%95%b0%e6%8d%ae%e6%a8%a1%e5%9e%8b">#</a>
</h3>
<p>在SuperSonic中, 数据模型是对数据库中数据的一种逻辑层面上的抽象, 它既可以直接指代一张物理表, 也可以由一段SQL逻辑创建而成。
当我们得到一张表物理表或者一段逻辑SQL后,可以将表头字段指定为主键、维度、度量、时间日期或者是普通字段,
当表头字段都被赋予这些特定的语义后, 即形成了一个数据模型。</p>
<table>
 <thead>
 <tr>
 <th style="text-align: center">字段</th>
 <th style="text-align: center">字段类型(表/SQL表头)</th>
 <th style="text-align: center">语义类型(模型)</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td style="text-align: center">imp_date</td>
 <td style="text-align: center">Date</td>
 <td style="text-align: center">日期</td>
 </tr>
 <tr>
 <td style="text-align: center">user_name</td>
 <td style="text-align: center">String</td>
 <td style="text-align: center">主键</td>
 </tr>
 <tr>
 <td style="text-align: center">department</td>
 <td style="text-align: center">String</td>
 <td style="text-align: center">维度</td>
 </tr>
 <tr>
 <td style="text-align: center">pv</td>
 <td style="text-align: center">Bigint</td>
 <td style="text-align: center">度量</td>
 </tr>
 <tr>
 <td style="text-align: center">uv</td>
 <td style="text-align: center">Bigint</td>
 <td style="text-align: center">度量</td>
 </tr>
 </tbody>
</table>
<h3 id="主键">
 <strong>主键</strong>
 <a class="anchor" href="#%e4%b8%bb%e9%94%ae">#</a>
</h3>
<p>SuperSonic中的主键概念不完全等同于数据库中的主键。当我们创建多个模型之后,如果需要指定模型间的关联关系,通俗来讲就是Join的方式,
就可以通过指定主键来进行关联。</p>
<h3 id="维度">
 <strong>维度</strong>
 <a class="anchor" href="#%e7%bb%b4%e5%ba%a6">#</a>
</h3>
<p>维度指代那些表格中通常被用来进行分组和过滤的字段。</p>
<h3 id="度量">
 <strong>度量</strong>
 <a class="anchor" href="#%e5%ba%a6%e9%87%8f">#</a>
</h3>
<p>度量的概念则恰好和维度相反,通常是一些数值型的字段,用来表达客观现象的程度。在SuperSonic中,度量主要用来创建一个具体的指标,没有其它实质性的作用。</p>
<h3 id="指标">
 <strong>指标</strong>
 <a class="anchor" href="#%e6%8c%87%e6%a0%87">#</a>
</h3>
<p>指标是相对度量更具具体和实例化的概念,用户可以基于度量,字段或者已有指标来创建指标并对它进行管理。同时,创建出来的指标也可以被问答这样的上层BI产品进行消费。</p>
<h3 id="时间日期">
 <strong>时间日期</strong>
 <a class="anchor" href="#%e6%97%b6%e9%97%b4%e6%97%a5%e6%9c%9f">#</a>
</h3>
<p>时间日期字段在SuperSonic中有比较重要的作用,比如一个典型的场景,当我们在问答中询问&quot;超音数近10天访问次数&quot;时,需要得到具体的
时间字段来进行时间范围的过滤。因此,提前在建模时把时间字段及其格式显示指定好,能起到很大的作用。并且,目前当模型中包含有度量时,
就必须指定时间日期字段。</p>
<h3 id="标签对象">
 <strong>标签对象</strong>
 <a class="anchor" href="#%e6%a0%87%e7%ad%be%e5%af%b9%e8%b1%a1">#</a>
</h3>
<p>在SuperSonic中,标签对象特指被标签圈选的实体对象。比如“国风类型的歌曲”,歌曲在这里就是一个标签对象,以及“访问次数超过100的用户”,用户在这里也是一个标签对象</p></description>
</item>
<item>
<title>编译构建</title>
<link>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E7%BC%96%E8%AF%91%E6%9E%84%E5%BB%BA/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E7%BC%96%E8%AF%91%E6%9E%84%E5%BB%BA/</guid>
<description><h1 id="编译构建">
 编译构建
 <a class="anchor" href="#%e7%bc%96%e8%af%91%e6%9e%84%e5%bb%ba">#</a>
</h1>
<p>SuperSonic为二次开发提供两种编译构建方式:</p>
<ul>
<li>在开发调试场景,直接从本地IDE启动;</li>
<li>在开发部署场景,从源代码编译打包。</li>
</ul>
<h1 id="本地ide启动">
 本地IDE启动
 <a class="anchor" href="#%e6%9c%ac%e5%9c%b0ide%e5%90%af%e5%8a%a8">#</a>
</h1>
<ol>
<li><code>sh assembly/bin/supersonic-build.sh webapp</code> 执行构建webapp
注:前端编译需要Node,推荐安装版本v20.16.0</li>
<li>IDE本地启动Java类com.tencent.supersonic.StandaloneLauncher
注:后端编译需要JDK,推荐安装版本11</li>
<li>访问浏览器:http://localhost:9080</li>
</ol>
<h1 id="源代码编译包启动">
 源代码编译包启动
 <a class="anchor" href="#%e6%ba%90%e4%bb%a3%e7%a0%81%e7%bc%96%e8%af%91%e5%8c%85%e5%90%af%e5%8a%a8">#</a>
</h1>
<ol>
<li>下载相应版本<a href="https://github.com/tencentmusic/supersonic">source code</a></li>
<li>执行编译脚本:<code>sh assembly/bin/supersonic-build.sh</code>
注:前端编译需要Node,推荐安装版本v20.16.0;后端编译需要JDK,推荐安装版本11</li>
<li>编译完成后从<code>assembly/build</code>目录获取release包</li>
<li>解压release包,<code>unzip supersonic-standalone-{revision}.zip</code></li>
<li>进行release目录,执行启动脚本<code>sh bin/supersonic-daemon.sh start</code></li>
<li>访问浏览器:http://localhost:9080</li>
</ol>
<h1 id="附加说明">
 附加说明
 <a class="anchor" href="#%e9%99%84%e5%8a%a0%e8%af%b4%e6%98%8e">#</a>
</h1>
<ol>
<li>Windows环境均有提供对应的bat脚本, 执行即可。</li>
<li>Ubuntu环境, 启动方式同上, 若出现报错, 可尝试https://support.huaweicloud.com/intl/zh-cn/deployman_faq/deployman_faq_1016.html。</li>
<li>启动之后, 可以到logs目录下查看日志,确认启动正常。</li>
</ol></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/chat-bi/%E9%85%8D%E7%BD%AE%E5%8A%A9%E7%90%86/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/chat-bi/%E9%85%8D%E7%BD%AE%E5%8A%A9%E7%90%86/</guid>
<description><h1 id="配置助理">
 配置助理
 <a class="anchor" href="#%e9%85%8d%e7%bd%ae%e5%8a%a9%e7%90%86">#</a>
</h1>
<h2 id="1-信息配置">
 <strong>1. 信息配置</strong>
 <a class="anchor" href="#1-%e4%bf%a1%e6%81%af%e9%85%8d%e7%bd%ae">#</a>
</h2>
<p>助理的配置主要分为三个部分:</p>
<ol>
<li>基本信息的配置</li>
<li>大模型连接配置</li>
<li>工具配置</li>
</ol>
<h3 id="11-基本信息的配置">
 <strong>1.1 基本信息的配置</strong>
 <a class="anchor" href="#11-%e5%9f%ba%e6%9c%ac%e4%bf%a1%e6%81%af%e7%9a%84%e9%85%8d%e7%bd%ae">#</a>
</h3>
<p><strong>名称:</strong> 即助理的名称</p>
<p><strong>支持联想:</strong> 默认开启,开启后,用户在问答对话中输入问题时,会进行联想提示</p>
<p><strong>开启多轮:</strong> 默认关闭,开启后,用户在问答对话时,可自动保存上下文,提供多轮对话的效果</p>
<p><strong>示例问题:</strong> 配置后,用户在问答对话选择这个助理时,可以看到示例问题</p>
<p><strong>描述</strong>: 这个助理的描述信息</p>
<figure><img src="https://supersonicbi.github.io/img/agent_base_info.png#center">
</figure>

<h3 id="12-大模型信息的配置">
 <strong>1.2 大模型信息的配置</strong>
 <a class="anchor" href="#12-%e5%a4%a7%e6%a8%a1%e5%9e%8b%e4%bf%a1%e6%81%af%e7%9a%84%e9%85%8d%e7%bd%ae">#</a>
</h3>
<p>当前主要针对支持OpenAI协议的大模型进行配置:
<figure><img src="https://supersonicbi.github.io/img/supersonic_quickstart_llm.png#center">
</figure>
</p>
<h3 id="13-工具的配置">
 <strong>1.3 工具的配置</strong>
 <a class="anchor" href="#13-%e5%b7%a5%e5%85%b7%e7%9a%84%e9%85%8d%e7%bd%ae">#</a>
</h3>
<p><strong>规则语义解析工具的配置</strong></p>
<p>规则语义解析工具主要支持配置这个工具可作用的数据集范围以及查询模式, 通过对数据集范围的限定,就可以分场景创建助理:
<figure><img src="https://supersonicbi.github.io/img/agent_rule_tool.png#center">
</figure>
</p>
<p><strong>大模型语义解析工具的配置</strong>
<blockquote class="book-hint info">
 <p><strong>注意</strong></p>
<p>若想用到大模型的能力,则必须要配置上这个工具,并填写上面的大模型连接信息</p>

</blockquote>

大模型语义解析工具主要支持配置这个工具可作用的数据集:
<figure><img src="https://supersonicbi.github.io/img/agent_llm_tool.png#center">
</figure>
</p>
<p><strong>第三方插件工具的配置</strong></p>
<p>第三方插件工具主要支持配置选用一个具体的插件:
<figure><img src="https://supersonicbi.github.io/img/agent_plugin_tool.png#center">
</figure>
</p>
<h2 id="2-助理使用">
 <strong>2. 助理使用</strong>
 <a class="anchor" href="#2-%e5%8a%a9%e7%90%86%e4%bd%bf%e7%94%a8">#</a>
</h2>
<p>助理的使用也很简单,在问答对话左侧选择使用即可:
<figure><img src="https://supersonicbi.github.io/img/agent_use.png#center">
</figure>
</p></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E8%BF%9E%E6%8E%A5%E6%95%B0%E6%8D%AE%E5%BA%93/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E8%BF%9E%E6%8E%A5%E6%95%B0%E6%8D%AE%E5%BA%93/</guid>
<description><h1 id="连接数据库">
 连接数据库
 <a class="anchor" href="#%e8%bf%9e%e6%8e%a5%e6%95%b0%e6%8d%ae%e5%ba%93">#</a>
</h1>
<h3 id="1-当前支持的数据类型">
 <strong>1. 当前支持的数据类型</strong>
 <a class="anchor" href="#1-%e5%bd%93%e5%89%8d%e6%94%af%e6%8c%81%e7%9a%84%e6%95%b0%e6%8d%ae%e7%b1%bb%e5%9e%8b">#</a>
</h3>
<ol>
<li>所有支持MySQL协议的数据库,如MySQL,Doris,StarRocks等</li>
<li>Clickhouse,PostgreSQL,H2</li>
<li>支持灵活扩展,欢迎贡献其它数据库类型</li>
</ol>
<h3 id="2-在supersonic中创建数据库连接的步骤">
 <strong>2. 在SuperSonic中创建数据库连接的步骤</strong>
 <a class="anchor" href="#2-%e5%9c%a8supersonic%e4%b8%ad%e5%88%9b%e5%bb%ba%e6%95%b0%e6%8d%ae%e5%ba%93%e8%bf%9e%e6%8e%a5%e7%9a%84%e6%ad%a5%e9%aa%a4">#</a>
</h3>
<ol>
<li>填写连接信息</li>
<li>点击测试连接, 若连接测试通过, 则可点击保存。否则, 返回步骤1</li>
<li>点击保存。</li>
</ol>
<p>如图所示, 我们创建了一个H2数据库实例作为例子:</p>
<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/f4b1b8d7-33fb-40b4-9767-c4acee534ea5" alt="image" /></p>
<p>需要说明的是, 在这里创建数据库之后, 并不是所有人都可以查询这个数据库链接的数据, 需要在表单上进行授权。</p>
<p><strong>管理员</strong>: 可以编辑这个数据库链接的人</p>
<p><strong>使用者</strong>: 可以使用这个数据库链接查询数据的人</p></description>
</item>
<item>
<title>快速体验</title>
<link>https://supersonicbi.github.io/docs/%E5%BF%AB%E9%80%9F%E4%BD%93%E9%AA%8C/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E5%BF%AB%E9%80%9F%E4%BD%93%E9%AA%8C/</guid>
<description><h1 id="快速体验">
 快速体验
 <a class="anchor" href="#%e5%bf%ab%e9%80%9f%e4%bd%93%e9%aa%8c">#</a>
</h1>
<p>SuperSonic内置用于DEMO的语义模型和智能助理,因而只需要以下三步即可快速体验。</p>
<h2 id="启动系统">
 启动系统
 <a class="anchor" href="#%e5%90%af%e5%8a%a8%e7%b3%bb%e7%bb%9f">#</a>
</h2>
<ol>
<li>下载相应版本<a href="https://github.com/tencentmusic/supersonic/releases">release包</a></li>
<li>解压zip包,执行启动脚本:<code>sh bin/supersonic-daemon.sh start</code></li>
<li>访问浏览器:http://localhost:9080</li>
</ol>
<blockquote class="book-hint info">
 <strong>注意</strong>
启动之前请安装好Java环境(JDK1.8),Windows系统请到bin目录下执行<code>.\supersonic-daemon.bat start</code> 即可
</blockquote>

<h2 id="测试llm连通性">
 测试LLM连通性
 <a class="anchor" href="#%e6%b5%8b%e8%af%95llm%e8%bf%9e%e9%80%9a%e6%80%a7">#</a>
</h2>
<h3 id="配置llm">
 配置LLM
 <a class="anchor" href="#%e9%85%8d%e7%bd%aellm">#</a>
</h3>
<ol>
<li>进入菜单“助理管理”,选择系统内置的DEMO助理“来闲聊”</li>
<li>点击“修改信息”,选择“大模型配置”,填入自己申请的大模型服务信息,包括“Model Name”、“Base URL”以及&quot;API Key&quot;</li>
<li>点击“确定”,保存助理大模型配置</li>
</ol>
<figure><img src="https://supersonicbi.github.io/img/supersonic_quickstart_llm.png#center">
</figure>

<h3 id="问题对话">
 问题对话
 <a class="anchor" href="#%e9%97%ae%e9%a2%98%e5%af%b9%e8%af%9d">#</a>
</h3>
<ol>
<li>进入菜单&quot;问答对话&quot;,选择智能助理“来闲聊”</li>
<li>随便输入文字,如何收到回复,则代表大模型连接成功</li>
</ol>
<figure><img src="https://supersonicbi.github.io/img/supersonic_quickstart_chat2.png#center">
</figure>

<h2 id="测试text2sql">
 测试Text2SQL
 <a class="anchor" href="#%e6%b5%8b%e8%af%95text2sql">#</a>
</h2>
<ol>
<li>进入菜单“助理管理”,选择系统内置的DEMO助理“算指标”,配置LLM(与上节相同)</li>
<li>进入菜单“问答对话”,选择智能助理“算指标”</li>
<li>点击“新对话”,输入问题“近半个月sales部门访问量最高的用户是谁”</li>
<li>点击&quot;LLM解析S2SQL&quot;可以查看大模型生成的SQL</li>
</ol>
<figure><img src="https://supersonicbi.github.io/img/supersonic_quickstart_chat.png#center">
</figure></description>
</item>
<item>
<title>配置DB</title>
<link>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E9%85%8D%E7%BD%AEdb/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E9%85%8D%E7%BD%AEdb/</guid>
<description><h1 id="配置db">
 配置DB
 <a class="anchor" href="#%e9%85%8d%e7%bd%aedb">#</a>
</h1>
<blockquote class="book-hint danger">
 <p><strong>注意</strong></p>
<p>系统默认使用H2内存数据库, 重启后会丢失数据, 若需要替换为自己的MySQL, 请按以下进行配置.</p>

</blockquote>

<h2 id="1-执行sql脚本">
 1. 执行SQL脚本
 <a class="anchor" href="#1-%e6%89%a7%e8%a1%8csql%e8%84%9a%e6%9c%ac">#</a>
</h2>
<p><strong>初次配置DB</strong>请依次执行conf/db下schema-mysql.sql、 data-mysql.sql, 这两个脚本均为最新表结构</p>
<p><strong>若是已配置过DB并部署好的服务</strong>, 可参考sql-update.sql, 这里会注明每次功能改动需要改动的表结构</p>
<h2 id="2-配置yaml文件">
 2. 配置YAML文件
 <a class="anchor" href="#2-%e9%85%8d%e7%bd%aeyaml%e6%96%87%e4%bb%b6">#</a>
</h2>
<p>conf下application-local.yaml中默认的DB配置为H2配置, 替换为自己的MySQL即可</p>
<pre tabindex="0"><code>spring:
 datasource:
 url: jdbc:mysql://localhost:3306/your_database?useUnicode=true&amp;characterEncoding=UTF-8&amp;useSSL=false&amp;allowMultiQueries=true
 username: your_username
 password: your_password
 driver-class-name: com.mysql.jdbc.Driver
</code></pre></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/chat-bi/%E9%97%AE%E7%AD%94%E5%AF%B9%E8%AF%9D/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/chat-bi/%E9%97%AE%E7%AD%94%E5%AF%B9%E8%AF%9D/</guid>
<description><h1 id="问答对话">
 问答对话
 <a class="anchor" href="#%e9%97%ae%e7%ad%94%e5%af%b9%e8%af%9d">#</a>
</h1>
<p>进入问答对话后,我们会看到如下图所示页面;主要包括三部分:助理列表、输入模块、展示模块;现在对其进行详细说明;
<figure><img src="https://supersonicbi.github.io/img/supersonic_chat_1.png#center">
</figure>
</p>
<h2 id="1-助理列表">
 <strong>1. 助理列表</strong>
 <a class="anchor" href="#1-%e5%8a%a9%e7%90%86%e5%88%97%e8%a1%a8">#</a>
</h2>
<p>智能助理可以理解为超音数一系列工具的集合, 如单个智能助理可以集成规则解析, LLM语义解析, 插件等多种工具和能力。而每个工具可指定模型范围(支持的view列表)和查询模型,用户可以根据自己需求定制化不同的智能助理;
默认会创建算指标、标签圈选助理;助理列表是将用户创建的助理都展示在此,方便用户进行助理间的切换;</p>
<h2 id="2-输入模块">
 <strong>2. 输入模块</strong>
 <a class="anchor" href="#2-%e8%be%93%e5%85%a5%e6%a8%a1%e5%9d%97">#</a>
</h2>
<p>输入模块主要包括文本输入框、会话管理两部分;</p>
<h3 id="21-文本输入框">
 <strong>2.1. 文本输入框</strong>
 <a class="anchor" href="#21-%e6%96%87%e6%9c%ac%e8%be%93%e5%85%a5%e6%a1%86">#</a>
</h3>
<p>顾名思义,可在此处进行自然语音交互;如果在助理设置中开启了联想,输入文本时会实时进行联想提示</p>
<p>实时联想原理:</p>
<ul>
<li>先对文本进行分词</li>
<li>然后再进行并行分段探测</li>
<li>选取探测文本最长的、且有联想结果的那项进行返回
<figure><img src="https://supersonicbi.github.io/img/supersonic_search.png#center">
</figure>
</li>
</ul>
<h3 id="22-会话管理">
 <strong>2.2. 会话管理</strong>
 <a class="anchor" href="#22-%e4%bc%9a%e8%af%9d%e7%ae%a1%e7%90%86">#</a>
</h3>
<p>主要包括四个部分:新对话、历史对话、智能助理、showcase;</p>
<ul>
<li>新对话,创建新的一轮对话;查询过的问题将按对话级别进行保存,后续多轮对话也是在对话基础之上进行;</li>
<li>历史对话,能够查询历史对话记录,包括曾经问过哪些问题以及查询结果;支持搜索、删除历史会话;</li>
<li>智能助理,对智能助理的管理,是否展示助理列表;</li>
<li>showcase,通过对查询结果点赞功能加入至showcase,用于展示典型的查询case和问法;</li>
</ul>
<figure><img src="https://supersonicbi.github.io/img/supersonic_chat_2.png#center">
</figure>

<h2 id="3-展示模块">
 <strong>3. 展示模块</strong>
 <a class="anchor" href="#3-%e5%b1%95%e7%a4%ba%e6%a8%a1%e5%9d%97">#</a>
</h2>
<p>展示模块主要四个部分:意图解析、SQL生成、数据查询、推荐相似问题;每部分都会记录耗时;如下图所示:</p>
<figure><img src="https://supersonicbi.github.io/img/supersonic_chat_show.png#center">
</figure>

<h3 id="31-意图解析">
 <strong>3.1. 意图解析</strong>
 <a class="anchor" href="#31-%e6%84%8f%e5%9b%be%e8%a7%a3%e6%9e%90">#</a>
</h3>
<p>用于展示supersonic对输入文本的解析;parser阶段会生成多个解析结果,如上图生成2个解析,可点击切换解析结果;</p>
<p>为了让用户快速分析识别结果,解析内容目前包括:识别到的数据模型、查询模式、指标以及筛选条件等关键数据;</p>
<p>其中筛选条件可按需修改,如数据时间的灵活切换、切换其他维度值;修改条件后,点击重新查询即可;</p>
<figure><img src="https://supersonicbi.github.io/img/supersonic_chat_show_2.png#center">
</figure>

<h3 id="32-sql生成">
 <strong>3.2. SQL生成</strong>
 <a class="anchor" href="#32-sql%e7%94%9f%e6%88%90">#</a>
</h3>
<p>SQL生成展示按照解析类型分为两类,Rule解析、LLM解析;</p>
<ul>
<li>
<p>Rule解析:主要包括解析S2SQL、修正S2Sql、最终执行SQL; Rule解析S2SQL是通过按规则方式从文本中解析维度、维度值、指标等内容,构造成S2SQL;再经过修正操作生成修正S2SQL;Headless再将S2SQL解析成最终可在数据库引擎的执行SQL;</p>
</li>
<li>
<p>LLM解析:在Rule解析基础上增加Schema映射、Few-shot示例信息;这两项是用于与大模型交互构造prompt,并生成S2SQL时使用到的信息;</p>
</li>
</ul>
<figure><img src="https://supersonicbi.github.io/img/supersonic_chat_show_3.png#center">
</figure>

<figure><img src="https://supersonicbi.github.io/img/supersonic_chat_show_4.png#center">
</figure>

<h3 id="33-数据查询">
 <strong>3.3. 数据查询</strong>
 <a class="anchor" href="#33-%e6%95%b0%e6%8d%ae%e6%9f%a5%e8%af%a2">#</a>
</h3>
<p>主要功能是展示查询结果;根据返回结果的不同,前端灵活展示不同的样式;</p>
<ul>
<li>
<p>结果中存在时间、指标,则展示指标趋势;</p>
</li>
<li>
<p>结果中只有一条数据则展示指标卡;</p></description>
</item>
<item>
<title>构建模型</title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E6%9E%84%E5%BB%BA%E6%A8%A1%E5%9E%8B/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E6%9E%84%E5%BB%BA%E6%A8%A1%E5%9E%8B/</guid>
<description><h1 id="构建模型">
 构建模型
 <a class="anchor" href="#%e6%9e%84%e5%bb%ba%e6%a8%a1%e5%9e%8b">#</a>
</h1>
<blockquote class="book-hint info">
 <p><strong>建模的目的</strong></p>
<p>为了帮助你更好地理解建模的过程, 我们通过一个问题示例来进行介绍:
SuperSonic本身作为一个产品, 那么如何用语义建模来统计它的埋点访问数据呢?比如SuperSonic在一段时间内的访问用户数是多少?
这些用户的访问次数和停留时长是怎样的?这些用户来自哪些部门?这些用户看了哪些页面?分别看了多少次?等我们建模完成, 这些问题的答案也就浮出水面了。</p>

</blockquote>

<h2 id="1-创建一个主题域和模型集">
 <strong>1. 创建一个主题域和模型集</strong>
 <a class="anchor" href="#1-%e5%88%9b%e5%bb%ba%e4%b8%80%e4%b8%aa%e4%b8%bb%e9%a2%98%e5%9f%9f%e5%92%8c%e6%a8%a1%e5%9e%8b%e9%9b%86">#</a>
</h2>
<p>如图所示, 为了统计SuperSonic的埋点访问情况, 我们创建了一个叫&quot;超音数&quot;的主题域以及基于SuperSonic的埋点数据创建了一个&quot;埋点模型集&quot;:</p>
<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/ebdc5a9b-db57-4811-b9fe-4657090a635d#pic_center" alt="image" /></p>
<h2 id="2-创建数据模型">
 <strong>2. 创建数据模型</strong>
 <a class="anchor" href="#2-%e5%88%9b%e5%bb%ba%e6%95%b0%e6%8d%ae%e6%a8%a1%e5%9e%8b">#</a>
</h2>
<p>创建好了一个模型集后, 我们就可以把物理数据抽象为一个个数据模型并创建到模型集下。如下图, SuperSonic提供了两种创建数据模型的方式。</p>
<p><strong>快速创建</strong>可以直接指定一张物理表来把它创建为数据模型。</p>
<p><strong>SQL脚本</strong>则提供了更灵活的数据模型创建方式, 我们可以通过写一条逻辑SQL来把它指定为数据模型。</p>
<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/1bcd532d-e05c-4066-b4ac-13a80de197ec" alt="image" /></p>
<h3 id="21-编辑sql创建数据模型">
 <strong>2.1 编辑SQL创建数据模型</strong>
 <a class="anchor" href="#21-%e7%bc%96%e8%be%91sql%e5%88%9b%e5%bb%ba%e6%95%b0%e6%8d%ae%e6%a8%a1%e5%9e%8b">#</a>
</h3>
<p>在填写完数据模型名称和描述等基本信息后,我们首先写一条SQL来表达我们的数据模型逻辑。 然后点击运行, 就可以看到这条SQL查询出来的数据。
校验数据无误之后, 我们可以点击生成数据模型。</p>
<blockquote class="book-hint warning">
 <strong>注意</strong>
这里选择数据库链接的时候, 需要有数据库的使用者权限。
</blockquote>

<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/51f74df4-1b66-4191-90c1-bb71a797c39d" alt="image" /></p>
<p>如图,我们把这条SQL的表头字段指定为<strong>日期,主键,维度和度量</strong>之后,还可以写一条过滤SQL用于词典导入场景。
举个例子,在问答中,如果需要对维度值进行识别,那么就需要提前把维度值写入到词典,但是当我们希望对维度值做一些过滤的时候,如在音乐场景里,
我们只希望把国风类型的歌曲导入到词典中,那么就可以通过这条SQL来进行过滤。</p>
<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/5c40df69-057a-4491-899f-ae399f0ec0f6" alt="image" /></p>
<blockquote class="book-hint info">
 <strong>快速创建</strong>
若勾选,则会直接把选中的维度/度量批量创建到维度/指标列表。
</blockquote>

<h3 id="22-指定库表名快速创建模型">
 <strong>2.2 指定库表名快速创建模型</strong>
 <a class="anchor" href="#22-%e6%8c%87%e5%ae%9a%e5%ba%93%e8%a1%a8%e5%90%8d%e5%bf%ab%e9%80%9f%e5%88%9b%e5%bb%ba%e6%a8%a1%e5%9e%8b">#</a>
</h3>
<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/34e5eb4f-311e-4ed3-8967-7fecd62f63a7" alt="image" />
如图,在选择快速创建的方式之后,需要先填写该模型依赖的数据库连接,然后系统会自动拉取这个数据库连接的元数据,用户直接选择库名和表名并填写基本信息就可以进入到下一步。
在第二步中,和上述通过SQL脚本来创建模型的方式基本一致,就不再重复介绍了。</p>
<p>如下图所示, 重复以上步骤,为我们创建的3个数据模型示例, 分别为:</p>
<p><strong>用户部门</strong>: 主要包含用户以及用户的部门信息</p>
<p><strong>PVUV统计</strong>: 主要包含用户访问次数和访问人数等信息</p></description>
</item>
<item>
<title>贡献指南</title>
<link>https://supersonicbi.github.io/docs/%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%8D%97/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E8%B4%A1%E7%8C%AE%E6%8C%87%E5%8D%97/</guid>
<description><p>👍🎉 首先,感谢您花时间为本项目做出贡献!🎉👍</p>
<h2 id="1-创建issue">
 <strong>1. 创建issue</strong>
 <a class="anchor" href="#1-%e5%88%9b%e5%bb%baissue">#</a>
</h2>
<p><figure><img src="https://supersonicbi.github.io/img/supersonic_issues.png#center">
</figure>

在提交Issue之前,请先检查项目的Issue跟踪器,以确保没有其他人已经报告了相同的问题或请求了相同的功能。
Issue提交规范示例:</p>
<ul>
<li>标题格式请用:【{模块名}】+标题内容</li>
<li>选择提交issue对应的Labels(如bug、documentation、question等)</li>
<li>选择Milestone迭代完成周期</li>
</ul>
<h2 id="2-fork和clone代码">
 <strong>2. Fork和Clone代码</strong>
 <a class="anchor" href="#2-fork%e5%92%8cclone%e4%bb%a3%e7%a0%81">#</a>
</h2>
<figure><img src="https://supersonicbi.github.io/img/supersonic_fork.png#center">
</figure>

<ol>
<li>进入supersonic github页面,点击页面右上角的&quot;Fork&quot;按钮。这将在你的GitHub账户下创建项目的一个副本。</li>
<li>在你的机器上clone Fork的仓库:</li>
</ol>
<pre tabindex="0"><code> git clone https://github.com/&lt;your_github_name&gt;/supersonic.git
 cd supersonic
</code></pre><ol start="3">
<li>将supersonic添加为本地仓库的远程分支upstream</li>
</ol>
<pre tabindex="0"><code> git remote add upstream https://github.com/tencentmusic/supersonic
</code></pre><ol start="4">
<li>同步远端主分支至本地</li>
</ol>
<pre tabindex="0"><code> git pull upstream master --rebase
</code></pre><h2 id="3-修改提交">
 <strong>3. 修改提交</strong>
 <a class="anchor" href="#3-%e4%bf%ae%e6%94%b9%e6%8f%90%e4%ba%a4">#</a>
</h2>
<p>创建一个新的分支并修改代码,并推送到自己仓库</p>
<pre tabindex="0"><code> git checkout -b your-branch-name
 git add .
 git commit -m &#34;(improvement | feature | fix)(headless | chat | common | launcher) &lt;commit description&gt;&#34;
 git push origin your-branch-name
</code></pre><p>commit规范:</p></description>
</item>
<item>
<title>配置LLM</title>
<link>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E9%85%8D%E7%BD%AEllm/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E9%85%8D%E7%BD%AEllm/</guid>
<description><h1 id="配置llm">
 配置LLM
 <a class="anchor" href="#%e9%85%8d%e7%bd%aellm">#</a>
</h1>
<p>SuperSonic可以从两个粒度配置Chat Model:系统设置和agent上都可以配置大模型;优先级agent级别高于系统设置</p>
<h3 id="1-系统粒度">
 <strong>1. 系统粒度</strong>
 <a class="anchor" href="#1-%e7%b3%bb%e7%bb%9f%e7%b2%92%e5%ba%a6">#</a>
</h3>
<p>系统设置支持设置ChatModel、EmbeddingModel、EmbeddingStore,该设置为全局粒度;
<figure><img src="https://supersonicbi.github.io/img/system_set.png#center">
</figure>
</p>
<blockquote class="book-hint info">
 <strong>注意</strong>
推荐使用open_ai、ollama;其他azure、qianfan、dashscope、zhipu方式理论上也支持,但是待验证;
</blockquote>

<h3 id="2-助理粒度">
 <strong>2. 助理粒度</strong>
 <a class="anchor" href="#2-%e5%8a%a9%e7%90%86%e7%b2%92%e5%ba%a6">#</a>
</h3>
<p>在助理管理模块,修改助理配置,填入相应的变量,该设置会覆盖系统设置的配置;
目前仅支持:open-ai、ollama两种方式;
1、open_ai 用于连接云端模型;通常情况下各云上模型会兼容open-ai协议
2、ollama 用于连接本地模型;由ollama适配不同的模型</p>
<p>open-ai 配置方式:</p>
<figure><img src="https://supersonicbi.github.io/img/supersonic_agent_llm_1.png#center">
</figure>

<p>ollama 配置方式:</p>
<figure><img src="https://supersonicbi.github.io/img/supersonic_agent_llm_2.png#center">
</figure></description>
</item>
<item>
<title>项目架构</title>
<link>https://supersonicbi.github.io/docs/%E9%A1%B9%E7%9B%AE%E6%9E%B6%E6%9E%84/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E9%A1%B9%E7%9B%AE%E6%9E%B6%E6%9E%84/</guid>
<description><h1 id="项目架构">
 项目架构
 <a class="anchor" href="#%e9%a1%b9%e7%9b%ae%e6%9e%b6%e6%9e%84">#</a>
</h1>
<h2 id="架构图">
 架构图
 <a class="anchor" href="#%e6%9e%b6%e6%9e%84%e5%9b%be">#</a>
</h2>
<figure><img src="https://supersonicbi.github.io/img/supersonic_components.png#center" width="65%" height="65%">
</figure>

<h2 id="核心组件">
 核心组件
 <a class="anchor" href="#%e6%a0%b8%e5%bf%83%e7%bb%84%e4%bb%b6">#</a>
</h2>
<ul>
<li>
<p><strong>Knowledge Base:</strong> 定期从语义模型中提取相关的模式信息,构建词典和索引,以便后续的模式映射。</p>
</li>
<li>
<p><strong>Schema Mapper:</strong> 将自然语言文本在知识库中进行匹配,为后续的语义解析提供相关信息。</p>
</li>
<li>
<p><strong>Semantic Parser:</strong> 理解用户查询并抽取语义信息,生成语义查询语句S2SQL。</p>
</li>
<li>
<p><strong>Semantic Corrector:</strong> 检查语义查询语句的合法性,对不合法的信息做修正和优化处理。</p>
</li>
<li>
<p><strong>Semantic Translator:</strong> 将语义查询语句翻译成可在物理数据模型上执行的SQL语句。</p>
</li>
<li>
<p><strong>Chat Plugin:</strong> 通过第三方工具扩展功能。给定所有配置的插件及其功能描述和示例问题,大语言模型将选择最合适的插件。</p>
</li>
<li>
<p><strong>Chat Memory:</strong> 将历史的查询轨迹进行封装,可被召回作为few-shot样例嵌入提示词。</p>
</li>
</ul></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/chat-bi/%E9%85%8D%E7%BD%AE%E6%8F%92%E4%BB%B6/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/chat-bi/%E9%85%8D%E7%BD%AE%E6%8F%92%E4%BB%B6/</guid>
<description><h2 id="11-创建插件">
 1.1 创建插件
 <a class="anchor" href="#11-%e5%88%9b%e5%bb%ba%e6%8f%92%e4%bb%b6">#</a>
</h2>
<blockquote class="book-hint info">
 关于插件的概念可参考<a href="https://supersonicbi.github.io/docs/chat-bi/%E6%A6%82%E5%BF%B5/">ChatBI 概念</a>
</blockquote>

<p>打开SuperSonic首页,点击&quot;插件管理&quot; -&gt; &ldquo;新建插件&rdquo;,即可新建插件,进行配置。如下图,在系统启动时,会默认创建两个demo插件,分别为Web页面和
Web服务两种类型的插件。</p>
<p><img src="https://supersonicbi.github.io/img/plugin_demo_list.png" alt="image" /></p>
<p>新建插件时需要填写以下信息:</p>
<p><img src="https://supersonicbi.github.io/img/web_plugin_demo_config.png" alt="image" />
<!-- raw HTML omitted --></p>
<p><strong>数据集</strong>: 该插件所属的数据集, 当语义识别到对应的数据集时, 才可以召回对应数据集的插件, 如果选择&quot;默认&quot;数据集, 那么语义识别到任何主题域都可以召回该插件。</p>
<p><strong>插件名称</strong>: 为该插件的名称, 用于标识一个插件</p>
<p><strong>插件类型</strong>: 即为上面说的Web页面和Web服务两种</p>
<p><strong>函数名称</strong>: 可以理解为该插件的英文名称, 该名称用来和LLM进行交互, 当LLM返回对应的函数名称时, 即为选中了该名称对应的插件(最新版本的插件召回基于向量库实现,暂无LLM实现)</p>
<p><strong>函数描述</strong>: 可对函数的用途、用法等方面进行描述</p>
<p><strong>示例问题</strong>: 用于生成向量, 是作为召回插件的重要依据</p>
<p><strong>地址</strong>: 如果该插件为&quot;Web网页&quot;类型插件, 那么该地址就是网页的地址, 如果该插件为&quot;WEB服务&quot;类型的插件, 该地址就为该服务的HTTP地址,这个地址需要提前准备好</p>
<p><strong>函数参数</strong>: 可以理解为页面/HTTP服务的参数以及与该参数绑定的维度, 比如这里填写的参数&quot;name&quot;, 对应的是&quot;超音数&quot;数据集的&quot;用户名&quot;维度, 那么从&quot;tom最近访问超音数情况怎么样&quot; 这个文本中解析到&quot;tom&quot;之后, 就可以把tom作为&quot;name&quot;的参数</p>
<blockquote class="book-hint warning">
 需要注意的是,如果这里配置了维度类型的参数,则必须从文本中识别到了对应的维度值,才可以召回这个插件
</blockquote>

<p><strong>高度</strong>: 可视化选项, 如果是&quot;Web网页&quot; 类型的插件, 该高度为该网页展示在会话列表所占用的高度, 需要根据实际情况进行微调。
<!-- raw HTML omitted --></p>
<h2 id="12-插件使用">
 1.2 插件使用
 <a class="anchor" href="#12-%e6%8f%92%e4%bb%b6%e4%bd%bf%e7%94%a8">#</a>
</h2>
<p>若想在问答中使用到插件,需要在助理中进行工具的配置,如下图,在助理中,可以通过第三方插件的方式进行插件添加:</p></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E5%88%9B%E5%BB%BA%E6%8C%87%E6%A0%87/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E5%88%9B%E5%BB%BA%E6%8C%87%E6%A0%87/</guid>
<description><h1 id="创建指标">
 创建指标
 <a class="anchor" href="#%e5%88%9b%e5%bb%ba%e6%8c%87%e6%a0%87">#</a>
</h1>
<p>在构建模型时,我们已经展示了如何在创建模型的时候通过<strong>快速创建</strong>的方式来创建指标。 接下来,我们继续展示下如何通过<strong>手动自定义</strong>的方式来创建指标。
创建出来后,通过进一步进行下钻维度等配置,就可以在指标市场查看这几个指标的基本数据情况。</p>
<p>在创建新的指标之前,我们首先看看<strong>访问次数</strong>这个指标的定义。如图,访问次数这个指标是在创建模型时通过快速创建的方式创建出来的,已经初始化了名称等基本信息。
<img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/8459a4de-edc5-4dab-a8a5-0cf1581877d4" alt="image" /></p>
<p>上面表格中除了基本的名称信息以外,还包括:</p>
<p><strong>别名</strong>: 别名是这个指标的其它名称,如访问次数这个指标又可以被称为PV。</p>
<p><strong>分类</strong>: 分类是对这个指标的描述,如访问次数这个指标可被归类为核心指标,访问相关指标等。</p>
<p><strong>敏感度</strong>:默认为普通。敏感度为核心的指标会有权限控制,具体会在权限篇进行详细介绍。</p>
<p><strong>下钻维度</strong>:即这个指标可与哪些维度来下钻。配置了之后,这个指标在进行查询时,就只能根据这几个维度进行下钻。这个配置会作用到指标主页以及问答的推荐维度。</p>
<p><strong>数据格式化</strong>: 即在查询出这个指标数据后,对指标数据格式进行可视化,如图,可以将它格式化为小数以及百分数。</p>
<p>接下来,我们来查看指标的<strong>表达式</strong>信息。可以看到,我们一共提供了<strong>三种</strong>创建指标的模式:<strong>按度量,按指标,按字段</strong>。</p>
<h3 id="1-按度量创建指标">
 <strong>1 按度量创建指标</strong>
 <a class="anchor" href="#1-%e6%8c%89%e5%ba%a6%e9%87%8f%e5%88%9b%e5%bb%ba%e6%8c%87%e6%a0%87">#</a>
</h3>
<p>访问次数这个指标通过快速创建的方式创建出来,默认的模式为按度量。
选中<strong>s2_pv_uv_statis_pv</strong>这个度量并在下面的表达式框中直接填写s2_pv_uv_statis_pv,
表明这个指标是通过s2_pv_uv_statis_pv直接创建而来。</p>
<blockquote class="book-hint info">
 <p><strong>注意</strong></p>
<p>s2_pv_uv_statis_pv这个度量名字是由模型英文名s2_pv_uv_statis和字段pv拼接而成,
且由于在创建模型的时候已经指定了聚合方式为SUM了,所以这里的表达式无需再填写聚合函数。</p>

</blockquote>

<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/fb126873-7b86-425e-bc30-383ce78144c0" alt="image" /></p>
<p>以上,我们就介绍完了访问次数这个指标包含的基本信息以及它的表达式定义。接下来,我们开始来通过按指标和按字段两种模式来创建新的指标: 访问用户数和人均访问次数。</p>
<h3 id="2-按字段创建指标">
 <strong>2 按字段创建指标</strong>
 <a class="anchor" href="#2-%e6%8c%89%e5%ad%97%e6%ae%b5%e5%88%9b%e5%bb%ba%e6%8c%87%e6%a0%87">#</a>
</h3>
<p>首先,我们来创建<strong>访问用户数</strong>。如图,我们补充好了访问用户数的基本信息,并给它添加了一个别名:UV。</p>
<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/377b1dbd-9112-4ec6-811f-9f7ab37186b1" alt="image" /></p>
<p>接着,我们来配置下访问用户数的下钻维度,可以看到,我们选中了部门这个维度作为它的下钻维度,并勾选了绑定。绑定的含义是我们在查询这个指标时,必须配合这个维度来进行查询,否则提示缺少下钻维度。</p>
<blockquote class="book-hint info">
 <p><strong>下钻维度配置</strong></p>
<p>可配置的下钻维度不仅仅来自指标当前模型,还可来自与该模型有关联关系的模型。</p>

</blockquote>

<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/51b71af9-bddb-40d2-8ec0-265e98bee71a" alt="image" /></p>
<p>然后,我们来选择按字段的方式来进行表达式的定义,这些字段来自当前模型。可以看到我们选择了<strong>user_id</strong>这个字段来创建指标,并定义了字段表达式。由于字段上不包含聚合函数,因此需要在写表达式的时候指定聚合函数。</p>
<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/f4ac362e-408e-48ec-b1fd-3fbaa0b7a119" alt="image" /></p>
<p>点击完成之后,我们就完成了访问用户数这个指标的定义。</p>
<h3 id="3-基于已有指标来创建指标">
 <strong>3 基于已有指标来创建指标</strong>
 <a class="anchor" href="#3-%e5%9f%ba%e4%ba%8e%e5%b7%b2%e6%9c%89%e6%8c%87%e6%a0%87%e6%9d%a5%e5%88%9b%e5%bb%ba%e6%8c%87%e6%a0%87">#</a>
</h3>
<p>最后,我们来创建<strong>人均访问次数</strong>这个指标,由于基本信息的补充都基本类似,就不再介绍啦。我们选择按指标的模式来定义表达式,通过分析,<strong>人均访问次数这个指标可由访问次数和访问用户数这两个指标结合起来创建</strong>。因此,如下图我们选中了访问次数和访问用户数这两个指标,并通过<strong>pv/uv</strong>的方式来表达人均访问次数。</p>
<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/106bfee2-8e67-4e93-b0ab-c9ed6392612e" alt="image" /></p></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E7%AE%A1%E7%90%86%E6%8C%87%E6%A0%87/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E7%AE%A1%E7%90%86%E6%8C%87%E6%A0%87/</guid>
<description><h1 id="管理指标">
 管理指标
 <a class="anchor" href="#%e7%ae%a1%e7%90%86%e6%8c%87%e6%a0%87">#</a>
</h1>
<h3 id="1-指标列表页">
 <strong>1. 指标列表页</strong>
 <a class="anchor" href="#1-%e6%8c%87%e6%a0%87%e5%88%97%e8%a1%a8%e9%a1%b5">#</a>
</h3>
<p>首先,我们可以点击顶部<strong>指标市场TAB</strong>来看下目前系统中一共有哪些指标。在指标市场这个页面中,不仅可以支持按<strong>自然语言</strong>的方式对指标进行检索,也可以对指标进行<strong>收藏</strong>,便于下次查找。</p>
<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/24eea209-462d-4b45-bfc6-4cb3527fd81a" alt="image" /></p>
<h3 id="2-指标详情页">
 <strong>2. 指标详情页</strong>
 <a class="anchor" href="#2-%e6%8c%87%e6%a0%87%e8%af%a6%e6%83%85%e9%a1%b5">#</a>
</h3>
<p>然后,我们可以点击具体的指标,进入到<strong>指标的详情页</strong>。如图,我们进入到访问次数这个指标的详情页,可以看到它的基本信息以及具体数据趋势和表格明细。
同时,还可以根据我们刚刚配置的下钻维度来对指标数据进行下钻和过滤。并且,若需要对数据进行下载离线分析,可直接点击<strong>下载</strong>按钮进行下载即可。</p>
<p><img src="https://github.com/supersonicbi/supersonic-website/assets/168408457/e507db8c-4ab4-4531-8dbe-4d9a1aa77572" alt="image" /></p></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E7%BB%84%E8%A3%85%E6%95%B0%E6%8D%AE%E9%9B%86/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E7%BB%84%E8%A3%85%E6%95%B0%E6%8D%AE%E9%9B%86/</guid>
<description><h1 id="组装数据集">
 组装数据集
 <a class="anchor" href="#%e7%bb%84%e8%a3%85%e6%95%b0%e6%8d%ae%e9%9b%86">#</a>
</h1>
<h3 id="1-挑选指标维度">
 <strong>1. 挑选指标维度</strong>
 <a class="anchor" href="#1-%e6%8c%91%e9%80%89%e6%8c%87%e6%a0%87%e7%bb%b4%e5%ba%a6">#</a>
</h3>
<p>如下图,创建数据集时,首先填写好数据集的名称等基本信息,然后即可进入到下一步,可以选择相同主题域下的所有模型,并挑选符合场景需要的指标维度加入到数据集中。</p>
<blockquote class="book-hint warning">
 <strong>注意</strong> 加入到数据集的指标维度所在的模型必须已在构建模型时配置好关联关系,否则将会提示报错。
</blockquote>

<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/f3203106-83a3-403a-9961-b6eed9c7c1af" alt="image" /></p>
<p><img src="https://github.com/tencentmusic/supersonic/assets/22031277/80cf0239-339c-41e1-9bf5-b3cc36964947" alt="image" /></p>
<h3 id="2-查询设置">
 <strong>2. 查询设置</strong>
 <a class="anchor" href="#2-%e6%9f%a5%e8%af%a2%e8%ae%be%e7%bd%ae">#</a>
</h3>
<p><strong>指标模式:</strong> 可设置默认时间范围</p>
<p><strong>明细模式:</strong> 可设置默认时间以及查询表头</p>
<blockquote class="book-hint info">
 <strong>注意</strong> 当未能从问询文本中得到时间信息时,默认会用这里的时间作为过滤条件,若不想加上时间限制,请把时间设置为-1
</blockquote>

<figure><img src="https://supersonicbi.github.io/img/dataset_query_config.png#center">
</figure></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E9%85%8D%E7%BD%AE%E6%95%B0%E6%8D%AE%E6%9D%83%E9%99%90/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E9%85%8D%E7%BD%AE%E6%95%B0%E6%8D%AE%E6%9D%83%E9%99%90/</guid>
<description><h1 id="数据权限控制">
 数据权限控制
 <a class="anchor" href="#%e6%95%b0%e6%8d%ae%e6%9d%83%e9%99%90%e6%8e%a7%e5%88%b6">#</a>
</h1>
<p>SuperSonic支持四级数据权限控制, 分别为主题域权限、模型权限、行权限和列权限。</p>
<h2 id="1-主题域和模型权限">
 <strong>1. 主题域和模型权限</strong>
 <a class="anchor" href="#1-%e4%b8%bb%e9%a2%98%e5%9f%9f%e5%92%8c%e6%a8%a1%e5%9e%8b%e6%9d%83%e9%99%90">#</a>
</h2>
<p>主题域权限和模型权限又可分为以下两种类别的权限:</p>
<p><strong>管理权限:</strong> 即可管理该主题域/模型下所有资源的权限</p>
<p><strong>数据浏览权限:</strong> 在问答可以问询该主题域/模型下的维度和指标的权限</p>
<h3 id="11-配置主题域模型权限">
 <strong>1.1 配置主题域/模型权限</strong>
 <a class="anchor" href="#11-%e9%85%8d%e7%bd%ae%e4%b8%bb%e9%a2%98%e5%9f%9f%e6%a8%a1%e5%9e%8b%e6%9d%83%e9%99%90">#</a>
</h3>
<blockquote class="book-hint info">
 <p><strong>注意</strong></p>
<p>这里对用户配置的<strong>数据浏览权限</strong>,指的是用户可以查看这个主题域/模型下的敏感度为<strong>普通</strong>和<strong>重要</strong>的指标/维度,<strong>核心</strong>指标/维度需要另外通过<strong>列权限</strong>单独开通;
而如果配置的是<strong>管理</strong>权限,则默认有该数据模型下所有行列权限。</p>

</blockquote>

<p><img src="https://supersonicbi.github.io/img/domain_model_auth.png" alt="image" /></p>
<h3 id="12-主题域模型权限控制效果">
 <strong>1.2 主题域/模型权限控制效果</strong>
 <a class="anchor" href="#12-%e4%b8%bb%e9%a2%98%e5%9f%9f%e6%a8%a1%e5%9e%8b%e6%9d%83%e9%99%90%e6%8e%a7%e5%88%b6%e6%95%88%e6%9e%9c">#</a>
</h3>
<p>如下图,<strong>alice</strong>只被授权了<strong>用户部门</strong>这个数据模型的<strong>管理权限</strong>,因此在管理页面,其它数据模型的是对她不可见的
<img src="https://supersonicbi.github.io/img/alice_model_auth.png" alt="image" /></p>
<p>同时,<strong>alice</strong>也没有被授权<strong>PVUV统计</strong>这个数据模型的<strong>数据浏览权限</strong>,因此,她在问询时,无法问询得到相关的数据
<img src="https://supersonicbi.github.io/img/alice_model_view_auth.png" alt="image" /></p>
<h2 id="2行列权限">
 <strong>2.行列权限</strong>
 <a class="anchor" href="#2%e8%a1%8c%e5%88%97%e6%9d%83%e9%99%90">#</a>
</h2>
<p>行列权限可在模型的权限管理里面进行设置, 本质上是限制用户对维度和指标的访问控制。</p>
<h3 id="21-行权限">
 <strong>2.1 行权限</strong>
 <a class="anchor" href="#21-%e8%a1%8c%e6%9d%83%e9%99%90">#</a>
</h3>
<blockquote class="book-hint info">
 <strong>注意</strong> <strong>行权限</strong>指的是对用户可见的数据行进行控制,若不设置,默认所有行可见。
</blockquote>

<p>如下图,对<strong>tom</strong>进行了行权限控制,<strong>tom</strong>被设置为<strong>只能看它自己的访问数据</strong>。
<img src="https://supersonicbi.github.io/img/row_permission.png" alt="image" />
因此,<strong>tom</strong>在问询时,就会被提示结果数据已经经过过滤处理,以及具体的过滤条件:
<img src="https://supersonicbi.github.io/img/tom_row_permission.png" alt="image" /></p>
<h3 id="22-列权限">
 <strong>2.2 列权限</strong>
 <a class="anchor" href="#22-%e5%88%97%e6%9d%83%e9%99%90">#</a>
</h3>
<blockquote class="book-hint info">
 <strong>注意</strong> 列权限设置中,均只展示被设置为<strong>核心</strong>敏感度的和指标/维度(敏感度可在指标/维度编辑的时候进行设置),非<strong>核心</strong>敏感度的指标/维度不再需要配置。
</blockquote>

<p>如下图,<strong>页面</strong>这个维度以及<strong>停留时长</strong>这个指标在建模时,敏感度被设置为<strong>核心</strong>,默认用户是不可查看它们的数据的,下图把它们授权给jack,
jack因此可以在问答时有了访问它们的权限。
<img src="https://supersonicbi.github.io/img/column_permission.png" alt="image" /></p>
<p>而当<strong>lucy</strong>来问询<strong>停留时长</strong>这个核心指标时,就会被提示暂无权限
<img src="https://supersonicbi.github.io/img/lucy_column_permission.png" alt="image" /></p></description>
</item>
<item>
<title>chat-sdk集成</title>
<link>https://supersonicbi.github.io/docs/chat-sdk%E9%9B%86%E6%88%90/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/chat-sdk%E9%9B%86%E6%88%90/</guid>
<description><h1 id="chat-sdk-集成">
 chat-sdk 集成
 <a class="anchor" href="#chat-sdk-%e9%9b%86%e6%88%90">#</a>
</h1>
<p><code>问答对话</code>页支持以下两种方式集成:</p>
<ol>
<li>npm 组件包集成</li>
<li>iframe 嵌入</li>
</ol>
<h2 id="npm-组件包集成">
 npm 组件包集成
 <a class="anchor" href="#npm-%e7%bb%84%e4%bb%b6%e5%8c%85%e9%9b%86%e6%88%90">#</a>
</h2>
<ol>
<li>进入到/webapp/packages/chat-sdk 目录,修改 package.json</li>
</ol>
<pre tabindex="0"><code>{
 &#34;name&#34;: &#34;xxx-chat-sdk&#34;,
 &#34;version&#34;: &#34;x.x.x&#34;,
 ...
}
</code></pre><ol start="2">
<li>执行<code>npm run build</code></li>
<li>执行<code>npm publish</code>,将组件发布到 npm 仓库</li>
<li>在 react 前端项目执行<code>npm install xxx-chat-sdk</code>,安装 chat-sdk 组件包</li>
<li>在 react 前端项目中引入 chat-sdk 包</li>
</ol>
<pre tabindex="0"><code>import { Chat } from &#39;xxx-chat-sdk&#39;;

const ChatPage = () =&gt; {
 return (
 &lt;Chat token=&#34;xxx&#34; /&gt;
 );
};

export default ChatPage;
</code></pre><p>通过以上步骤便可以将<code>问答对话</code>页集成到业务系统中了</p>
<blockquote class="book-hint info">
 <p><strong>提示</strong></p>
<ol>
<li>npm 包名 name 和版本 version 需要自行根据项目业务需要进行设置</li>
<li>token 为 supersonic 用户登录认证 token</li>
</ol>
</blockquote>

<h2 id="iframe-嵌入">
 iframe 嵌入
 <a class="anchor" href="#iframe-%e5%b5%8c%e5%85%a5">#</a>
</h2>
<p>将以下代码加入业务系统前端项目组件中</p></description>
</item>
<item>
<title>FAQ</title>
<link>https://supersonicbi.github.io/docs/faq/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/faq/</guid>
<description><h1 id="faq">
 FAQ
 <a class="anchor" href="#faq">#</a>
</h1>
<h2 id="项目有没有体验的地址">
 项目有没有体验的地址?
 <a class="anchor" href="#%e9%a1%b9%e7%9b%ae%e6%9c%89%e6%b2%a1%e6%9c%89%e4%bd%93%e9%aa%8c%e7%9a%84%e5%9c%b0%e5%9d%80">#</a>
</h2>
<p>A: Playground访问地址:<a href="http://117.72.46.148:9080">http://117.72.46.148:9080</a></p>
<h2 id="初始启动后为什么能显示demo问答对话">
 初始启动后为什么能显示DEMO问答对话?
 <a class="anchor" href="#%e5%88%9d%e5%a7%8b%e5%90%af%e5%8a%a8%e5%90%8e%e4%b8%ba%e4%bb%80%e4%b9%88%e8%83%bd%e6%98%be%e7%a4%bademo%e9%97%ae%e7%ad%94%e5%af%b9%e8%af%9d">#</a>
</h2>
<p>A: 为了便于快速体验,系统内置DEMO语义模型,且实现了基于规则的解析器,所以不需要大模型也可以进行问答对话。不过,规则解析器能力有限,推荐仅用于测试验证,生产使用还是需要大模型解析。</p>
<h2 id="是否自带大模型服务">
 是否自带大模型服务?
 <a class="anchor" href="#%e6%98%af%e5%90%a6%e8%87%aa%e5%b8%a6%e5%a4%a7%e6%a8%a1%e5%9e%8b%e6%9c%8d%e5%8a%a1">#</a>
</h2>
<p>A: 项目内置langchain4j社区提供的demo API key,但单次请求openai大模型限制在1000 token,因而只能用于快速体验。要正常体验问答对话,请自行申请大模型服务。</p>
<h2 id="支持哪些大模型服务">
 支持哪些大模型服务?
 <a class="anchor" href="#%e6%94%af%e6%8c%81%e5%93%aa%e4%ba%9b%e5%a4%a7%e6%a8%a1%e5%9e%8b%e6%9c%8d%e5%8a%a1">#</a>
</h2>
<p>A: 当前主要支持兼容open_ai接口协议的大模型服务,比如GPT、GLM、DeepSeek、Qwen、Moonshot等。文心和混元正在验证中,敬请期待。</p>
<h2 id="是否支持文本知识库">
 是否支持文本知识库?
 <a class="anchor" href="#%e6%98%af%e5%90%a6%e6%94%af%e6%8c%81%e6%96%87%e6%9c%ac%e7%9f%a5%e8%af%86%e5%ba%93">#</a>
</h2>
<p>A: 当前主要聚焦于结构化数据的问答,文本数据将在未来版本加入支持。</p>
<h2 id="是否支持多轮对话">
 是否支持多轮对话?
 <a class="anchor" href="#%e6%98%af%e5%90%a6%e6%94%af%e6%8c%81%e5%a4%9a%e8%bd%ae%e5%af%b9%e8%af%9d">#</a>
</h2>
<p>A: 自0.9.2版本起已经支持多轮对话,但默认是关闭的,需要在助理配置里开启。</p>
<h2 id="重启系统后为什么配置的助理模型数据丢失了">
 重启系统后为什么配置的助理/模型数据丢失了?
 <a class="anchor" href="#%e9%87%8d%e5%90%af%e7%b3%bb%e7%bb%9f%e5%90%8e%e4%b8%ba%e4%bb%80%e4%b9%88%e9%85%8d%e7%bd%ae%e7%9a%84%e5%8a%a9%e7%90%86%e6%a8%a1%e5%9e%8b%e6%95%b0%e6%8d%ae%e4%b8%a2%e5%a4%b1%e4%ba%86">#</a>
</h2>
<p>A: 系统默认使用H2内存数据库,如果需要持久化存储需配置DB,参考<a href="https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E9%83%A8%E7%BD%B2/%E9%85%8D%E7%BD%AEdb/">文档</a></p>
<h2 id="系统默认的账号和密码是什么">
 系统默认的账号和密码是什么?
 <a class="anchor" href="#%e7%b3%bb%e7%bb%9f%e9%bb%98%e8%ae%a4%e7%9a%84%e8%b4%a6%e5%8f%b7%e5%92%8c%e5%af%86%e7%a0%81%e6%98%af%e4%bb%80%e4%b9%88">#</a>
</h2>
<p>A: 系统默认创建的用户有admin, jack, tom, lucy, alice,密码都是:123456</p>
<h2 id="如果要用我自己的数据进行测试我至少需要经过哪些步骤">
 如果要用我自己的数据进行测试,我至少需要经过哪些步骤
 <a class="anchor" href="#%e5%a6%82%e6%9e%9c%e8%a6%81%e7%94%a8%e6%88%91%e8%87%aa%e5%b7%b1%e7%9a%84%e6%95%b0%e6%8d%ae%e8%bf%9b%e8%a1%8c%e6%b5%8b%e8%af%95%e6%88%91%e8%87%b3%e5%b0%91%e9%9c%80%e8%a6%81%e7%bb%8f%e8%bf%87%e5%93%aa%e4%ba%9b%e6%ad%a5%e9%aa%a4">#</a>
</h2>
<p>A: <a href="https://supersonicbi.github.io/docs/headless-bi/%E8%BF%9E%E6%8E%A5%E6%95%B0%E6%8D%AE%E5%BA%93/">连接数据库</a>
-&gt; <a href="http://supersonicbi.github.io/docs/headless-bi/%E6%9E%84%E5%BB%BA%E6%A8%A1%E5%9E%8B/">构造模型(创建指标和维度)</a>
-&gt; <a href="http://supersonicbi.github.io/docs/headless-bi/%E7%BB%84%E8%A3%85%E6%95%B0%E6%8D%AE%E9%9B%86/">组装数据集</a>
-&gt; <a href="http://supersonicbi.github.io/docs/chat-bi/%E9%85%8D%E7%BD%AE%E5%8A%A9%E7%90%86/">创建助理和工具</a></p>
<h2 id="是否可以提供接口供第三方应用调用">
 是否可以提供接口供第三方应用调用?
 <a class="anchor" href="#%e6%98%af%e5%90%a6%e5%8f%af%e4%bb%a5%e6%8f%90%e4%be%9b%e6%8e%a5%e5%8f%a3%e4%be%9b%e7%ac%ac%e4%b8%89%e6%96%b9%e5%ba%94%e7%94%a8%e8%b0%83%e7%94%a8">#</a>
</h2>
<p>A: 可以,启动系统后查看swagger接口文档:http://localhost:9080/swagger-ui/index.html</p>
<h2 id="有哪些国内的大模型服务对接">
 有哪些国内的大模型服务对接?
 <a class="anchor" href="#%e6%9c%89%e5%93%aa%e4%ba%9b%e5%9b%bd%e5%86%85%e7%9a%84%e5%a4%a7%e6%a8%a1%e5%9e%8b%e6%9c%8d%e5%8a%a1%e5%af%b9%e6%8e%a5">#</a>
</h2>
<p>A: 以下是我们验证过的商用大模型服务,都通过OPEN_AI协议对接,如下表所示:</p>
<table>
 <thead>
 <tr>
 <th style="text-align: left">提供商</th>
 <th style="text-align: left">API服务URL</th>
 <th style="text-align: left">推荐模型</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td style="text-align: left">智谱AI</td>
 <td style="text-align: left"><a href="https://open.bigmodel.cn/api/paas/v4">https://open.bigmodel.cn/api/paas/v4</a></td>
 <td style="text-align: left">glm-4</td>
 </tr>
 <tr>
 <td style="text-align: left">阿里云</td>
 <td style="text-align: left"><a href="https://dashscope.aliyuncs.com/compatible-mode/v1">https://dashscope.aliyuncs.com/compatible-mode/v1</a></td>
 <td style="text-align: left">qwen-max</td>
 </tr>
 <tr>
 <td style="text-align: left">幻方</td>
 <td style="text-align: left"><a href="https://api.deepseek.com">https://api.deepseek.com</a></td>
 <td style="text-align: left">deepseek-chat</td>
 </tr>
 <tr>
 <td style="text-align: left">月之暗面</td>
 <td style="text-align: left"><a href="https://api.moonshot.cn/v1">https://api.moonshot.cn/v1</a></td>
 <td style="text-align: left">moonshot-v1-8k</td>
 </tr>
 </tbody>
</table>
<p>以下是我们验证过的开源本地大模型,都通过OLLAMA协议对接,如下表所示:</p></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E8%AE%BE%E7%BD%AE/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/%E7%B3%BB%E7%BB%9F%E8%AE%BE%E7%BD%AE/</guid>
<description><p>快速补充中&hellip;</p></description>
</item>
<item>
<title></title>
<link>https://supersonicbi.github.io/docs/headless-bi/%E6%A0%87%E7%AD%BE/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://supersonicbi.github.io/docs/headless-bi/%E6%A0%87%E7%AD%BE/</guid>
<description><h1 id="标签">
 标签
 <a class="anchor" href="#%e6%a0%87%e7%ad%be">#</a>
</h1>
<p>标签主要面向基于一个标签对象上, 进行圈选和洞察的场景;</p>
<h2 id="1-标签对象">
 <strong>1. 标签对象</strong>
 <a class="anchor" href="#1-%e6%a0%87%e7%ad%be%e5%af%b9%e8%b1%a1">#</a>
</h2>
<p>每一个标签都需要依赖于一个特定的标签对象,标签对象类似于一个实体,一般是有一个主键的。</p>
<h3 id="11-新建标签对象">
 <strong>1.1 新建标签对象</strong>
 <a class="anchor" href="#11-%e6%96%b0%e5%bb%ba%e6%a0%87%e7%ad%be%e5%af%b9%e8%b1%a1">#</a>
</h3>
<p>新建标签对象的途径为: 语义建模 -&gt; 选择主题域 -&gt; 标签对象管理 -&gt; 创建标签对象</p>
<figure><img src="https://supersonicbi.github.io/img/tag_object_new.jpg#center">
</figure>

<p>新建标签对象时, 需要填入以下信息:</p>
<figure><img src="https://supersonicbi.github.io/img/tag_object_edit.jpg#center">
</figure>

<h3 id="12-绑定标签对象">
 <strong>1.2 绑定标签对象</strong>
 <a class="anchor" href="#12-%e7%bb%91%e5%ae%9a%e6%a0%87%e7%ad%be%e5%af%b9%e8%b1%a1">#</a>
</h3>
<p>完成标签对象的创建后, 就可以在特定的模型的编辑页面上, 将其挂载到某一个标签对象上去, 只需要将该模型下的主键字段绑定到特定标签对象即可:</p>
<figure><img src="https://supersonicbi.github.io/img/tag_object_model.jpg#center">
</figure>

<h2 id="2-导出标签">
 <strong>2. 导出标签</strong>
 <a class="anchor" href="#2-%e5%af%bc%e5%87%ba%e6%a0%87%e7%ad%be">#</a>
</h2>
<p>完成 1.1 中相关标签对象的设置后, 就可以将该模型上的维度/指标批量导出为标签了。
如图选择特定的艺人库模型, 选择维度管理, 选择需要的维度(demo中选择了活跃区域和代表作), 然后选择批量操作中的 &ldquo;导出为标签&rdquo;。</p>
<figure><img src="https://supersonicbi.github.io/img/tag_dimensions.jpg#center">
</figure>

<p>当然也可以通过编辑特定的维度来完成单个标签的导出:</p>
<figure><img src="https://supersonicbi.github.io/img/tag_dimension.jpg#center">
</figure>

<p>以上针对维度进行了导出标签操作, 如果要将指标导出为标签方法类似。</p>
<h2 id="3-标签市场">
 <strong>3. 标签市场</strong>
 <a class="anchor" href="#3-%e6%a0%87%e7%ad%be%e5%b8%82%e5%9c%ba">#</a>
</h2>
<p>完成 1.2 中标签的导出后, 就可以在标签市场中看到上述导出的标签:</p>
<figure><img src="https://supersonicbi.github.io/img/tag_market_list.jpg#center">
</figure>

<p>我们还支持查看具体的标签详情, 点击具体某一个标签会发现有如下信息:</p>
<figure><img src="https://supersonicbi.github.io/img/tag_market_detail.jpg#center">
</figure></description>
</item>
</channel>
</rss>