letxinet / README.md
C2MV's picture
fix: downgrade gradio to 4.39.0 to avoid pydantic schema bug
3a77bb0 verified
|
Raw
History Blame Contribute Delete
4.63 kB

A newer version of the Gradio SDK is available: 6.20.0

Upgrade
metadata
title: Letxinet Gradio
emoji: 🔬
colorFrom: purple
colorTo: indigo
sdk: gradio
sdk_version: 4.39.0
python_version: '3.10'
app_file: app.py
pinned: false
tags:
  - build-small-hackathon
  - agents
  - research
  - smolagents
  - langchain

Letxinet Gradio: Asistente de Investigación Académica 🔬🤖

Hackathon Submission: Build Small Hackathon

Letxinet Gradio es una avanzada plataforma de investigación científica impulsada por Inteligencia Artificial y agentes autónomos. Permite realizar búsquedas profundas en docenas de repositorios académicos globales y regionales, sintetizar miles de documentos, construir mapas de conocimiento y renderizar informes matemáticos y científicos con alta fidelidad (LaTeX y Markdown).

🌟 Características Principales

  • Búsqueda Multi-Repositorio: Conexión nativa con OpenAlex, PubMed, arXiv, Scopus, Crossref, DOAJ, Zenodo, repositorios de LATAM (ALICIA, RENATI, SciELO, Redalyc) y más.
  • Agentes de Síntesis IA: Un ecosistema de agentes (Arquitecto, Redactor, Validador, ARA+) que leen, analizan y redactan informes científicos complejos sin alucinaciones.
  • Formatos Científicos Precisos: Soporte nativo para matemáticas, símbolos químicos, notación científica y estructuración estricta en LaTeX adaptada al navegador.
  • Mapeo de Conocimiento: Generación de grafos interactivos de redes de citas, coautoría e instituciones utilizando análisis relacional profundo.
  • Vectores y Memoria Local: Procesamiento avanzado de PDFs y embeddings para chatear con tus propios documentos y recuperar datos clave instantáneamente.

⚙️ Requisitos y Dependencias

Asegúrate de tener instalado Python 3.10 o superior.

Las dependencias clave que hacen posible este proyecto son:

  • Gradio 4+: Interfaz web interactiva e intuitiva.
  • LangChain & ChromaDB: Cerebro vectorial y RAG (Retrieval-Augmented Generation) para leer PDFs.
  • PyMuPDF: Extracción ultrarrápida de texto de documentos científicos.
  • NetworkX & Pyvis: Renderizado de grafos relacionales y redes.
  • SQLAlchemy: Almacenamiento local de historial de investigaciones.
  • Modelos IA: Soporte múltiple para Mistral, Llama, OpenAI, Anthropic a través de Groq, OpenRouter y APIs nativas.

Puedes ver la lista técnica completa en el archivo requirements.txt.


🚀 Instalación y Despliegue Local

Sigue estos pasos para levantar la plataforma en tu máquina:

1. Clonar el Repositorio

git clone https://github.com/C2MV96/letxinet-gradio.git
cd letxinet-gradio

2. Crear un Entorno Virtual

Se recomienda aislar las dependencias en un entorno virtual (venv):

# En Windows:
python -m venv venv
venv\Scripts\activate

# En Linux/Mac:
python3 -m venv venv
source venv/bin/activate

3. Instalar Dependencias

pip install -r requirements.txt

4. Configurar Variables de Entorno

El sistema necesita credenciales para acceder a los LLMs (Inteligencias Artificiales) y a las bases de datos académicas de pago/privadas.

  1. Copia el archivo .env.example y renómbralo a .env:
    cp .env.example .env
    
  2. Abre el archivo .env y pega tus llaves API (ej. MISTRAL_API_KEY, GROQ_API_KEY). No necesitas llenar todas, solo las que planees usar.

5. Iniciar la Aplicación

Ejecuta el archivo principal para iniciar el servidor local:

python app.py

O si estás en Windows, simplemente dale doble clic al archivo start.bat.

La aplicación se abrirá en tu navegador (por defecto en http://127.0.0.1:7860).


📖 Estructura del Proyecto

  • /backend: Contiene el núcleo lógico, los agentes IA, parsers de repositorios (/providers), y prompts científicos (/prompts).
  • /modules: Componentes de interfaz (UI) escritos en Gradio (pestañas, configuraciones, reportes).
  • /assets: Archivos estáticos como estilos CSS personalizados, librerías de interfaz de cristal (Glassmorphism) y scripts.
  • /lib: Librerías frontend pesadas de terceros empaquetadas localmente (vis.js, tom-select).

🛡️ Seguridad

  • Las carpetas venv, bases de datos SQLite y el archivo .env están debidamente ignoradas (.gitignore) para que tu información y llaves API permanezcan completamente seguras y locales.