日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

API詳情

前言

ONE-PEACE是一個圖文音三模態(tài)通用表征模型,在語義分割、音文檢索、音頻分類和視覺定位幾個任務(wù)都達到了新SOTA表現(xiàn),在視頻分類、圖像分類圖文檢索、以及多模態(tài)經(jīng)典benchmark也都取得了比較領(lǐng)先的結(jié)果。 另外,模型展現(xiàn)出來新的zeroshot能力,即實現(xiàn)了新的模態(tài)對齊,比如音頻和圖像的對齊,或者音頻+文字和圖像的對齊,而這類數(shù)據(jù)并沒有出現(xiàn)在我們的預(yù)訓(xùn)練數(shù)據(jù)集里。

下面這張圖展示了ONE-PEACE的模型架構(gòu)和預(yù)訓(xùn)練任務(wù)。借助于擴展友好的架構(gòu)和模態(tài)無關(guān)的任務(wù),ONE-PEACE具備擴展到無限模態(tài)的潛力

image.png

作為一個4B規(guī)模的通用表征模型,ONE-PEACE在一系列視覺、語音和多模態(tài)任務(wù)上取得領(lǐng)先的結(jié)果。 此外,ONE-PEACE還具備強大的多模態(tài)檢索能力,能夠完成圖文音三模態(tài)之間的互相檢索。如下圖所示,我們通過case展示了ONE-PEACE的音搜圖,音+圖搜圖,以及音+文搜圖的能力。

image.png

模型局限:模型主要使用開源的英文數(shù)據(jù)進行訓(xùn)練,因此中文的表征能力可能不太理想

模型概覽

模型中文名

模型英文名

數(shù)據(jù)類型

向量維度

ONE-PEACE通用表征模型

multimodal-embedding-one-peace-v1

float(32)

1536

SDK使用

前提條件

調(diào)用示例

說明

需要使用您的API-KEY替換示例中的 YOUR_DASHSCOPE_API_KEY,代碼才能正常運行。

設(shè)置API-KEY

 export DASHSCOPE_API_KEY=YOUR_DASHSCOPE_API_KEY

代碼示例

生成圖片embedding示例

單獨輸入1張圖片

    from dashscope import MultiModalEmbedding
    
    
    def image_embedding():
        input = [{'image': 'https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png'},
                 ]
        result = MultiModalEmbedding.call(model=MultiModalEmbedding.Models.multimodal_embedding_one_peace_v1,
                                          input=input,
                                          auto_truncation=True)
        print(result)
    
    
    if __name__ == '__main__':
        image_embedding()
    
    // Copyright (c) Alibaba, Inc. and its affiliates.
    
    import com.alibaba.dashscope.embeddings.MultiModalEmbedding;
    import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemImage;
    import com.alibaba.dashscope.embeddings.MultiModalEmbeddingParam;
    import com.alibaba.dashscope.embeddings.MultiModalEmbeddingResult;
    import com.alibaba.dashscope.exception.ApiException;
    import com.alibaba.dashscope.exception.NoApiKeyException;
    import com.alibaba.dashscope.exception.UploadFileException;
    
    import java.util.Arrays;
    
    
    public class Main {
      public static void imageEmbedding() throws ApiException, NoApiKeyException, UploadFileException {
        MultiModalEmbedding embedding = new MultiModalEmbedding();
        MultiModalEmbeddingItemImage image =
            new MultiModalEmbeddingItemImage(
                "https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png");    
        MultiModalEmbeddingParam param =
            MultiModalEmbeddingParam.builder()
                .model(MultiModalEmbedding.Models.MULTIMODAL_EMBEDDING_ONE_PEACE_V1)
                .contents(Arrays.asList(image))
                .build();
        MultiModalEmbeddingResult result = embedding.call(param);
        System.out.print(result);
      }
    
    
      public static void main(String[] args){
          try {
            imageEmbedding();
          } catch (ApiException | NoApiKeyException | UploadFileException e) {
            System.out.println(e.getMessage());
          }
          System.exit(0);
      }
    }
    
    
    
    

圖片&語音embedding示例

結(jié)合圖片和語音,生成Embedding。

from dashscope import MultiModalEmbedding


def image_audio_embedding():
    input = [{'audio': 'https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac'},
             {'image': 'https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png'}]
    result = MultiModalEmbedding.call(model=MultiModalEmbedding.Models.multimodal_embedding_one_peace_v1,
                                      input=input,
                                      auto_truncation=True)
    print(result)


if __name__ == '__main__':
    image_audio_embedding()
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.embeddings.MultiModalEmbedding;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemAudio;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemImage;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingParam;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;

import java.util.Arrays;


public class Main {
  public static void imageAndAudioEmbedding() throws ApiException, NoApiKeyException, UploadFileException {
    MultiModalEmbedding embedding = new MultiModalEmbedding();
    MultiModalEmbeddingItemImage image =
        new MultiModalEmbeddingItemImage(
            "https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png");

    MultiModalEmbeddingItemAudio audio = new MultiModalEmbeddingItemAudio("https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac");
    
    MultiModalEmbeddingParam param =
        MultiModalEmbeddingParam.builder()
            .model(MultiModalEmbedding.Models.MULTIMODAL_EMBEDDING_ONE_PEACE_V1)
            .contents(Arrays.asList(audio, image))
            .build();
    MultiModalEmbeddingResult result = embedding.call(param);
    System.out.print(result);
  }


  public static void main(String[] args){
      try {
        imageAndAudioEmbedding();
      } catch (ApiException | NoApiKeyException | UploadFileException e) {
        System.out.println(e.getMessage());
      }
      System.exit(0);
  }
}

多模態(tài)混合embedding示例

如果您需要混合使用多種模態(tài)的數(shù)據(jù)來產(chǎn)生多模態(tài)的向量表征Embedding,也可以通過配置多種模態(tài)數(shù)據(jù),并在必要的時候配置不同的表征權(quán)重,來生成綜合向量Embedding。 這里示例為文本,圖像和語音的混合模態(tài)示例,并且對于每個item都配置了不同的權(quán)重。值得注意的是,每條item中權(quán)重的數(shù)值均可單獨配置,不填寫時默認為1。

from dashscope import MultiModalEmbedding


def multimodal_with_factor_embedding():
    input = [{'factor': 1, 'text': '你好'},
             {'factor': 2, 'audio': 'https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac'},
             {'factor': 3, 'image': 'https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png'}]
    result = MultiModalEmbedding.call(model=MultiModalEmbedding.Models.multimodal_embedding_one_peace_v1,
                                      input=input,
                                      auto_truncation=True)
    print(result)


if __name__ == '__main__':
    multimodal_with_factor_embedding()
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.embeddings.MultiModalEmbedding;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemAudio;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemImage;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemText;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingParam;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;

import java.util.Arrays;

public class Main {
  public static void multiModalWithFactorEmbedding() throws ApiException, NoApiKeyException, UploadFileException {
    MultiModalEmbedding embedding = new MultiModalEmbedding();
    MultiModalEmbeddingItemText text =
        MultiModalEmbeddingItemText.builder()
            .text("冬雪")
            .factor(2.0)
            .build();
    MultiModalEmbeddingItemImage image =
        new MultiModalEmbeddingItemImage(
            "https://dashscope.oss-cn-beijing.aliyuncs.com/images/256_1.png",
            1.0);

    MultiModalEmbeddingItemAudio audio = 
    new MultiModalEmbeddingItemAudio("https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac",
    1.0);
    
    MultiModalEmbeddingParam param =
        MultiModalEmbeddingParam.builder()
            .model(MultiModalEmbedding.Models.MULTIMODAL_EMBEDDING_ONE_PEACE_V1)
            .contents(Arrays.asList(audio, image, text))
            .build();
    MultiModalEmbeddingResult result = embedding.call(param);
    System.out.print(result);
  }

  public static void main(String[] args){
      try {
        multiModalWithFactorEmbedding();
      } catch (ApiException | NoApiKeyException | UploadFileException e) {
        System.out.println(e.getMessage());
      }
      System.exit(0);
  }
}

本地文件調(diào)用

您也可以通過本地文件調(diào)用接口,示例如下,您需要按照示例所示文件路徑格式輸入。

from dashscope import MultiModalEmbedding


def call_with_local_file():
    """Sample of use local file.
       linux&mac file format: file:///home/images/test.png
       windows file format: file://D:/images/abc.png
    """
    # file path must absolute path
    input = [{'image': 'file://absolute_local_path'},
             {'image': 'file://absolute_local_path2'}]
    result = MultiModalEmbedding.call(
        model=MultiModalEmbedding.Models.
        multimodal_embedding_one_peace_v1,
        input=input,
        auto_truncation=True)
    print(result)


if __name__ == '__main__':
    call_with_local_file()
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.embeddings.MultiModalEmbedding;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemImage;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingItemText;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingParam;
import com.alibaba.dashscope.embeddings.MultiModalEmbeddingResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.exception.UploadFileException;
import java.util.Arrays;

public class Main {
  /*
   * sample of use local file
   * Windows file format: file:///D:/test/images/test.png
   * Linux & Mac format: file://The_absolute_local_path
   * 
   */

  public static void callWithLocalFile() throws ApiException, NoApiKeyException, UploadFileException {
    MultiModalEmbedding embedding = new MultiModalEmbedding();
    MultiModalEmbeddingItemText text = MultiModalEmbeddingItemText.builder().text("冬雪").build();
    String localFilePath = "file:///home/tests/image.png";
    String localFilePath2 = "file:///home/tests/image.png";
    MultiModalEmbeddingItemImage image = new MultiModalEmbeddingItemImage(localFilePath);
    MultiModalEmbeddingItemImage image2 = new MultiModalEmbeddingItemImage(localFilePath2);
    MultiModalEmbeddingParam param = MultiModalEmbeddingParam.builder()
        .model(MultiModalEmbedding.Models.MULTIMODAL_EMBEDDING_ONE_PEACE_V1)
        .contents(Arrays.asList(image, image2, text))
        .build();
    MultiModalEmbeddingResult result = embedding.call(param);
    System.out.print(result);
  }

  public static void main(String[] args) {
    try {
      callWithLocalFile();
    } catch (ApiException | NoApiKeyException | UploadFileException e) {
      System.out.println(e.getMessage());
    }
    System.exit(0);
  }
}

輸出示例

{
    "status_code": 200,
    "request_id": "the_request_Id",
    "code": "",
    "message": "",
    "output": {
        "embedding": [
            -0.0200169887393713,
            0.041749317198991776
            ... ...
        ]
    },
    "usage": {
        "image": {
            "measure": 1,
            "weight": 1
        },
        "total_usage": 4,
        "audio": {
            "measure": 1,
            "weight": 2
        },
        "text": {
            "measure": 1,
            "weight": 1
        }
    }
}

參數(shù)詳解

  1. 請求參數(shù)

    參數(shù)名稱

    必選

    示例值

    描述

    model

    multimodal-embedding-one-peace-v1

    • 取值:該值是固定值,無需更改

    • 說明:代表模型的英文名稱

    input

    [{'factor': 1, 'text': '你好'}, {'factor': 2, 'audio': 'https://data-generator-idst.oss-cn-shanghai.aliyuncs.com/dashscope/image/multi_embedding/audio/cow.flac'},

    {'factor': 3, 'image': 'https://data-generator-idst.oss-cn-shanghai.aliyuncs.com/dashscope/image/multi_embedding/image/256_1.png'}]

    • 取值:為多模態(tài)輸入列表,目前支持三種模態(tài),格式為

    {"模態(tài)": "輸入字符串或圖像音頻url", "factor": "數(shù)值,該部分權(quán)重"}

    模態(tài)對應(yīng)[text|image|audio]

    • image

    圖像格式目前支持:bmp, jpg, jpeg, png 和 tiff;文件大小不超過5M。

    • audio

    • 當(dāng)前支持最大音頻時長為15s,超出該時長的音頻內(nèi)容在 auto-truncation 功能打開的情況下會被截斷繼續(xù)計算向量,auto-truncation 功能關(guān)閉的時候本次請求會報錯返回;語音格式目前支持 wav, mp3 和 flac;文件大小不超過5M。

    • text

    當(dāng)前支持最大文本長度為70 字,超出該長度的文本內(nèi)容在 auto-truncation 功能打開的情況下會被截斷繼續(xù)計算向量,auto-truncation 功能關(guān)閉的時候本次請求會報錯返回;

    auto_truncation

    自動截斷

    • 取值:true|false

    • 是否自動截斷輸入種過長的文本(70字符),如果為否,則輸入過長,結(jié)果會報錯,否則截斷字符串,返回embedding,默認為false,過長輸入會報錯。

    • 默認為false

  2. 響應(yīng)參數(shù)

    字段

    類型

    描述

    示例值

    status_code

    Integer

    本次結(jié)果http相應(yīng)碼,200對應(yīng)請求成功。

    code

    String

    請求失敗,為簡短錯誤碼。

    message

    String

    詳細錯誤信息。

    output.embedding

    Array

    本次請求的算法輸出內(nèi)容,是一個由結(jié)構(gòu)組成的數(shù)組,每一個數(shù)組中包含一個對應(yīng)的輸入內(nèi)容的算法向量表征輸出內(nèi)容.java sdk統(tǒng)一轉(zhuǎn)換為Double,參考模型輸出類型,進行比較的數(shù)據(jù)類型轉(zhuǎn)換。

    "embedding": [

    -0.006929283495992422,

    -0.005336422007530928,

    ... 省略

    ]

    usage.[text|image|audio]

    dict

    對應(yīng)各模態(tài)計量信息。

    12

    usage.weight

    Integer

    計量權(quán)重,計算規(guī)則,total_usage=text.measure*text.weight + audio.measure*audio.weight + image.measure*image.weight

    usage.total_usage

    Integer

    對應(yīng)總的計量信息

    request_id

    String

    本次請求的系統(tǒng)唯一碼

    7574ee8f-38a3-4b1e-9280-11c33ab46e51

HTTP調(diào)用

說明

本模型還可通過HTTP的方式進行調(diào)用,以適用更靈活的業(yè)務(wù)開發(fā),下面是HTTP同步調(diào)用接口的接口詳情。

作業(yè)提交接口調(diào)用

POST https://dashscope.aliyuncs.com/api/v1/services/embeddings/multimodal-embedding/multimodal-embedding

參數(shù)詳解

請求參數(shù)

傳參方式

字段

類型

必選

描述

示例值

Header

Content-Type

String

請求類型:application/json 或者text/event-stream(開啟 SSE 響應(yīng))

application/json

Authorization

String

API-Key,例如:Bearer d1**2a

Bearer d1**2a

Body

model

String

指明需要調(diào)用的模型,此處使用multimodal-embedding-one-peace-v1

multimodal-embedding-one-peace-v1

input.contents[list]

Array

contents 列表中包含本次需要進行向量計算的所有內(nèi)容列表,每一個列表可以分別是圖像(image),文本(text)或者音頻(audio)。

哪個公園距離我更近

input.contents[x].image

String

至少包含一項,可以包含多項并重復(fù)

本次需要進行向量計算中的圖像內(nèi)容的 url 鏈接;算法內(nèi)部會將每張圖像縮放為256x256分辨率。圖像格式目前支持:bmp, jpg, jpeg, png 和 tiff;文件大小不超過5M。

"contents": [

{ "image": "http://a/a.jpg",

"factor": "5.0" },

{ "text": "公園",

"factor": "0.5" },

{ "audio": "http://b/b.wav"}

]

input.contents[x].audio

String

本次需要進行向量計算中的音頻內(nèi)容的 url 鏈接;當(dāng)前支持最大音頻時長為15s,超出該時長的音頻內(nèi)容在 auto-truncation 功能打開的情況下會被截斷繼續(xù)計算向量,auto-truncation 功能關(guān)閉的時候本次請求會報錯返回;語音格式目前支持 wav, mp3 和 flac;文件大小不超過5M。

input.contents[x].text

String

本次需要進行向量計算中的文本內(nèi)容;當(dāng)前支持最大文本長度為70 字,超出該長度的文本內(nèi)容在 auto-truncation 功能打開的情況下會被截斷繼續(xù)計算向量,auto-truncation 功能關(guān)閉的時候本次請求會報錯返回;

input.contents[x].factor

Float

本條多模態(tài)信息的權(quán)重系數(shù),必須為大于 0 的正浮點數(shù),如果不設(shè)置默認為1.0,整體按照加權(quán)平均計算

parameters.auto_truncation

Bool

在輸入的音頻內(nèi)容超過 15 秒或者文字內(nèi)容超出 70 字的情況下,是截斷輸入音頻或者文字繼續(xù)計算向量,還是終止計算報錯返回。默認為 false: 過長的輸入會導(dǎo)致請求報錯。

"parameters": {

"auto_truncation": true

}

響應(yīng)參數(shù)

字段

類型

描述

示例值

output.embedding[]

Array

本次請求的算法輸出內(nèi)容。

[-0.006929283495992422,-0.005336422007530928, ...]

usage.audio.measure

Integer

本次請求輸入語音的計量條數(shù)。

"usage":{

"audio":{

"measure":1,

"weight":2

},

"image":{

"measure":1,

"weight":1

},

"text":{

"measure":1,

"weight":1

},

"total_usage":4

}

usage.audio.weight

Integer

本次請求輸入語音的計量權(quán)重。

usage.image.measure

Integer

本次請求輸入圖像的計量條數(shù)。

usage.image.weight

Integer

本次請求輸入圖像的計量權(quán)重。

usage.text.measure

Integer

本次請求輸入文本的計量條數(shù)。

usage.text.weight

Integer

本次請求輸入文本的計量權(quán)重。

usage.total_usage

Integer

本次請求語音、圖像和文本加權(quán)計量后的總計消耗值。

request_id

String

本次請求的系統(tǒng)唯一碼

7574ee8f-38a3-4b1e-9280-11c33ab46e51

Curl示例

curl --location 'https://dashscope.aliyuncs.com/api/v1/services/embeddings/multimodal-embedding/multimodal-embedding' \
--header 'Authorization: Bearer <your_api_key>' \
--header 'Content-Type: application/json' \
--data '{
    "model": "multimodal-embedding-one-peace-v1",
    "input": {
        "contents": [ 
             {
                 "image": "https://dashscope.oss-cn-beijing.aliyuncs.com/images/the_starry_night.jpg", 
                 "factor": "5" 
              },
              {
                 "text": "what is your name",
                  "factor": "0.5"
              },
              {
                 "audio": "https://dashscope.oss-cn-beijing.aliyuncs.com/audios/cow.flac"
              }
        ]
    },
    "parameters": {
    		"auto_truncation": true
    }
}'

響應(yīng)示例

調(diào)用成功示例

{
    "output":{
        "embedding": [-0.006929283495992422,-0.005336422007530928, ...]
    },
    "usage": {
        "audio": {
            "measure":1, #音頻條數(shù)
            "weight":2   #音頻權(quán)重
        },
        "image": {
            "measure":1, #圖像張數(shù)
            "weight":1   #圖像權(quán)重
        },
        "text": {
            "measure":1, #文本條數(shù)
            "weight":1   #文本權(quán)重
        },
        "total_usage":4  #加權(quán)消耗總數(shù): 音頻(1*2) + 圖像(1*1) + 文本(1*1) = 4
      }
    }
    "request_id":"d89c06fb-46a1-47b6-acb9-bfb17f814969"
}

調(diào)用異常示例

在訪問請求出錯的情況下,輸出的結(jié)果中會通過 code 和 message 指明出錯原因。

{
    "code":"InvalidApiKey",
    "message":"Invalid API-key provided.",
    "request_id":"fb53c4ec-1c12-4fc4-a580-cdb7c3261fc1"
}

狀態(tài)碼說明

DashScope通用狀態(tài)碼請查閱:返回狀態(tài)碼說明