Skip to content

API 文档

Version 1.0.6

API 主域名: https://api.datam.site

更新日期:2025 年 1 月 19 日

提醒

目前知识库仍处于早期开发阶段,API 的地址以及各类参数均有可能发生变动,请及时关注本页面获取最新文档!

技术细节

目前采用了 o1-minideepseekv3 以及 gpt4o-mini 等先进模型,后续会陆续跟进更多高性价比模型,并提供更多的模型拓展能力。

更新日志
  • ver 1.0.6 - 2025 年 1 月 19 日

    上架gpt-4o-mini模型和claude3.5sonnet模型。

  • ver 1.0.5 - 2025 年 1 月 18 日

    模型正式上线倍率表,按照倍率表来为不同模型计价。

  • ver 1.0.4 - 2025 年 1 月 18 日

    添加余额查询API。

  • ver 1.0.3 - 2025 年 1 月 13 日

    重构 API 后端,更符合编程规范,添加实时联网搜索功能。

  • ver 1.0.2 - 2025 年 1 月 12 日

    上架 o1-mini 模型,思考时间更长,对推理等复杂任务效果更好。

  • ver 1.0.1 - 2025 年 1 月 11 日

    更新支持模型自主选择,添加 model 参数,上架 gpt-4o 模型,更新示例。

  • ver 1.0.0 - 2025 年 1 月 9 日

    初始版本 API 文档上线。

知识库查询

超时限制

由于模型使用 RAG+LLM 驱动,数据的处理时间比传统数据库要长,因此请设定超时时间为30s 及以上,避免产生额外的问题。

请求方式

POST

请求 URL

https://api.datam.site/search

请求体格式

JSON

请求体参数

注意

query 的题目需包含完整的题目以及选项等内容,同时尽可能包含【选择题】【判断题】【xx 题】等类型标签来辅助模型进行判断。换行符等特殊字符需使用代码进行自动转义。

参数名类型是否必填长度限制描述
queryString1000用户提交的查询,例如选择题、填空题等。
tokenString-用于验证用户身份的令牌。
modelString-模型的名称,参考下面模型支持列表,不填默认 deepseekv3。
searchBoolean-是否开启联网搜索功能,默认关闭。

模型支持列表

倍率说明

不同模型有着不同的倍率,倍率指的是花费的查询次数,默认为 1.0 倍率,即1 点查询次数

倍率表会随着各大模型的官方价格变更而产生变动,请及时关注!

模型名称请求参数倍率描述
deepseekv3deepseekv31.0默认模型,对大部分问题有着优异的解答逻辑。
gpt-4ogpt-4o1.0面对非中文场景效果更好。
o1-minio1-mini2.0自带推导思维链,响应时间更长,对于复杂的逻辑推理题效果更好。
gpt-4o-minigpt-4o-mini1.04o模型的简化版本,推理速度更快,可以做到秒级返回结果。
claude3.5 sonnetclaude-3-5-sonnet-latest1.0(限时特价)Claude家族的最新模型,能力出众。

请求体示例

json
{
    "query": "2、【选择题】Sam__________the gift of imagination from his family,but he lacked the driving power to take action.\nA:instilled\nB:imported\nC:impacted\nD:inherited",
    "token": "test123",
    "model": "deepseekv3",
    "search": false
}

响应格式

JSON

响应参数

参数名类型必定返回描述
successBoolean请求状态返回,true 为成功,false 为失败。
dataArray[]请求返回的数据,具体的返回参数查看下面的表格。
errorString当题库返回失败时给出失败原因,默认为空。

data 参数表

注意

目前版本 score 分数的计算方式存在问题,仅作为参考使用,请勿在正式发布的版本中直接应用该分数以免导致出现问题。

参数名类型必定返回描述
typeNumber用户提交的查询的问题分类,1 为选择题,2 为填空题,3 为判断题,0 为其他。
fillString如果题目为填空题,则这里返回填空题的答案。
chooseArray[String]如果题目为选择题,则这里返回选择题的正确选项,如[A,B,C]以及[A]等。
judgeNumber如果题目为判断题,则这里返回判断题的答案,0 为错,1 为对。
othersString如果题目为其他类型,则这里返回其他类型题目的答案。
scoreNumber返回模型对该问题答案的置信分数,范围为【0-1】。

响应示例

json
{
    "data": {
        "choose": [
            "A"
        ],
        "fill": "",
        "judge": 0,
        "others": "",
        "score": 0.9,
        "type": 1
    },
    "error": "",
    "success": true
}

流量限制

目前每个token的每秒钟请求数限制为 5 次,超过限制后,会返回 429 错误码,请稍后再试。

错误码说明

错误码描述
400 Bad Request请求体格式错误,例如缺少必填参数或参数类型错误。
401 Unauthorized身份验证失败,通常是 token 无效或过期。
429 Too Many Requests请求次数太多,请稍后重试。
500 Internal Server Error服务器内部错误,请稍后重试或联系管理员。

使用示例

Curl 示例

bash
curl -X POST https://api.datam.site/search \
-H "Content-Type: application/json" \
-d '{
    "query": "2、【选择题】Sam__________thegiftofimaginationfromhisfamily,buthelackedthedrivingpowertotakeaction.A:instilledB:importedC:impactedD:inherited",
    "token": "test123",
    "model": "deepseekv3"
}'

Python 示例

python
import requests

url = 'https://api.datam.site/search'
payload = {
    "query": "2、【选择题】Sam__________thegiftofimaginationfromhisfamily,buthelackedthedrivingpowertotakeaction.A:instilledB:importedC:impactedD:inherited",
    "token": "test123",
    "model": "deepseekv3"
}
headers = {
    'Content-Type': 'application/json',
}

response = requests.post(url, headers=headers, json=payload)

if response.status_code == 200:
    data = response.json()
    print(data)
else:
    print(f"Error: {response.status_code} - {response.text}")

JavaScript (Fetch API) 示例

js
fetch('https://api.datam.site/search', {
    method: 'POST',
    headers: {
        'Content-Type': 'application/json',
    },
    body: JSON.stringify({
        "query": "2、【选择题】Sam__________thegiftofimaginationfromhisfamily,buthelackedthedrivingpowertotakeaction.A:instilledB:importedC:impactedD:inherited",
        "token": "test123",
        "model": "deepseekv3"
    }),
})
.then(response => response.json())
.then(data => {
    console.log(data);
})
.catch(error => {
    console.error('Error:', error);
});

Token信息查询

余额查询

点此进入查询页面

请求方式

POST

请求 URL

https://api.datam.site/balance

请求体格式

JSON

请求体参数

参数名类型是否必填长度限制描述
tokenString-用于验证用户身份的令牌。

响应示例

json
{
  "data": {
    "balance": 889
  },
  "error": "",
  "success": true
}

最终解释权归 datam.site 所有.