Gradio (gr.Interface și gr.ChatInterface) în Hugging Face Hub & Transformers

Embeddings, Interfețe & Cloud Gradio 6.x (octombrie 2026)

Construiește în Python o interfață web pentru un model sau o funcție, cu Interface, ChatInterface sau Blocks, și o poate partaja printr-un link public temporar.

Sintaxă & invocare Python
import gradio as gr

def raspunde(message, history):
    return "Ai scris: " + message

demo = gr.ChatInterface(fn=raspunde, title="Asistentul meu")
demo.launch()

Ce face Gradio (gr.Interface și gr.ChatInterface)

Gradio transformă o funcție Python într-o aplicație web. gr.Interface(fn, inputs, outputs) creează un formular pentru funcții cu una sau mai multe intrări și ieșiri. gr.ChatInterface(fn) creează o interfață de chat; funcția primește message și history (o listă de dicționare în stil OpenAI, cu role și content). gr.Blocks() dă control complet asupra layout-ului.

Dacă funcția de chat folosește yield, răspunsul apare progresiv (streaming). Rulată dintr-un fișier, aplicația pornește pe http://localhost:7860.

demo.launch(share=True) creează un link public de forma https://xxxx.gradio.live. Serverele Gradio Share sunt doar un proxy către serverul tău local și nu stochează date. Linkurile expiră după o săptămână; pentru găzduire permanentă folosești Hugging Face Spaces.

Sintaxă și opțiuni

Opțiune / Parametru Descriere
gr.Interface(fn, inputs, outputs) Interfață pentru o funcție.
gr.ChatInterface(fn) Interfață de chat; fn(message, history).
gr.Blocks() Layout personalizat.
launch(share=True) Link public temporar (o săptămână).
ChatInterface(examples=[...]) Exemple afișate ca butoane înainte de primul mesaj.

Exemple practice

Exemplul 1: Interfață simplă

import gradio as gr

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

demo = gr.Interface(fn=greet, inputs="textbox", outputs="textbox")
demo.launch()

Exemplul 2: Chat cu streaming

import time
import gradio as gr

def slow_echo(message, history):
    for i in range(len(message)):
        time.sleep(0.05)
        yield "You typed: " + message[: i+1]

gr.ChatInterface(slow_echo).launch()

Exemplul 3: Apelare din alt script Python

from gradio_client import Client

client = Client("http://localhost:7860")

Greșeli frecvente și bune practici

  • Folosești linkul share ca adresă permanentă. Expiră după o săptămână; pentru găzduire stabilă publici aplicația într-un Space.
  • Scrii funcția de chat cu altă ordine a argumentelor. Gradio trimite întâi mesajul, apoi istoricul.
  • Returnezi tot textul la fiecare pas de streaming și te temi de trafic. Gradio trimite către browser doar diferența față de mesajul anterior.

Comenzi înrudite