gemini-embedding-001 is Google's general-purpose text embedding model on the Gemini API, documented for semantic search, text classification, clustering and retrieval-augmented generation.
- Input
- text $0.15/M
- Output
- text
Specs & limits
Tokens
| Context window (vendor spec) | 2,048 |
|---|
Embeddings
| Embedding dimensions | 128 to 3072, selectable Vendor-recommended sizes: 768 · 1536 · 3072 |
|---|---|
| Truncatable output | Yes |
Model
| Modalities | text → text |
|---|
Google's general-purpose text embedding model on the Gemini API, documented for semantic search, classification, clustering and RAG. Output dimensionality is Matryoshka rather than fixed: the docs give it as "Flexible, supports: 128 - 3072" with 768, 1536 and 3072 named as recommended, so a single dimension count does not describe this model. Input is capped at 2,048 tokens per request. The task_type parameter accepts SEMANTIC_SIMILARITY, CLASSIFICATION, CLUSTERING, RETRIEVAL_DOCUMENT, RETRIEVAL_QUERY, CODE_RETRIEVAL_QUERY, QUESTION_ANSWERING and FACT_VERIFICATION. Google's deprecation page lists a shutdown date of 2028-05-14 with gemini-embedding-2 as the replacement.
Use Gemini Embedding 001 in 30 seconds
OpenAI-compatible: swap the base_url, keep your SDK. POST /v1/embeddings
from openai import OpenAI
client = OpenAI(
base_url="https://synthorai.io/v1",
api_key="sk-syn-...",
)
resp = client.chat.completions.create(
model="gemini-embedding-001",
messages=[{"role": "user", "content": "Summarize this diff"}],
)
print(resp.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://synthorai.io/v1",
apiKey: "sk-syn-...",
});
const resp = await client.chat.completions.create({
model: "gemini-embedding-001",
messages: [{ role: "user", content: "Summarize this diff" }],
});
console.log(resp.choices[0].message.content);curl https://synthorai.io/v1/chat/completions \
-H "Authorization: Bearer sk-syn-..." \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-embedding-001",
"messages": [{"role": "user", "content": "Hello"}]
}'package main
import (
"context"
"fmt"
"github.com/openai/openai-go/v3"
"github.com/openai/openai-go/v3/option"
)
func main() {
client := openai.NewClient(
option.WithBaseURL("https://synthorai.io/v1"),
option.WithAPIKey("sk-syn-..."),
)
resp, _ := client.Chat.Completions.New(context.TODO(), openai.ChatCompletionNewParams{
Model: "gemini-embedding-001",
Messages: []openai.ChatCompletionMessageParamUnion{
openai.UserMessage("Summarize this diff"),
},
})
fmt.Println(resp.Choices[0].Message.Content)
}import com.openai.client.OpenAIClient;
import com.openai.client.okhttp.OpenAIOkHttpClient;
import com.openai.models.chat.completions.*;
OpenAIClient client = OpenAIOkHttpClient.builder()
.baseUrl("https://synthorai.io/v1")
.apiKey("sk-syn-...")
.build();
ChatCompletion resp = client.chat().completions().create(
ChatCompletionCreateParams.builder()
.model("gemini-embedding-001")
.addUserMessage("Summarize this diff")
.build());
System.out.println(resp.choices().get(0).message().content().orElse(""));About Gemini Embedding 001
- Its most consequential property for anyone comparing embedding models is that the output width is not fixed: Google publishes it as "Flexible, supports: 128 - 3072" with 768, 1536 and 3072 named as recommended, so a single dimension count does not describe this model and a shorter vector can be requested without a second model.
- Input is capped at 2,048 tokens per request, and the task_type parameter accepts SEMANTIC_SIMILARITY, CLASSIFICATION, CLUSTERING, RETRIEVAL_DOCUMENT, RETRIEVAL_QUERY, CODE_RETRIEVAL_QUERY, QUESTION_ANSWERING and FACT_VERIFICATION, which lets one model serve both sides of a retrieval pair.
- Google's deprecation page gives it a shutdown date of 14 May 2028 and names gemini-embedding-2 as the replacement, so it is on a long but published retirement path rather than an open-ended one.
FAQ
Is the Gemini Embedding 001 API free to try?
Yes: new accounts get 10 trial calls and up to $1 in free credit, no card required. That's enough to try Gemini Embedding 001 against your real workload before adding a payment method.
What is Gemini Embedding 001 best at?
Output width is selectable from 128 to 3072; one model covers both sides of a retrieval pair; shutdown date published for May 2028. See the About section for the full picture from the vendor's own release notes.
How much does Gemini Embedding 001 cost?
Gemini Embedding 001 costs $0.15 per million input tokens and $0 per million output tokens on Synthorai. That is the provider's list price, with no platform markup.
Does Gemini Embedding 001 support prompt caching?
Gemini Embedding 001 has no cache-read discount on Synthorai today. Prompt caching still applies to other models on the gateway; see the pricing table for cache-enabled alternatives. Provider caching comparison →
How do I get access to Gemini Embedding 001?
Point your existing OpenAI SDK at base_url="https://synthorai.io/v1", set model="gemini-embedding-001", and you're done. One API key covers every model on the gateway.
Related models
Compare
Every value on this page is transcribed from the vendor's own documentation, linked above, and carries the date it was checked. Prices are compared across the catalogue; specification values that vendors define differently are shown with the difference stated rather than charted. Nothing here is measured by us, and nothing is scored.