All Products
Search
Document Center

Alibaba Cloud Model Studio:API Sinkron

Last Updated:Sep 09, 2026

Model text embedding tujuan umum mengonversi data teks menjadi vektor numerik untuk tugas-tugas downstream seperti pencarian semantik, rekomendasi, pengelompokan, dan klasifikasi.

Ikhtisar model

Singapura

ModelDimensi penyematanBaris maks

Maks token per baris(Catatan)

Harga (per 1 juta token input)Bahasa yang didukung

Kuota gratis(Catatan)

qwen3.7-text-embedding

2.560, 2.048, 1.536, 1.024 (default), 768, 512, 256

20

128.000

$0,07

Bahasa Tiongkok, Inggris, Spanyol, Prancis, Portugis, Indonesia, Jepang, Korea, Jerman, Rusia, dan lebih dari 200 bahasa utama serta dialek lainnya

1 juta token

Berlaku: 90 hari setelah Anda mengaktifkan Model Studio

text-embedding-v4

Bagian dari seri Qwen3-Embedding

2.048, 1.536, 1.024 (default), 768, 512, 256, 128, 64

10

8.192

$0,07

Bahasa Tiongkok, Inggris, Spanyol, Prancis, Portugis, Indonesia, Jepang, Korea, Jerman, Rusia, dan lebih dari 100 bahasa utama lainnya

1 juta token

Berlaku: 90 hari setelah Anda mengaktifkan Model Studio

text-embedding-v3

1.024 (default), 768, 512

Bahasa Tiongkok, Inggris, Spanyol, Prancis, Portugis, Indonesia, Jepang, Korea, Jerman, Rusia, dan lebih dari 50 bahasa utama lainnya

500.000 token

Berlaku: 90 hari setelah Anda mengaktifkan Model Studio

Tiongkok (Beijing)

ModelDimensi penyematanBaris maksMaksimum token per barisHarga (per 1 juta token input)Bahasa yang didukung

text-embedding-v4

Bagian dari seri Qwen3-Embedding

2.048, 1.536, 1.024 (default), 768, 512, 256, 128, 64

10

8.192

$0,072

Bahasa Tiongkok, Inggris, Spanyol, Prancis, Portugis, Indonesia, Jepang, Korea, Jerman, Rusia, dan lebih dari 100 bahasa utama lainnya, ditambah beberapa bahasa pemrograman

Tiongkok (Hong Kong)

ModelDimensi penyematanBaris maksimumMaksimum token per barisHarga (per 1 juta token input)Bahasa yang didukung

text-embedding-v4

Bagian dari seri Qwen3-Embedding

2.048, 1.536, 1.024 (default), 768, 512, 256, 128, 64

10

8.192

$0,07

Bahasa Tiongkok, Inggris, Spanyol, Prancis, Portugis, Indonesia, Jepang, Korea, Jerman, Rusia, dan lebih dari 100 bahasa utama lainnya, ditambah beberapa bahasa pemrograman

Untuk batas laju model, lihat Pembatasan laju.

Prasyarat

Pengguna yang terbiasa dengan ekosistem OpenAI dapat menggunakan API yang kompatibel dengan OpenAI untuk migrasi cepat. API DashScope menyediakan fitur-fitur unik tambahan.

Dapatkan Kunci API dan ekspor kunci API sebagai variabel lingkungan. Jika Anda menggunakan SDK untuk melakukan panggilan, instal SDK DashScope.

Kompatibilitas OpenAI

base_urluntuk dikonfigurasi pada panggilan SDK:

  • Singapura: https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.
  • Tiongkok (Beijing): https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1
  • Tiongkok (Hong Kong): https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/compatible-mode/v1. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.

endpointuntuk dikonfigurasi pada panggilan HTTP:

  • Singapura: POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.
  • Tiongkok (Beijing): POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/embeddings
  • Tiongkok (Hong Kong): POST https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/compatible-mode/v1/embeddings. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.

Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya.

Badan permintaan

modelstringwajib

Nama model yang akan dipanggil. Lihat tabel Ikhtisar model untuk nama model.

inputarray<string> atau string atau filewajib

Teks input yang akan diproses. Input dapat berupa string, array string, atau file. Batasan panjang teks dan ukuran batch bervariasi menurut versi model:

  • Model qwen3.7-text-embedding:
    • Input string: Maksimal 128.000 token.
    • Input daftar string atau file: Maksimal 20 item (baris), dengan setiap item (baris) hingga 128.000 token.
  • Model text-embedding-v3 / v4:
    • Input string: Maksimal 8.192 token.
    • Input daftar string atau file: Maksimal 10 item (baris), dengan setiap item (baris) hingga 8.192 token.

dimensions integer opsional

Dimensi vektor penyematan output. Harus salah satu dari nilai berikut: 2560 (hanya untuk qwen3.7-text-embedding),2048 (hanya untuk text-embedding-v4), 1536 (hanya untuk text-embedding-v4), 1024, 768, 512, 256, 128, atau 64. Nilai default adalah 1024.

encoding_format string opsional

Format penyematan yang dikembalikan. Saat ini, hanya float yang didukung.

String input

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan kunci API dari wilayah tersebut. Dapatkan di: https://modelstudio.console.alibabacloud.com/?tab=model#/api-key
    api_key=os.getenv("DASHSCOPE_API_KEY"),  # Jika variabel lingkungan tidak disetel, ganti placeholder dengan kunci API Anda.
    # Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
    base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
)

completion = client.embeddings.create(
    model="qwen3.7-text-embedding",
    input='Pakaian berkualitas baik dan terlihat bagus, pasti sepadan dengan penantian. Saya menyukainya.',
    dimensions=1024,
    encoding_format="float"
)

print(completion.model_dump_json())

Java

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.HashMap;
import java.util.Map;
import com.alibaba.dashscope.utils.JsonUtils;

public final class Main {
    public static void main(String[] args) {
        // Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan kunci API dari wilayah tersebut. Dapatkan di: https://modelstudio.console.alibabacloud.com/?tab=model#/api-key
        String apiKey = System.getenv("DASHSCOPE_API_KEY");
        if (apiKey == null) {
            System.out.println("DASHSCOPE_API_KEY tidak ditemukan dalam variabel lingkungan");
            return;
        }
        // Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
        String baseUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings";
        HttpClient client = HttpClient.newHttpClient();

        Map<String, Object> requestBody = new HashMap<>();
        requestBody.put("model", "qwen3.7-text-embedding");
        requestBody.put("input", "Angin bertiup kencang, langit tinggi, dan kera menjerit pilu. Pulau kecil jernih, pasir putih, dan burung-burung kembali terbang. Hutan tak berbatas menggugurkan daunnya lapis demi lapis. Sungai yang tak berujung bergulung ombak demi ombak.");
        requestBody.put("dimensions", 1024);
        requestBody.put("encoding_format", "float");

        try {
            String requestBodyString = JsonUtils.toJson(requestBody);
            HttpRequest request = HttpRequest.newBuilder()
                    .uri(URI.create(baseUrl))
                    .header("Content-Type", "application/json")
                    .header("Authorization", "Bearer " + apiKey)
                    .POST(HttpRequest.BodyPublishers.ofString(requestBodyString))
                    .build();

            HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
            if (response.statusCode() == 200) {
                System.out.println("Respons: " + response.body());
            } else {
                System.out.printf("Gagal mendapatkan respons, kode status: %d, respons: %s%n", response.statusCode(), response.body());
            }
        } catch (Exception e) {
            System.err.println("Kesalahan: " + e.getMessage());
        }
    }
}

curl

Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan Kunci API dari wilayah tersebut dan mengganti URL dengan https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/embeddings. Contoh kode di bawah ini menggunakan URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen3.7-text-embedding",
    "input": "Angin bertiup kencang, langit tinggi, dan kera menjerit pilu. Pulau kecil jernih, pasir putih, dan burung-burung kembali terbang. Hutan tak berbatas menggugurkan daunnya lapis demi lapis. Sungai yang tak berujung bergulung ombak demi ombak.",
    "dimensions": 1024,
    "encoding_format": "float"
}'

Daftar string input

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan kunci API dari wilayah tersebut. Dapatkan di: https://modelstudio.console.alibabacloud.com/?tab=model#/api-key
    api_key=os.getenv("DASHSCOPE_API_KEY"),  # Jika variabel lingkungan tidak disetel, ganti placeholder dengan kunci API Anda.
    # Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
    base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
)

completion = client.embeddings.create(
    model="qwen3.7-text-embedding",
    input=['Angin bertiup kencang, langit tinggi, dan kera menjerit pilu.', 'Pulau kecil jernih, pasir putih, dan burung-burung kembali terbang.', 'Hutan tak berbatas menggugurkan daunnya lapis demi lapis.', 'Sungai yang tak berujung bergulung ombak demi ombak.'],
    dimensions=1024,
    encoding_format="float"
)

print(completion.model_dump_json())

Java

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.HashMap;
import java.util.Map;
import java.util.List;
import java.util.Arrays;
import com.alibaba.dashscope.utils.JsonUtils;

public final class Main {
    public static void main(String[] args) {
        // Dapatkan kunci API dari variabel lingkungan. Jika tidak dikonfigurasi, ganti dengan kunci API Anda.
        // Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan kunci API dari wilayah tersebut. Dapatkan di: https://modelstudio.console.alibabacloud.com/?tab=model#/api-key
        String apiKey = System.getenv("DASHSCOPE_API_KEY");
        if (apiKey == null) {
            System.out.println("DASHSCOPE_API_KEY tidak ditemukan dalam variabel lingkungan");
            return;
        }
        // Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
        String baseUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings";
        HttpClient client = HttpClient.newHttpClient();
        Map<String, Object> requestBody = new HashMap<>();
        requestBody.put("model", "qwen3.7-text-embedding");
        List<String> inputList = Arrays.asList("Angin bertiup kencang, langit tinggi, dan kera menjerit pilu.", "Pulau kecil jernih, pasir putih, dan burung-burung kembali terbang.", "Hutan tak berbatas menggugurkan daunnya lapis demi lapis.", "Sungai yang tak berujung bergulung ombak demi ombak.");
        requestBody.put("input", inputList);
        requestBody.put("encoding_format", "float");

        try {
            // Konversi badan permintaan ke string JSON.
            String requestBodyString = JsonUtils.toJson(requestBody);

            // Bangun permintaan HTTP.
            HttpRequest request = HttpRequest.newBuilder()
                    .uri(URI.create(baseUrl))
                    .header("Content-Type", "application/json")
                    .header("Authorization", "Bearer " + apiKey)
                    .POST(HttpRequest.BodyPublishers.ofString(requestBodyString))
                    .build();

            // Kirim permintaan dan terima respons.
            HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
            if (response.statusCode() == 200) {
                System.out.println("Respons: " + response.body());
            } else {
                System.out.printf("Gagal mendapatkan respons, kode status: %d, respons: %s%n", response.statusCode(), response.body());
            }
        } catch (Exception e) {
            // Tangkap dan cetak pengecualian.
            System.err.println("Kesalahan: " + e.getMessage());
        }
    }
}

curl

Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan Kunci API dari wilayah tersebut dan mengganti URL dengan https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/embeddings. Contoh kode di bawah ini menggunakan URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen3.7-text-embedding",
    "input": [
        "Angin bertiup kencang, langit tinggi, dan kera menjerit pilu.",
        "Pulau kecil jernih, pasir putih, dan burung-burung kembali terbang.",
        "Hutan tak berbatas menggugurkan daunnya lapis demi lapis.",
        "Sungai yang tak berujung bergulung ombak demi ombak."
        ],
    "dimensions": 1024,
    "encoding_format": "float"
}'

File input

Python

import os
from openai import OpenAI

client = OpenAI(
    # Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan kunci API dari wilayah tersebut. Dapatkan di: https://modelstudio.console.alibabacloud.com/?tab=model#/api-key
    api_key=os.getenv("DASHSCOPE_API_KEY"),  # Jika variabel lingkungan tidak disetel, ganti placeholder dengan kunci API Anda.
    # Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
    base_url="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1"
)
# Pastikan untuk mengganti 'texts_to_embedding.txt' dengan nama file atau jalur Anda.
with open('texts_to_embedding.txt', 'r', encoding='utf-8') as f:
    completion = client.embeddings.create(
        model="qwen3.7-text-embedding",
        input=f,
        encoding_format="float"
    )
print(completion.model_dump_json())

Java

import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.util.HashMap;
import java.util.Map;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import com.alibaba.dashscope.utils.JsonUtils;

public class Main {
    public static void main(String[] args) {
        // Dapatkan kunci API dari variabel lingkungan. Jika tidak dikonfigurasi, ganti dengan kunci API Anda.
        // Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan kunci API dari wilayah tersebut. Dapatkan di: https://modelstudio.console.alibabacloud.com/?tab=model#/api-key
        String apiKey = System.getenv("DASHSCOPE_API_KEY");
        if (apiKey == null) {
            System.out.println("DASHSCOPE_API_KEY tidak ditemukan dalam variabel lingkungan");
            return;
        }
        // Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
        String baseUrl = "https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings";
        HttpClient client = HttpClient.newHttpClient();

        // Baca file input.
        StringBuilder inputText = new StringBuilder();
        try (BufferedReader reader = new BufferedReader(new FileReader("<path_to_your_content_root>"))) {
            String line;
            while ((line = reader.readLine()) != null) {
                inputText.append(line).append("\n");
            }
        } catch (IOException e) {
            System.err.println("Kesalahan membaca file input: " + e.getMessage());
            return;
        }

        Map<String, Object> requestBody = new HashMap<>();
        requestBody.put("model", "qwen3.7-text-embedding");
        requestBody.put("input", inputText.toString().trim());
        requestBody.put("dimensions", 1024);
        requestBody.put("encoding_format", "float");

        try {
            String requestBodyString = JsonUtils.toJson(requestBody);

            // Bangun permintaan HTTP.
            HttpRequest request = HttpRequest.newBuilder()
                    .uri(URI.create(baseUrl))
                    .header("Content-Type", "application/json")
                    .header("Authorization", "Bearer " + apiKey)
                    .POST(HttpRequest.BodyPublishers.ofString(requestBodyString))
                    .build();
            HttpResponse<String> response = client.send(request, HttpResponse.BodyHandlers.ofString());
            if (response.statusCode() == 200) {
                System.out.println("Respons: " + response.body());
            } else {
                System.out.printf("Gagal mendapatkan respons, kode status: %d, respons: %s%n", response.statusCode(), response.body());
            }
        } catch (Exception e) {
            System.err.println("Kesalahan: " + e.getMessage());
        }
    }
}

curl

Jika Anda menggunakan model di wilayah Tiongkok (Beijing), Anda harus menggunakan Kunci API dari wilayah tersebut dan mengganti URL dengan https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/compatible-mode/v1/embeddings. Contoh kode di bawah ini menggunakan URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.

Ganti 'texts_to_embedding.txt' dengan nama file atau jalur Anda.

FILE_CONTENT=$(cat texts_to_embedding.txt | jq -Rs .)
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/compatible-mode/v1/embeddings' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen3.7-text-embedding",
    "input": ['"$FILE_CONTENT"'],
    "dimensions": 1024,
    "encoding_format": "float"
}'

Objek respons

dataarray

Daftar objek penyematan hasil.

Properti

embeddinglist

Vektor penyematan, dikembalikan sebagai array bilangan titik mengambang.

indexinteger

Indeks teks input yang sesuai dalam array input.

objectstring

Jenis objek. Nilainya selalu embedding.

modelstring

Nama model yang digunakan untuk panggilan ini.

objectstring

Jenis objek. Nilainya selalu list.

usageobject

Properti

prompt_tokensinteger

Jumlah token dalam teks input.

total_tokens integer

Jumlah total token dalam input. Jumlah ini ditentukan oleh cara tokenizer model mengurai string input.

idstring

Identifikasi permintaan unik, digunakan untuk pelacakan dan troubleshooting.

{
  "data": [
    {
      "embedding": [
        -0.0695386752486229, 0.030681096017360687, ...
      ],
      "index": 0,
      "object": "embedding"
    },
    ...
    {
      "embedding": [
        -0.06348952651023865, 0.060446035116910934, ...
      ],
      "index": 5,
      "object": "embedding"
    }
  ],
  "model": "qwen3.7-text-embedding",
  "object": "list",
  "usage": {
    "prompt_tokens": 184,
    "total_tokens": 184
  },
  "id": "73591b79-d194-9bca-8bb5-xxxxxxxxxxxx"
}
{
    "error": {
        "message": "Incorrect API key provided. ",
        "type": "invalid_request_error",
        "param": null,
        "code": "invalid_api_key"
    }
}

DashScope

base_urluntuk panggilan SDK:

  • Singapura: https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.
  • Tiongkok (Beijing): https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1
  • Tiongkok (Hong Kong): https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/api/v1. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.
Endpoint untuk panggilan HTTP:
  • Singapura: POST https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.
  • Tiongkok (Beijing): POST https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding
  • Tiongkok (Hong Kong): POST https://{WorkspaceId}.cn-hongkong.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding. Ganti WorkspaceId dengan ID ruang kerja Anda yang sebenarnya.

Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya.

Isi permintaan

modelstringwajib

Model yang akan digunakan. Untuk daftar model yang tersedia, lihat tabel Ikhtisar model.

inputstringatauarray<string>wajib

Teks yang akan diproses. Input dapat berupa string, array string, atau file. Panjang teks dan ukuran batch yang didukung bervariasi menurut versi model.

  • Model qwen3.7-text-embedding:
    • Input string: Maksimal 128.000 token.
    • Input daftar string atau file: Maksimal 20 item (baris), dengan setiap item (baris) hingga 128.000 token.
  • Model text-embedding-v3 / v4:
    • Input string: Maksimal 8.192 token.
    • Input daftar string atau file: Maksimal 10 item (baris), dengan setiap item (baris) hingga 8.192 token.

text_type stringopsional

Saat melakukan panggilan HTTP, letakkan text_typedi dalam objek parameters.

Teks yang dikonversi menjadi penyematan dapat diterapkan pada tugas-tugas downstream seperti pengambilan, pengelompokan, dan klasifikasi. Untuk tugas asimetris seperti pengambilan, disarankan untuk membedakan antara teks kueri (query) dan teks dokumen (document) untuk mencapai performa pengambilan yang lebih baik. Untuk tugas simetris seperti pengindeksan, pengelompokan, dan klasifikasi, Anda cukup menggunakan nilai default sistem yaitu document.

dimension integer opsional

Saat melakukan panggilan HTTP, letakkan dimensiondi dalam objek parameters.

Menentukan dimensi penyematan untuk vektor output. Nilai yang valid adalah 2560 (hanya untuk qwen3.7-text-embedding),2048 (hanya untuk text-embedding-v4), 1536 (hanya untuk text-embedding-v4), 1024, 768, 512, 256, 128, atau 64. Defaultnya adalah 1024.

output_type string opsional

Saat melakukan panggilan HTTP, letakkan output_typedi dalam objek parameters.

Menentukan jenis vektor output. Parameter ini hanya berlaku untuk model qwen3.7-text-embedding, text-embedding-v3, dan text-embedding-v4. Nilai yang valid adalah dense, sparse, dan dense&sparse. Defaultnya adalah dense, yang hanya mengembalikan representasi vektor padat.

instruct string opsional

Memberikan instruksi khusus untuk membimbing model dalam memahami maksud kueri. Instruksi dalam bahasa Inggris direkomendasikan, karena biasanya meningkatkan performa sebesar 1% hingga 5%.

String input

Python

import dashscope
from http import HTTPStatus

# Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'

resp = dashscope.TextEmbedding.call(
    model="qwen3.7-text-embedding",
    input='Angin kencang, langit tinggi, dan siamang menjerit pilu. Pulau jernih, pasir putih, dan burung-burung kembali terbang. Hutan luas tak berbatas menggugurkan daunnya. Sungai Yangtze yang tak berujung datang bergulung-gulung.',
    dimension=1024,
    output_type="dense&sparse"
)

print(resp) if resp.status_code == HTTPStatus.OK else print(resp)

Java

import java.util.Arrays;
import java.util.concurrent.Semaphore;
import com.alibaba.dashscope.common.ResultCallback;
import com.alibaba.dashscope.embeddings.TextEmbedding;
import com.alibaba.dashscope.embeddings.TextEmbeddingParam;
import com.alibaba.dashscope.embeddings.TextEmbeddingResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.Constants;

public final class Main {
    static {
        // Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
        Constants.baseHttpApiUrl="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
    }
    public static void basicCall() throws ApiException, NoApiKeyException{
        TextEmbeddingParam param = TextEmbeddingParam
        .builder()
        .model("qwen3.7-text-embedding")
        .texts(Arrays.asList("Angin kencang, langit tinggi, dan siamang menjerit pilu.", "Pulau jernih, pasir putih, dan burung-burung kembali terbang.", "Hutan luas tak berbatas menggugurkan daunnya.", "Sungai Yangtze yang tak berujung datang bergulung-gulung.")).build();
        TextEmbedding textEmbedding = new TextEmbedding();
        TextEmbeddingResult result = textEmbedding.call(param);
        System.out.println(result);
    }

    public static void callWithCallback() throws ApiException, NoApiKeyException, InterruptedException{
        TextEmbeddingParam param = TextEmbeddingParam
        .builder()
        .model(TextEmbedding.Models.TEXT_EMBEDDING_V3)
        .texts(Arrays.asList("Angin kencang, langit tinggi, dan siamang menjerit pilu.", "Pulau jernih, pasir putih, dan burung-burung kembali terbang.", "Hutan luas tak berbatas menggugurkan daunnya.", "Sungai Yangtze yang tak berujung datang bergulung-gulung.")).build();
        TextEmbedding textEmbedding = new TextEmbedding();
        Semaphore sem = new Semaphore(0);
        textEmbedding.call(param, new ResultCallback<TextEmbeddingResult>() {

          @Override
          public void onEvent(TextEmbeddingResult message) {
            System.out.println(message);
          }
          @Override
          public void onComplete(){
            sem.release();
          }

          @Override
          public void onError(Exception err){
            System.out.println(err.getMessage());
            err.printStackTrace();
            sem.release();
          }

        });
        sem.acquire();
    }

  public static void main(String[] args){
    try{
      callWithCallback();
    }catch(ApiException|NoApiKeyException|InterruptedException e){
      e.printStackTrace();
      System.out.println(e);

    }
      try {
        basicCall();
    } catch (ApiException | NoApiKeyException e) {
        System.out.println(e.getMessage());
    }
    System.exit(0);
  }
}

curl

Jika Anda menggunakan model di wilayah Tiongkok (Beijing), gunakan Kunci API untuk wilayah tersebut dan ganti URL dengan: https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding. Contoh kode di bawah ini menggunakan URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen3.7-text-embedding",
    "input": {
        "texts": [
        "Angin kencang, langit tinggi, dan siamang menjerit pilu. Pulau jernih, pasir putih, dan burung-burung kembali terbang. Hutan luas tak berbatas menggugurkan daunnya. Sungai Yangtze yang tak berujung datang bergulung-gulung."
        ]
    },
    "parameters": {
        "dimension": 1024,
        "output_type": "dense"
    }
}'

Daftar string input

Python

import dashscope
from http import HTTPStatus

# Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
DASHSCOPE_MAX_BATCH_SIZE = 10

inputs = ['Angin kencang, langit tinggi, dan siamang menjerit pilu.', 'Pulau jernih, pasir putih, dan burung-burung kembali terbang.', 'Hutan luas tak berbatas menggugurkan daunnya.', 'Sungai Yangtze yang tak berujung datang bergulung-gulung.']

result = None
batch_counter = 0
for i in range(0, len(inputs), DASHSCOPE_MAX_BATCH_SIZE):
    batch = inputs[i:i + DASHSCOPE_MAX_BATCH_SIZE]
    resp = dashscope.TextEmbedding.call(
        model="qwen3.7-text-embedding",
        input=batch,
        dimension=1024
    )
    if resp.status_code == HTTPStatus.OK:
        if result is None:
            result = resp
        else:
            for emb in resp.output['embeddings']:
                emb['text_index'] += batch_counter
                result.output['embeddings'].append(emb)
            result.usage['total_tokens'] += resp.usage['total_tokens']
    else:
        print(resp)
    batch_counter += len(batch)

print(result)

Java

import java.util.Arrays;
import java.util.List;
import com.alibaba.dashscope.embeddings.TextEmbedding;
import com.alibaba.dashscope.embeddings.TextEmbeddingParam;
import com.alibaba.dashscope.embeddings.TextEmbeddingResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.Constants;

public final class Main {
    static {
        // Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
        Constants.baseHttpApiUrl="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
    }
    private static final int DASHSCOPE_MAX_BATCH_SIZE = 10;

    public static void main(String[] args) {
        List<String> inputs = Arrays.asList(
                "Angin kencang, langit tinggi, dan siamang menjerit pilu.",
                "Pulau jernih, pasir putih, dan burung-burung kembali terbang.",
                "Hutan luas tak berbatas menggugurkan daunnya.",
                "Sungai Yangtze yang tak berujung datang bergulung-gulung."
        );

        TextEmbeddingResult result = null;
        int batchCounter = 0;

        for (int i = 0; i < inputs.size(); i += DASHSCOPE_MAX_BATCH_SIZE) {
            List<String> batch = inputs.subList(i, Math.min(i + DASHSCOPE_MAX_BATCH_SIZE, inputs.size()));
            TextEmbeddingParam param = TextEmbeddingParam.builder()
                    .model("qwen3.7-text-embedding")
                    .texts(batch)
                    .build();

            TextEmbedding textEmbedding = new TextEmbedding();
            try {
                TextEmbeddingResult resp = textEmbedding.call(param);
                if (resp != null) {
                    if (result == null) {
                        result = resp;
                    } else {
                        for (var emb : resp.getOutput().getEmbeddings()) {
                            emb.setTextIndex(emb.getTextIndex() + batchCounter);
                            result.getOutput().getEmbeddings().add(emb);
                        }
                        result.getUsage().setTotalTokens(result.getUsage().getTotalTokens() + resp.getUsage().getTotalTokens());
                    }
                } else {
                    System.out.println(resp);
                }
            } catch (ApiException | NoApiKeyException e) {
                e.printStackTrace();
            }
            batchCounter += batch.size();
        }

        System.out.println(result);
    }
}

curl

Jika Anda menggunakan model di wilayah Tiongkok (Beijing), gunakan Kunci API untuk wilayah tersebut dan ganti URL dengan: https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding. Contoh kode di bawah ini menggunakan URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.

curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen3.7-text-embedding",
    "input": {
        "texts": [
          "Angin kencang, langit tinggi, dan siamang menjerit pilu.",
          "Pulau jernih, pasir putih, dan burung-burung kembali terbang.",
          "Hutan luas tak berbatas menggugurkan daunnya.",
          "Sungai Yangtze yang tak berujung datang bergulung-gulung."
        ]
    },
    "parameters": {
          "dimension": 1024,
          "output_type": "dense"
    }
}'

File input

Python

import dashscope
from http import HTTPStatus
from dashscope import TextEmbedding

# Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
dashscope.base_http_api_url = 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1'
# Pastikan untuk mengganti 'texts_to_embedding.txt' dengan nama file atau jalur Anda sendiri.
with open('texts_to_embedding.txt', 'r', encoding='utf-8') as f:
    resp = TextEmbedding.call(
        model="qwen3.7-text-embedding",
        input=f,
        dimension=1024
    )

    if resp.status_code == HTTPStatus.OK:
        print(resp)
    else:
        print(resp)

Java

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import com.alibaba.dashscope.embeddings.TextEmbedding;
import com.alibaba.dashscope.embeddings.TextEmbeddingParam;
import com.alibaba.dashscope.embeddings.TextEmbeddingResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.Constants;

public final class Main {
    static {
        // Ini adalah URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.
        Constants.baseHttpApiUrl="https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1";
    }
    public static void main(String[] args) {
        // Ganti 'texts_to_embedding.txt' dengan jalur ke file Anda.
        try (BufferedReader reader = new BufferedReader(new FileReader("texts_to_embedding.txt"))) {
            StringBuilder content = new StringBuilder();
            String line;
            while ((line = reader.readLine()) != null) {
                content.append(line).append("\n");
            }

            TextEmbeddingParam param = TextEmbeddingParam.builder()
                    .model("qwen3.7-text-embedding")
                    .text(content.toString())
                    .build();

            TextEmbedding textEmbedding = new TextEmbedding();
            TextEmbeddingResult result = textEmbedding.call(param);

            if (result != null) {
                System.out.println(result);
            } else {
                System.out.println("Gagal mendapatkan penyematan: " + result);
            }
        } catch (IOException | ApiException | NoApiKeyException e) {
            e.printStackTrace();
        }
    }
}

curl

Jika Anda menggunakan model di wilayah Tiongkok (Beijing), gunakan Kunci API untuk wilayah tersebut dan ganti URL dengan: https://{WorkspaceId}.cn-beijing.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding. Contoh kode di bawah ini menggunakan URL wilayah Singapura. Ganti {WorkspaceId} dengan ID ruang kerja Anda yang sebenarnya. URL berbeda-beda menurut wilayah.

Ganti 'texts_to_embedding.txt' dengan nama file atau jalur Anda.

FILE_CONTENT=$(cat texts_to_embedding.txt | jq -Rs .)
curl --location 'https://{WorkspaceId}.ap-southeast-1.maas.aliyuncs.com/api/v1/services/embeddings/text-embedding/text-embedding' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen3.7-text-embedding",
    "input": {
        "texts": ['"$FILE_CONTENT"']
    },
    "parameters": {
        "dimension": 1024,
        "output_type": "dense"
    }
}'

Objek respons

status_code string

Kode status HTTP. Nilai 200 menunjukkan keberhasilan.

request_id string

Identifikasi unik untuk permintaan. Gunakan ID ini untuk melacak dan troubleshooting permintaan.

code string

Kode kesalahan yang dikembalikan jika permintaan gagal. Bidang ini kosong untuk permintaan yang berhasil.

message string

Pesan kesalahan detail jika permintaan gagal. Bidang ini kosong untuk permintaan yang berhasil.

outputobject

Hasil dari tugas.

Properti

embeddingsarray

Output model untuk permintaan. Ini adalah array objek, dengan setiap objek sesuai dengan teks input.

Properti

sparse_embedding array

Representasi vektor jarang dari string yang sesuai. Ini hanya berlaku untuk text-embedding-v3 dan text-embedding-v4.

Properti

index integer

Indeks token dalam kosakata.

value float

Menunjukkan bobot atau skor kepentingan Token. Semakin tinggi nilainya, semakin besar kepentingan atau relevansi Token dalam konteks teks saat ini.

token string

Teks token.

embedding array

Representasi vektor padat untuk string yang sesuai.

text_index integer

Indeks teks yang sesuai dalam array input.

usageobject

Properti

total_tokens integer

Jumlah token dalam input, sebagaimana dihitung oleh tokenizer model.

{   "status_code": 200,
    "request_id": "1ba94ac8-e058-99bc-9cc1-7fdb37940a46",
    "code": "",
    "message": "",
    "output":{
        "embeddings": [
          {
             "sparse_embedding":[
               {"index":7149,"value":0.829,"token":"swift"},
               .....
               {"index":111290,"value":0.9004,"token":"mournfully"}],
             "embedding": [-0.006929283495992422,-0.005336422007530928, ...],
             "text_index": 0
          },
          {
             "sparse_embedding":[
               {"index":246351,"value":1.0483,"token":"islet"},
               .....
               {"index":2490,"value":0.8579,"token":"back"}],
             "embedding": [-0.006929283495992422,-0.005336422007530928, ...],
             "text_index": 1
          },
          {
             "sparse_embedding":[
               {"index":3759,"value":0.7065,"token":"Boundless"},
               .....
               {"index":1130,"value":0.815,"token":"leaves"}],
             "embedding": [-0.006929283495992422,-0.005336422007530928, ...],
             "text_index": 2
          },
          {
             "sparse_embedding":[
               {"index":562,"value":0.6752,"token":"endless"},
               .....
               {"index":1589,"value":0.7097,"token":"in"}],
             "embedding": [-0.001945948973298072,-0.005336422007530928, ...],
             "text_index": 3
          }
        ]
    },
    "usage":{
        "total_tokens":27
    }
}
{
    "code":"InvalidApiKey",
    "message":"Invalid API-key provided.",
    "request_id":"xxxxxxxx"
}

Kode kesalahan

Jika pemanggilan model gagal, lihat Pesan Kesalahan.