--- title: SINTESIS sdk: gradio emoji: 🐨 colorFrom: green colorTo: blue pinned: false sdk_version: 5.34.2 --- # 🧠 Plataforma de Inteligencia Colectiva Aumentada Esta plataforma implementa un sistema de inteligencia colectiva aumentada con perfilamiento cognitivo basado en el modelo DISC de "Surrounded by Idiots" y un motor de síntesis colectiva. ## ✨ Características Principales ### 🎯 Sistema DISC - **Perfilamiento cognitivo**: 12 preguntas psicométricas basadas en el libro "Surrounded by Idiots" - **Embeddings semánticos**: Utiliza all-MiniLM-L6-v2 para mapeo a vector DISC - **Visualización interactiva**: Gráfico de radar para mostrar el perfil psicométrico ### 🤖 Motor de Síntesis Colectiva - **Análisis contextual**: Extracción de conceptos clave usando Groq (Llama 3 70B) - **Síntesis multi-perspectiva**: Análisis desde las 4 perspectivas DISC (D/I/S/C) - **Principios universales**: Generación de insights aplicables a todos los perfiles - **Grafo de conocimiento**: Actualización dinámica con NetworkX ### 💾 Persistencia Adaptativa - **SQLite local**: Almacenamiento eficiente en base de datos local - **Sincronización**: Opcional con Hugging Face Hub para respaldo en la nube - **Caché de embeddings**: Optimización de rendimiento para consultas repetidas ### 🎨 Interfaz Gradio - **Tabs organizados**: Perfilamiento, contribución colectiva y visualización de grafo - **Visualización con Plotly**: Gráficos interactivos del grafo de conocimiento - **Diseño adaptable**: Interfaz que se adapta según el perfil DISC del usuario ## 🚀 Instalación ```bash # Clonar el repositorio git clone cd collective-intelligence-platform # Instalar dependencias pip install -r requirements.txt # Ejecutar la aplicación python app.py ``` ## ⚙️ Variables de Entorno Configura las siguientes variables de entorno antes de ejecutar: ```bash # Obligatorio para análisis con LLM export GROQ_API_KEY="tu_clave_groq_api" # Opcional para sincronización con Hugging Face export HF_TOKEN="tu_token_hf" export HF_REPO_ID="tu_usuario/tu_repositorio" # Configuración de base de datos export DB_PATH="collective_intelligence.db" export SYNC_TO_HF="true" # o "false" ``` ## 🐳 Despliegue en Hugging Face Spaces ### 1. Crear un nuevo Space 1. Ve a [Hugging Face Spaces](https://huggingface.co/spaces) 2. Crea un nuevo Space con SDK: Docker 3. Configura las variables de entorno en Settings ### 2. Variables de entorno requeridas En la configuración del Space, añade: - `GROQ_API_KEY`: Tu clave API de Groq - `HF_TOKEN`: Token de Hugging Face (opcional) - `HF_REPO_ID`: ID del repositorio para sincronización (opcional) ### 3. Subir archivos Sube todos los archivos del proyecto a tu Space: - `app.py` - `requirements.txt` - `Dockerfile` - `README.md` ## 📖 Uso de la Plataforma ### 1. Perfilamiento DISC 1. **Accede al tab "Perfilamiento DISC"** 2. **Completa las 12 preguntas** basadas en situaciones reales 3. **Obtén tu perfil** con visualización y descripción detallada ### 2. Contribución Colectiva 1. **Accede al tab "Contribución Colectiva"** 2. **Escribe tu contribución** (ideas, reflexiones, conocimientos) 3. **Recibe análisis automático**: - Conceptos clave extraídos - Síntesis desde 4 perspectivas DISC - Principios universales generados ### 3. Grafo de Conocimiento 1. **Visualiza el grafo** de conocimiento colectivo 2. **Explora conexiones** entre usuarios, contribuciones y conceptos 3. **Actualiza en tiempo real** conforme se añaden contribuciones ## 🏗️ Arquitectura del Sistema ### Componentes Principales 1. **DISCProfiler**: Gestión del perfilamiento psicométrico 2. **CollectiveIntelligenceEngine**: Motor de análisis con LLM 3. **KnowledgeGraph**: Gestión del grafo con NetworkX 4. **DatabaseManager**: Persistencia con SQLite 5. **GradioInterface**: Interfaz de usuario ### Flujo de Datos ``` Usuario → DISC Profile → Contribución → Análisis LLM → Grafo → Visualización ↓ Base de Datos ← → Hugging Face Hub ``` ## 🔧 Desarrollo y Personalización ### Modificar preguntas DISC Edita la variable `DISC_QUESTIONS` en `app.py` para personalizar las preguntas del assessment. ### Cambiar modelo de embeddings Modifica la inicialización de `SentenceTransformer` para usar un modelo diferente: ```python self.model = SentenceTransformer('tu-modelo-preferido') ``` ### Personalizar visualizaciones Las funciones de visualización están en la clase `GradioInterface` y pueden modificarse para cambiar colores, estilos y layouts. ## 📊 Modelos y Tecnologías - **LLM**: Groq Llama 3 70B para análisis y síntesis - **Embeddings**: all-MiniLM-L6-v2 para similitud semántica - **Grafos**: NetworkX para modelado de conocimiento - **Visualización**: Plotly para gráficos interactivos - **UI**: Gradio para interfaz web intuitiva - **Base de datos**: SQLite para persistencia local ## 🤝 Contribución 1. Fork el proyecto 2. Crea una rama para tu feature (`git checkout -b feature/AmazingFeature`) 3. Commit tus cambios (`git commit -m 'Add some AmazingFeature'`) 4. Push a la rama (`git push origin feature/AmazingFeature`) 5. Abre un Pull Request ## 📄 Licencia Este proyecto está bajo la Licencia MIT - ver el archivo [LICENSE](LICENSE) para detalles. ## 🙏 Agradecimientos - Thomas Erikson por el modelo DISC en "Surrounded by Idiots" - Groq por la infraestructura de LLM ultrarrápida - Hugging Face por la plataforma y modelos - La comunidad open source por las herramientas utilizadas --- **Construido con ❤️ para potenciar la inteligencia colectiva**