多模态内容检索接口文档

根据输入的文本、图片、视频内容进行多模态检索分析,返回标签与检索结果。

接口说明

该接口用于根据输入的文本、图片、视频内容进行多模态检索分析,返回与输入内容相关的检索结果或标签结果。

接口支持以下输入类型:

  • 文本
  • 图片
  • 视频

三种内容类型均为非必填,但请求时至少需要传入其中一种内容。

接口信息

参数名说明
接口名称多模态内容检索接口
请求方式POST
线上地址https://la-otter.inaiai.com/v1/workflows/run
测试地址https://la-raccoon.inaiai.com/workflows/run
Content-Typeapplication/json
路由分发方式Bearer Token
响应模式blocking

Header 参数

参数名类型是否必填说明
Authorizationstring是Bearer app-{API_KEY},路由分发
Content-Typestring是固定为 JSON 格式 application/json

Body 参数结构

参数名类型是否必填说明
inputsobject是工作流输入参数
response_modestring是响应模式,固定传 blocking
userstring是调用方用户标识,用于调用跟踪、成本统计和权限控制(请私聊)

inputs 参数

参数名类型是否必填说明
queryobject是检索输入内容
tag_typestring是标签/检索类型,支持标签分类:av、novel、comics、post

query 参数

参数名类型是否必填说明
textsarray否文本内容数组
imagesarray否图片 URL 数组
videoarray否视频 URL 数组

texts、images、video 均为非必填

三者至少需要传入一个

如果三者均为空或未传,接口应返回参数错误

图片、视频需传入可公网访问的 URL

视频当前支持传入视频文件地址或 m3u8 地址,具体以工作流处理能力为准

texts 参数

参数名类型是否必填说明
textstring是文本内容
weightnumber否文本权重,用于影响检索匹配强度
json
[
  {
    "text": "内容标题或描述文本",
    "weight": 1.0
  }
]

text 为空字符串时,建议不传该条数据

weight 不传时,可由服务端使用默认权重

多条文本可用于标题、正文、标签、用户描述等不同来源内容

请求示例

bash
curl -X POST 'https://la-raccoon.inaiai.com/v1/workflows/run' \
  -H 'Authorization: Bearer {API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
    "inputs": {
      "query": {
        "texts": [
          {
            "text": "内容标题或描述文本",
            "weight": 1.0
          }
        ],
        "images": [
          "https://example.com/image-1.jpg",
          "https://example.com/image-2.jpg"
        ],
        "video": [
          "https://example.com/video.m3u8"
        ]
      },
      "tag_type": "av"
    },
    "response_mode": "blocking",
    "user": "business-user-id"
  }'

参数校验规则

参数名类型是否必填说明
内容输入校验—否texts、images、video 至少传入一个
文本校验—否texts 中的 text 不建议为空
图片校验—否images 中的 URL 需可访问
视频校验—否video 中的 URL 需可访问
鉴权校验—否Header 中必须携带有效 Bearer Token
用户标识校验—否user 必须传入,用于业务方识别和成本统计
标签类型校验—否成人内容检索场景固定传 av

返回结果

接口使用 Dify workflow blocking 模式,调用成功后会同步返回工作流执行结果。返回结构以工作流实际配置为准,通常包含:

参数路径类型说明
workflow_run_idstring工作流运行 ID
task_idstring任务 ID
dataobject工作流执行结果
data.statusstring执行状态
data.outputsobject检索结果
data.elapsed_timenumber执行耗时
data.total_tokensnumbertoken 消耗

异常情况

参数路径类型说明
未传 Authorization鉴权失败—
API Key 无效鉴权失败—
texts、images、video 均为空参数错误—
图片 URL 无法访问图片处理失败或结果为空—
视频 URL 无法访问视频处理失败或结果为空—
工作流执行超时返回执行失败或超时信息—
模型调用失败返回模型处理异常—

接入注意事项

  • user 字段必须按业务方规范传入,不能使用自己定义的,比如 abc-123
  • 图片和视频地址需要保证服务端可访问
  • 不建议一次传入过多图片或超长视频,可能影响响应速度和成本
  • 成人内容检索场景下,tag_type 固定传 av
  • 生产环境中不要在前端暴露 API Key,应由服务端代理调用