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 в ближайшие месяцы.