智能AI客服
上新智能知识库客服:上传文档生成专属聊天页,访客问答按次计费
智能知识库客服:上传文档(txt/md/docx/pdf),自动切片向量化;生成公开聊天页 URL,访客可像在线客服一样提问。
管理调用免费;访客每次提问扣 1 次(检索 + DeepSeek 生成)。
典型流程:create → upload → 分享 public_url → 访客在页面提问。
管理调用免费;访客每次提问扣 1 次(检索 + DeepSeek 生成)。
典型流程:create → upload → 分享 public_url → 访客在页面提问。
调用地址:https://api.ynlskj.com.cn/gateway/smartbot
请求方法:POST
在其他地方怎么调用
- 请求地址用上面的调用地址,把 JSON 放在请求体里
- 方法用
POST - API Key 只能放在请求头
X-API-Key,不要写进网址,也不要写进 Query 框 - Key 在「个人中心 → API Key」里复制,登录后会自动填入你自己的 Key
参数说明
| 参数 | 位置 | 必填 | 说明 |
|---|---|---|---|
action | Body JSON | 是 | create / list / update / delete / status / docs / upload / doc_delete / ask;以及 db_add / db_update / db_delete / db_list / db_test / db_tables / db_columns / db_preview / db_sync |
name / welcome | Body JSON | create 时 | 客服名称、欢迎语 |
system_prompt | Body JSON | 否 | 回答风格与约束(默认:只根据知识片段回答) |
bot_id | Body JSON | 管理时 | Bot ID,格式 sb_xxx |
content / file_base64 | Body JSON | upload 时 | 纯文本或 Base64 文件;也可 multipart 字段 file |
filename / title | Body JSON | 否 | 文件名与文档标题;支持 txt/md/csv/docx/pdf,≤2MB |
question | Body JSON | ask 时 | 用户问题,最长 1000 字;可选 history 多轮(最多 6 条) |
host / port / db_name / username / password | Body JSON | db_add 时 | 公网 MySQL 连接;禁止内网/本机 |
table_name / columns | Body JSON | 同步前 | 表名与白名单列数组;仅生成 SELECT |
filters | Body JSON | 否 | 等值过滤对象,如 {"status":"1"},禁止自由 WHERE |
source_id | Body JSON | db_* 管理时 | 数据源 ID,格式 sdb_xxx |
sync_every_hours | Body JSON | 否 | 定时同步间隔小时,0 仅手动,最大 168 |
X-API-Key | Header | 是 | 你的 API Key |
这个接口是干什么的?
上传产品说明、FAQ,并可同时连接业务 MySQL。公开页 /bot/{code}:数据统计类问题走库直查,业务说明类走文档知识库;一侧答不上会自动尝试另一侧。
计费说明
- 管理操作免费:create / list / update / delete / status / docs / upload / doc_delete / db_* 不扣次
- 提问扣 1 次:API
action=ask与公开页访客提问,均扣 Bot 所属账号的 smartbot 套餐 - 公开页无需访客 API Key;额度不足时返回错误提示
典型流程
| 步骤 | Body 示例 |
|---|---|
| 1. 创建 | {"action":"create","name":"产品客服","welcome":"你好,有问题直接问我"} |
| 2. 上传文本(可选) | {"action":"upload","bot_id":"sb_xxx","title":"退货政策","content":"七天无理由……"} |
| 3. 添加 MySQL 源 | {"action":"db_add","bot_id":"sb_xxx","host":"db.example.com","db_name":"shop","username":"ro","password":"***"} |
| 4. 试问(直连查库) | {"action":"ask","bot_id":"sb_xxx","question":"有几个商户"} |
| 5. 分享 | 返回的 public_url,如 https://api.ynlskj.com.cn/bot/sbxxxxxxxxxxxx |
说明与限制
- 每账号最多 20 个 Bot;每 Bot 最多 50 份文档;单文件 ≤ 2MB
- 支持 txt / md / csv / docx / pdf(文本抽取);自动切片约 450 字
- MySQL 直连问答:仅公网;模型根据表结构生成 SELECT/WITH,服务端强制只读与 LIMIT;每 Bot ≤ 3 源
- 可选
db_sync把表数据同步进知识库作兜底;定时同步依赖队列 cron - 文档向量可走火山
doubao-embedding-vision(config 中SMARTBOT_EMBEDDING_*) - 也可在「个人中心 → 智能客服 / 知识库」可视化管理
返回说明
| 字段 | 说明 |
|---|---|
ret | ok 成功,err 失败 |
data.bot_id / code | Bot ID 与公开短码 |
data.public_url | 公开聊天页,如 /bot/sbxxxxxxxxxxxx |
data.doc_count / chunk_count / ask_count | 文档数、切片数、提问次数 |
data.answer | ask 时模型回答 |
data.sources | 命中的知识片段摘要(可在 Bot 设置关闭) |
data.bots / data.docs | list / docs 时的列表 |
data.source_id / data.sources | db_add / db_list 时的数据源 |
data.row_count / data.doc_id | db_sync 同步行数与生成的知识文档 ID |
data.tables / data.columns / data.samples | db_tables / db_columns / db_preview |
msg | 本站提示,如「次数充足,剩余 99 次」或「次数不足,剩余 0 次」 |
remain_quota | 本次调用后的剩余次数 |
可直接复制的代码
未登录时示例只显示「你的密钥」。登录后会自动填入你自己的 Key,不会展示别人的。
<?php
$ch = curl_init('https://api.ynlskj.com.cn/gateway/smartbot');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_HTTPHEADER => ['X-API-Key: 你的密钥', 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => '{
"action": "create",
"name": "产品客服",
"welcome": "你好,我是产品智能客服,有问题直接问我。"
}',
]);
echo curl_exec($ch);
请求参数演示
{"action":"create","name":"产品客服","welcome":"你好,我是产品智能客服,有问题直接问我。"}
响应演示
{"ret":"ok","data":{"action":"create","bot_id":"sb_xxxxxxxx","code":"sbxxxxxxxxxxxx","name":"产品客服","public_url":"https://api.ynlskj.com.cn/bot/sbxxxxxxxxxxxx","status":"active"}}