You need to enable JavaScript to run this app.
导航
ChatBI 智能体 Open API
最近更新时间:2025.04.03 18:03:55首次发布时间:2025.04.03 18:03:55
我的收藏
有用
有用
无用
无用

1.概述

本文为您介绍的是“DataWind 智能体 的 Open API”,您将了解到如何通过 API 让智能体使用自然语言查询数据。
注意:在您使用本文所述的 API 前,还需完成接入 JWT-Token 和申请 Token 的前置操作及提前配置好智能体,请先了解调用方式,详情可阅读调用方式

2.接口

2.1(推荐)飞书智能体使用自然语言查询数据

请求说明

请求方式:POST
请求地址: https://{domain}/aeolus/llm/openApi/v2/chatbi/query

请求参数

参数

类型

是否必选

示例值

描述

question

string

10月20日有多少文章

问题

chatId

string

如果是独立问题,可不传

100000

会话 ID,同一个 chatId 视为多轮对话

agentId

int

1000

智能体 ID

imageFormat

string

lark_fragment

传入该值

请求示例

{
    "question": "10月20日有多少文章",    // 问题,必填
    "chatId": "100000",    // 会话ID,同一个chatId视为多轮对话,如果是独立问题,可不传
    "agentId": 1000,   // 智能体ID
    "imageFormat": "lark_fragment"  //传入该值
}

备注:因环境可能会出现图片生成服务未 ready 的情况,为了防止出错,建议"imageFormat"字段传入固定值"lark_fragment"。

返回参数

参数

类型

示例值

描述

charts

array

[{
                "chartType": "table",
                "image": "",
                "imageLarkKey": null,
                "larkFragment":"{\"tag\": \"table\", \"page_size\": 6, \"row_height\": \"32px\", \"custom_tag\": \"chart_type_table\", \"header_style\": {\"bold\": true, \"background_style\": \"grey\", \"text_size\": \"normal\", \"row_height\": \"middle\", \"lines\": 2}, \"columns\": [{\"name\": \"173329\", \"display_name\": \"article_count(\文\章\数\量)\", \"data_type\": \"text\"}], \"rows\": [{\"1733298\": \"36925176\"}]}"
            }
 ]

推荐图表类型,第一个是最推荐的图表

dataSetUrl

string

https://数据集网址

数据集链接

meta

array

[// 查询结果字段列表
            {
                "dataType": "int", //字段类型
                "name": "article_count(文章数量)", //字段名称
                "role": "measure" //指标 或 维度
            }
 ]

结果字段描述信息,可以理解为表头

queryHistory

string

https://网址

查询的sql信息

rows

array

[ // 查询数据结果
[
369251756
]
]

结果数据

sql

string

SELECT (count(*)) AS article_count FROM event_online WHERE (1702552137_日期) = ('2024-10-20') LIMIT 1000

查询sql

thought_process

string

模型的输出信息

模型的思考过程

返回示例

{
    "code": "llm/ok", // 状态码
    "data": {
        "charts": [ //图表类型
            {
                "chartType": "measure_card",    
                "image": "",
                "imageLarkKey": null,
                "larkFragment":"{\"tag\": \"column_set\", \"flex_mode\": \"stretch\", \"background_style\": \"grey\", \"horizontal_spacing\": \"default\", \"columns\": [{\"tag\": \"column\", \"width\": \"weighted\", \"weight\": 1, \"elements\": [{\"tag\": \"markdown\", \"text_align\": \"left\", \"content\": \"article_count(\文\章\数\量):\\n**369251756**\"}]}]}"
            },
            {
                "chartType": "table",
                "image": "",
                "imageLarkKey": null,
                "larkFragment":"{\"tag\": \"table\", \"page_size\": 6, \"row_height\": \"32px\", \"custom_tag\": \"chart_type_table\", \"header_style\": {\"bold\": true, \"background_style\": \"grey\", \"text_size\": \"normal\", \"row_height\": \"middle\", \"lines\": 2}, \"columns\": [{\"name\": \"173329985\", \"display_name\": \"article_count(\文\章\数\量)\", \"data_type\": \"text\"}], \"rows\": [{\"1733765\": \"36926\"}]}"
            }
        ],
        "dataSetUrl": "https://网址",// 数据集链接
        "meta": [// 查询结果字段列表
            {
                "dataType": "int", //字段类型
                "name": "article_count(文章数量)", //字段名称
                "role": "measure" //指标 或 维度
            }
        ],
        "queryHistory": "https://data.", //sql查看地址
        "rows": [ // 查询数据结果
            [
                369251756
            ]
        ],
        "sql": "  SELECT  (count(*)) AS article_count  FROM `event_online`     WHERE (`170252137_日期`) = ('2024-10-20')      LIMIT 1000   " //查询sql,
        "thought_process":"用户想了解今年的xx情况。根据数据集定义,我们需要筛选出今年的数据,并展示xx的相关指标。...."
    },
    "msg": {} //额外信息
}

备注:图表类型,支持类型包括: "column_parallel"、"combination"、"line"、"pie"、"measure_card"、"table" 分别表示柱状图、组合图、折线图、饼图、指标卡、表格。

2.2 (推荐)PC智能体使用自然语言查询数据

请求说明

请求方式:POST
请求地址: https://{domain}/aeolus/llm/openApi/v2/ada/query

请求参数

参数

类型

是否必选

示例值

描述

question

string

10月20日有多少文章

问题

chatId

string

如果是独立问题,可不传

100000

会话 ID,同一个 chatId 视为多轮对话

agentId

int

1000

智能体 ID

questionSource

string

openapi

传入该值

imageFormat

string

lark_fragment

固定该值

请求示例

{
    "question": "10月20日有多少文章",    // 问题,必填
    "chatId": "100000",    // 会话ID,同一个chatId视为多轮对话,如果是独立问题,可不传
    "agentId": 1000,   // 智能体ID
    "questionSource":"openapi",
    "imageFormat": "lark_fragment"  //传入该值

}

返回参数

参数

类型

示例值

描述

charts

array

[{
                "chartType": "table",
                "image": "",
                "imageLarkKey": null,
                "larkFragment":"{\"tag\": \"table\", \"page_size\": 6, \"row_height\": \"32px\", \"custom_tag\": \"chart_type_table\", \"header_style\": {\"bold\": true, \"background_style\": \"grey\", \"text_size\": \"normal\", \"row_height\": \"middle\", \"lines\": 2}, \"columns\": [{\"name\": \"17332995\", \"display_name\": \"article_count(\文\章\数\量)\", \"data_type\": \"text\"}], \"rows\": [{\"173329\": \"369\"}]}"
            }
 ]

推荐图表类型,第一个是最推荐的图表

dataSetUrl

string

https://数据集网址

数据集链接

meta

array

[// 查询结果字段列表
            {
                "dataType": "int", //字段类型
                "name": "article_count(文章数量)", //字段名称
                "role": "measure" //指标 或 维度
            }
 ]

结果字段描述信息,可以理解为表头

queryHistory

string

https://

查询的sql信息

rows

array

[ // 查询数据结果
[
369
]
]

结果数据

sql

string

SELECT (count(*)) AS article_count FROM event_online WHERE (17552137_日期) = ('2024-10-20') LIMIT 1000

查询sql

knowledge

string

"\n\n提示:\n1. 指标相互独立,不同不可相加\n"

用到的知识信息

sessioinId

int

53332234

会话id

sessioinUrl

string

https://会话的网址链接

会话url

recallFieldInfo

array

[
            {
                "descr": null,
                "fieldName": "`客户`",
                "id": 17000641168,
                "mapType": 0,
                "type": "string"
            }
        ]

召回的字段列表

返回示例

{
    "JSONIFY_PRETTYPRINT_REGULAR": false,
    "code": "llm/ok",
    "data": {
        "charts":  [ //图表类型
            {
                "chartType": "measure_card",    
                "image": "",
                "imageLarkKey": null,
                "larkFragment":"{\"tag\": \"column_set\", \"flex_mode\": \"stretch\", \"background_style\": \"grey\", \"horizontal_spacing\": \"default\", \"columns\": [{\"tag\": \"column\", \"width\": \"weighted\", \"weight\": 1, \"elements\": [{\"tag\": \"markdown\", \"text_align\": \"left\", \"content\": \"article_count(\文\章\数\量):\\n**369251756**\"}]}]}"
            },
            {
                "chartType": "table",
                "image": "",
                "imageLarkKey": null,
                "larkFragment":"{\"tag\": \"table\", \"page_size\": 6, \"row_height\": \"32px\", \"custom_tag\": \"chart_type_table\", \"header_style\": {\"bold\": true, \"background_style\": \"grey\", \"text_size\": \"normal\", \"row_height\": \"middle\", \"lines\": 2}, \"columns\": [{\"name\": \"1733299899765\", \"display_name\": \"article_count(\文\章\数\量)\", \"data_type\": \"text\"}], \"rows\": [{\"1733299899765\": \"369251756\"}]}"
            }
        ],
        "dataSetId": 3231942,
        "dataSetUrl": "",
        "knowledge": "\n\n提示:\n1. 指标相互独立,不同不可相加\n",
        "meta": null,
        "originalCode": "\n# 编写SQL查询\nsql = \"\"\"\nSELECT \n    SUM(`免费量`) AS 总免费量,\n    SUM(`原始量`) AS 总原始量,\n    SUM(`付费量`) AS 总付费量\nFROM 数据集\nWHERE YEAR(`日期`) = YEAR(CURRENT_DATE);\n\"\"\"\n\n# 执行SQL查询并获取结果\ndf = execute_sql(sql, max_rows=1000)\n\n# 输出结果\nanswer(df)\n\n    ",
        
        "queryHistory": "",
        "recallFieldInfo": [
            {
                "descr": null,
                "fieldName": "`客户`",
                "id": 17000641168,
                "mapType": 0,
                "type": "string"
            }
        ],
        "rows": [[100000]],
        "sessionId": 5652519,
        "sessionUrl": "https://网址",
        "sql": "\n# 编写SQL查询\nsql = \"\"\"\nSELECT \n    SUM(`免费量`) AS 总免费量,\n    SUM(`原始量`) AS 总原始量,\n    SUM(`付费量`) AS 总调用量\nFROM 数据集\nWHERE YEAR(`日期`) = YEAR(CURRENT_DATE);\n\"\"\"\n\n# 执行SQL查询并获取结果\ndf = execute_sql(sql, max_rows=1000)\n\n# 输出结果\nanswer(df)\n\n    ",
        "sqlList": [],
        "thought": {
            "columns": [],
            "dimensions": [],
            "filters": [],
            "metrics": [],
            "redactedCode": ""
        }
    },
    "msg": {}
}