SINTESIS / README.md
Lukeetah's picture
Update README.md
b267983 verified

A newer version of the Gradio SDK is available: 6.15.2

Upgrade
metadata
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

# 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:

# 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
  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:

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 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