Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Ferramentas/GitHubGitHub/pvharmo2/gha-lab-40e23db109
Análise de VulnerabilidadesSegurança na NuvemDevSecOpsSegurança da Cadeia de SuprimentosAprendizado e Educação
GitHubpvharmo2/gha-lab-40e23db109

gha-lab-40e23db109

Laboratório de pesquisa em segurança: reprodução controlada do CVE-2024-4254 (GHSA-fc78-c36r-cc59) — checkout/execução de código do fork deploy-website.yml em gradio-app/gradio @ d4c503a

Ver Repositório
1há 11h 41mAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Artefacto de investigação automatizado — não é o projeto original.

Este repositório é um laboratório descartável construído por um harness automatizado para uma dissertação de mestrado na Université Laval sobre a reprodução de vulnerabilidades publicadas em workflows do GitHub Actions. É um snapshot verbatim de gradio-app/gradio no commit d4c503a471cfd202c56fbddd99d5da431a4b7478 (2024-08-02), redistribuído sob a licença desse próprio projeto, cujo ficheiro está incluído inalterado neste snapshot.

O projeto original não está envolvido, nunca é alvo, e a vulnerabilidade aqui estudada já é pública. Todos os segredos e variáveis neste repositório são valores fictícios gerados aleatoriamente — nenhuma credencial real está presente. As referências de ações e imagens de runner estão fixadas ao que resolviam em 2024-08-02; consulte pinning.md no output do harness para todas as alterações feitas ao snapshot.

Perguntas ou objeções: [email protected]


gradio

gradio-backend gradio-ui

PyPI
PyPI downloads
Python version
Twitter follow

Website | Documentation | Guides | Getting Started | Examples | 中文

Gradio: Crie Aplicações Web de Machine Learning — em Python

Gradio é um pacote Python de código aberto que permite criar rapidamente uma demo ou aplicação web para o seu modelo de machine learning, API, ou qualquer função Python arbitrária. Pode então partilhar um link para a sua demo ou aplicação web em apenas alguns segundos usando as funcionalidades de partilha integradas do Gradio. Não é necessária experiência com JavaScript, CSS ou hospedagem web!

São precisas apenas algumas linhas de Python para criar uma demo bonita como a acima, por isso vamos começar 💫

Instalação

Pré-requisito: o Gradio requer Python 3.8 ou superior

Recomendamos instalar o Gradio usando pip, que vem incluído por predefinição no Python. Execute isto no seu terminal ou prompt de comando:

root@kitploit:~
pip install gradio

[!TIP] É melhor instalar o Gradio num ambiente virtual. Instruções detalhadas de instalação para todos os sistemas operativos comuns são fornecidas aqui.

Criar a Sua Primeira Demo

Pode executar o Gradio no seu editor de código favorito, Jupyter notebook, Google Colab, ou em qualquer outro lugar onde escreva Python. Vamos escrever a sua primeira aplicação 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] Abreviamos o nome importado de gradio para gr para melhor legibilidade do código. Esta é uma convenção amplamente adotada que deve seguir para que qualquer pessoa que trabalhe com o seu código o entenda facilmente.

Agora, execute o seu código. Se escreveu o código Python num ficheiro chamado, por exemplo, app.py, então deve executar python app.py no terminal.

A demo abaixo abrirá num navegador em http://localhost:7860 se executada a partir de um ficheiro. Se estiver a executar dentro de um notebook, a demo aparecerá incorporada no notebook.

hello_world_4 demo

Escreva o seu nome na caixa de texto à esquerda, arraste o slider e depois pressione o botão Submit. Deverá ver uma saudação amigável à direita.

[!TIP] Ao desenvolver localmente, pode executar a sua aplicação Gradio em modo de recarga automática (hot reload), que recarrega automaticamente a aplicação Gradio sempre que faz alterações ao ficheiro. Para tal, basta escrever gradio antes do nome do ficheiro em vez de python. No exemplo acima, escreveria: gradio app.py no seu terminal. Saiba mais sobre recarga automática no Guia de Recarga Automática.

Compreender a Classe Interface

Reparará que, para criar a sua primeira demo, criou uma instância da classe gr.Interface. A classe Interface foi concebida para criar demos para modelos de machine learning que aceitam uma ou mais entradas e devolvem uma ou mais saídas.

A classe Interface tem três argumentos principais:

  • fn: a função a envolver com uma interface de utilizador (UI)
  • inputs: o(s) componente(s) Gradio a usar para a entrada. O número de componentes deve corresponder ao número de argumentos na sua função.
  • outputs: o(s) componente(s) Gradio a usar para a saída. O número de componentes deve corresponder ao número de valores de retorno da sua função.

O argumento fn é muito flexível — pode passar qualquer função Python que queira envolver com uma UI. No exemplo acima, vimos uma função relativamente simples, mas a função pode ser qualquer coisa, desde um gerador de música a uma calculadora de impostos ou à função de previsão de um modelo de machine learning pré-treinado.

Os argumentos input e output aceitam um ou mais componentes Gradio. Como veremos, o Gradio inclui mais de 30 componentes integrados (como os componentes gr.Textbox(), gr.Image() e gr.HTML()) concebidos para aplicações de machine learning.

[!TIP] Para os argumentos inputs e outputs, pode passar o nome destes componentes como uma string ("textbox") ou uma instância da classe (gr.Textbox()).

Se a sua função aceitar mais do que um argumento, como no caso acima, passe uma lista de componentes de entrada para inputs, com cada componente de entrada a corresponder a um dos argumentos da função, por ordem. O mesmo se aplica se a sua função devolver mais do que um valor: basta passar uma lista de componentes para outputs. Esta flexibilidade torna a classe Interface uma forma muito poderosa de criar demos.

Iremos aprofundar o gr.Interface na nossa série sobre criação de Interfaces.

Partilhar a Sua Demo

De que serve uma demo bonita se não a pode partilhar? O Gradio permite-lhe partilhar facilmente uma demo de machine learning sem se preocupar com o incómodo de hospedar num servidor web. Basta definir share=True em launch(), e será criado um URL publicamente acessível para a sua demo. Vamos revisitar a nossa demo de exemplo, mas alterar a última linha da seguinte forma:

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)  # Share your demo with just 1 extra parameter 🚀

Quando executar este código, será gerado um URL público para a sua demo em questão de segundos, algo como:

👉   https://a23dsf231adb.gradio.live

Agora, qualquer pessoa em todo o mundo pode experimentar a sua demo Gradio a partir do seu navegador, enquanto o modelo de machine learning e toda a computação continuam a ser executados localmente no seu computador.

Para saber mais sobre como partilhar a sua demo, leia o nosso guia dedicado sobre partilhar a sua aplicação Gradio.

Uma Visão Geral do Gradio

Até agora, discutimos a classe Interface, que é uma classe de alto nível que permite criar demos rapidamente com o Gradio. Mas o que mais faz o Gradio?

Chatbots com gr.ChatInterface

O Gradio inclui outra classe de alto nível, gr.ChatInterface, concebida especificamente para criar UIs de Chatbot. Semelhante ao Interface, fornece uma função e o Gradio cria um UI de Chatbot totalmente funcional. Se estiver interessado em criar um chatbot, pode avançar diretamente para o nosso guia dedicado sobre gr.ChatInterface.

Demos Personalizadas com gr.Blocks

O Gradio também oferece uma abordagem de baixo nível para conceber aplicações web com layouts e fluxos de dados mais flexíveis usando a classe gr.Blocks. Blocks permite-lhe fazer coisas como controlar onde os componentes aparecem na página, lidar com fluxos de dados complexos (por exemplo, saídas podem servir como entradas para outras funções) e atualizar propriedades/visibilidade de componentes com base na interação do utilizador — tudo ainda em Python.

Pode construir aplicações muito personalizadas e complexas usando gr.Blocks(). Por exemplo, a popular interface web de geração de imagens Automatic1111 Web UI é construída com Gradio Blocks. Aprofundamos o gr.Blocks na nossa série sobre criação com Blocks.

O Ecossistema Python e JavaScript do Gradio

Essa é a essência da biblioteca Python central gradio, mas o Gradio é na verdade muito mais! É um ecossistema inteiro de bibliotecas Python e JavaScript que permitem construir aplicações de machine learning, ou consultá-las programaticamente, em Python ou JavaScript. Aqui estão outras partes relacionadas do ecossistema Gradio:

  • Cliente Python do Gradio (gradio_client): consulte qualquer aplicação Gradio programaticamente em Python.
  • Cliente JavaScript do Gradio (@gradio/client): consulte qualquer aplicação Gradio programaticamente em JavaScript.
  • Gradio-Lite (@gradio/lite): escreva aplicações Gradio em Python que são executadas inteiramente no navegador (sem necessidade de servidor!), graças ao Pyodide.
  • Hugging Face Spaces: o local mais popular para hospedar aplicações Gradio — gratuitamente!

O Que Vem a Seguir?

Continue a aprender sobre o Gradio sequencialmente usando os Guias do Gradio, que incluem explicações, bem como código de exemplo e demos interativas incorporadas. A seguir: funcionalidades-chave sobre demos Gradio.

Ou, se já conhece o básico e procura algo específico, pode pesquisar a documentação da API mais técnica.

Perguntas?

Se quiser reportar um bug ou tiver um pedido de funcionalidade, crie uma issue no GitHub. Para perguntas gerais sobre utilização, estamos disponíveis no nosso servidor Discord e teremos todo o gosto em ajudar.

Se gosta do Gradio, deixe-nos uma ⭐ no GitHub!

Stack de Código Aberto

O Gradio é construído sobre muitas bibliotecas de código aberto fantásticas!

huggingface python fastapi encode svelte vite pnpm tailwind storybook chromatic

Licença

O Gradio é licenciado sob a Apache License 2.0 encontrada no ficheiro LICENSE no diretório raiz deste repositório.

Citação

Consulte também o artigo Gradio: Hassle-Free Sharing and Testing of ML Models in the Wild, ICML HILL 2019, e cite-o se usar o Gradio no seu trabalho.

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},
}
Baixar ferramenta