Embeddings

Embeddings janë një paraqitje numerike e futjes së tekstit që hap një numër rastesh unike përdorimi, të tilla si grupimi, matja e ngjashmërisë dhe marrja e informacionit. Për një hyrje, shikoni udhëzuesin e Embeddings .

Metoda: modele.embedPërmbajtja

Gjeneron një vektor ngulitjeje teksti nga Përmbajtja Content duke përdorur modelin e specifikuar Gemini Embedding .

Pika përfundimtare

postoni https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:embedContent

Parametrat e rrugës

string model

E detyrueshme. Emri i burimit të modelit. Kjo shërben si një ID për Modelin për t'u përdorur.

Ky emër duhet të përputhet me një emër modeli të kthyer nga metoda models.list .

Formati: models/{model} Merr formën models/{model} .

Trupi i kërkesës

Trupi i kërkesës përmban të dhëna me strukturën e mëposhtme:

Fushat
objekti content object ( Content )

E detyrueshme. Përmbajtja për t'u integruar. Do të numërohen vetëm parts.text e tekstit.

taskType enum ( TaskType )

Fakultative. Lloji opsional i detyrës për të cilin do të përdoren futjet. Nuk mbështetet në modelet e mëparshme ( models/embedding-001 ).

string title

Fakultative. Një titull opsional për tekstin. Zbatohet vetëm kur lloji i detyrës është RETRIEVAL_DOCUMENT .

Shënim: Përcaktimi i një title për RETRIEVAL_DOCUMENT ofron ngulitje me cilësi më të mirë për rikthim.

outputDimensionality integer

Fakultative. Dimensioni opsional i reduktuar për futjen e daljes. Nëse vendoset, vlerat e tepërta në futjen e daljes shkurtohen nga fundi. Mbështetur nga modele më të reja vetëm që nga viti 2024. Ju nuk mund ta vendosni këtë vlerë nëse përdorni modelin e mëparshëm ( models/embedding-001 ).

Shembull i kërkesës

from google import genai
from google.genai import types

client = genai.Client()
text = "Hello World!"
result = client.models.embed_content(
    model="text-embedding-004",
    contents=text,
    config=types.EmbedContentConfig(output_dimensionality=10),
)
print(result.embeddings)
// Make sure to include the following import:
// import {GoogleGenAI} from '@google/genai';
const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY });
const text = "Hello World!";
const result = await ai.models.embedContent({
  model: "text-embedding-004",
  contents: text,
  config: { outputDimensionality: 10 },
});
console.log(result.embeddings);
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": "Hello world"}]}, }' 2> /dev/null | head

Trupi i reagimit

Përgjigja ndaj një EmbedContentRequest .

Nëse është i suksesshëm, trupi i përgjigjes përmban të dhëna me strukturën e mëposhtme:

Fushat
objekt embedding object ( ContentEmbedding )

Vetëm dalje. Përfshirja e krijuar nga përmbajtja hyrëse.

Përfaqësimi JSON
{
  "embedding": {
    object (ContentEmbedding)
  }
}

Metoda: modele.batchEmbedContents

Gjeneron vektorë të shumtë të integruar nga Content hyrëse e cila përbëhet nga një grup vargjesh të përfaqësuara si objekte EmbedContentRequest .

Pika përfundimtare

postoni https: / /generativelanguage.googleapis.com /v1beta /{model=models /*}:batchEmbedContents

Parametrat e rrugës

string model

E detyrueshme. Emri i burimit të modelit. Kjo shërben si një ID për Modelin për t'u përdorur.

Ky emër duhet të përputhet me një emër modeli të kthyer nga metoda models.list .

Formati: models/{model} Merr formën models/{model} .

Trupi i kërkesës

Trupi i kërkesës përmban të dhëna me strukturën e mëposhtme:

Fushat
requests[] object ( EmbedContentRequest )

E detyrueshme. Vendosja e kërkesave për grupin. Modeli në secilën prej këtyre kërkesave duhet të përputhet me modelin e specifikuar BatchEmbedContentsRequest.model .

Shembull i kërkesës

from google import genai
from google.genai import types

client = genai.Client()
texts = [
    "What is the meaning of life?",
    "How much wood would a woodchuck chuck?",
    "How does the brain work?",
]
result = client.models.embed_content(
    model="text-embedding-004",
    contents=texts,
    config=types.EmbedContentConfig(output_dimensionality=10),
)
print(result.embeddings)
// Make sure to include the following import:
// import {GoogleGenAI} from '@google/genai';
const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY });
const texts = [
  "What is the meaning of life?",
  "How much wood would a woodchuck chuck?",
  "How does the brain work?",
];
const result = await ai.models.embedContent({
  model: "text-embedding-004",
  contents: texts,
  config: { outputDimensionality: 10 },
});
console.log(result.embeddings);
curl "https://generativelanguage.googleapis.com/v1beta/models/text-embedding-004:batchEmbedContents?key=$GEMINI_API_KEY" \
-H 'Content-Type: application/json' \
-d '{"requests": [{
      "model": "models/text-embedding-004",
      "content": {
      "parts":[{
        "text": "What is the meaning of life?"}]}, },
      {
      "model": "models/text-embedding-004",
      "content": {
      "parts":[{
        "text": "How much wood would a woodchuck chuck?"}]}, },
      {
      "model": "models/text-embedding-004",
      "content": {
      "parts":[{
        "text": "How does the brain work?"}]}, }, ]}' 2> /dev/null | grep -C 5 values

Trupi i reagimit

Përgjigja ndaj një BatchEmbedContentsRequest .

Nëse është i suksesshëm, trupi i përgjigjes përmban të dhëna me strukturën e mëposhtme:

Fushat
objekt embeddings[] object ( ContentEmbedding )

Vetëm dalje. Përfshirjet për secilën kërkesë, në të njëjtin rend siç parashikohet në kërkesën e grupit.

Përfaqësimi JSON
{
  "embeddings": [
    {
      object (ContentEmbedding)
    }
  ]
}

EmbedContentRequest

Kërkesë që përmban Content që modeli të futet.

Fushat
string model

E detyrueshme. Emri i burimit të modelit. Kjo shërben si një ID për Modelin për t'u përdorur.

Ky emër duhet të përputhet me një emër modeli të kthyer nga metoda models.list .

Formati: models/{model}

objekti content object ( Content )

E detyrueshme. Përmbajtja për t'u integruar. Do të numërohen vetëm parts.text e tekstit.

taskType enum ( TaskType )

Fakultative. Lloji opsional i detyrës për të cilin do të përdoren futjet. Nuk mbështetet në modelet e mëparshme ( models/embedding-001 ).

string title

Fakultative. Një titull opsional për tekstin. Zbatohet vetëm kur lloji i detyrës është RETRIEVAL_DOCUMENT .

Shënim: Përcaktimi i një title për RETRIEVAL_DOCUMENT ofron ngulitje me cilësi më të mirë për rikthim.

outputDimensionality integer

Fakultative. Dimensioni opsional i reduktuar për futjen e daljes. Nëse vendoset, vlerat e tepërta në futjen e daljes shkurtohen nga fundi. Mbështetur nga modele më të reja vetëm që nga viti 2024. Ju nuk mund ta vendosni këtë vlerë nëse përdorni modelin e mëparshëm ( models/embedding-001 ).

Përfaqësimi JSON
{
  "model": string,
  "content": {
    object (Content)
  },
  "taskType": enum (TaskType),
  "title": string,
  "outputDimensionality": integer
}

Përfshirja e përmbajtjes

Një listë e notave që përfaqësojnë një ngulitje.

Fushat
values[] number

Vlerat e ngulitjes.

Përfaqësimi JSON
{
  "values": [
    number
  ]
}

Lloji i detyrës

Lloji i detyrës për të cilën do të përdoret embedding.

Enums
TASK_TYPE_UNSPECIFIED Vlera e çaktivizuar, e cila do të jetë e paracaktuar në një nga vlerat e tjera të numrit.
RETRIEVAL_QUERY Përcakton se teksti i dhënë është një pyetje në një cilësim kërkimi/rikthimi.
RETRIEVAL_DOCUMENT Përcakton se teksti i dhënë është një dokument nga korpusi që kërkohet.
SEMANTIC_SIMILARITY Përcakton se teksti i dhënë do të përdoret për STS.
CLASSIFICATION Përcakton se teksti i dhënë do të klasifikohet.
CLUSTERING Specifikon që futjet do të përdoren për grumbullim.
QUESTION_ANSWERING Përcakton se teksti i dhënë do të përdoret për përgjigjen e pyetjeve.
FACT_VERIFICATION Përcakton që teksti i dhënë do të përdoret për verifikimin e fakteve.
CODE_RETRIEVAL_QUERY Përcakton që teksti i dhënë do të përdoret për rikthimin e kodit.