Technical Support AI Assistant is a FastAPI-based reference project for building a support assistant over technical manuals and product documentation, positioned as a Microsoft-first MVP on Azure.
It combines:
- Azure AI Foundry model deployments for response generation and multimodal reasoning
- Azure AI Search for retrieval over indexed manuals
- Redis for short-term memory and response caching
- Jinja2 + Tailwind CSS for a lightweight web UI
This repository has been sanitized to be generic and reusable. It is no longer tied to any specific company or product catalog.
The codebase still contains some Azure OpenAI-compatible transport and environment variable names. That compatibility layer is intentional for now to keep the MVP functional while the remaining migration to the latest Foundry patterns is completed incrementally.
This is a reference implementation / MVP codebase. It is useful for learning, experimentation, and as a starting point for enterprise support copilots, but it still needs hardening before a production-grade public release.
- Chat-style technical support interface
- Retrieval over manuals and structured support content
- Optional image analysis / multimodal extensions
- Redis-backed session and response caching
- FastAPI backend with HTML frontend served from the same app
- Microsoft-first deployment path
- Backend: FastAPI, Jinja2, Python
- AI: Azure AI Foundry model deployments
- Search: Azure AI Search
- Cache: Redis
- Frontend styling: Tailwind CSS
- Deployment: Azure App Service or Azure Container Apps
- Recommended security/compliance add-ons: Azure Key Vault, Application Insights, Microsoft Entra ID
git clone https://github.com/Nambu89/Asistente-IA-SAT.git
cd Asistente-IA-SAT
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
npm install
cp .env.example .env
# fill in your Azure + Redis values
python run.pyOpen:
http://127.0.0.1:8000
Use .env.example as the reference template.
Main variables:
AZURE_OPENAI_API_KEYAZURE_OPENAI_ENDPOINTAZURE_OPENAI_API_VERSIONAZURE_OPENAI_DEPLOYMENT_NAMEPORTENABLE_DEBUG_ENDPOINTSAZURE_SEARCH_ENDPOINTAZURE_SEARCH_API_KEYAZURE_SEARCH_INDEX_NAMEREDIS_HOSTREDIS_PASSWORDREDIS_PORT
- debug and diagnostic endpoints are disabled by default via
ENABLE_DEBUG_ENDPOINTS=false - the local runtime and docs now use port
8000consistently TrustedHostMiddlewaredefaults to explicit local hosts instead of wildcard hosts- the container filesystem no longer relies on world-writable
777permissions
Good for:
- fast deployment
- simple hosting
- small/medium workloads
Good for:
- container-first deployments
- more control over scaling
- cleaner path to background jobs and future microservices
- Azure AI Foundry
- Azure AI Search
- Azure Cache for Redis
- Azure Key Vault
- Azure Monitor + Application Insights
- Microsoft Entra ID (optional authentication layer)
Before making this repository public, you should still:
- rotate any credentials that may have been committed in history
- purge git history if required
- remove any non-source artifacts still tracked locally
- add tests and CI
- validate all prompts and public-facing copy
Suggested next steps:
- complete the remaining migration from Azure OpenAI-compatible transport to the latest Foundry calling pattern (
/openai/v1/) - replace legacy prompt/config coupling with cleaner adapters
- add tests for routes, retrieval, and caching
- add GitHub Actions CI
- optionally split backend services more clearly
- Documentation index / Índice de documentación
- Azure MVP architecture diagram / Diagrama Azure MVP
- Diagram placeholders / Marcadores para diagramas
MIT
Technical Support AI Assistant es un proyecto de referencia basado en FastAPI para construir un asistente de soporte técnico sobre manuales y documentación de producto, planteado como un MVP Microsoft-first sobre Azure.
Combina:
- Despliegues de modelos en Azure AI Foundry para generación de respuestas y razonamiento multimodal
- Azure AI Search para recuperación sobre manuales indexados
- Redis para memoria de corto plazo y caché de respuestas
- Jinja2 + Tailwind CSS para una interfaz web ligera
Este repositorio ha sido saneado para que sea genérico y reutilizable. Ya no está ligado a una empresa ni a un catálogo concreto.
El código todavía conserva parte del transporte y algunas variables de entorno con naming compatible con Azure OpenAI. Esa capa de compatibilidad se mantiene de forma deliberada para no romper el MVP mientras la migración restante al patrón más actual de Foundry se hace por fases.
Se trata de una implementación de referencia / MVP. Es útil para aprendizaje, experimentación y como punto de partida para copilotos de soporte enterprise, pero aún necesita endurecimiento antes de considerarse una release pública lista para producción.
- Interfaz conversacional de soporte técnico
- Recuperación sobre manuales y documentación estructurada
- Extensión opcional a análisis de imágenes / multimodalidad
- Caché de sesiones y respuestas con Redis
- Backend FastAPI con frontend HTML servido desde la misma aplicación
- Ruta de despliegue orientada a tecnologías Microsoft
- Backend: FastAPI, Jinja2, Python
- IA: despliegues de modelos en Azure AI Foundry
- Búsqueda: Azure AI Search
- Caché: Redis
- Estilos frontend: Tailwind CSS
- Despliegue: Azure App Service o Azure Container Apps
- Servicios recomendados de seguridad/operación: Azure Key Vault, Application Insights, Microsoft Entra ID
git clone https://github.com/Nambu89/Asistente-IA-SAT.git
cd Asistente-IA-SAT
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
npm install
cp .env.example .env
# rellena las variables de Azure + Redis
python run.pyAbrir en navegador:
http://127.0.0.1:8000
Usa .env.example como plantilla de referencia.
Variables principales:
AZURE_OPENAI_API_KEYAZURE_OPENAI_ENDPOINTAZURE_OPENAI_API_VERSIONAZURE_OPENAI_DEPLOYMENT_NAMEPORTENABLE_DEBUG_ENDPOINTSAZURE_SEARCH_ENDPOINTAZURE_SEARCH_API_KEYAZURE_SEARCH_INDEX_NAMEREDIS_HOSTREDIS_PASSWORDREDIS_PORT
- los endpoints de debug y diagnóstico vienen desactivados por defecto con
ENABLE_DEBUG_ENDPOINTS=false - runtime local y documentación quedan alineados en el puerto
8000 TrustedHostMiddlewaredeja de permitir wildcard por defecto en local- el contenedor ya no depende de permisos globales
777
Buena para:
- despliegue rápido
- hosting sencillo
- cargas pequeñas o medias
Buena para:
- despliegues container-first
- mayor control del escalado
- evolución futura hacia jobs o microservicios
- Azure AI Foundry
- Azure AI Search
- Azure Cache for Redis
- Azure Key Vault
- Azure Monitor + Application Insights
- Microsoft Entra ID (opcional como capa de autenticación)
Antes de hacer este repositorio público conviene todavía:
- rotar cualquier credencial que haya podido quedar en el historial
- purgar el historial git si hace falta
- eliminar artefactos no fuente aún trackeados localmente
- añadir tests y CI
- revisar prompts y textos públicos
Siguientes pasos recomendados:
- completar la migración restante desde transporte compatible con Azure OpenAI al patrón actual de Foundry (
/openai/v1/) - desacoplar prompts y configuración legacy
- añadir tests de rutas, retrieval y caché
- añadir GitHub Actions CI
- opcionalmente separar mejor los servicios del backend
MIT
