Solución modular en Python para la integración de servicios cognitivos de Azure (Vision, Speech & Text Analytics).
Este proyecto implementa una arquitectura de servicios para consumir las APIs de Inteligencia Artificial de Azure. A diferencia de scripts lineales simples, este repositorio utiliza Programación Orientada a Objetos (OOP) y principios de Clean Code para separar la lógica de negocio, la configuración y la interfaz de usuario.
El sistema unifica tres capacidades principales:
- Text Analytics: Detección de idioma y análisis de confianza.
- Speech Services: Transcripción de audio a texto (Speech-to-Text) mediante micrófono.
- Computer Vision: Extracción de texto (OCR) y dibujado dinámico de bounding boxes sobre las imágenes analizadas.
El proyecto ha sido refactorizado para seguir una estructura escalable:
- Modularidad: Cada servicio de Azure (Vision, Speech, Text) tiene su propia clase dedicada en la carpeta
services/. - Configuración Segura: Uso de variables de entorno (
.env) para la gestión de credenciales. - Type Hinting: Código moderno con tipado estático para mayor robustez.
- Gestión de Datos: Persistencia local de historial en JSON.
AIServicesSolutionsPython/
├── services/ # Lógica encapsulada
│ ├── text_service.py
│ ├── speech_service.py
│ └── vision_service.py
├── data/ # Assets e Historial
│ └── images/
├── main.py # Punto de entrada (CLI Menu)
├── requirements.txt # Dependencias
└── .env # Configuración (Ignorado en Git)
⚙️ Instalación y Uso
- Clonar el repositorio Bash
git clone https://github.com/ymvs84/AIServicesSolutionsPython.git cd AIServicesSolutionsPython
- Crear Entorno Virtual
Es recomendable usar un entorno virtual para aislar las dependencias: Bash
python -m venv venv .\venv\Scripts\Activate
python3 -m venv venv source venv/bin/activate
- Instalar Dependencias Bash
pip install -r requirements.txt
- Configuración
Crea un archivo .env en la raíz basándote en .env.example y añade tus claves de Azure: Ini, TOML
AI_SERVICE_ENDPOINT="https://tu-endpoint.cognitiveservices.azure.com/" AI_SERVICE_KEY="tu-clave" SPEECH_KEY="tu-clave-speech" SPEECH_REGION="westeurope"
- Ejecutar Bash
python main.py
🛠️ Tecnologías
Python 3.10+
Azure SDKs: azure-ai-textanalytics, azure-ai-vision, azure-cognitiveservices-speech
Pillow (PIL): Procesamiento de imágenes.
Dotenv: Gestión de entornos.
Autor: Yago Menéndez