""" HuggingChat Client - Cliente oficial para la API de HuggingChat Este modulo implementa un cliente Python para comunicarse con HuggingChat a traves del endpoint oficial de la API de Hugging Face. CONTEXTO HISTORICO Y EVOLUCION TECNOLOGICA: ========================================== Antes de 2024, HuggingChat solo estaba disponible como una interfaz web interactiva en https://huggingface.co/chat/. Los desarrolladores que querian integrar HuggingChat en sus aplicaciones se veian obligados a: 1. METODO OBSOLETO (Web Scraping): - Simular un navegador web usando bibliotecas como Selenium o requests - Manejar cookies de sesion y tokens CSRF dinamicos - Realizar POST requests a endpoints internos como /chat/conversation - Parsear HTML para extraer respuestas del modelo - Lidiar con captchas, rate limiting y cambios en la interfaz 2. PROBLEMAS DEL ENFOQUE ANTIGUO: - Dependencia de la estructura HTML de la pagina web - Vulnerabilidad a cambios en el frontend sin aviso previo - Necesidad de mantener sesiones activas con cookies complejas - Errores 403/404 frecuentes por deteccion de automatizacion - Violacion implicita de los terminos de servicio 3. SOLUCION MODERNA (API Oficial): - Desde 2024, Hugging Face proporciona una API REST oficial - Endpoint estandarizado: /v1/chat/completions - Autenticacion limpia mediante Bearer Token - Formato JSON estructurado compatible con OpenAI - Documentacion oficial y soporte garantizado VENTAJAS DEL NUEVO ENFOQUE: ========================== - Estabilidad: El contrato de la API es estable y versionado - Seguridad: Autenticacion mediante tokens oficiales de Hugging Face - Performance: Conexion directa sin overhead del navegador web - Mantenibilidad: No requiere actualizaciones por cambios en el frontend - Compliance: Uso autorizado y documentado oficialmente Autor: Asistente de IA especializado en integracion de APIs Fecha: Noviembre 2024 Licencia: MIT """ from .client import HuggingChatClient # Version del paquete siguiendo semantic versioning __version__ = "1.0.0" # Exportamos la clase principal para importacion directa __all__ = ["HuggingChatClient"]