Metadata-Version: 2.4
Name: gen-wrapper
Version: 0.1.1
Summary: A lightweight wrapper for multiple LLM providers with optional LangChain integrations.
Project-URL: Homepage, https://github.com/lakshya811/gen_wrapper
Project-URL: Documentation, https://github.com/lakshya811/gen_wrapper#readme
Project-URL: Source, https://github.com/lakshya811/gen_wrapper
Project-URL: Issues, https://github.com/lakshya811/gen_wrapper/issues
Author-email: Your Name <you@example.com>
License-Expression: MIT
License-File: LICENSE
Keywords: anthropic,google,langchain,llm,openai,wrapper
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Typing :: Typed
Requires-Python: >=3.9
Requires-Dist: pydantic-settings>=2.0.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: requests>=2.25.0
Requires-Dist: tenacity>=8.2.0
Provides-Extra: async
Requires-Dist: aiohttp>=3.8.0; extra == 'async'
Requires-Dist: httpx>=0.24.0; extra == 'async'
Provides-Extra: dev
Requires-Dist: black>=23.0.0; extra == 'dev'
Requires-Dist: flake8>=6.0.0; extra == 'dev'
Requires-Dist: isort>=5.12.0; extra == 'dev'
Requires-Dist: mypy>=1.0.0; extra == 'dev'
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'dev'
Requires-Dist: pytest-mock>=3.10.0; extra == 'dev'
Requires-Dist: pytest>=7.0.0; extra == 'dev'
Provides-Extra: langchain
Requires-Dist: langchain-anthropic>=0.1.0; extra == 'langchain'
Requires-Dist: langchain-google-genai>=1.0.0; extra == 'langchain'
Requires-Dist: langchain-openai>=0.1.0; extra == 'langchain'
Requires-Dist: langchain>=0.2.0; extra == 'langchain'
Provides-Extra: llm-providers
Requires-Dist: anthropic>=0.25.0; extra == 'llm-providers'
Requires-Dist: google-generativeai>=0.3.0; extra == 'llm-providers'
Requires-Dist: openai>=1.0.0; extra == 'llm-providers'
Provides-Extra: monitoring
Requires-Dist: prometheus-client>=0.16.0; extra == 'monitoring'
Provides-Extra: test
Requires-Dist: pytest-asyncio>=0.21.0; extra == 'test'
Requires-Dist: pytest-mock>=3.10.0; extra == 'test'
Requires-Dist: pytest>=7.0.0; extra == 'test'
Description-Content-Type: text/markdown

# gen-wrapper

[![PyPI](https://img.shields.io/pypi/v/gen-wrapper.svg)](https://pypi.org/project/gen-wrapper/)
[![Python](https://img.shields.io/pypi/pyversions/gen-wrapper.svg)](https://pypi.org/project/gen-wrapper/)
[![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](LICENSE)

A unified interface for multiple LLM providers (OpenAI, Anthropic, Groq, DeepSeek, Fireworks, Gemini, local).

## Installation

```bash
pip install gen-wrapper
# or with extras
pip install "gen-wrapper[llm-providers,langchain,async]"
```

## Environment

Set needed API keys, e.g. (PowerShell):

```powershell
$env:OPENAI_API_KEY="your_openai_key"
$env:ANTHROPIC_API_KEY="your_anthropic_key"
$env:GROQ_API_KEY="your_groq_key"
$env:DEEPSEEK_API_KEY="your_deepseek_key"
$env:FIREWORKS_API_KEY="your_fireworks_key"
$env:GOOGLE_API_KEY="your_google_key"

# Azure OpenAI (optional)
$env:AZURE_OPENAI_API_KEY="..."
$env:AZURE_OPENAI_ENDPOINT="..."
$env:AZURE_OPENAI_DEPLOYMENT="..."
$env:AZURE_OPENAI_API_VERSION="..."
```

## Quickstart (Python)

```python
from gen_wrapper import LLMWrapper

wrapper = LLMWrapper(provider="openai", model="gpt-4o")
print(wrapper.simple_chat("Hello!"))
```

## CLI

```bash
llm-cli --list-providers
llm-cli --list-models openai
llm-cli --provider openai --prompt "Hello world"
```

## Extras

- llm-providers: OpenAI, Anthropic, Google Generative AI SDKs
- langchain: LangChain core + provider adapters
- async: aiohttp, httpx
- monitoring: prometheus-client

## Links

- Source, docs, and issues: https://github.com/lakshya811/gen_wrapper
- PyPI: https://pypi.org/project/gen-wrapper/

## License

MIT
