• 首页
    • RzenEmbed
    • FG-CLIP v2 base
  • 技术Blog
  • 关于我们
登录 免费注册
工作台

工作台

请先登录

立即登录
信息总览
API Keys 费用中心

Models

模型介绍 接口文档
模型介绍 接口文档
API 接口文档

🌟 RzenEmbed API

RzenEmbed 是一个兼容 OpenAI API 格式的多模态 Embedding 服务,支持对文本、图像、视频及图文混排的视觉文档进行深层语义特征提取,返回标准化的语义 Embedding 向量。

向量规格与灵活配置

Embedding 向量为浮点数构成的一维数组,每个浮点数对应一个语义特征维度:

  • 默认输出维度:2048 维(最优检索精度)
  • 支持按需裁剪:可选择 256/512/768/1024 维输出,仅带来极小的精度损失,大幅降低向量存储与检索算力开销
  • 支持无损量化:原生支持 int8 无损量化,可进一步压缩存储空间,且不影响检索效果

核心能力与适用场景

RzenEmbed 构建了文本、图像、视频、视觉文档统一的跨模态语义空间,所有模态生成的向量可直接互匹配,彻底打破传统单模态嵌入模型的能力边界。

RzenEmbed通过其指令遵循能力,支持用户通过指令精准引导语义聚焦,实现更贴合业务需求的同模态检索、跨模态检索及多模态混合检索,尤其适配企业级复杂知识场景:可支持中英文等多种语言检索,是构建企业级多模态 RAG 系统、智能知识库、内容推荐引擎的核心基础组件。

🚀 Request Method 请求方法

此服务支持 POST 方法,将文本和图片数据发送到服务端,然后返回 embedding 特征数据。

    # python
    import requests
    url = "https://api.research.360.cn/v1/embeddings"
    resp = requests.post(url=url,...)
    # curl
    curl -X 'POST' 'https://api.research.360.cn/v1/embeddings'

🔐 Headers 请求头

HTTP 请求头信息包含了客户端向服务器发送请求时附带的各种细节信息,帮助服务器更好地处理请求。这些头部字段多种多样,用于说明请求的各个方面,如客户端信息、请求的内容类型、缓存策略等。


🔑 Authorization

string   Required HTTPS 请求的头部信息

带有Bearer <token>形式的认证方式,其中token即您的认证令牌,用于身份验证的凭证信息。

    header = {"Authorization":"Bearer your_key",...} # python
    -H 'Authorization:Bearer your_key'  # curl

💾 accept

string   Required HTTPS 请求的头部信息

客户端能够处理的内容类型(MIME 类型)列表,用于告知服务器期望接收的数据格式,例如:application/json。

    header = {"accept": "application/json",...} # python
    -H 'accept: application/json'  # curl

📪 Content-Type

string   Required HTTPS 请求的头部信息

告知服务端,客户端发送至服务端的数据格式是某种特定格式,例如:application/json。

    header = {"Content-Type": "application/json",...} # python
    -H 'Content-Type: application/json'  # curl

🎰 Headers 完整示例

python 脚本

    header = {
        "accept": "application/json",
        "Content-Type": "application/json",
        "Authorization":"Bearer your_key"
    }

curl 命令

    curl -X 'POST' 'https://api.research.360.cn/v1/embeddings'
        -H 'accept: application/json'
        -H 'Content-Type: application/json'
        -H 'Authorization:Bearer your_key'

📥 Request Body

HTTPS 请求的 Body 部分是请求消息的可选部分,通常用于在客户端向服务器发送数据时携带实际内容。Body 的格式和内容类型由请求头中的 Content-Type 字段决定。

在本服务中,Body 是必选部分,格式为 json 格式的字符串。


1️⃣ model

string   Required

此次服务调用模型,目前只有一个模型选项:RzenEmbed。

    request_body = {"model": "RzenEmbed",...} # python

2️⃣ dimensions

int   Optional

指定传递给服务端的输出维度的选项,此值为整数类型,默认值为2048,仅支持 256,512,768,1024,1536,2048值输入。

    request_body = {"dimensions": 1024,...} # python

3️⃣ instruction

string   Optional

指令命令,为了精度和模型更好理解,请输入清晰指令,默认值为:"Represent the user's input."

    request_body = {"instruction": "Represent the user's input.",...} # python

4️⃣ texts

list of strings   Optional

对话消息,用于传递多模态输入文本内容,只允许传入一条文本。

    request_body = {"texts": ["find apples"],...} # python

5️⃣ images

list of strings   Optional

对话消息,用于传递多模态输入图片内容。只允许传入一张图片。

    # image url 输入
    request_body = {"images": ["https://xxxx.png"],...} # python

    # image base64 输入
    import os
    import base64
    def image_to_base64(image_path):
        with open(image_path, "rb") as f:
            img_data = f.read()
            base64_str = base64.b64encode(img_data).decode("utf-8")
            ext = os.path.splitext(image_path)[1].lower()
            return f"data:image/{ext[1:]};base64,{base64_str}"
    image_path = "/data/images/demo.png"
    image_base64 = image_to_base64(image_path)
    request_body = {"images": [image_base64],...} # python

6️⃣ video

list of strings   Optional

对话消息,用于传递多模态输入视频内容。只允许传入2到64张图片,格式为url或者base64图片数据。

    request_body = {"video": ["","",],...} # python

🎰 Request Body 完整示例

python 脚本

import uuid
from openai import OpenAI

client = OpenAI(base_url="https://api.research.360.cn/v1", api_key="your_key")

response = client.embeddings.create(
    model="RzenEmbed",
    input=[],
    dimensions=2048,
    extra_body={
        "request_id": str(uuid.uuid4()),
        "texts": ["two apples"],
        "instruction": "Find me an everyday image that matches the given caption:",
        "images": ["https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg"],
    },
)
print(response)

response = client.embeddings.create(
    model="RzenEmbed",
    input=[],
    dimensions=2048,
    extra_body={
        "request_id": str(uuid.uuid4()),
        "instruction": "Find me an everyday video that matches the given caption:",
        "video": [
          "https://p0.ssl.qhimg.com/d/inn/20b6511288e3/Catch_med_5/10000.jpg",
          "https://p0.ssl.qhimg.com/d/inn/20b6511288e3/Catch_med_5/10001.jpg",
          "https://p0.ssl.qhimg.com/d/inn/20b6511288e3/Catch_med_5/10002.jpg"
          ],
    },
)
print(response)

curl 命令

    curl -X 'POST' 'https://api.research.360.cn/v1/embeddings'
        -H 'accept: application/json'
        -H 'Content-Type: application/json'
        -H 'Authorization:Bearer your_key'
        -d '{
            "model": "RzenEmbed",
            "request_id":"5fe3f69f-e4df-47c9-8ceb-c5c3cbe65daf",
            "dimensions":2048,
            "instruction": "Find me an everyday image that matches the given caption:",
            "texts": ["two apples"],
            "images": ["https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg"]
            }'

    curl -X 'POST' 'https://api.research.360.cn/v1/embeddings'
        -H 'accept: application/json'
        -H 'Content-Type: application/json'
        -H 'Authorization:Bearer your_key'
        -d '{
            "model": "RzenEmbed",
            "request_id":"5fe3f69f-e4df-47c9-8ceb-c5c3cbe65daf",
            "dimensions":2048,"instruction": "Find me an everyday image that matches the given caption:",
            "video": [
                "https://p0.ssl.qhimg.com/d/inn/20b6511288e3/Catch_med_5/10000.jpg",
                "https://p0.ssl.qhimg.com/d/inn/20b6511288e3/Catch_med_5/10001.jpg"
                ]
            }'

📤 Response

✅ context


  • code int: 0 表示成功
  • messages string : "OK" 表示成功
  • timestamp long long : 时间戳
{
  "context": { "code": 0, "message": "OK", "timestamp": 1769589915 },
  "data": {
    "data": [
      {
        "embedding": [-0.07196125388145447, -0.0329570434987545, 0.0068786488845944405],
        "index": 0,
        "object": "embedding"
      }
    ],
    "model": "RzenEmbed",
    "object": "list",
    "usage": {
      "prompt_tokens": 1761,
      "total_tokens": 1761
    },
    "message": "success",
    "response_status": 0,
    "request_id": "b978be6f-151d-4758-9fdc-b25e19019801"
  }
}

✅ data

resp["data"]中的字段 data,model,object,usage参考openai embedding接口返回格式,剩余字段参考下文;


1️⃣ request_id

string

单个请求的服务标识是由 uuid4 生成的,具备唯一性。"id": "2691733a-d172-4b20-8aab-4ecfeb089141"


2️⃣ response_status

int

此次请求embedding状态码,0代表请求正常,非0表示请求失败。


3️⃣ message

string

此次请求embedding状态描述,"success"代表请求正常,非"success"表示请求失败。


🎰 Response 完整示例

{
  "context": { "code": 0, "message": "OK", "timestamp": 1769589915 },
  "data": {
    "data": [
      {
        "embedding": [-0.07196125388145447, -0.0329570434987545, 0.0068786488845944405],
        "index": 0,
        "object": "embedding"
      }
    ],
    "model": "RzenEmbed",
    "object": "list",
    "usage": {
      "prompt_tokens": 1761,
      "total_tokens": 1761
    },
    "message": "success",
    "response_status": 0,
    "request_id": "b978be6f-151d-4758-9fdc-b25e19019801"
  }
}

🔧 Image-Text-Video Similarity Calculation

在得到对应的embedding特征向量后,相似度计算,包括

  • 文本-文本相似度
  • 文本-图像相似度
  • 文本-视频相似度
  • 图像-图像相似度
  • 图像-视频相似度
  • 视频-视频相似度

都可以采用简单的余弦相似度方法进行计算

    import torch

    image_features = torch.tensor(image_embeddings["float"])
    text_features  = torch.tensor(text_embeddings["float"])

    probs = image_features @ text_features.T
    print(probs.shape)
    print("Label probs:", probs)

注意余弦相似度的值域是在[-1, +1]之间。

单条文本 Embedding
单张图像 Embedding
单个视频 Embedding
图文混合 Embedding
复制
 
Response
复制
 
360人工智能研究院 360人工智能研究院

让AI变得简单,让智能触手可及。

360人工智能研究院致力于前沿人工智能技术研发与创新。

订阅我们,了解更多资讯 RSS Blog Feed

联系我们

  • 010-52448983

    周一至周五 09:30 - 18:30

  • 北京市朝阳区酒仙桥路6号院

    电子城 · 国际电子城总部

  • 360ai@360.cn

模型开源

  • Github
  • Hugging Face

条款与政策

  • 用户协议
  • 隐私政策

Copyright©2026 360.CN All Rights Reserved 360互联网安全中心

京公网安备 11000002002063号 京ICP证080047号[京ICP备08010314号-6]