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
---
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**
* 🎥 **Demo Video:** [Ver Demo en YouTube](https://youtube.com/) *(Inserta el enlace final de tu demo aquí)*
* 🌐 **Social Link:** [Publicación en X / LinkedIn](https://twitter.com/) *(Inserta el enlace final de tu publicación aquí)*
* 👥 **Team Usernames:** [@c2mv](https://huggingface.co/c2mv)
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
```bash
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`):
```bash
# En Windows:
python -m venv venv
venv\Scripts\activate
# En Linux/Mac:
python3 -m venv venv
source venv/bin/activate
```
### 3. Instalar Dependencias
```bash
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`:
```bash
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:
```bash
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.