Google / EmbeddingGemma
Milvus Integrated
Tarefa: Incorporação
Modalidade: Texto
Métrica de Similaridade: Cosseno, produto escalar
Licença: gemma
Dimensões: 768
Tokens Máximos de Entrada: 2048
Preço: Grátis
Introdução ao EmbeddingGemma
O modelo EmbeddingGemma é um modelo multilíngue de embedding de texto com 308M parâmetros da Google, construído sobre o Gemma 3 (com inicialização T5Gemma) e desenvolvido usando as mesmas bases de pesquisa por trás dos modelos Gemini. Ele é bem adequado para tarefas de busca e recuperação, incluindo classificação, agrupamento e busca por similaridade semântica.
EmbeddingGemm oferece suporte a mais de 100 idiomas e dimensões de saída flexíveis (de 768 até 128) via Matryoshka Representation Learning (MRL). Com uma janela de contexto de 2K tokens e uma pegada de memória inferior a 200MB quando quantizado, o EmbeddingGemma é executado com eficiência em hardware com recursos limitados. Ele pode ser implantado em dispositivos do dia a dia, como telefones, laptops e tablets, tornando recursos avançados de embedding de texto acessíveis em uma ampla variedade de ambientes.
Como criar embeddings com o EmbeddingGemma
Há duas maneiras principais de gerar embeddings vetoriais:
- PyMilvus: o SDK Python para Milvus que integra perfeitamente o modelo
EmbeddingGemma. - Biblioteca SentenceTransformer: a biblioteca Python
sentence-transformer.
Depois que os embeddings vetoriais são gerados, eles podem ser armazenados no Zilliz Cloud (um serviço de banco de dados vetorial totalmente gerenciado, desenvolvido com base no Milvus) e usados para busca por similaridade semântica. Aqui estão quatro etapas principais:
- Cadastre-se para obter uma conta gratuita no Zilliz Cloud.
- Configure um cluster serverless e obtenha o Public Endpoint e API Key.
- Crie uma coleção vetorial e insira seus embeddings vetoriais.
- Execute uma busca semântica nos embeddings armazenados.
Criar embeddings via PyMilvus e inseri-los no Zilliz Cloud para busca semântica
from pymilvus.model.dense import SentenceTransformerEmbeddingFunction
from pymilvus import MilvusClient
# Load the Google EmbeddingGemma-300M model
ef = SentenceTransformerEmbeddingFunction(
"google/embeddinggemma-300m", trust_remote_code=True
)
docs = [
"Artificial intelligence was founded as an academic discipline in 1956.",
"Alan Turing was the first person to conduct substantial research in AI.",
"Born in Maida Vale, London, Turing was raised in southern England.",
]
# Generate embeddings for documents
docs_embeddings = ef(docs)
queries = ["When was artificial intelligence founded", "Where was Alan Turing born?"]
# Generate embeddings for queries
query_embeddings = ef(queries)
# Connect to Zilliz Cloud with Public Endpoint and API Key
client = MilvusClient(uri=ZILLIZ_PUBLIC_ENDPOINT, token=ZILLIZ_API_KEY)
COLLECTION = "embeddinggemma_300m_documents"
# Drop collection if it exists
if client.has_collection(collection_name=COLLECTION):
client.drop_collection(collection_name=COLLECTION)
# Create collection with auto-detected dimension
client.create_collection(collection_name=COLLECTION, dimension=ef.dim, auto_id=True)
# Insert documents with embeddings
for doc, embedding in zip(docs, docs_embeddings):
client.insert(COLLECTION, {"text": doc, "vector": embedding})
# Search for similar documents
results = client.search(
collection_name=COLLECTION,
data=query_embeddings,
# consistency_level="Strong", # Strong consistency ensures accurate results but may increase latency
output_fields=["text"],
limit=2,
)
# Print search results
for i, query in enumerate(queries):
print(f"\nQuery: {query}")
for result in results[i]:
print(f" - {result['entity']['text']} (distance: {result['distance']:.4f})")
Para obter mais informações, consulte nossa documentação do Modelo de Embedding do PyMilvus.
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




