# Is there a Python SDK for Google embedding 2?

Source: https://zilliz.com/ai-faq/is-there-a-python-sdk-for-google-embedding-2
Author: zilliz

Yes, there is a Python SDK available for interacting with Google's embedding models, including the latest "Gemini Embedding 2". Google's embedding capabilities are primarily accessed through the Gemini API and Vertex AI. The Python library `google-generativeai` is the key SDK for working with Gemini models, including their embedding functionalities. This SDK allows developers to generate embeddings for various data types, such as text, images, video, and audio, using models like `gemini-embedding-001` and the newer `gemini-embedding-2-preview`.

The `gemini-embedding-2-preview` model is notable for being Google's first natively multimodal embedding model. It can map different modalities into a single, unified embedding space, which facilitates cross-modal search, classification, and clustering across over 100 languages. Developers can use the `embed_content` method within the `google-generativeai` library to generate these embeddings. For instance, you can configure the Gemini client with your API key and then call `client.models.embed_content` with the desired model (e.g., `'models/gemini-embedding-2-preview'`) and the content you wish to embed. This process typically returns a high-dimensional vector, with `gemini-embedding-2-preview` outputting a 3072-dimensional vector by default, though it supports truncation to smaller dimensions like 768, 512, or 256 without significant loss of quality, which can optimize storage and computational efficiency.

Once embeddings are generated using the Python SDK, they can be stored and utilized for various downstream applications, such as semantic search, recommendation systems, or Retrieval-Augmented Generation (RAG) pipelines. For managing and querying these high-dimensional vectors efficiently, a vector database is often employed. A vector database like [Zilliz Cloud](https://zilliz.com/cloud ) or Milvus provides the necessary infrastructure for storing and performing similarity searches on large datasets of embeddings, enabling fast retrieval of semantically similar items. The flexibility of Google's Python SDK, combined with the capabilities of modern vector databases, empowers developers to build sophisticated AI-powered applications that leverage the semantic understanding provided by embeddings.
