| from reportlab.lib.pagesizes import letter |
| from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer |
| from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle |
|
|
| def create_pdf(): |
| doc = SimpleDocTemplate("D:\\OTROS\\LETXIPU-GRADIO\\Letxinet_Explicacion.pdf", pagesize=letter) |
| styles = getSampleStyleSheet() |
| |
| |
| title_style = styles['Heading1'] |
| subtitle_style = styles['Heading2'] |
| normal_style = styles['BodyText'] |
| |
| Story = [] |
| |
| Story.append(Paragraph("LETXINET GRADIO", title_style)) |
| Story.append(Paragraph("Asistente de Investigación Académica", subtitle_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("Letxinet Gradio es una avanzada plataforma de investigación científica impulsada por Inteligencia Artificial y agentes autónomos. Desarrollada y diseñada íntegramente de forma independiente por el equipo <b>c2mv</b>, esta aplicación está especialmente ajustada para entornos de investigación universitaria y para el <b>Build Small Hackathon</b> de HuggingFace.", normal_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("CARACTERÍSTICAS PRINCIPALES", subtitle_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("<b>1. Motor de Búsqueda Multi-Repositorio y Bypass 'Anubis':</b>", normal_style)) |
| Story.append(Paragraph("El núcleo del programa permite realizar búsquedas simultáneas en docenas de bases de datos. A diferencia de un buscador tradicional, Letxinet Gradio implementa un 'DME' (Deep Metadata Enhancement) y mecanismos de bypass heurísticos que permiten burlar escudos anti-bot como Cloudflare o DSpace v7. Esto le permite extraer PDFs ocultos de repositorios latinoamericanos como ALICIA o RENATI, lo cual es vital para investigaciones en Perú. Además incluye un 'Fallback Manager' que lanza búsquedas de rescate en OpenAlex y Semantic Scholar si los repositorios locales fallan o bloquean el acceso.", normal_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("<b>2. Ecosistema de Agentes y Arquitectura ARA+</b>", normal_style)) |
| Story.append(Paragraph("El sistema emplea un pipeline jerárquico. No le hace una sola pregunta a la IA, sino que lanza un enjambre de agentes:<br/>" |
| "- <b>El Metodólogo:</b> Revisa que el diseño científico sea sólido (usa protocolo GRADE).<br/>" |
| "- <b>El Teórico:</b> Elabora el marco conceptual.<br/>" |
| "- <b>El Arquitecto:</b> Orquesta el plan maestro de investigación.<br/>" |
| "- <b>El ARA+ (Agente de Refinamiento Académico):</b> La última fase, se encarga de corregir anglicismos, asegurar la cohesión geográfica (ej. priorizar datos de la 'Universidad Nacional del Santa', Perú) y garantizar la escritura en formato científico impecable.", normal_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("<b>3. Análisis de PDFs con PyMuPDF</b>", normal_style)) |
| Story.append(Paragraph("Se incluye un potente procesador de PDFs locales. En lugar de procesar ciegamente el texto, utiliza expresiones regulares complejas para separar el documento en 'Metodología', 'Resultados', 'Conclusiones' y extraer estadísticas críticas (p-values, intervalos de confianza). El sistema soporta la inclusión de datos directamente a un ChromaDB (base de datos vectorial local) para el sistema de RAG (Retrieval-Augmented Generation).", normal_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("<b>4. Clasificación GRADE Exhaustiva</b>", normal_style)) |
| Story.append(Paragraph("Se integraron 4 modos de evaluación de evidencia médica y científica: Keywords, Oxford, LLM e Híbrido. El algoritmo evalúa cada fuente y determina si es una evidencia de nivel ALTO (ej. Metaanálisis) o MUY BAJO (ej. Opinión experta), ponderando los resultados finales para evitar sesgos en el informe redactado por la IA.", normal_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("<b>5. Visualización Avanzada y Exportaciones Universales</b>", normal_style)) |
| Story.append(Paragraph("La herramienta incluye:<br/>" |
| "- Interfaz gráfica basada en Gradio (Glassmorphism, Dark Mode).<br/>" |
| "- Generación de grafos interactivos (Pyvis y NetworkX) que mapean co-citaciones.<br/>" |
| "- Sistema unificado de exportación de resultados a: Markdown, BibTeX (para gestores como Zotero o Mendeley), Word (.docx) y empaquetamiento del workspace en ZIP (informe, CSV de metadatos, configuraciones).", normal_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("CÓMO EJECUTAR ESTA APLICACIÓN", subtitle_style)) |
| Story.append(Spacer(1, 12)) |
| |
| Story.append(Paragraph("1. El sistema opera completamente en local con un entorno virtual Python (venv).<br/>" |
| "2. Todo el código fuente está alojado en GitHub y usa HuggingFace Spaces/Modelos a través de las APIs correspondientes.<br/>" |
| "3. El frontend de Gradio se lanza usando <i>python app.py</i>. Se ha eliminado cualquier capa de autenticación restrictiva; ahora es libre y de código abierto (Open Source).", normal_style)) |
| |
| doc.build(Story) |
|
|
| if __name__ == "__main__": |
| create_pdf() |
| print("PDF creado exitosamente con reportlab.") |
|
|