Gradio چیست؟

Gradio یک کتابخانه‌ی متن‌باز پایتون است که با چند خط کد، برای یک تابع یا مدل یک رابط وب می‌سازد: ورودی‌ها (متن، تصویر، صدا و…) و خروجی‌ها. در ابتدا یک استارتاپ بود که در سال ۲۰۲۱ Hugging Face خریدش و از همان‌جا در Spaces هم پشتیبانی می‌شود.

چه وقت به کارم می‌آید؟

به نظرم Gradio برای این لحظه است: مدل یا تابعی داری و می‌خواهی همین امروز یک نفر دیگر امتحانش کند، بدون اینکه فرانت‌اند بنویسی. برای نمونه‌ی اولیه، دمو و اعتبارسنجی ایده خوب است؛ برای محصول کامل، نه.

نمونه

import gradio as gr
 
def greet(name):
    return f"سلام {name}"
 
gr.Interface(fn=greet, inputs="text", outputs="text").launch()

با launch(share=True) یک لینک عمومی موقت هم می‌گیری؛ مناسب نشان‌دادن به همکار، ولی برای داده‌ی حساس نه.

Gradio یا Streamlit؟

  • Gradio: هسته‌اش «تابع با ورودی و خروجی» است؛ برای دموی مدل‌ها عالی.
  • Streamlit: هسته‌اش «اسکریپتی که مرتب از بالا اجرا می‌شود»؛ برای داشبورد و برنامه‌ی داده‌ای مناسب‌تر.

محدودیت‌ها

  • کنترل کمتر روی ظاهر و تجربه‌ی کاربری نسبت به یک فرانت‌اند واقعی.
  • برای کاربر زیاد و احراز هویت جدی، باید پشت یک زیرساخت درست قرار بگیرد.

ابزارپایتوننمونه_اولیه