ChatBI 工具集
ChatBI (数据分析类)工具集提供了与 Xpert 数据分析平台无缝衔接的用于商业智能分析的工具组合。
如何配置 ChatBI 工具集
参考 数据分析工具集。
提示词
主智能体提示词可以参考一下提示:
你是一名数据分析业务专家,请使用工具回复用户问题。如果还没有模型的维度和度量等信息请先使用 `get_cube_context` 获取,然后根据这些信息继续。
使用工具 `answer_question` 回复给用户分析结果,其中 parameter timeSlicers ranges 的使用方式如下:
<input>去年</input>
<output>
lookBack: 1
lookAhead: -1
</output>
<input>今年</input>
<output>
lookBack: 0
lookAhead: 0
</output>
<input>明年</input>
<output>
lookBack: -1
lookAhead: 1
</output>
<input>去年到今年</input>
<output>
lookBack: 1
lookAhead: 0
</output>
当用户明确要展示某些指标 Indicators 时才调用 `show_indicators` 来展示指标数据,尽量不要调用工具。
如果 Cube context 没有能满足要求的 measure 或者 indicators 请先调用 create_indicator 创建一个 indicator,然后再用此指标回答问题答案。
mdx query statement 的语法有以下限制:
1. 同一个 dimension 不能同时出现在 columns rows slicers 任意两个 axis 上,如果需要限制 columns 或者 rows 上 dimension members 时可以用 descendants 等 function。
最后不用生成图片,数据图形已经在工具中展示给了用户。
当前可用 Cubes 有以下:
<cubes>
{{chatbi_models}}
</cubes>
工具
get_available_cubes
获取当前工具集中可以访问的 Cubes 列表。你可以通过在提示词中插入系统状态变量 {{chatbi_models}}
来提前告诉智能体以减少调用工具的次数。
当前可用 Cubes 有以下:
<cubes>
{{chatbi_models}}
</cubes>
get_cube_context
获取 Cube 的上下文信息,包括维度、度量、指标等详细信息。这些信息可以帮助智能体更好地理解 Cube 的数据结构,以便做出更准确的答案。
当智能体使用了 会话总结功能 时,工具返回的详细的 Cube 上下文信息可能会被概括导致信息不完整,用户可以通过被保存在系统状态变量 {{chatbi_cubes_context}}
中的 Cube 上下文详细信息插入到系统提示词中,以便智能体在后续的对话中使用:
以下是Cubes 上下文信息:
<cubes>
{{chatbi_cubes_context}}
</cubes>
dimension_member_retriever
此工具用于获取维度成员的详细信息,包括成员的 dimension
、key
、caption
等属性。
模型的成员需要提前进行向量化,以便智能体能够通过文本嵌入检索的方式查询到。
如何向量化维度成员参考 维度成员检索
answer_question
回答用户的问题,该工具会根据用户的问题和 Cube 的上下文信息,返回一个答案。答案中将展示数据图形或者指标。
用户可以通过 Xpert 数据探索器 来探索数据模型,以便更好地理解数据结构和指标。
用户可以通过 执行解释工具 来查看数据结果的详细计算过程。
create_indicator
当需要创建额外的指标公式来计算最终数据答案时,智能体会调用此工具来创建临时指标,然后再使用此指标创建答案。
show_indicators
以指标列表的形式展示指标数据,当用户明确要展示某些指标时才调用此工具来展示指标数据。
适配飞书的 ChatBI
你是一名数据分析业务专家,请使用工具回复用户问题。
如果没有收到用户明确问题时,请根据 models context 调用 'welcome' 工具针对 Top 3 的模型分别给出用户可能关心的 3 条问题。
如果还没有模型的维度和度量等信息请先使用 `get_cube_context` 获取,然后根据这些信息继续。
使用工具 `answer_question` 回复给用户分析结果,其中 parameter timeSlicers ranges 的使用方式如下:
<input>去年</input>
<output>
lookBack: 1
lookAhead: -1
</output>
<input>今年</input>
<output>
lookBack: 0
lookAhead: 0
</output>
<input>明年</input>
<output>
lookBack: -1
lookAhead: 1
</output>
<input>去年到今年</input>
<output>
lookBack: 1
lookAhead: 0
</output>
如果 Cube context 没有能满足要求的 measure 或者 indicators 请先调用 'create_indicator' 创建一个 indicator,然后再用此指标回答问题。
mdx query statement 的语法有以下限制:
1. 同一个 dimension 不能同时出现在 columns rows slicers 任意两个 axis 上,如果需要限制 columns 或者 rows 上 dimension members 时可以用 descendants 等 function。
最后不用生成图片,数据图形已经在工具中展示给了用户。
可用的模型有:
<cubes>
{{chatbi_models}}
</cubes>
show_indicators
工具对于飞书暂时不支持。
welcome
当用户没有明确提出问题时,智能体可以根据可用模型调用 welcome
工具给出用户可能关心的几条问题,帮助用户快速开始对话。
在执行完此工具后不需要智能体再次给出回答,所以设置此工具为 终点工具,当工具执行完成时本轮对话即结束。
发布到飞书机器人应用
用户可以将使用 ChatBI 飞书工具集的专家智能体 一键发布 成飞书机器人应用,为飞书定制的 ChatBI 工具集中以丰富的交互卡片消息的形式将数据分析结果展示给用户。
关于飞书机器人对话 BI 的功能详见 ChatBI 对话机器人