> ## Documentation Index
> Fetch the complete documentation index at: https://docs.venice.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Embeddings

> Genera embedding vettoriali con Venice per ricerca semantica, recupero RAG, clustering e raccomandazioni usando l'endpoint /embeddings.

Gli embedding convertono il testo in vettori che catturano il significato semantico. Usali per ricerca, generazione aumentata da recupero (RAG), clustering, raccomandazioni, deduplicazione e calcolo della similarità.

L'endpoint embeddings di Venice è compatibile con OpenAI. Invia una singola stringa o un array di stringhe a `/embeddings`, quindi memorizza i vettori restituiti nel tuo database o indice vettoriale.

## Utilizzo di Base

<CodeGroup>
  ```python Python theme={"system"}
  import os
  from openai import OpenAI

  client = OpenAI(
      api_key=os.environ["VENICE_API_KEY"],
      base_url="https://api.venice.ai/api/v1",
  )

  response = client.embeddings.create(
      model="text-embedding-bge-m3",
      input="Privacy-first AI infrastructure for semantic search",
  )

  vector = response.data[0].embedding
  print(len(vector), vector[:5])
  ```

  ```javascript Node.js theme={"system"}
  import OpenAI from "openai";

  const client = new OpenAI({
    apiKey: process.env.VENICE_API_KEY,
    baseURL: "https://api.venice.ai/api/v1",
  });

  const response = await client.embeddings.create({
    model: "text-embedding-bge-m3",
    input: "Privacy-first AI infrastructure for semantic search",
  });

  const vector = response.data[0].embedding;
  console.log(vector.length, vector.slice(0, 5));
  ```

  ```bash cURL theme={"system"}
  curl https://api.venice.ai/api/v1/embeddings \
    -H "Authorization: Bearer $VENICE_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "text-embedding-bge-m3",
      "input": "Privacy-first AI infrastructure for semantic search",
      "encoding_format": "float"
    }'
  ```
</CodeGroup>

## Input in Batch

Passa un array di stringhe per generare embedding di più testi in una singola richiesta:

```json theme={"system"}
{
  "model": "text-embedding-bge-m3",
  "input": [
    "Venice supports private chat completions.",
    "Embeddings help retrieve relevant documents.",
    "Vector search powers RAG applications."
  ]
}
```

La risposta preserva l'ordine dell'input. Memorizza ogni vettore insieme all'ID del testo di origine, ai metadati e all'ID del modello di embedding.

## Flusso di Lavoro Tipico

1. Suddividi i documenti di origine in chunk.
2. Genera gli embedding per ogni chunk.
3. Memorizza vettori e metadati in un database vettoriale.
4. Genera l'embedding della query dell'utente.
5. Recupera i chunk più vicini.
6. Invia il contesto recuperato a un modello di chat.

Per un'implementazione completa, consulta [Creare un Bot RAG Privato](/guides/projects/private-rag-bot).

## Scelta del Modello

Usa la pagina [Modelli di Embedding](/models/embeddings) per confrontare i modelli di embedding disponibili, le dimensioni e i prezzi.

<Note>
  Usa lo stesso modello di embedding per l'indicizzazione e per le query. Mescolare modelli diversi può rendere i punteggi di similarità inaffidabili perché gli spazi vettoriali non sono interscambiabili.
</Note>

## Risorse Correlate

* [API Embeddings](/api-reference/endpoint/embeddings/generate)
* [Modelli di Embedding](/models/embeddings)
* [Guida al Bot RAG Privato](/guides/projects/private-rag-bot)
