Una librería Python para integrar múltiples proveedores de IA (Gemini, OpenAI, etc.) con una interfaz simple y unificada.
- Soporte multi-proveedor: Gemini, OpenAI, DeepSeek y más
- Interfaz unificada: Mismos métodos para todos los proveedores
- Tipado fuerte: Validación automática de entradas/salidas
- Fácil extensión: Añade nuevos proveedores en minutos
# Instalar con Poetry (recomendado)
poetry add ai-flow --extras "all"
# O con pip
pip install ai-flow[all]
ai-flow/
├── ai_flow/ # Paquete principal
│ ├── __init__.py # Exporta clases/funciones principales
│ ├── core.py # Clase `AIFlow` (punto de entrada)
│ ├── providers/ # Conexiones a APIs/modelos
│ │ ├── __init__.py
│ │ ├── openai.py # Soporte para OpenAI
│ │ ├── huggingface.py # Soporte para HF Inference API
│ │ └── local.py # Modelos ONNX/TensorFlow Lite
│ ├── models/ # Modelos pre-entrenados locales (opcional)
│ ├── utils/ # Helpers
│ │ ├── cache.py # Caché con Redis/SQLite
│ │ └── ethics.py # Filtros de contenido
├── tests/ # Tests unitarios
│ ├── test_core.py
│ └── test_providers.py
├── examples/ # Ejemplos de uso
│ ├── basic_usage.py
│ └── web_integration.py
├── docs/ # Documentación
│ ├── quickstart.md
│ └── api_reference.md
├── pyproject.toml # Configuración de build (Poetry)
├── README.md # Doc principal (badges, instalación)
└── LICENSE # MIT/Apache 2.0
from ai_flow import AIFlow
from dotenv import load_dotenv
load_dotenv() # Carga API keys desde .env
# Inicialización
ai = AIFlow(
provider="gemini", # También "openai", "deepseek"
model="gemini-1.5-pro-latest" # Modelo opcional
)
# Generación de texto
response = ai.generate_text(
"Explica el quantum computing en una frase"
)
print(response.text)
1- Clona el repositorio:
git clone https://github.com/tu-usuario/ai-flow.git
cd ai-flow
2- Instala dependencias:
poetry install --extras "all"
3- Ejecuta tests:
poetry run pytest -v
¡Contribuciones son bienvenidas! Sigue estos pasos:
1- Abre un Issue para discutir el cambio
2- Haz fork del proyecto
3- Crea una rama con tu feature (git checkout -b feature/awesome-feature)
4- Haz commit de tus cambios (git commit -m 'Add awesome feature')
5- Haz push a la rama (git push origin feature/awesome-feature)
6- Abre un Pull Request
Consulta el CHANGELOG.md para detalles de cada versión.
- Creador: Pedro A. Martínez A.
- Email: pama205@gmail.com
- GitHub: @pama205