يُنشئ نموذج 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 سمة. تُنشئ عمليات التضمين المرنة سمات مخرجات أصغر حجمًا، وقد توفّر تكاليف الحوسبة والتخزين مع تعرُّض الأداء لفقدان بسيط.
استخدِم ميزة "إدراج النصوص" للمشاريع أو التطبيقات الجديدة.