Inicio Rápido¶
Esta guía te llevará desde cero hasta generar tu primer reporte PDF profesional en menos de 5 minutos.
Prerrequisitos¶
- qry-doc instalado (ver instalación)
- API key de OpenAI (u otro proveedor LLM)
- Un archivo CSV con datos
1. Configurar el LLM¶
import pandasai as pai
from pandasai_openai import OpenAI
# Configurar OpenAI
llm = OpenAI() # Usa OPENAI_API_KEY del entorno
pai.config.set({"llm": llm})
2. Cargar datos¶
from qry_doc import QryDoc
# Desde archivo CSV
qry = QryDoc("ventas.csv", llm=llm)
# O desde un DataFrame
import pandas as pd
df = pd.read_csv("ventas.csv")
qry = QryDoc(df, llm=llm)
3. Hacer preguntas¶
# Pregunta simple
respuesta = qry.ask("¿Cuántos registros hay?")
print(respuesta)
# Análisis más complejo
tendencia = qry.ask("¿Cómo han evolucionado las ventas mes a mes?")
print(tendencia)
4. Generar un reporte PDF¶
5. Personalizar el reporte¶
from qry_doc import ReportTemplate
# Template personalizado
template = ReportTemplate(
primary_color="#003366",
title_font="Helvetica-Bold",
)
qry.generate_report(
"Análisis de ventas",
"reporte_personalizado.pdf",
title="Informe Q4 2024",
template=template
)
Ejemplo completo¶
"""
Ejemplo completo de qry-doc
"""
import pandasai as pai
from pandasai_openai import OpenAI
from qry_doc import QryDoc, ReportTemplate
# 1. Configurar LLM
llm = OpenAI()
pai.config.set({"llm": llm})
# 2. Cargar datos
qry = QryDoc("ventas.csv", llm=llm)
# 3. Explorar datos
print(f"Columnas: {qry.columns}")
print(f"Registros: {qry.shape[0]}")
# 4. Hacer preguntas
total = qry.ask("¿Cuál es el total de ventas?")
print(f"Total: {total}")
top_producto = qry.ask("¿Cuál es el producto más vendido?")
print(f"Top producto: {top_producto}")
# 5. Exportar a CSV
qry.extract_to_csv(
"Top 10 productos por ventas",
"top_productos.csv"
)
# 6. Generar reporte PDF
template = ReportTemplate(
primary_color="#1a1a2e",
)
qry.generate_report(
"Resumen ejecutivo de ventas Q4 2024",
"reporte_ventas.pdf",
title="Informe de Ventas",
template=template
)
print("✅ Reporte generado: reporte_ventas.pdf")
Características avanzadas (v0.1.3)¶
La versión 0.1.3 añade nuevas características para PDFs:
Portada personalizada¶
Logo en pie de página¶
from qry_doc import LogoPosition
template = ReportTemplate(
footer_logo_path=Path("mi_logo.png"),
footer_logo_position=LogoPosition.BOTTOM_RIGHT,
)
Sistema de secciones¶
from qry_doc import SectionType, SectionConfig
sections = [
SectionConfig(SectionType.COVER),
SectionConfig(SectionType.SUMMARY),
SectionConfig(SectionType.DATA),
]
template = ReportTemplate(sections=sections)
Siguiente paso¶
Explora las guías detalladas para cada característica: