الميزات المضمَّنة في Gemini API

يُنشئ نموذج text-embedding-004 embeddings متطورة للكلمات والعبارات والجمل. ويمكن بعد ذلك استخدام عمليات التضمين الناتجة في مهام مثل البحث الدلالي وتصنيف النصوص والتجميع، وغيرها من المهام الكثيرة. لمزيد من المعلومات عن البيانات المضمّنة، يُرجى الاطّلاع على البحث العلمي.

ما هي البيانات المضمّنة؟

تُسجِّل عمليات التضمين المعنى الدلالي والسياق، ما يؤدي إلى ظهور نص يحمل معاني مشابهة وعمليات تضمين "أقرب". على سبيل المثال، ستتضمّن الجملة "أخذتُ كلبي إلى الطبيب البيطري" والجملة "أخذتُ قطتي إلى الطبيب البيطري" إدخالات قريبة من بعضها في مساحة المتجهات لأنّهما تصفان سياقًا مشابهًا.

يمكنك استخدام عمليات التضمين لمقارنة النصوص المختلفة وفهم كيفية ارتباطها ببعضها. على سبيل المثال، إذا كانت عمليات إدراج النص "قطة" و "كلب" قريبة معًا، يمكنك استنتاج أنّ هاتين الكلمتين متشابهتان من حيث المعنى أو السياق أو كليهما. ويتيح ذلك مجموعة متنوعة من حالات استخدام الذكاء الاصطناعي الشائعة.

إنشاء عمليات التضمين

استخدِم طريقة embedContent لإنشاء نماذج إدراج نص:

Python

import google.generativeai as genai
import os

genai.configure(api_key=os.environ["GEMINI_API_KEY"])

result = genai.embed_content(
        model="models/text-embedding-004",
        content="What is the meaning of life?")

print(str(result['embedding']))

Node.js

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

const genAI = new GoogleGenerativeAI(process.env.GEMINI_API_KEY);
const model = genAI.getGenerativeModel({ model: "text-embedding-004"});

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

run();

curl

curl "https://generativelanguage.googleapis.com/v1beta/models/text-embedding-004:embedContent?key=$GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model": "models/text-embedding-004",
     "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("text-embedding-004")
res, err := em.EmbedContent(ctx, genai.Text("What is the meaning of life?"))

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

حالات الاستخدام

تُستخدَم عمليات تضمين النصوص في مجموعة متنوعة من حالات الاستخدام الشائعة للذكاء الاصطناعي، مثل:

نماذج embeddings في Gemini

توفّر Gemini API نموذجَين ينشئان embeddings للنص:

"إدراج النصوص" هو إصدار معدَّل من نموذج "الإدراج" الذي يقدّم أحجام إدراج مرنة تحت 768 سمة. تُنشئ عمليات التضمين المرنة سمات مخرجات أصغر حجمًا، وقد توفّر تكاليف الحوسبة والتخزين مع تعرُّض الأداء لفقدان بسيط.

استخدِم ميزة "إدراج النصوص" للمشاريع أو التطبيقات الجديدة.