Google / EmbeddingGemma
Milvus Integrated
Tarea: Incrustación
Modalidad: Texto
Métrica de Similitud: Coseno, producto punto
Licencia: gemma
Dimensiones: 768
Tokens de Entrada Máximos: 2048
Precio: Gratis
Introducción a EmbeddingGemma
El modelo EmbeddingGemma es un modelo multilingüe de embeddings de texto con 308 millones de parámetros de Google, construido sobre Gemma 3 (con inicialización T5Gemma) y desarrollado usando las mismas bases de investigación detrás de los modelos Gemini. Es muy adecuado para tareas de búsqueda y recuperación, incluidas la clasificación, el agrupamiento y la búsqueda de similitud semántica.
EmbeddingGemm admite más de 100 idiomas y ofrece dimensiones de salida flexibles (de 768 hasta 128) mediante Matryoshka Representation Learning (MRL). Con una ventana de contexto de 2K tokens y una huella de memoria inferior a 200MB cuando se cuantiza, EmbeddingGemma se ejecuta de manera eficiente en hardware con recursos limitados. Puede implementarse en dispositivos cotidianos, como teléfonos, portátiles y tabletas, haciendo que las capacidades avanzadas de embeddings de texto sean accesibles en una amplia variedad de entornos.
Cómo crear embeddings con EmbeddingGemma
Hay dos formas principales de generar embeddings vectoriales:
- PyMilvus: el SDK de Python para Milvus que integra perfectamente el modelo
EmbeddingGemma. - Biblioteca SentenceTransformer: la biblioteca de Python
sentence-transformer.
Una vez generados los embeddings vectoriales, pueden almacenarse en Zilliz Cloud (un servicio de base de datos vectorial totalmente gestionado impulsado por Milvus) y usarse para búsqueda de similitud semántica. Estos son cuatro pasos clave:
- Regístrate para obtener una cuenta de Zilliz Cloud gratis.
- Configura un clúster serverless y obtén el Public Endpoint y la API Key.
- Crea una colección vectorial e inserta tus embeddings vectoriales.
- Ejecuta una búsqueda semántica en los embeddings almacenados.
Crear embeddings mediante PyMilvus e insertarlos en Zilliz Cloud para búsqueda 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 obtener más información, consulta nuestra documentación del modelo de embeddings de PyMilvus.
Flujos de trabajo de IA sin interrupciones
Desde incrustaciones hasta búsqueda de IA escalable—Zilliz Cloud te permite almacenar, indexar y recuperar incrustaciones con una velocidad y eficiencia inigualables.
Prueba Zilliz Cloud Gratis




