Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
gha-lab-40e23db109 — Laboratorio de investigación en seguridad: reproducción controlada de CVE-2024-4254 (GHSA-fc78-c36r-cc59) — ejecución de código/checkout de fork en deploy-website.yml en gradio-app/gradio @ d4c503a | Kitploit
Herramientas/GitHubGitHub/pvharmo2/gha-lab-40e23db109
Análisis de VulnerabilidadesSeguridad en la NubeDevSecOpsSeguridad de Cadena de SuministroAprendizaje y Educación
GitHubpvharmo2/gha-lab-40e23db109

gha-lab-40e23db109

Laboratorio de investigación en seguridad: reproducción controlada de CVE-2024-4254 (GHSA-fc78-c36r-cc59) — ejecución de código/checkout de fork en deploy-website.yml en gradio-app/gradio @ d4c503a

Ver Repositorio
1hace 11h 41mAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Artefacto de investigación automatizado — no es el proyecto original.

Este repositorio es un laboratorio desechable construido por un sistema automatizado para una tesis de maestría en Université Laval sobre la reproducción de vulnerabilidades publicadas en flujos de trabajo de GitHub Actions. Es una instantánea verbatim de gradio-app/gradio en el commit d4c503a471cfd202c56fbddd99d5da431a4b7478 (2024-08-02), redistribuida bajo la licencia de ese mismo proyecto, cuyo archivo se incluye sin cambios en esta instantánea.

El proyecto original no está involucrado, nunca es el objetivo, y la vulnerabilidad estudiada aquí ya es pública. Cada secreto y variable en este repositorio es un valor ficticio generado aleatoriamente — no hay ninguna credencial real presente. Las referencias a acciones y las imágenes de ejecutores están fijadas a lo que resolvieron el 2024-08-02; consulta pinning.md en la salida del sistema para cada cambio realizado en la instantánea.

Preguntas u objeciones: [email protected]


gradio

gradio-backend

gradio-ui
PyPI
PyPI downloads
Python version
Twitter follow

Sitio web | Documentación | Guías | Primeros pasos | Ejemplos | 中文

Gradio: Crea aplicaciones web de aprendizaje automático — en Python

Gradio es un paquete de Python de código abierto que te permite crear rápidamente una demo o aplicación web para tu modelo de aprendizaje automático, API o cualquier función arbitraria de Python. Luego puedes compartir un enlace a tu demo o aplicación web en solo unos segundos usando las funciones de compartir integradas de Gradio. ¡No necesitas experiencia en JavaScript, CSS ni alojamiento web!

Solo se necesitan unas pocas líneas de Python para crear una demo hermosa como la anterior, así que comencemos 💫

Instalación

Requisito previo: Gradio requiere Python 3.8 o superior

Recomendamos instalar Gradio usando pip, que viene incluido por defecto en Python. Ejecuta esto en tu terminal o símbolo del sistema:

root@kitploit:~
pip install gradio

[!TIP] Es mejor instalar Gradio en un entorno virtual. Instrucciones detalladas de instalación para todos los sistemas operativos comunes se proporcionan aquí.

Creando tu primera demo

Puedes ejecutar Gradio en tu editor de código favorito, Jupyter notebook, Google Colab o en cualquier otro lugar donde escribas Python. Escribamos tu primera aplicación Gradio:

root@kitploit:~
import gradio as gr

def greet(name, intensity):
    return "Hello " * intensity + name + "!"

demo = gr.Interface(
    fn=greet,
    inputs=["text", "slider"],
    outputs=["text"],
)

demo.launch()

[!TIP] Acortamos el nombre importado de gradio a gr para una mejor legibilidad del código. Esta es una convención ampliamente adoptada que deberías seguir para que cualquiera que trabaje con tu código pueda entenderlo fácilmente.

Ahora, ejecuta tu código. Si has escrito el código de Python en un archivo llamado, por ejemplo, app.py, entonces ejecutarías python app.py desde la terminal.

La demo de abajo se abrirá en un navegador en http://localhost:7860 si se ejecuta desde un archivo. Si estás ejecutando dentro de un notebook, la demo aparecerá incrustada dentro del notebook.

hello_world_4 demo

Escribe tu nombre en el cuadro de texto de la izquierda, arrastra el control deslizante y luego presiona el botón Enviar. Deberías ver un saludo amigable a la derecha.

[!TIP] Al desarrollar localmente, puedes ejecutar tu aplicación Gradio en modo de recarga automática, que recarga automáticamente la aplicación Gradio cada vez que haces cambios en el archivo. Para hacer esto, simplemente escribe gradio antes del nombre del archivo en lugar de python. En el ejemplo anterior, escribirías: gradio app.py en tu terminal. Aprende más sobre la recarga automática en la Guía de recarga automática.

Entendiendo la clase Interface

Notarás que para crear tu primera demo, creaste una instancia de la clase gr.Interface. La clase Interface está diseñada para crear demos de modelos de aprendizaje automático que aceptan una o más entradas y devuelven una o más salidas.

La clase Interface tiene tres argumentos principales:

  • fn: la función a envolver con una interfaz de usuario (UI)
  • inputs: el/los componente(s) de Gradio a usar para la entrada. El número de componentes debe coincidir con el número de argumentos en tu función.
  • outputs: el/los componente(s) de Gradio a usar para la salida. El número de componentes debe coincidir con el número de valores de retorno de tu función.

El argumento fn es muy flexible — puedes pasar cualquier función de Python que quieras envolver con una UI. En el ejemplo anterior, vimos una función relativamente simple, pero la función podría ser cualquier cosa, desde un generador de música hasta una calculadora de impuestos o la función de predicción de un modelo de aprendizaje automático preentrenado.

Los argumentos input y output aceptan uno o más componentes de Gradio. Como veremos, Gradio incluye más de 30 componentes integrados (como los componentes gr.Textbox(), gr.Image() y gr.HTML()) diseñados para aplicaciones de aprendizaje automático.

[!TIP] Para los argumentos inputs y outputs, puedes pasar el nombre de estos componentes como una cadena ("textbox") o una instancia de la clase (gr.Textbox()).

Si tu función acepta más de un argumento, como en el caso anterior, pasa una lista de componentes de entrada a inputs, con cada componente de entrada correspondiendo a uno de los argumentos de la función, en orden. Lo mismo aplica si tu función devuelve más de un valor: simplemente pasa una lista de componentes a outputs. Esta flexibilidad hace que la clase Interface sea una forma muy poderosa de crear demos.

Profundizaremos en gr.Interface en nuestra serie sobre creación de Interfaces.

Compartiendo tu demo

¿De qué sirve una demo hermosa si no puedes compartirla? Gradio te permite compartir fácilmente una demo de aprendizaje automático sin preocuparte por la molestia de alojarla en un servidor web. Simplemente establece share=True en launch(), y se creará una URL de acceso público para tu demo. Revisemos nuestra demo de ejemplo, pero cambiemos la última línea de la siguiente manera:

root@kitploit:~
import gradio as gr

def greet(name):
    return "Hello " + name + "!"

demo = gr.Interface(fn=greet, inputs="textbox", outputs="textbox")
    
demo.launch(share=True)  # Comparte tu demo con solo 1 parámetro adicional 🚀

Cuando ejecutes este código, se generará una URL pública para tu demo en cuestión de segundos, algo como:

👉   https://a23dsf231adb.gradio.live

Ahora, cualquier persona en el mundo puede probar tu demo de Gradio desde su navegador, mientras el modelo de aprendizaje automático y todo el cálculo continúan ejecutándose localmente en tu computadora.

Para aprender más sobre cómo compartir tu demo, lee nuestra guía dedicada sobre compartir tu aplicación Gradio.

Una visión general de Gradio

Hasta ahora, hemos estado hablando de la clase Interface, que es una clase de alto nivel que te permite crear demos rápidamente con Gradio. ¿Pero qué más hace Gradio?

Chatbots con gr.ChatInterface

Gradio incluye otra clase de alto nivel, gr.ChatInterface, diseñada específicamente para crear UIs de Chatbot. Similar a Interface, proporcionas una función y Gradio crea una UI de Chatbot completamente funcional. Si te interesa crear un chatbot, puedes ir directamente a nuestra guía dedicada sobre gr.ChatInterface.

Demos personalizadas con gr.Blocks

Gradio también ofrece un enfoque de bajo nivel para diseñar aplicaciones web con diseños y flujos de datos más flexibles mediante la clase gr.Blocks. Blocks te permite hacer cosas como controlar dónde aparecen los componentes en la página, manejar flujos de datos complejos (por ejemplo, las salidas pueden servir como entradas para otras funciones) y actualizar propiedades/visibilidad de los componentes según la interacción del usuario — todo aún en Python.

Puedes crear aplicaciones muy personalizadas y complejas usando gr.Blocks(). Por ejemplo, la popular interfaz web de generación de imágenes Automatic1111 Web UI está construida con Gradio Blocks. Profundizamos en gr.Blocks en nuestra serie sobre creación con Blocks.

El ecosistema de Python y JavaScript de Gradio

Ese es el núcleo de la biblioteca gradio de Python, ¡pero Gradio es en realidad mucho más! Es un ecosistema completo de bibliotecas de Python y JavaScript que te permiten crear aplicaciones de aprendizaje automático, o consultarlas programáticamente, en Python o JavaScript. Aquí hay otras partes relacionadas del ecosistema de Gradio:

  • Cliente Python de Gradio (gradio_client): consulta cualquier aplicación Gradio programáticamente en Python.
  • Cliente JavaScript de Gradio (@gradio/client): consulta cualquier aplicación Gradio programáticamente en JavaScript.
  • Gradio-Lite (@gradio/lite): escribe aplicaciones Gradio en Python que se ejecutan completamente en el navegador (¡sin necesidad de servidor!), gracias a Pyodide.
  • Hugging Face Spaces: el lugar más popular para alojar aplicaciones Gradio — ¡gratis!

¿Qué sigue?

Sigue aprendiendo sobre Gradio secuencialmente usando las Guías de Gradio, que incluyen explicaciones, así como código de ejemplo y demos interactivas integradas. Lo siguiente: características clave sobre las demos de Gradio.

O, si ya conoces los conceptos básicos y buscas algo específico, puedes buscar en la documentación técnica de la API.

¿Preguntas?

Si deseas reportar un error o tienes una solicitud de función, crea un issue en GitHub. Para preguntas generales sobre el uso, estamos disponibles en nuestro servidor de Discord y estaremos encantados de ayudarte.

Si te gusta Gradio, ¡déjanos una ⭐ en GitHub!

Pila de código abierto

¡Gradio está construido sobre muchas bibliotecas de código abierto maravillosas!

huggingface python fastapi encode svelte vite pnpm tailwind storybook chromatic

Licencia

Gradio está licenciado bajo la Apache License 2.0 que se encuentra en el archivo LICENSE en el directorio raíz de este repositorio.

Cita

También consulta el artículo Gradio: Hassle-Free Sharing and Testing of ML Models in the Wild, ICML HILL 2019, y cítalo si usas Gradio en tu trabajo.

root@kitploit:~
@article{abid2019gradio,
  title = {Gradio: Hassle-Free Sharing and Testing of ML Models in the Wild},
  author = {Abid, Abubakar and Abdalla, Ali and Abid, Ali and Khan, Dawood and Alfozan, Abdulrahman and Zou, James},
  journal = {arXiv preprint arXiv:1906.02569},
  year = {2019},
}
Descargar herramienta