A simple module for making AI requests to Gemini API
Project description
Easy AI Module
A simple Python package for personal use that makes it easy to interact with Google's Gemini AI API.
Installation
pip install -e .
Usage
First, replace the API_KEY in easy_ai_module/gemini_client.py with your actual Gemini API key.
Text Generation
from easy_ai_module import GeminiAI
ai = GeminiAI() # Defaults to gemini-2.0-flash
# Generate text from a prompt
response = ai.generate_text("Write a short story about a robot")
print(response)
# Customize parameters
response = ai.generate_text(
prompt="Write a haiku about the moon",
max_tokens=100,
temperature=0.3 # Lower temperature for more focused output
)
print(response)
Image Analysis
from easy_ai_module import GeminiAI
ai = GeminiAI()
# Analyze an image (requires valid image URL)
image_url = "https://example.com/image.jpg"
response = ai.generate_with_image("What's in this image?", image_url)
print(response)
Models
You can specify different Gemini models:
# Use Gemini 1.5 Flash
ai = GeminiAI(model="gemini-1.5-flash")
# Use Gemma 3
ai = GeminiAI(model="gemma-3")
# Use Gemini 2.0 Flash (default)
ai = GeminiAI(model="gemini-2.0-flash")
# Use Gemini 2.0 Flash-Lite
ai = GeminiAI(model="gemini-2.0-flash-lite")
Model Selection Guide
The package includes a helpful guide to select the right model for your needs:
# Show general help on model selection
from easy_ai_module import GeminiAI
GeminiAI.help()
# Get recommendation for a specific use case
GeminiAI.help('reasoning') # For complex reasoning tasks
GeminiAI.help('speed') # For fastest response times
GeminiAI.help('budget') # For cost-effective usage
GeminiAI.help('creative') # For creative content generation
GeminiAI.help('image') # For image analysis tasks
GeminiAI.help('local') # For models that can run locally
Detailed Model Information
For detailed information about model capabilities, strengths, and pricing:
from easy_ai_module import print_model_guide
# Show information about all models
print_model_guide()
# Show information about a specific model
print_model_guide('gemini-2.0-flash')
Testing Tools
The package includes tools for testing and benchmarking models:
# Run a simple test with the default model
python model_demo.py
# Show the detailed guide for all models
python model_demo.py --guide
# Show help for a specific use case
python model_demo.py --show-help --use-case creative
# Run benchmarks on all models
python model_demo.py --benchmark
# Test a specific model with a custom prompt
python model_demo.py --model gemini-2.0-flash-lite --prompt "Explain quantum computing"
# Run all tests (help menu, benchmarks, and model guide)
python model_demo.py --test-all --verbose
Note
This package is for personal use only and contains a hardcoded API key. Do not share it with others.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file easy_ai_module-0.1.1.tar.gz.
File metadata
- Download URL: easy_ai_module-0.1.1.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2a4c5742a6cd0c4d2aac94b61a806ad613ea0373d7ca6849f9a3fab4fe6c6792
|
|
| MD5 |
0e363cd5493bc658aca0006621c70f28
|
|
| BLAKE2b-256 |
8ce70518e3af64a4d0af55e3912925979a7ff65a2f948a59da66e22d6651f3b6
|
File details
Details for the file easy_ai_module-0.1.1-py3-none-any.whl.
File metadata
- Download URL: easy_ai_module-0.1.1-py3-none-any.whl
- Upload date:
- Size: 7.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c16f7bbae8a479581e72222d3463756a11418fe29dfc156d21ddd7db0da4a8f0
|
|
| MD5 |
dc54303953ddaca7d2b1d0d20ba9d5d7
|
|
| BLAKE2b-256 |
8e1fed79eb4e8667be8ddbe905390c36b9a56969e86593f190e517a893db3ce4
|