..

AI Embedding Models - Google Gemini

Gemini Embedding: to get started, check out the official developer documentation and cookbooks:

setup
# mkdir $(date +%Ya%mm%dd-%Hh%M%S)
mkdir $(date +%Ya%mm%dd-%Hh%Mm%Ss)
python3 -m venv env-embeddings
source env-embeddings/bin/activate

# `-I`  Ignore the installed packages, overwriting them.
# `-U`  Upgrade all specified packages to the newest available version.

pip3 install -U google-genai==1.36.0
pip3 install --upgrade --force-reinstall google-genai
pip3 show google-genai
pip3 index versions google-genai
hands-on
from google import genai
client = genai.Client()
result = client.models.embed_content(
        model="gemini-embedding-001",
        contents="What is the meaning of life?")
print(result.embeddings)
GEMINI_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \
  python3 gemini-ai.py
more samples

Generating embeddings

from google import genai
client = genai.Client()
result = client.models.embed_content(
        model="gemini-embedding-001",
        contents= [
          "What is the meaning of life?",
          "What is the purpose of existence?",
          "How do I bake a cake?"
        ])
for embedding in result.embeddings:
  print(embedding)

Controlling embedding size

from google import genai
from google.genai import types
client = genai.Client()
result = client.models.embed_content(
  model="gemini-embedding-001",
  contents="What is the meaning of life?",
  config=types.EmbedContentConfig(output_dimensionality=768)
)
[embedding_obj] = result.embeddings
embedding_length = len(embedding_obj.values)
print(f"Length of embedding: {embedding_length}")
GEMINI_API_KEY=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \
  python3 gemini-ai.py

other embedding models