| --- |
| 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 <tu-repositorio> |
| 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** |