页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。
评论: 服务器ip&port

...

可以把 Smartbi AIChat 对话界面,整体集成嵌入到第三方系统中。


URL路径

http://ipSmartbi-AIChat-server:port/smartbi/vision/aichat/proxy/#/

GET请求

示例:http://10.10.35.110:9070/smartbi/vision/aichat/proxy/#/

集成说明

本地址必须登录后再使用。可以跳过登录步骤,直接打开v3的界面。

参数

...

示例代码请参考: DemoCodeDemoCode  、 示例程序下载 

_AIChat_Login_Method
_AIChat_Login_Method

4.1 登录AIChat

  • 接口说明

名称

请求地址

http://smartbiSmartbi-AIChat-server:port/aiweb/api/v1/login

请求方式

POST

请求参数

userName

password

smartbiServer

casLoginUrl

loginMethod

...

4.2 查询接口(异步)


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/api/v3/conv/query

接口说明

V3版本查询方法 -- 异步方法 -- SSE请求。

header

token

登录key,使用login方法获取;login方法请参考:登录AIChat

接口参数

convId

会话Id

datasetId

数据模型Id

question

用户问题


queryType

查询类型:

  • analysis(分析模式)
  • expert(专家模式)

建议使用:analysis

id

本次对话id,从外部传入用户才能使用“点赞”、“点踩”等功能。


need_inquiry

本次查询是否需要使用反问功能。

默认值:true

返回内容

返回SSE对象,前端处理。SSE返回报文样例:
{
    "role": "SimpleQuery",
    "response_status": "generating code",
    "response_message": " \"",
    "execution_result": "",
    "send_to": "Unknown",
    "response_type": "python"
}

...

SSE 接口会返回很多条这样的报文,具体原理请自行百度。请手工拼接返回报文 "response_message" 和 "execution_result" 部分内容;response_type 表示当前这条报文的返回内容是啥。

...

4.3 查询接口(同步)


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/api/v3/conv/query_sync

接口说明

V3版本查询方法 -- 同步方法。

header

token

登录key,使用login方法获取;login方法请参考:登录AIChat

接口参数

convId

会话Id

datasetId

数据模型Id

question

用户问题


queryType

查询类型:

  • analysis(分析模式)

  • expert(专家模式)

建议使用:analysis

id

本次对话id,从外部传入用户才能使用“点赞”、“点踩”等功能。


need_inquiry

本次查询是否需要使用反问功能。

默认值:true

返回内容

返回查询结果(JSON),前端处理:

{
    
"code": 0,
    
"result": "[\"[{\\\"年月\\\":\\\"2019-01\\\",\\\"销量\\\":132912,\\\"销量环比增长率\\\":\\\"-6.06%\\\",\\\"_销量占比\\\":\\\"8.8272%\\\"},...]",
    
"message": null
}

code=0,表示返回正确(result是返回结果);否则message就是错误提示。

4.4 中断查询


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/api/v3/conv/stop_stream

接口说明

异步query方法情况下,中断当前查询。

header

token

登录key,使用login方法获取;login方法请参考:登录AIChat

接口参数

convId

会话Id

返回内容

{
    
code: 错误码(0 - 表示正确)
    
message:错误描述
    
result:方法执行返回结果 -- 服务端无返回则为空
}

4.5 新建查询对话


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/api/v3/conv/new

接口说明

新建查询对话。

header

token

登录key,使用login方法获取;login方法请参考:登录AIChat

接口参数

convId

会话Id

返回内容

{
    
code: 错误码(0 - 表示正确)
    
message:错误描述
    
result:方法执行返回结果 -- 服务端无返回则为空
}

4.6 关闭查询对话


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/api/v3/conv/close

接口说明

关闭查询对话 -- 结束本次多轮对话。

header

token

登录key,使用login方法获取;login方法请参考:AIChat登录

接口参数

convId

会话Id

返回内容

{
    code: 错误码(0 - 表示正确)
    message:错误描述
    result:方法执行返回结果 -- 服务端无返回则为空
}

4.7 获取本次对话推荐数据模型


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/api/v3/conv/recommend_dataset

接口说明

获取本次对话推荐数据模型。

header

token

登录key,使用login方法获取;login方法请参考:登录AIChat

接口参数

convId

会话Id

question

用户提问


datasetId

当前数据模型id


返回内容

{
    code: 错误码(0 - 表示正确)
    message:错误描述
    result:获取推荐的数据模型列表
}

4.8 获取本次对话的详细查询步骤和内容


名称

描述

默认值

接口路径

http://hostSmartbi-AIChat-server:port/aiweb/#/testTool?answerid=${id}

GET请求

示例: http://10.10.35.110:9070/aiweb/#/testTool2?answerid=01fc76d5-7ec4-4fad-8216-d4b829ac740c

接口说明

获取本次对话的详细查询步骤和内容。

注意

这个基本是前端接口,需要前端js辅助解析的,所以无法直接提供给第三方调用。


接口参数

id

本次对话Id

返回内容

查询步骤说明html页面。

4.9 获取当前用户可以使用的数据模型列表


名称描述默认值
接口路径http://
host/
Smartbi-AIChat-server:port/aiweb/proxy/aibus/get_using_themes 
接口说明获取当前用户可以使用的数据模型列表。
headertoken登录key,使用login方法获取;login方法请参考:登录AIChat
接口参数


返回内容

{
    code: 错误码(0 - 表示正确)
    message:错误描述
    result:[{
        
"id":                                数据模型themeID
        "name":                          数据模型名称
        "title":                             数据模型名称别名
        "desc":                         数据模型概览    
        "type":                            数据类型
        "recommendQuestion": 推荐问句
        "lastBuildTime":              最近构建时间
        
}]
}

4.10 获取当前用户会话历史


名称描述默认值
接口路径http://
host/
Smartbi-AIChat-server:port/aiweb/proxy/admin/v3/db/conv/get_list_by_user
接口说明获取当前用户可以使用的数据模型列表
headertoken登录key,使用login方法获取;login方法请参考:登录AIChat
接口参数userName当前用户名
返回内容

{
    code: 错误码(0 - 表示正确)
    message:错误描述
    result:[{
        
_id:  对话Id (convId),
        
name:  对话名称,
        
endTime:  对话结束时间(时间戳 – long)
    
}]
}

4.11 打开对话历史


名称描述默认值
接口路径http://
host/
Smartbi-AIChat-server:port/aiweb/proxy/admin/v3/db/conv/get_by_convid
接口说明获取当前用户可以使用的数据模型列表。
headertoken登录key,使用login方法获取;login方法请参考:登录AIChat
接口参数convId会话Id
返回内容

{
    code: 错误码(0 - 表示正确)
    message:错误描述
    result:[{
        
id:  消息Id
        
convId: 会话Id,
        
name:  对话名称,
        
answer:消息返回报文 – 主要是解析这个内容
        
beginTime:消息开始时间
        
endTime:  消息结束时间(时间戳 – long)
        
...
    
}]
}

4.12 删除对话历史


名称描述默认值
接口路径http://
host/
Smartbi-AIChat-server:port/aiweb/proxy/admin/v3/db/conv/remove_by_convid
接口说明获取当前用户可以使用的数据模型列表。
headertoken登录key,使用login方法获取;login方法请参考:登录AIChat
接口参数convId会话Id
返回内容

{
    code: 错误码(0 - 表示正确)
    message:错误描述
    result:""
}