OpenAI / text-embedding-3-small
Milvus & Zilliz Cloud Integrated
Tarefa: Incorporação
Modalidade: Texto
Métrica de Similaridade: Qualquer (Normalizado)
Licença: Proprietário
Dimensões: 1536
Tokens Máximos de Entrada: 8191
Preço: $ 0,02/1 milhão de fichas
Introdução ao text-embedding-3-small
O text-embedding-3-small é o modelo de embedding de texto pequeno do OpenAI, criando embeddings com 1536 dimensões. Comparado com outros modelos de embedding de texto do OpenAI, como o text-embedding-ada-002 e o text-embedding-3-large, o text-embedding-3-small é o modelo mais económico com maior precisão e eficiência. É excelente para aplicações de pesquisa vetorial de uso geral.
Vamos dar uma olhada rápida em alguns conceitos básicos.
| Modelo | Dimensões | Máximo de tokens | Modelo MIRACL avg | METB avg | Preço |
|---|---|---|---|---|---|
| text-embedding-3-large | 3072 | 8191 | 54.9 | 64.6 | $0.13 / 1M tokens |
| text-embedding-ada-002 | 1536 | 8191 | 31.4 | 61.0 | $0.10 / 1M tokens |
| text-embedding-3-small | 1536 | 8191 | 44.0 | 62.3 | $0.02 / 1M tokens |
Como gerar embeddings vetoriais com text-embedding-3-small
Há duas maneiras principais de criar embeddings vetoriais:
- PyMilvus: o SDK Python para Milvus que integra perfeitamente o modelo
text-embedding-3-small. - OpenAI Embedding: o SDK Python oferecido pela OpenAI.
Uma vez gerados os embeddings vectoriais, estes podem ser armazenados no Zilliz Cloud (um serviço de base de dados vetorial totalmente gerido pela Milvus) e utilizados para pesquisa de semelhanças semânticas. Eis quatro passos fundamentais:
- Inscreva-se para obter uma conta Zilliz Cloud gratuitamente.
- Configurar um cluster sem servidor e obter o Ponto de extremidade público e chave de API.
- Crie uma coleção de vectores e insira os seus embeddings vectoriais.
- Execute uma pesquisa semântica nos embeddings armazenados.
Gerar embeddings vectoriais através do PyMilvus e inseri-los no Zilliz Cloud para pesquisa semântica
from pymilvus import model, MilvusClient
OPENAI_API_KEY = "your-openai-api-key"
ef = model.dense.OpenAIEmbeddingFunction(
nome_do_modelo="text-embedding-3-small",
api_key=OPENAI_API_KEY,
)
# Gerar embeddings para documentos
docs = [
"A inteligência artificial foi fundada como disciplina académica em 1956",
"Alan Turing foi a primeira pessoa a efetuar investigação substancial em IA.",
"Nascido em Maida Vale, Londres, Turing foi criado no sul de Inglaterra."
]
docs_embeddings = ef.encode_documents(docs)
# Gerar embeddings para consultas
consultas = ["Quando foi fundada a inteligência artificial",
"Onde nasceu Alan Turing?"]
consultas_embeddings = ef.encode_queries(queries)
# Ligar ao Zilliz Cloud com o ponto de extremidade público e a chave da API
cliente = MilvusClient(
uri=ZILLIZ_PUBLIC_ENDPOINT,
token=ZILLIZ_API_KEY)
COLLECTION = "documents" (coleção)
if client.has_collection(nome_da_colecção=COLLECTION):
client.drop_collection(nome_da_colecção=COLLECTION)
client.create_collection(
nome_da_colecção=COLLECTION,
dimension=ef.dim,
auto_id=True)
for doc, embedding in zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vetor": embedding})
resultados = cliente.search(
nome_da_colecção=COLLECTION,
data=query_embeddings,
consistency_level="Strong",
output_fields=["text"])
Para mais informações, consulte a nossa PyMilvus Embedding Model documentation.
Gerar embeddings através do SDK Python da OpenAI e inseri-los no Zilliz Cloud para pesquisa semântica
from openai import OpenAI
from pymilvus import MilvusClient
OPENAI_API_KEY = "your-openai-api-key"
cliente = OpenAI(api_key=OPENAI_API_KEY)
# Gerar embeddings para documentos
doc_response = client.embeddings.create(
input=[
"A inteligência artificial foi fundada como disciplina académica em 1956",
"Alan Turing foi a primeira pessoa a efetuar investigação substancial em IA",
"Nascido em Maida Vale, Londres, Turing foi criado no sul de Inglaterra."
],
model="text-embedding-3-small"
)
doc_embeddings = [data.embedding for data in doc_response.data]
# Gerar embeddings para consultas
query_response = client.embeddings.create(
input=["Quando foi fundada a inteligência artificial",
"Onde nasceu Alan Turing?"],
model="text-embedding-3-small"
)
dados_da_consulta = [dados.incorporados para dados em dados_da_consulta]
# Ligar ao Zilliz Cloud com o ponto final público e a chave API
cliente = MilvusClient(
uri=ZILLIZ_PUBLIC_ENDPOINT,
token=ZILLIZ_API_KEY)
COLLECTION = "documents" (coleção)
if client.has_collection(nome_da_colecção=COLLECTION):
client.drop_collection(nome_da_colecção=COLLECTION)
client.create_collection(
nome_da_colecção=COLLECTION,
dimension=1536,
auto_id=True)
for doc, embedding in zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vetor": embedding})
resultados = cliente.search(
nome_da_colecção=COLLECTION,
data=query_embeddings,
consistency_level="Strong",
output_fields=["text"])
Para mais informações, consulte OpenAI's Embedding Guide.
- Introdução ao text-embedding-3-small
- Como gerar embeddings vetoriais com text-embedding-3-small
Conteúdo
Fluxos de trabalho de IA sem interrupções
De embeddings a busca escalável de IA—Zilliz Cloud permite armazenar, indexar e recuperar embeddings com velocidade e eficiência incomparáveis.
Experimente o Zilliz Cloud grátis

