0Pricing
AI Agents · Lezione

Generare embedding con text-embedding-3

Utilizzi text-embedding-3-small/large di OpenAI per convertire stringhe in vettori da 1536 o 3072 dimensioni.

Generare embedding con text-embedding-3 è una lezione AI Agents gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento AI Agents, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso AI Agents include 4 lezioni in totale.

Modelli di embedding OpenAI

OpenAI offre due modelli di embedding per la produzione:

  • text-embedding-3-small — 1536 dimensioni, economico e veloce
  • text-embedding-3-large — 3072 dimensioni, qualità migliore e più lento

Utilizzi small nella maggior parte dei casi; scelga large solo quando la qualità è più importante del costo.

Il primo embedding

Una riga di codice dell’SDK:

from openai import OpenAI
client = OpenAI()

resp = client.embeddings.create(
    model='text-embedding-3-small',
    input='Hello, world!'
)
vector = resp.data[0].embedding
print(len(vector))      # 1536

Embedding in batch

L’API supporta gli elenchi, molto più velocemente delle chiamate singole:

texts = ['cat', 'dog', 'pizza', 'sushi']
resp = client.embeddings.create(
    model='text-embedding-3-small',
    input=texts
)
vectors = [d.embedding for d in resp.data]
# vectors[0] is for 'cat', vectors[1] for 'dog', etc.

Limiti dei token

Ogni input ha un limite massimo di token (8192 per text-embedding-3). I documenti lunghi devono essere suddivisi in chunk prima dell’elaborazione.

Ridurre le dimensioni

È possibile richiedere un numero inferiore di dimensioni (embedding Matryoshka), utile per lo spazio di archiviazione:

resp = client.embeddings.create(
    model='text-embedding-3-large',
    input='Hello',
    dimensions=512    # default would be 3072
)

Costo

Al momento della stesura:

  • text-embedding-3-small: $0.02 / 1M token
  • text-embedding-3-large: $0.13 / 1M token

Trasformare in embedding 1M di parole costa circa $0.025 con il modello small: essenzialmente nulla.

Creare gli embedding una volta e riutilizzarli per sempre

Gli embedding non cambiano quando si ripete l’operazione: è possibile calcolarli una volta e memorizzarli. Il caching è essenziale per qualsiasi sistema di produzione.

Normalizzare i vettori

Gli embedding OpenAI sono già normalizzati secondo L2 (lunghezza = 1). Ciò significa che la similarità coseno equivale al prodotto scalare, riducendo il calcolo necessario:

import numpy as np
a = np.array(vec_a)
b = np.array(vec_b)
sim = np.dot(a, b)     # since |a| = |b| = 1

Embedding asincroni

Per un throughput elevato, utilizzi il client asincrono:

from openai import AsyncOpenAI
import asyncio

client = AsyncOpenAI()

async def embed_batch(texts):
    resp = await client.embeddings.create(
        model='text-embedding-3-small',
        input=texts
    )
    return [d.embedding for d in resp.data]

vectors = asyncio.run(embed_batch(['a', 'b', 'c']))

Riprovare in caso di errore

Le chiamate per gli embedding possono fallire come qualsiasi chiamata HTTP. Le racchiuda in un meccanismo di retry con backoff:

from tenacity import retry, wait_exponential, stop_after_attempt

@retry(wait=wait_exponential(multiplier=1, max=10), stop=stop_after_attempt(5))
def safe_embed(text):
    return client.embeddings.create(model='text-embedding-3-small', input=text)

Memorizzare gli embedding

Tre opzioni comuni di archiviazione:

  • SQLite con l’estensione sqlite-vec
  • Postgres con l’estensione pgvector
  • Database vettoriale dedicato (Pinecone, Qdrant, Weaviate)

Consapevolezza dei costi

Quanto costa all’incirca trasformare in embedding 1 milione di parole con text-embedding-3-small?

Riepilogo

Scelga text-embedding-3-small, esegua le chiamate in batch, memorizzi i vettori e avrà le basi della ricerca semantica.

Domande Frequenti

La lezione «Generare embedding con text-embedding-3» è gratuita?

Sì — il testo completo di «Generare embedding con text-embedding-3» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso AI Agents, passa a CoddyKit PRO. Il corso AI Agents include 4 lezioni in totale.

Cosa imparerò in «Generare embedding con text-embedding-3»?

Utilizzi text-embedding-3-small/large di OpenAI per convertire stringhe in vettori da 1536 o 3072 dimensioni. Eserciti AI Agents con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare AI Agents?

Non è richiesta alcuna esperienza precedente. AI Agents su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Generare embedding con text-embedding-3»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione AI Agents?

Sì. Ogni lezione AI Agents include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Cosa sono gli embedding (rappresentazioni vettoriali)
  2. Generare embedding con text-embedding-3
  3. Similarità coseno per il retrieval
  4. Confronto tra modelli di embedding (OpenAI, Cohere e OSS)
← Torna a AI Agents