Pipeline: Artículo → Diapositivas Beamer
Dado un artículo (PDF o fuente TeX), producir una presentación Beamer compilada con el tema SUSTech bajo 论文分享/<VENUE> - <SHORT_TITLE>/.
Variante del tema: \usetheme{sustech} (minúsculas, Variante A), de https://github.com/yhbcode000/sustech-slides-template.git. NO use \usetheme{SUSTech} (Variante B, usada en MT3) — tiene macros diferentes y no tiene páginas separadoras de secciones.
Relación de aspecto predeterminada: aspectratio=1610 (16:10). NO use 169 (16:9) — 1610 es preferido para compatibilidad con laptops/proyectores y da un poco más de espacio vertical para contenido denso.
Entorno bash: Todos los comandos se ejecutan bajo la herramienta bash de la sesión, que en Windows es Git Bash. rm -rf, cp -r, mkdir -p al estilo Unix están disponibles. El directorio de trabajo se establece por bloque mediante cwd.
Requisitos (OBLIGATORIOS)
Toda presentación DEBE cumplir estas reglas. Sin excepciones excepto donde se indique.
- Sin desbordamiento de diapositivas (estricto) — todas las diapositivas DEBEN compilarse sin advertencias
Overfull \hboxoOverfull \vbox. Sigaskill://sustech-beamer-overflow: solo una columna, máximo 3 bloques + 1 llamada, tablas ≤5 columnas con\footnotesize, sin\resizebox. La ÚNICA excepción es la página de índice/TOC (diseño\twopane) — se tolera un ligero desbordamiento vertical (Overfull \vbox) en el marco del TOC.
Fase 1 — Configuración del directorio
-
Acepte
$ARGUMENTS— una ruta a PDF, archivo TeX.tar.gzo archivo.tex(absoluta o relativa desde el cwd de la sesión), o una URL de arXiv / ID de arXiv simple. -
Si la entrada es una URL de arXiv o ID simple (coincide con
^\d{4}\.\d{4,5}(v\d+)?$o contienearxiv.org/(abs|pdf|e-print)/), descargue primero la fuente TeX:uv run --no-project python \ "<SKILLS_DIR>/paper-download-arxiv-paper-source/scripts/download_source.py" \ "<arxiv-ref>" # salida predeterminada = cwd de la sesión- Si stdout termina con
TEX_SOURCES:: deriveDIR_NAME— venue de\setsource{Venue}{Year}en el TeX extraído depaper_src/(fallback\markboth, luegoarXiv <year>); título corto = las primeras 1–3 palabras significativas de\title{...}(fallback: pregunte al usuario, regla existente). Luegomkdir -p "论文分享/<DIR_NAME>"ymv arXiv-<id>.tar.gz paper_src "论文分享/<DIR_NAME>/". - Si stdout termina con
PDF_ONLY: <path>: el papel no tiene fuente TeX en arXiv — copie ese PDF a论文分享/<DIR_NAME>/según la rama.pdfa continuación (la ruta de MinerU aplica, la PUERTA DE DECISIÓN de la Fase 2 no cambia). - Si el comando sale con código distinto de cero: deténgase e informe el mensaje de stderr al usuario.
- Si stdout termina con
-
Derive un nombre de directorio corto
<VENUE> - <SHORT_TITLE>(las entradas arXiv ya lo derivaron en el paso 2):- Quite
.pdf/.tar.gz/.tgz/.tex, reemplace espacios/guiones/caracteres especiales. - Pregunte al usuario por el nombre si el venue/título no se pueden inferir del nombre de archivo.
- Convención: ejemplos existentes son
SCIENCE ROBOTICS - HIL SERL,SCIENCE ROBOTICS - MT3.
- Quite
-
Cree
论文分享/<DIR_NAME>/y extraiga/copie la fuente allí (las entradas arXiv ya movieron el archivo +paper_src/en el paso 2):.tar.gz/.tgz: extraiga contar -xzfenpaper_src/..pdf: copie directamente a la raíz del directorio del artículo..tex: copie los archivos fuente enpaper_src/.
Fase 2 — Extracción de contenido
PUERTA DE DECISIÓN: Si la fuente TeX está disponible (archivo .tar.gz que contiene .tex, o archivo .tex directo), omita MinerU por completo. Lea todo el contenido (título, autores, resumen, secciones, tablas, referencias) directamente de la fuente TeX usando read — es más preciso que la salida de MinerU y preserva exactamente las estructuras de las tablas.
Solo ejecute MinerU cuando la entrada sea un PDF sin fuente TeX disponible:
"$MINERU_PYTHON" \
"<SKILLS_DIR>/pdf-to-markdown/convert.py" \
"论文分享/<DIR_NAME>/<pdf_filename>.pdf" \
"论文分享/<DIR_NAME>/md_output" \
--lang en
- Artículos en inglés:
--lang en. Chinos/mixtos:--lang ch. - El wrapper imprime
DONE -> ...mden caso de éxito. - La salida se encuentra en
md_output/<name>/auto/<name>.md.
Si el entorno de MinerU falta, deténgase e indique al usuario que lo instale según la verificación previa de la habilidad pdf-to-markdown.
Fase 3 — Instalar la plantilla empaquetada
El paquete promocionado paper-to-beamer es la fuente de plantilla principal y offline:
uv run --project "<SKILLS_DIR>/paper-to-beamer" python \
"<SKILLS_DIR>/paper-to-beamer/scripts/copy_template.py" \
--output "论文分享/<DIR_NAME>/slides-template"
Esto copia el paquete verificado main_template.tex, latexmkrc, y sustech-theme/. Nunca se recurre a una clonación de red. Solo cuando el usuario lo solicite explícitamente para una actualización de plantilla se puede clonar el repositorio upstream en un directorio temporal separado para revisión antes del lanzamiento del paquete.
Fase 4 — Crear directorio de trabajo y copiar elementos esenciales
# cwd: $PP_ROOT
mkdir -p "论文分享/<DIR_NAME>/slides-beamer"
cp -r "论文分享/<DIR_NAME>/slides-template/sustech-theme" \
"论文分享/<DIR_NAME>/slides-beamer/"
cp "论文分享/<DIR_NAME>/slides-template/latexmkrc" \
"论文分享/<DIR_NAME>/slides-beamer/"
cp "论文分享/<DIR_NAME>/slides-template/main_template.tex" \
"论文分享/<DIR_NAME>/slides-beamer/main.tex"
mkdir -p "论文分享/<DIR_NAME>/slides-beamer/figures"
Todas las ediciones posteriores solo afectan a slides-beamer/.
slides-template/ se mantiene intacto como referencia.
Fase 5 — Leer y extraer contenido
Cuando la fuente TeX esté disponible (preferida — archivo .tar.gz o .tex):
lea el .tex principal de paper_src/ directamente con read. Todo el contenido
(título, autores, resumen, secciones, tablas, referencias) se extrae de la
fuente LaTeX estructurada. Las tablas se pueden recrear directamente desde los entornos
tabular — no se necesita MinerU.
Cuando solo haya Markdown disponible (entrada solo PDF):
lea md_output/<name>/auto/<name>.md. Extraiga estos puntos de datos:
Fase 6 — Rellenar slides-beamer/main.tex
Esta es la fase creativa principal. Lea main.tex (copiado de la plantilla),
luego edítelo sección por sección para reemplazar cada marcador de posición \ph{…}
y \phfig con contenido real del Markdown.
Use el ejemplo de HIL SERL como referencia de estilo relleno:
论文分享/SCIENCE ROBOTICS - HIL SERL/slides-beamer/main.tex.
6.0 Metadatos del preámbulo
\title[ACRONYM 论文分享]{Título descriptivo en chino}— título en chino como principal; el título corto DEBE incluir el sufijo "论文分享". Siga HIL SERL:\title[HIL-SERL 论文分享]{...}.\subtitle{Título original del artículo en inglés}— título original en inglés como subtítulo.\author[short]{…}— lista completa de autores del artículo.\institute[short]{…}— instituciones principales.\setsource{Venue}{Year}— venue del artículo.\setdomains{\domaintag{...}\domaintag{...}\domaintag{...}}— 3-4 etiquetas de dominio de investigación mostradas en la página de título como píldoras de colores. Las etiquetas DEBEN estar en chino (ej.多智能体RL,LLM Agent,RL后训练). Los términos en inglés comoMulti-Agent RL,RL Post-TrainingNUNCA están permitidos — se ven inconsistentes junto al texto chino y rompen el estilo bilingüe del tema SUSTech.\setpresenter{$PRESENTER}(predeterminado) o pregunte al usuario.\setvenue{<lugar del venue>}(predeterminado: pregunte al usuario).- Nota al pie de la página de título
\creditline(por defecto:哔哩哔哩 · 白拾的物理AI组会 · github.com/yhbcode000/sustech-slides-template). Se recomienda mantener para compartir/publicar videos; para presentaciones/defensas que requieran un diseño limpio, agregue\hidecreditsen el preámbulo para desactivar, o\setcreditline{}para vaciar, o\setcreditline{...}para personalizar.
Elimine las macros auxiliares de marcador de posición \ph y \phfig — ya no se necesitan.
6.1 Página de título (首页)
El marco \titlepage se mantiene igual. Los metadatos del preámbulo lo controlan.
6.2 📑 Página de contenido (TOC mejorado)
La plantilla ahora usa un diseño de dos paneles \twopane (del tema). El panel izquierdo contiene un TOC compacto mediante {\tocdense\small\tableofcontents[hideallsubsections]}. El panel derecho contiene tres bloques:
\block{核心观察}— 3-5 métricas/perspectivas clave del artículo\block{附录讨论}— 3-5 aspectos destacados del apéndice (señal Oral, comparaciones, explicaciones del método)\callout[一句话概括]— resumen del artículo en una frase
El marco separado 论文信息 se ELIMINA. El título/venue/autores ya están en el preámbulo. El resumen en una frase vive en la llamada del TOC. No se necesita un marco de información separado.
Espaciado del TOC: Use {\tocdense\small\tableofcontents[hideallsubsections]} — \tocdense (del tema) compacta el espaciado del TOC de beamer. Anteponga \vspace{-0.6em} para acercar el contenido al título.
Margen izquierdo: El \tocdense del tema añade \hskip2em de margen izquierdo para un diseño equilibrado del TOC.
6.3 👤 Autor介绍 — VALIDACIÓN CRUZADA EN LÍNEA ANTES DE ESCRIBIR
CRÍTICO: DEBE buscar en línea biografías de autores ANTES de escribir este marco. Los PDFs de artículos solo proporcionan nombres y afiliaciones — carecen de nombres en chino, cargos actuales, trabajos previos notables, nombres de laboratorio y reconocimientos recientes. Entradas genéricas como "Universidad de Tsinghua, primer autor" son INACEPTABLES.
Procedimiento de búsqueda (ejecutar ANTES de escribir el marco):
- Escriba a
xd://web_searchcon{"query": "<primer autor> <institución> <dominio del artículo>", "limit": 5}— obtenga nombre en chino, rol actual, trabajo previo, laboratorio. - Escriba a
xd://web_searchcon{"query": "<autor de correspondencia 1> <institución>", "limit": 5}— lo mismo para cada autor de correspondencia. - Referencie al menos 2 fuentes por autor. Prefiera páginas personales o Google Scholar.
- También busque mediante
xd://web_searchcon{"query": "<institución> <lab/prof> <dominio>", "limit": 5}para contexto del laboratorio.
Qué extraer de los resultados de búsqueda:
- Nombre en chino (los PDFs de artículos a menudo carecen de caracteres chinos)
- Cargo actual (¿profesor asistente? ¿estudiante de doctorado? ¿industria? la afiliación del artículo puede estar desactualizada)
- Trabajo previo notable (¿por qué es conocida esta persona? ej. MAPPO, RLinf, GRPO)
- Nombre del laboratorio/grupo (ej. EDI Lab, NICS-EFC, RAIL)
- Reconocimientos recientes (artículos en venues top, premios, roles de liderazgo)
Rellene el marco con biografías telegráficas y referenciadas:
\begin{frame}{作者介绍}
\begin{block}{核心作者}
\begin{itemize}
\item \shl{<primer autor>}(<chino>):<departamento>, <rol>. Conocido por \keyword{<trabajo previo>}. En este artículo <rol>.
\item Los coautores provienen de <instituciones>, formando un equipo <descripción>.
\end{itemize}
\end{block}
\tightgap
\begin{block}{通讯作者}
\begin{itemize}
\item \shl{<corr 1>}(<chino>):<cargo> @ <inst>, PI de <lab>. Líneas de investigación: \keyword{<f1>}、\keyword{<f2>}. <trabajo notable>. En este artículo <rol>.
\item \shl{<corr 2>}(<chino>):<cargo> @ <inst>, <lab>. <notable>. En este artículo <rol>.
\end{itemize}
\end{block}
\tightgap
\begin{callout}[研究脉络]
<trayectoria del equipo que lleva a este artículo>。
\end{callout}
\end{frame}
6.4 📋 背景与动机
Mapear a la sección 研究背景与动机 en la plantilla:
- Establezca
\renewcommand{\secblurb}{…}(resumen de una frase) antes de\section. - Rellene los marcadores de posición de viñetas con motivación telegráfica del resumen/introducción.
- Mueva la figura a una diapositiva
[plain,c]dedicada después de esta diapositiva de contenido:\fitfigure{fig1_overview.jpg}+\figcap{1}{caption}. Elimine el envoltorio\begin{columns}— esta diapositiva se mantiene solo texto. - Rellene
\metric{…}{…}con hasta 3 números clave del artículo.
6.5 相关工作
Mapear a la sección 相关工作:
- Rellene áreas de investigación de la sección de Trabajo Relacionado del artículo.
- Enumere métodos de referencia reales y sus relaciones.
- Indique el diferenciador clave en la llamada.
Si el artículo tiene una sección clara de "Trabajo Relacionado", úsela. En caso contrario, condense a partir de referencias dispersas en la introducción.
6.6 🔧 方法
Mapear a la sección 方法 (2 marcos: visión general + diseño principal).
Marco 1 (Visión general):
- Enumere los componentes del sistema de la sección de métodos del artículo.
- Mueva la figura a una diapositiva
[plain,c]dedicada después de esta diapositiva de contenido:\fitfigure{fig2_system.jpg}+\figcap{2}{caption}. Elimine el envoltorio\begin{columns}.
Marco 2 (Diseño principal):
- Enumere hasta 4 elementos clave de diseño.
- Agregue una conclusión de una línea en la llamada.
6.7 🧪 实验设计
Mapear a la sección 实验设计:
- Enumere categorías de tareas/conjuntos de datos.
- Indique el protocolo de evaluación y las líneas de base.
- Mueva la figura a una diapositiva
[plain,c]dedicada después de esta diapositiva de contenido:\fitfigure{fig3_tasks.jpg}+\figcap{3}{caption}. Elimine el envoltorio\begin{columns}.
6.8 📈 结果与分析
Mapear a la sección 实验结果 (2 marcos: tabla principal + análisis).
Marco 1 (Tabla principal):
- Recrear la tabla con datos reales del artículo.
- Mantener ≤5 columnas, ≤6 filas.
- Resaltar los mejores resultados con
\shl{…}. - Use
\theadrow,\altrow,\thc{…}conbooktabs. - Conclusión de una línea en la llamada.
Marco 2 (Análisis):
- Análisis con viñetas (3–4 observaciones).
- Figura de análisis en una diapositiva
[plain,c]dedicada después de las viñetas de análisis.
6.9 💡 要点总结
Mapear a la sección 要点总结 (corresponde a "核心贡献"):
- 3 conclusiones clave enumeradas.
- Resumen de una frase en la llamada.
6.10 ⚠️ 局限与讨论
Mapear a la sección 局限性:
- 3–4 limitaciones.
- Direcciones futuras identificadas por los autores en la llamada.
6.11 📚 参考文献
Mapear al marco 参考文献:
- Rellene las entradas
bibitemcon referencias reales del artículo. - La primera
bibitemdebe ser el artículo mismo (marcado(本文)). - Incluya 3–5 líneas de base clave.
6.12 💬 Q&A
Reemplace el texto de marcador de posición en el marco Q&A con:
- Nombre del presentador, institución, información de contacto.
- Mantenga el estilo
Q&A(\fontsize{40}{44}etc.).
6.13 Manejo de figuras
Para cada marcador de posición que necesite una figura:
- Fuente TeX disponible (preferida): copie figuras de
paper_src/figures/aslides-beamer/figures/con nombres semánticos:fig1_overview.pdf,fig2_system.pdf, etc. Las fuentes TeX usan figuras vectoriales.pdf— calidad superior. - Markdown disponible: enumere imágenes de
md_output/<name>/auto/images/. Cada una es un.jpgcon nombre hash. Seleccione la figura relevante inspeccionando coninspect_imageo a partir de las referenciasdel markdown. Esto es SOLO para marcos de contenido donde la figura comparte espacio con texto. - Coloque la figura en su propia diapositiva dedicada — NUNCA dentro de un bloque
\begin{columns}:\begin{frame}[plain,c] \centering \includegraphics[height=0.92\textheight,width=\textwidth,keepaspectratio]{filename} \figcap{N}{caption text} \end{frame}
Si una figura falta o no se puede capturar, inserte una llamada de marcador de posición en su lugar
(el auxiliar \phfig se eliminó en 6.0, así que NO lo referencie.
Fase 7 — Compilar con latexmk
Antes de compilar, agregue opciones de clase:
\documentclass[aspectratio=1610, mathserif, 12pt, utf8, cjk]{beamer}
Luego compile:
cd "论文分享/<DIR_NAME>/slides-beamer"
latexmk -lualatex -synctex=1 -interaction=nonstopmode -shell-escape
Nunca agregue \documentclass[draft] — eso desactiva la inclusión de figuras y rompe \fitfigure.
Verificar el PDF de salida:
- El PDF debería estar en
slides-beamer/main.pdf. - Abrir y revisar que no haya errores de compilación. Si los hay, solucionar iterativamente.
- Verificar que no haya desbordamiento de diapositivas (aparte de la página TOC tolerada).
- Si la compilación falla con un error de imagen PNG de MinerU, busque la figura hash en
slides-beamer/figures/. Si la extensión es incorrecta (.pngvs.jpg), corríjala. Copie la figura más cercana disponible.
Errores de referencia ("Reference ...' on page... undefined"): normalmente son referencias de diapositiva internas no resueltas de la plantilla que no afectan al diseño. Si son referencias de autor/sección/tabla faltantes, se informan en la advertencia de LaTeX — no detienen la compilación pero reducen la calidad. Revise slides-beamer/main.logparaLaTeX Warning: Reference... undefined`.
Fase 8 — Limpiar
(Opcional) Después de la compilación exitosa:
rm -rf "论文分享/<DIR_NAME>/md_output" # si se usó MinerU
rm -rf "论文分享/<DIR_NAME>/paper_src" # si se extrajo TeX
# Conservar archivos fuente (PDF/tar.gz/tex) y slides-beamer/ para referencia futura
Referencias de ejemplo
论文分享/SCIENCE ROBOTICS - HIL SERL/slides-beamer/main.tex— ejemplo completo relleno论文分享/SCIENCE ROBOTICS - MT3/slides-beamer/main.tex— segundo ejemplo de referencia