Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

elizaOS Google GenAI Plugin (Python)

Python implementation of the elizaOS Google Generative AI plugin for Gemini models.

Installation

pip install elizaos-plugin-google-genai

Quick Start

import asyncio
from elizaos_plugin_google_genai import GoogleGenAIClient, GoogleGenAIConfig

async def main():
    # Load config from environment
    config = GoogleGenAIConfig.from_env()

    async with GoogleGenAIClient(config) as client:
        # Generate text
        response = await client.generate_text_large("What is the meaning of life?")
        print(response.text)

        # Generate embeddings
        embedding = await client.generate_embedding("Hello, world!")
        print(f"Embedding dimension: {len(embedding.embedding)}")

        # Generate structured JSON
        from elizaos_plugin_google_genai import ObjectGenerationParams

        result = await client.generate_object_small(ObjectGenerationParams(
            prompt="Generate a person profile with name and age",
            json_schema={
                "type": "object",
                "properties": {
                    "name": {"type": "string"},
                    "age": {"type": "number"}
                }
            }
        ))
        print(result.object)

asyncio.run(main())

Configuration

Set the following environment variables:

Variable Required Description
GOOGLE_GENERATIVE_AI_API_KEY Yes Your Google AI API key
GOOGLE_SMALL_MODEL No Override small model (default: gemini-2.0-flash-001)
GOOGLE_LARGE_MODEL No Override large model (default: gemini-2.5-pro-preview-03-25)
GOOGLE_EMBEDDING_MODEL No Override embedding model (default: text-embedding-004)
GOOGLE_IMAGE_MODEL No Override image model
GOOGLE_TIMEOUT_SECONDS No Request timeout (default: 60)

Features

  • Text Generation: Generate text using Gemini models
  • Embeddings: Generate text embeddings for semantic search
  • Image Analysis: Analyze and describe images
  • JSON Object Generation: Generate structured JSON with schema validation
  • Async/Await: Full async support for efficient I/O
  • Type Safety: Full type hints with Pydantic models

Development

# Install dev dependencies
pip install -e ".[dev]"

# Run tests
pytest

# Type checking
mypy elizaos_plugin_google_genai

# Linting
ruff check .
ruff format .

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

elizaos_plugin_google_genai-2.0.0a5.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

elizaos_plugin_google_genai-2.0.0a5-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

Details for the file elizaos_plugin_google_genai-2.0.0a5.tar.gz.

File metadata

File hashes

Hashes for elizaos_plugin_google_genai-2.0.0a5.tar.gz
Algorithm Hash digest
SHA256 e002ae35849ae57b458e39f61ca59d717b8539835761a7c3520ece01aa2c9224
MD5 82789618cdc9669a1563aa6de94db060
BLAKE2b-256 06c5331b8a1e3c2f74ba76ff05b407e5f7712bb61a9f299b8a02a8d0bbd7e1e2

See more details on using hashes here.

File details

Details for the file elizaos_plugin_google_genai-2.0.0a5-py3-none-any.whl.

File metadata

File hashes

Hashes for elizaos_plugin_google_genai-2.0.0a5-py3-none-any.whl
Algorithm Hash digest
SHA256 8776a120b6831fe2899ed002eedbe09a3f4d83cf591ac094e4c666fabc598aea
MD5 90140e64afdf495366e0033262afc014
BLAKE2b-256 7fb00e82bfb6fd87dd83c56744e4a4642ce4a21752f79351003c6b034607082a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.0.0a5 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page