Skip to main content

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

aydie_genai Banner

A simple, unified, and powerful Python library for generative AI.

PyPI version Total PyPI downloads License Build Status


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-4o and gemini-1.5-pro by 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
Google 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

Website LinkedIn Twitter Instagram YouTube GitLab Email

Project details


Download files

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

Source Distribution

aydie_genai-1.0.2.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

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

aydie_genai-1.0.2-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file aydie_genai-1.0.2.tar.gz.

File metadata

  • Download URL: aydie_genai-1.0.2.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for aydie_genai-1.0.2.tar.gz
Algorithm Hash digest
SHA256 2521eee101df041d4c7a662f08e8e36fc2775bd16a0c05c6dda6627b9613500d
MD5 0a9e97f31c26e637bfe985a1946ae4b7
BLAKE2b-256 f44675b65ed799721d8f35e63bb8e7c68320e713111c4a9da839bfa7c63cf6d1

See more details on using hashes here.

File details

Details for the file aydie_genai-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: aydie_genai-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.7

File hashes

Hashes for aydie_genai-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5ce383f055ed554567f5f339202c5541f9405303f30968dc726d1325267cdd91
MD5 4821ea91c22a68181fa808030b8fc111
BLAKE2b-256 65fbfac08302258efa8e9bc3d1865458b3518f6777002d6a4f00ff3430f17f0f

See more details on using hashes here.

Supported by

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