Gemini API में एम्बेड करना

Gemini API में एम्बेड करने की सेवा, बेहतरीन तरीके से एम्बेड करने की सुविधा जनरेट करती है शब्दों, वाक्यांशों, और वाक्यों के लिए. इसके बाद, एम्बेड की गई चीज़ों को इन चीज़ों के लिए इस्तेमाल किया जा सकता है नैचुरल लैंग्वेज प्रोसेसिंग (एनएलपी) से जुड़े टास्क, जैसे कि सिमैंटिक सर्च, टेक्स्ट कई कैटगरी में बांटी गई हैं.

इस पेज पर, एम्बेड की गई चीज़ों के बारे में जानकारी दी गई है. साथ ही, एम्बेड करने की सेवा का इस्तेमाल किया है.

एम्बेड करने की सुविधा क्या है?

टेक्स्ट एम्बेड करना एक नैचुरल लैंग्वेज प्रोसेसिंग (एनएलपी) तकनीक है, जो टेक्स्ट को संख्यात्मक निर्देशांकों (जिन्हें वेक्टर कहा जाता है) में प्लॉट किया जा सकता है. एन-डाइमेंशन वाला स्पेस. इस तरीके से, आपको टेक्स्ट के हिस्सों को बिट के तौर पर ट्रीट करने की सुविधा मिलती है रिलेशनल डेटा होता है, जिसके आधार पर हम मॉडल को ट्रेनिंग दे सकते हैं.

एम्बेड करने से अर्थ और संदर्भ का पता चलता है. इससे टेक्स्ट के रूप में करीब से एम्बेड करने की सुविधा से मिलते-जुलते मतलब. उदाहरण के लिए, वाक्य "मैंने अपना पालतू कुत्ते को" और "मैं अपनी बिल्ली को पशु चिकित्सक के पास ले गया" उसमें एम्बेडिंग हो सकती है, वेक्टर स्पेस में एक-दूसरे के करीब होते हैं, क्योंकि वे दोनों एक-दूसरे से मिलती-जुलती संदर्भ.

एम्बेड करने की सुविधा का इस्तेमाल करके, अलग-अलग टेक्स्ट की तुलना की जा सकती है. साथ ही, यह भी समझा जा सकता है कि वे कैसे जुड़ाव. उदाहरण के लिए, अगर "बिल्ली" टेक्स्ट को एम्बेड करना है और "कुत्ता" पास हैं साथ मिलकर यह अनुमान लगाया जा सकता है कि ये शब्द, मतलब, कॉन्टेक्स्ट या कॉन्टेक्स्ट के हिसाब से मिलते-जुलते हैं या दोनों. इसकी मदद से, कॉन्टेंट को अलग-अलग तरह से इस्तेमाल किया जा सकता है. इन उदाहरणों के बारे में अगले सेक्शन में बताया गया है.

उपयोग के उदाहरण

टेक्स्ट एम्बेड करने की सुविधा का इस्तेमाल, एनएलपी के कई तरह के कामों में किया जाता है. जैसे:

  • जानकारी वापस पाना: शब्दों का मतलब जानने के लिए, एम्बेड करने की सुविधा का इस्तेमाल किया जा सकता है इनपुट टेक्स्ट का एक हिस्सा दिया गया मिलता-जुलता टेक्स्ट. अलग-अलग तरह के ऐप्लिकेशन जो सिमैंटिक सर्च जैसे जानकारी वापस पाने के सिस्टम की मदद से काम करती हो. सवालों के जवाब देना या ख़ास जानकारी देना.
  • क्लासिफ़िकेशन: कॉन्टेंट की कैटगरी तय करने के लिए, एम्बेड करने की सुविधा का इस्तेमाल करके मॉडल को ट्रेनिंग दी जा सकती है दस्तावेज़ों को कैटगरी में बांटा जा सकता है. उदाहरण के लिए, अगर आपको उपयोगकर्ता की कैटगरी तय करनी है, टिप्पणियों को नकारात्मक या सकारात्मक के रूप में देख रहे हैं, तो आप इन चीज़ों को देखने के लिए एम्बेडिंग सेवा का उपयोग क्लासिफ़ायर को ट्रेनिंग देने के लिए, हर टिप्पणी का वेक्टर रिप्रज़ेंटेशन.
  • क्लस्टरिंग: टेक्स्ट के वेक्टर की तुलना करने से यह पता चल सकता है कि वे कितने मिलते-जुलते या अलग हैं वे हैं. इस सुविधा का इस्तेमाल, ऐसे क्लस्टरिंग मॉडल को ट्रेनिंग देने के लिए किया जा सकता है जिनमें एक जैसे टेक्स्ट या दस्तावेज़ों को एक साथ इकट्ठा करना और आपके डेटा में अनियमितताओं का पता लगाना.
  • वेक्टर डेटाबेस: जनरेट किए गए एम्बेडिंग को वेक्टर में स्टोर किया जा सकता है डेटाबेस का इस्तेमाल करें, ताकि आप एनएलपी ऐप्लिकेशन की परफ़ॉर्मेंस को बेहतर और ज़्यादा सटीक बना सकें. वेक्टर डेटाबेस इस्तेमाल करने का तरीका जानने के लिए, नीचे दिया गया ट्यूटोरियल देखें टेक्स्ट प्रॉम्प्ट का संख्या वाले वेक्टर में अनुवाद कर सकती है.

Gemini में एम्बेड करने के मॉडल

Gemini API के दो मॉडल उपलब्ध हैं, जो टेक्स्ट एम्बेड करने की सुविधा जनरेट करते हैं: टेक्स्ट एम्बेड करना और एम्बेड करना. टेक्स्ट एम्बेड करना एक ऐसी एम्बेडिंग मॉडल का अपडेट किया गया वर्शन जो 768 डाइमेंशन पर लागू होता है. इलास्टिक एम्बेड करने की सुविधा से आउटपुट के छोटे डाइमेंशन जनरेट होते हैं और परफ़ॉर्मेंस में मामूली गिरावट के साथ, कंप्यूटिंग और स्टोरेज की लागत में बचत हो सकती है.

नए प्रोजेक्ट या ऐप्लिकेशन के लिए टेक्स्ट एम्बेड करने की सुविधा का इस्तेमाल करें. आपके ऐप्लिकेशन को यह करना चाहिए एम्बेड करने के मॉडल का इस्तेमाल सिर्फ़ तब करें, जब उसे टेक्स्ट एम्बेड करने के लिए माइग्रेट नहीं किया जा सकता हो.

Gemini API की मदद से एम्बेड करने की सुविधा जनरेट करना

टेक्स्ट एम्बेड करने के लिए, embedContent तरीके का इस्तेमाल करें:

Python

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

# 1 input > 1 vector output
print(str(result['embedding'])[:50], '... TRIMMED]')

शुरुआत करने की जाँच करें ट्यूटोरियल देखें.

शुरू करें

ctx := context.Background()
// Access your API key as an environment variable (see our Getting Started tutorial)
client, err := genai.NewClient(ctx, option.WithAPIKey(os.Getenv("API_KEY")))
if err != nil {
    log.Fatal(err)
}
defer client.Close()
// For embeddings, use the Text Embeddings model
em := client.EmbeddingModel("text-embedding-004")
res, err := em.EmbedContent(ctx, genai.Text("The quick brown fox jumps over the lazy dog."))

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

शुरुआत करने की जाँच करें ट्यूटोरियल देखें रन किया जा सकने वाला पूरा उदाहरण.

Node.js

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

// Access your API key as an environment variable (see our Getting Started tutorial)
const genAI = new GoogleGenerativeAI(process.env.API_KEY);

async function run() {
// For embeddings, use the Text Embeddings model
const model = genAI.getGenerativeModel({ model: "text-embedding-004"});

const text = "The quick brown fox jumps over the lazy dog."

const result = await model.embedContent(text);
const embedding = result.embedding;
console.log(embedding.values);
}

run();

शुरुआत करने की जाँच करें ट्यूटोरियल देखें.

डार्ट (फ़्लटर)

final model = GenerativeModel(model: 'text-embedding-004', apiKey: apiKey);
final content = Content.text('The quick brown fox jumps over the lazy dog.');
final result = await model.embedContent(content);
print(result.embedding.values);

शुरुआत करने की जाँच करें ट्यूटोरियल देखें.

curl

curl "https://generativelanguage.googleapis.com/v1beta/models/text-embedding-004:embedContent?key=$GOOGLE_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"model": "models/text-embedding-004",
     "content": {
     "parts":[{
     "text": "Hello world"}]}, }' 2> /dev/null | head

REST कुकबुक के साथ एम्बेड करने की क्विकस्टार्ट गाइड पर जाएं GitHub देखें.

आगे क्या करना है