Gemini 嵌入
POST
/v1/embeddings
将文本转换为向量嵌入。
请求参数
请求头
x-goog-api-key
使用 Gemini API Key 认证。
格式: x-goog-api-key: sk-xxxxxx
请求体
嵌入参数(4 个)
| 参数 | 类型 | 默认值 | 说明 | 是否必填 |
|---|---|---|---|---|
model | string | — | 嵌入模型 ID;请确认该模型在当前账号和渠道可用。 | 是 |
input | string / array<string> | — | 要转换为向量的单段文本或文本数组。 | 是 |
encoding_format | string | — | float(默认)返回数字数组;base64 返回 Base64 编码。 | 否 |
dimensions | integer | — | 请求输出向量维度;仅在模型支持时生效。 | 否 |
请求体示例
查看 JSON 请求体示例
{
"model": "gemini-embedding-001",
"input": "Gemini 支持文本嵌入。",
"encoding_format": "float"
}
请求示例代码
curl -X POST "https://10000router.com/v1/embeddings" \
-H "x-goog-api-key: $GEMINI_API_KEY" \
-d '{"model":"gemini-embedding-001","input":"Gemini 支持文本嵌入。"}'const payload = {
model: "gemini-embedding-001",
input: "Gemini 支持文本嵌入。"
};
const response = await fetch("https://10000router.com/v1/embeddings", {
method: "POST",
headers: { "x-goog-api-key": process.env.GEMINI_API_KEY },
body: JSON.stringify(payload)
});
console.log(await response.json());payload := `{"model":"gemini-embedding-001","input":"Gemini 支持文本嵌入。"}`
req, _ := http.NewRequest("POST", "https://10000router.com/v1/embeddings", strings.NewReader(payload))
req.Header.Set("x-goog-api-key", os.Getenv("GEMINI_API_KEY"))
res, err := http.DefaultClient.Do(req)
if err != nil { log.Fatal(err) }
defer res.Body.Close()import os
import requests
payload = {
"model": "gemini-embedding-001",
"input": "Gemini 支持文本嵌入。",
}
response = requests.post(
"https://10000router.com/v1/embeddings",
json=payload,
)
print(response.json())var payload = "{\"model\":\"gemini-embedding-001\",\"input\":\"Gemini 支持文本嵌入。\"}";
var request = java.net.http.HttpRequest.newBuilder(java.net.URI.create("https://10000router.com/v1/embeddings"))
.header("x-goog-api-key", System.getenv("GEMINI_API_KEY"))
.POST(java.net.http.HttpRequest.BodyPublishers.ofString(payload))
.build();
var response = java.net.http.HttpClient.newHttpClient().send(request, java.net.http.HttpResponse.BodyHandlers.ofString());using System.Net.Http.Json;
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("x-goog-api-key", Environment.GetEnvironmentVariable("GEMINI_API_KEY"));
var payload = new { model = "gemini-embedding-001", input = "Gemini 支持文本嵌入。" };
var response = await client.PostAsJsonAsync("https://10000router.com/v1/embeddings", payload);
Console.WriteLine(await response.Content.ReadAsStringAsync());返回响应
成功响应的 data 与输入顺序一致,data[].index 从 0 开始。
{
"object": "list",
"data": [
{ "object": "embedding", "index": 0, "embedding": [0.0123, -0.0456] }
],
"model": "gemini-embedding-001",
"usage": { "prompt_tokens": 8, "total_tokens": 8 }
}
响应字段
| 字段 | 类型 | 说明 |
|---|---|---|
object | string | 固定为 list。 |
data | array | 每条输入对应一个嵌入对象。 |
data[].embedding | array<number> / string | 向量值;encoding_format=float 时返回数字数组,base64 时返回 Base64 编码字符串。 |
data[].index | integer | 对应输入文本的索引。 |
model | string | 实际使用的模型 ID。 |
usage | object | Token 用量,包含 prompt_tokens 和 total_tokens。 |