ChatBI 部署说明
概述
ChatBI 实现了从“问数据”到“操作数据”的全链条自然语言交互。在 NLQ(汉语查询)输入汉语命令,得到查询结果后进入多维分析界面,然后使用 NLR(汉语报表)通过解析用户输入的命令语句,生成相应的报表。
ChatBI 部署
润乾报表内置了 TOMCAT 和 NLQ 服务。如需使用 ChatBI,可在润乾报表基础上直接安装开源 BI 安装包。安装完成即已将 ChatBI 的 WEB 目录集成到了 demo 应用中,用户可直接使用内置的应用。当然,通过学习本章节内容,也能更清楚地了解如何独立部署和使用一套完整的 ChatBI 应用。
接下来,我们将使用安装包自带的元数据文件 orders.lmd、字典文件 orders.dct、汉语查询词典文件 orders.nlq 以及内置的 HSQL 数据源,在独立的 Tomcat 服务器上部署一套完整的 ChatBI。通过简单的几个步骤,您就能快速了解并使用 ChatBI 的功能!
第一步:创建 WEB 应用目录
第二步:集成润乾报表 DEMO 应用
安装润乾报表和开源 BI 安装包后,自带的 demo 应用路径为 [安装根目录]\report\web\webapps\demo,需将 demo 应用中的如下内容全部集成到 WEB 应用中。

《程序员参考》WEB 应用配置小节中介绍了 demo 应用发布目录中的所有文件目录结构及用途,如有需要可做进一步查阅。
注意:所有文件中只有 web.xml 文件不能拷贝,而是打开开源 BI 安装包的 web.xml 文件,把其中的内容拷贝到您的 web.xml 文件中。其内容在 web.xml 中的顺序,要遵从相关应用服务器的规定。如果不是和已有应用集成,而是新建应用,那么直接拷贝 web.xml 也无妨。
第三步:配置授权文件
打开 [WEB 应用根目录]/WEB-INF/raqsoftConfig.xml 文件,配置授权。授权需使用“汉语查询”功能点的润乾报表授权。安装包自带的试用授权不包含此项功能,可申请相应的开发授权方可使用。
如下所示(license 为需要配置的内容):
<?xml version="1.0" encoding="UTF-8"?>
<Config Version="3">
<Runtime >
… …
//报表选项配置
<Report>
<!--设置报表授权,可为相对路径,相对web应用根目录,相对路径前面不需要加斜杠”/”-->
<license> E:\licenses\defaultlicensetrial_zh.xml </license>
… …
</Report>
… …
</Config>
第四步:配置 NLQ 服务
打开 [WEB 应用根目录]/WEB-INF/classes/nlqConfig.xml 文件,配置 NLQ 服务。本例 NLQ 服务使用安装包自带的汉语查询词典文件,存放路径为 [WEB 应用根目录]/WEB-INF/files/dql/orders.nlq,具体配置内容如下所示(NLQ 标签中的 name、DB、MetaData 为需要配置的内容):
<?xml version="1.0" encoding="UTF-8"?>
<Config version="1">
<NLQList>
<NLQ name ="nlqOrder">
<!—配置nlq服务使用的DQL数据源,在raqsoftConfig.xml中配置的DBConfig名称 -->
<DB>DQL4Orders</DB>
<!—nlq词典文件路径,由汉语查询设计器制作,支持类路径和绝对路径 -->
<MetaData>web/webapps/demo/WEB-INF/files/dql/orders.nlq</MetaData>
<!-- 用来读取NLQ服务所依赖的DQL数据源,支持类路径和绝对路径,缺省时使用/WEB-INF/raqsoftConfig.xml -->
<RaqsoftConfig></RaqsoftConfig>
</NLQ>
</NLQList>
<!-- 缺省raqsoftConfig.xml文件路径,支持类路径和绝对路径。NLQ下有RaqsoftConfig配置时,以NLQ下的为准,未配置时,则使用DefaultRaqsoftConfig -->
<DefaultRaqsoftConfig></DefaultRaqsoftConfig>
<!-- 开启调试开关,能够输出日志,不用写到文档中 -->
<DebugMode>false</DebugMode>
</Config>
第五步:配置 NLQ 服务使用的 DQL 数据源
打开 [WEB 应用根目录]/WEB-INF/raqsoftConfig.xml 文件,配置 DQL 数据源。
这里以配置报表嵌入式 DQL 数据源为例。如下所示(DB 为需要配置的内容):
<Runtime>
<DBList>
<DB name="DQL4Orders">
<!-- orders.lmd获取路径为报表[安装根目录]\report\services\orders\conf -->
<property name="url" value="jdbc:datalogic://?lmd=services/orders/conf/orders.lmd&dct=web/webapps/demo/WEB-INF/files/dql/orders.dct&vsb=&db.url=jdbc:hsqldb:hsql://127.0.0.1/orders&db.driver=org.hsqldb.jdbcDriver&db.user=sa&db.password=&db.type=13" />
<property name="driver" value="com.datalogic.jdbc.LogicDriver" />
</DB>
……
</DBList>
<Report>
… …
</Report>
</Runtime>
注意:
1、如果需要更具体的了解 DQL JDBC 的参数配置,可参考《分析教程》嵌入式 DQL 部署集成。
2、DQL JDBC 连接物理数据源时需将对应的数据库驱动包放在能够加载到的类路径下。润乾报表 WEB 应用中自带的 demo 数据源所连的内置数据库类型为 HSQL,驱动为 hsqldb-2.7.3-jdk8.jar,驱动存放位置为:[安装根目录]\common\jdbc,用户可以根据实际需要自己放置对应的驱动。
第六步:添加 NLQ JDBC
打开 [WEB 应用根目录]/WEB-INF/raqsoftConfig.xml 文件,配置汉语查询页面使用的 NLQ JDBC。内容如下所示(DB 为需要配置的内容):
<?xml version="1.0" encoding="UTF-8"?>
<Config Version="3">
<Runtime >
//配置应用需要用到的NLQ JDBC数据源
<DBList>
<DB name="NLQ4Orders">
<property name="url" value="jdbc:datalogic:nlq://?home=mql_home&nlq=nlqOrder"/>
<property name="driver" value="com.nlq.datalogic.jdbc.NLQDriver"/>
<property name="type" value="16"/>
<property name="user" value="root"/>
<property name="password" value="root"/>
<property name="batchSize" value="1000"/>
<property name="autoConnect" value="false"/>
<property name="useSchema" value="false"/>
<property name="addTilde" value="false"/>
<property name="caseSentence" value="false"/>
</DB>
… …
</DBList>
… …
//报表选项配置
<Report>
… …
</Report>
… …
</Config>
注:更多关于 NLQ 服务的了解可学习《汉语查询教程》。
第七步:配置 NLQ 页面使用的 NLQ JDBC
打开【独立部署的 WEB 应用目录】\ raqsoft\dql\jsp\dqlSearch.jsp,将下图红框中的数据源名称修改为第六步中添加的 NLQ JDBC 名称。
第八步:启动 HSQL 数据库
启动 DQL 数据源使用的 HSQL 数据库,启动文件位于【报表安装目录】\report\bin 下的 startDataBase.bat。
第九步:启动 DQL Server
如果在 第五步 配置了独立的 DQL 数据源,那么就需要单独启动 DQL Server。本例使用了报表嵌入式 DQL 数据源,无需单独启动 DQL Server,因此可跳过本步。更多关于 DQL Server 的学习可参考《分析教程》、《DQL 教程》。
第十步:启动 Tomcat 服务器
第十一步:访问 NLQ
访问 http://[ip]:[port]/[应用名称]/raqsoft/dql/jsp/dqlSearch.jsp,展现汉语查询页面:
输入搜索词,点击查询:
注:使用 LLM 建议 需在 [WEB 应用根目录]/WEB-INF/deepseek.txt 中配置用户自己的 DeepSeek API Key,该文件初始为空。
第十二步:制作汉语报表
点击新建报表进入自助报表页面:
可双击红色【汉语】按钮输入命令语句,生成相应的报表。
命令格式:功能 参数 1 值 1 参数 2 值 2……
如下图所示为订单金额设置显示格式:

点击【重新查询数据】按钮,可返回 NLQ 页面重新查询:
