A simple and unified Python library to interact with various Large Language Models (LLMs) like Gemini, GPT, Claude, and more by abstracting provider-specific code and authentication.
Project description
aydie_genai
A simple, unified, and powerful Python library for generative AI.
aydie_genai is a Python library designed to eliminate the complexity of working with multiple Generative AI models. Instead of writing different code for Gemini, OpenAI, Claude, Groq, and others, you can use one simple, unified function to access them all.
Key Features
- Unified Interface: A single
generate()function for all supported models. - Simple & Intuitive: Get started in minutes. No need to learn multiple SDKs.
- Provider Agnostic: Switch between models like
gpt-4oandgemini-1.5-proby changing a single string. - Built-in Documentation: Rich docstrings provide in-console help via
help(genai.generate). - Robust Error Handling: Custom exceptions for common issues like missing API keys.
Supported Models
| Provider | Supported Models | Environment Variable |
|---|---|---|
gemini-1.5-pro, gemini-1.5-flash, gemini-1.0-pro, gemini-2.5-pro, gemini-2.5-flash |
GOOGLE_API_KEY |
|
| OpenAI | gpt-4o, gpt-4-turbo, gpt-3.5-turbo, gpt-4.1, gpt-4.1-mini |
OPENAI_API_KEY |
| Anthropic | claude-3-opus-20240229, claude-3-sonnet-20240229, claude-3-haiku-20240307, claude-3.5-sonnet |
ANTHROPIC_API_KEY |
| Groq | llama3-70b-8192, llama3-8b-8192, mixtral-8x7b-32768, llama3-70b-131k |
GROQ_API_KEY |
| DeepSeek | deepseek-chat, deepseek-coder, deepseek-v2-chat |
DEEPSEEK_API_KEY |
Installation
Install aydie_genai directly from PyPI:
pip install aydie-genai
⚡ Quick Start
1. Set Up Your API Keys
The library loads API keys from environment variables. The easiest way to manage these is to create a .env file in your project's root directory:
# .env file
GOOGLE_API_KEY="your_google_api_key"
OPENAI_API_KEY="your_openai_api_key"
ANTHROPIC_API_KEY="your_anthropic_api_key"
GROQ_API_KEY="your_groq_api_key"
DEEPSEEK_API_KEY="your_deepseek_api_key"
2. Generate a Response
Using the library is incredibly simple. Just import genai and call the generate function.
from aydie_genai import genai
# Example 1: Using Google Gemini
response_gemini = genai.generate(
model='gemini-1.5-pro',
prompt='Explain the theory of relativity in simple terms for a five-year-old.',
system_instruction='You are a friendly and patient teacher.'
)
print("Gemini says:", response_gemini)
# Example 2: Switching to OpenAI's GPT-4o is as easy as changing the model name
response_openai = genai.generate(
model='gpt-4o',
prompt='Write a short story about a robot who discovers music.'
)
print("\nOpenAI says:", response_openai)
Function Parameters
The genai.generate() function accepts the following parameters:
| Parameter | Type | Description |
|---|---|---|
model |
str |
Required. The identifier for the model you want to use (e.g., 'gpt-4o'). |
prompt |
str |
Required. The main user input or question for the model. |
system_instruction |
str |
A directive to guide the model's behavior or personality. |
temperature |
float |
Controls randomness (0.0 for deterministic, 2.0 for random). Defaults to 1.0. |
max_tokens |
int |
The maximum number of tokens to generate in the response. Defaults to 2048. |
top_p |
float |
Nucleus sampling parameter. Defaults to 1.0. |
api_key |
str |
Directly pass an API key, overriding the environment variable. Defaults to None. |
Contributing
Contributions are welcome! Whether it's adding new models, improving documentation, or fixing bugs, your help is appreciated. Please feel free to open an issue or submit a pull request.
License
This project is licensed under the MIT License - see the LICENSE file for details.
Connect with Me
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 aydie_genai-1.1.0.tar.gz.
File metadata
- Download URL: aydie_genai-1.1.0.tar.gz
- Upload date:
- Size: 14.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b5c72ca36b9499571728617d726a919733805b78ebd864271adb4a12f9b37691
|
|
| MD5 |
701704ff27dbcd3b92961307647fc10e
|
|
| BLAKE2b-256 |
039befb4c2cb48449425cd91845282a0001a0b32fc55c40b6dcea4ef46b76387
|
File details
Details for the file aydie_genai-1.1.0-py3-none-any.whl.
File metadata
- Download URL: aydie_genai-1.1.0-py3-none-any.whl
- Upload date:
- Size: 19.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f7f877f0a069915d3fcb8faa688ba9480863e3bcec37bfb0bbdd939c0e13d83
|
|
| MD5 |
7f8facfd09efd739118cacef3b27fcd4
|
|
| BLAKE2b-256 |
b9cdbd497be74298060536b6e2fc4707a2c9fff5ccd962a428a7c29c5889bcd8
|