Встраивания в Gemini API

Gemini API поддерживает различные модели внедрения, которые генерируют самые современные внедрения для слов, фраз, кода и предложений. Полученные вложения затем можно использовать для таких задач, как семантический поиск, классификация текста и кластеризация, а также для многих других.

Что такое вложения?

Вложения улавливают семантическое значение и контекст, в результате чего текст со схожим значением имеет «более близкие» вложения. Например, предложения «Я отвез свою собаку к ветеринару» и «Я отвез свою кошку к ветеринару» будут иметь вложения, близкие друг к другу в векторном пространстве, поскольку оба они описывают схожий контекст.

Вы можете использовать встраивания, чтобы сравнивать разные тексты и понимать, как они связаны. Например, если вложения текста «кошка» и «собака» расположены близко друг к другу, вы можете сделать вывод, что эти слова схожи по значению, контексту или и тому, и другому. Это позволяет использовать различные распространенные варианты использования ИИ .

Генерация вложений

Используйте метод embedContent для создания вложений текста:

Питон

from google import genai

client = genai.Client(api_key="GEMINI_API_KEY")

result = client.models.embed_content(
        model="gemini-embedding-exp-03-07",
        contents="What is the meaning of life?")

print(result.embeddings)

Node.js

const { GoogleGenerativeAI } = require("@google/generative-ai");

const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY);
const model = genAI.getGenerativeModel({ model: "gemini-embedding-exp-03-07"});

async function run() {
    const result = await model.embedContent("What is the meaning of life?");
    console.log(result.embedding.values);
}

run();

завиток

curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-embedding-exp-03-07:embedContent?key=$GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model": "models/gemini-embedding-exp-03-07",
     "content": {
     "parts":[{
     "text": "What is the meaning of life?"}]}
    }'

Идти

ctx := context.Background()

client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("GEMINI_API_KEY")))
if err != nil {
    log.Fatal(err)
}
defer client.Close()

em := client.EmbeddingModel("gemini-embedding-exp-03-07")
res, err := em.EmbedContent(ctx, genai.Text("What is the meaning of life?"))

if err != nil {
    panic(err)
}
fmt.Println(res.Embedding.Values)

Варианты использования

Встраивание текста используется во множестве распространенных случаев использования ИИ, таких как:

Встраивание моделей

Gemini API предлагает три модели, генерирующие встраивание текста:

Мы ожидаем выпустить обновленные версии модели встраивания Gemini в ближайшие месяцы.