DataForSEO
SEO, search-engine results, keyword research, backlinks and AI visibility data.
实时 Perplexity LLM 响应
向 Perplexity 模型发送 user_prompt 并同步返回其回复。model_name 必须来自 get_dataforseo_ai_perplexity_llm_responses_models——sonar、sonar-pro 和 sonar-reasoning-pro。web_search_country_iso_code 可限定搜索范围,其他三家供应商不提供此功能。返回 model_name、input_tokens、output_tokens、reasoning_tokens、web_search、money_spent、datetime、items 和 fan_out_queries。读取响应中的 money_spent 即可知道一次提示词的实际成本。采用 DataForSEO 的信封结构:数据位于 tasks[0].result,结果状态位于 tasks[0].status_code——被拒绝的请求仍会返回 HTTP 200。
计费参考
- 计量方式:按上报的响应成本计量。
- 参考请求估算:0.0163 美元。
- 参考客户倍率:1.0。不得对已结算的客户金额再次应用。
仅供参考的元数据,不是账户报价、保证价格或消费上限。资源额度不同于 Felo 额度。最终扣费以 Felo 计费记录为准。
- 类型: array (object | null)[]
- max类型: integer | null
_output _tokens AI 响应中的最大 token 数
可选字段
最小值:1
最大值:4096;
默认值:2048;
注意:如果请求中指定的是推理模型,输出 token 数可能超过指定的max_output_tokens上限 - message类型: array (object | null)[] | null
_chain 对话历史 可选字段 表示此前对话轮次的消息对象数组; 每个对象必须包含: role 字符串,值为 user 或 ai 角色; message 字符串,包含消息内容(最多 500 个字符); 数组中最多可指定 10 个消息对象; 注意:对于 Perplexity 模型,消息必须严格在 user 与 AI 角色之间交替(user → ai); 示例: "message_chain": [{"role":"user","message":"Hello, what’s up?"},{"role":"ai","message":"Hello! I’m doing well, thank you. How can I assist you today?"}]
- message类型: string | null
消息文本
- role类型: string | null
消息来源用户的角色
- model类型: string
_name AI 模型名称
必填字段model_name由实际模型名称和版本名称组成;
如果只指定基础模型名称,将默认设置其最新版本;
可单独向以下端点发起请求,获取可用 LLM 模型列表:https://api.dataforseo.com/v3/ai_optimization/perplexity/llm_responses/models - system类型: string | null
_message AI 行为指令
可选字段
定义 AI 的角色、语气或特定行为
在system_message字段中最多可指定 500 个字符 - tag类型: string | null
用户自定义任务标识符
可选字段
字符数上限为 255
可使用此参数标识任务,并将其与结果对应
可在响应的data对象中找到指定的tag值 - temperature类型: number | null
AI 响应的随机性
可选字段
值越高,输出越多样
值越低,输出越集中
最小值:0
最大值:1.9
默认值:0.77 - top类型: number | null
_p AI 响应的多样性
可选字段
通过限制 token 选择来控制响应的多样性
最小值:0
最大值:1
默认值:0.9 - user类型: string
_prompt AI 模型的提示词
必填字段
要发送给 AI 模型的问题或任务;
在user_prompt字段中最多可指定 500 个字符 - web类型: string | null
_search _country _iso _code 用于网络搜索本地化的国家代码
可选字段
指定国家 ISO 代码以获取本地化的网络搜索结果
注意:仅适用于 Perplexity Sonar 模型
示例:US
- 类型: object | null · Response36Afe1097B20_AiOptimizationPerplexityLlmResponsesLiveResponseInfo200
- 类型: number | null 格式: doublecost
任务总费用,美元
- 类型: integer | nullstatus
_code 通用状态码 完整响应码列表见此处
- 类型: string | nullstatus
_message 通用信息性消息 完整的一般信息性消息列表见此处
- 类型: array (object | null)[] | nulltasks
任务数组
- 类型: object | null · Response36Afe1097B20_AiOptimizationPerplexityLlmResponsesLiveTaskInfo
- cost类型: number | null 格式: double
任务总费用,美元
- data类型: object | null
包含你在 POST 请求中指定的相同参数
- property类型: object | null
Name
- id类型: string | null
任务标识符 我们系统中 UUID 格式的唯一任务标识符
- path类型: array (string | null)[] | null
URL 路径
- result类型: array (object | null)[] | null
结果数组
- datetime类型: string | null
收到结果的日期和时间
采用 UTC 格式:“yyyy-mm-dd hh-mm-ss +00:00”
示例:2019-11-15 12:57:46 +00:00 - fan类型: object | null
_out _queries 扇出查询数组
包含从主查询派生出的相关搜索查询,以提供更全面的回答 - input类型: integer | null
_tokens 输入中的 token 数
处理的 token 总数 - items类型: array (object | null)[] | null
响应条目数组
包含结构化的 AI 响应数据- 类型: object | null · Response36Afe1097B20_MessageAiOptimizationLlmResponseElementItem
- 类型: object · Response36Afe1097B20_MessageAiOptimizationLlmResponseElementItem
- type鉴别器类型: string | null
元素类型
- sections类型: array (object | null)[] | null
推理链章节
包含 LLM 生成的推理链章节的对象数组- annotations类型: array (object | null)[] | null
用于生成响应的引用数组
如果web_search参数未设为true,则为null
注意:即使web_search为true,annotations也可能返回空,因为 AI 会尝试检索网络信息,但可能找不到相关结果- direct类型: string | null
_url 引用来源的直接 URL
包含url字段中的 Vertex AI 重定向所指向的原始来源 URL - end类型: integer | null
_index 注释索引的结束位置
- start类型: integer | null
_index 注释索引的起始位置
- text类型: string | null
推理链章节的文本
概述模型思考过程的推理链章节文本 - title类型: string | null
引用来源的域名或标题
- url类型: string | null
指向引用来源的重定向 URL
包含指向原始来源的 Vertex AI 重定向
- text类型: string | null
推理链章节的文本
概述模型思考过程的推理链章节文本 - type类型: string | null
元素类型
- model类型: string | null
_name 所用 AI 模型的名称
- money类型: number | null
_spent - output类型: integer | null
_tokens 输出中的 token 数
AI 响应中生成的 token 总数 - reasoning类型: integer | null
_tokens Integer numbers.
- web类型: boolean | null
_search 表示是否使用了网络搜索
注意:在 Perplexity Sonar 模型中,网络搜索默认启用
- result类型: integer | null 格式: int64
_count result 数组中的元素数
- status类型: integer | null
_code 任务的状态码 由 DataForSEO 生成,范围如下:10000-60000 完整响应码列表见此处
- status类型: string | null
_message 任务的信息性消息 完整的一般信息性消息列表见此处
- time类型: string | null
执行时间,秒
- 类型: integer | null 格式: int64tasks
_count tasks 数组中的任务数
- 类型: integer | null 格式: int64tasks
_error tasks 数组中返回错误的任务数
- 类型: string | nulltime
总执行时间,秒
- 类型: string | nullversion
API 的当前版本
application/json - 400
无法处理该请求。请检查请求参数。
- 401
需要有效的 Felo API 密钥。
- 402
由于未满足计费要求,请求无法继续。
- 403
该账户无权执行此操作。
- 429
已达到请求或支出限额。
- 502
服务无法完成该请求。
- 503
API 或计费服务暂时不可用。
- 504
服务在处理请求时超时。
- default
错误响应;上游透传响应可能采用提供方格式
application/json
curl https://openapi.felo.ai/v1/beta/dataforseo/ai_optimization/perplexity/llm_responses/live \
--request POST \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN' \
--data '[
{
"system_message": "communicate as if we are in a business meeting",
"message_chain": [
{
"role": "user",
"message": "Hello, what’s up?"
},
{
"role": "ai",
"message": "Hello! I’m doing well, thank you. How can I assist you today? Are there any specific topics or projects you’d like to discuss in our meeting?"
}
],
"max_output_tokens": 200,
"temperature": 0.3,
"top_p": 0.5,
"web_search_country_iso_code": "FR",
"model_name": "sonar",
"user_prompt": "provide information on how relevant the amusement park business is in France now"
}
]'
{
"version": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"tasks_count": null,
"tasks_error": null,
"tasks": [
{
"id": null,
"status_code": null,
"status_message": null,
"time": null,
"cost": null,
"result_count": null,
"path": [
null
],
"data": null,
"result": [
{
"model_name": null,
"input_tokens": null,
"output_tokens": null,
"reasoning_tokens": null,
"web_search": null,
"money_spent": null,
"datetime": null,
"items": [
{
"type": "[Max Depth Exceeded]",
"sections": "[Max Depth Exceeded]"
}
],
"fan_out_queries": null
}
]
}
]
}