Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
उपकरण/GitHubGitHub/pvharmo2/gha-lab-ee08e207a8
भेद्यता विश्लेषणशोषणलर्निंग और शिक्षालैब और अभ्यास
GitHubpvharmo2/gha-lab-ee08e207a8

gha-lab-ee08e207a8

अधिकृत सुरक्षा-अनुसंधान प्रयोगशाला जो CVE-2024-4253 (GHSA-r897-wrpm-h4vw) को पुनः प्रस्तुत करती है: gradio-app/gradio के test-functional.yml में workflow_run कमांड इंजेक्शन

रिपॉजिटरी देखें
15घं 47मि पहलेअभी तक समीक्षित नहीं

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

स्वचालित शोध कलाकृति — अपस्ट्रीम प्रोजेक्ट नहीं।

यह रिपॉजिटरी एक डिस्पोजेबल लैब है जिसे Université Laval में मास्टर थीसिस के लिए एक स्वचालित हार्नेस द्वारा बनाया गया है, जो प्रकाशित GitHub Actions वर्कफ़्लो कमजोरियों को पुन: प्रस्तुत करने पर केंद्रित है। यह gradio-app/gradio का एक शब्दशः स्नैपशॉट है जो कमिट a81e36967c0973012e90ec7cf03b99cf3fea88ec (2024-04-30) पर है, जिसे उस प्रोजेक्ट के अपने लाइसेंस के तहत पुनर्वितरित किया गया है, जिसकी फ़ाइल इस स्नैपशॉट में अपरिवर्तित शामिल है।

अपस्ट्रीम प्रोजेक्ट शामिल नहीं है, उसे कभी लक्षित नहीं किया जाता है, और यहाँ अध्ययन की गई कमजोरी पहले से ही सार्वजनिक है। इस रिपॉजिटरी में हर सीक्रेट और वेरिएबल एक यादृच्छिक रूप से उत्पन्न डमी मान है — कोई वास्तविक क्रेडेंशियल मौजूद नहीं है। एक्शन संदर्भ और रनर इमेज उसी पर पिन किए गए हैं जो 2024-04-30 को हल हुए थे; स्नैपशॉट में किए गए हर बदलाव के लिए हार्नेस आउटपुट में pinning.md देखें।

प्रश्न या आपत्तियाँ: [email protected]


gradio

gradio-backend gradio-ui


PyPI
PyPI downloads
Python version
Twitter follow

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

Gradio: Python में मशीन लर्निंग वेब ऐप्स बनाएँ

Gradio एक ओपन-सोर्स Python पैकेज है जो आपको अपने मशीन लर्निंग मॉडल, API, या किसी भी मनमाने Python फ़ंक्शन के लिए जल्दी से डेमो या वेब एप्लिकेशन बनाने की अनुमति देता है। फिर आप Gradio की अंतर्निहित साझाकरण सुविधाओं का उपयोग करके कुछ ही सेकंड में अपने डेमो या वेब एप्लिकेशन का लिंक साझा कर सकते हैं। JavaScript, CSS, या वेब होस्टिंग अनुभव की आवश्यकता नहीं है!

ऊपर जैसा सुंदर डेमो बनाने के लिए Python की कुछ ही पंक्तियाँ चाहिए, तो चलिए शुरू करते हैं 💫

इंस्टॉलेशन

पूर्वापेक्षा: Gradio को Python 3.8 या उच्चतर की आवश्यकता है

हम pip का उपयोग करके Gradio इंस्टॉल करने की सलाह देते हैं, जो Python में डिफ़ॉल्ट रूप से शामिल होता है। इसे अपने टर्मिनल या कमांड प्रॉम्प्ट में चलाएँ:

root@kitploit:~
pip install gradio

[!TIP] Gradio को वर्चुअल एनवायरनमेंट में इंस्टॉल करना सबसे अच्छा है। सभी सामान्य ऑपरेटिंग सिस्टम के लिए विस्तृत इंस्टॉलेशन निर्देश यहाँ दिए गए हैं।

अपना पहला डेमो बनाना

आप Gradio को अपने पसंदीदा कोड एडिटर, Jupyter नोटबुक, Google Colab, या कहीं भी जहाँ आप Python लिखते हैं, चला सकते हैं। चलिए अपना पहला 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] हम कोड की बेहतर पठनीयता के लिए आयातित नाम को gradio से छोटा करके gr कर देते हैं। यह एक व्यापक रूप से अपनाया गया सम्मेलन है जिसका आपको पालन करना चाहिए ताकि आपके कोड के साथ काम करने वाला कोई भी व्यक्ति इसे आसानी से समझ सके।

अब, अपना कोड चलाएँ। यदि आपने Python कोड किसी फ़ाइल में लिखा है, उदाहरण के लिए, app.py, तो आप टर्मिनल से python app.py चलाएँगे।

नीचे दिया गया डेमो http://localhost:7860 पर ब्राउज़र में खुलेगा यदि फ़ाइल से चलाया जा रहा है। यदि आप नोटबुक के भीतर चला रहे हैं, तो डेमो नोटबुक के भीतर एम्बेडेड दिखाई देगा।

hello_world_4 demo

बाईं ओर टेक्स्टबॉक्स में अपना नाम टाइप करें, स्लाइडर खींचें, और फिर Submit बटन दबाएँ। आपको दाईं ओर एक मैत्रीपूर्ण अभिवादन दिखाई देना चाहिए।

[!TIP] स्थानीय रूप से विकास करते समय, आप अपने Gradio ऐप को हॉट रीलोड मोड में चला सकते हैं, जो फ़ाइल में बदलाव करते ही Gradio ऐप को स्वचालित रूप से रीलोड करता है। ऐसा करने के लिए, बस फ़ाइल के नाम से पहले python के बजाय gradio टाइप करें। ऊपर दिए गए उदाहरण में, आप अपने टर्मिनल में gradio app.py टाइप करेंगे। हॉट रीलोडिंग गाइड में हॉट रीलोडिंग के बारे में और जानें।

Interface क्लास को समझना

आप देखेंगे कि अपना पहला डेमो बनाने के लिए, आपने gr.Interface क्लास का एक इंस्टेंस बनाया। Interface क्लास मशीन लर्निंग मॉडल के लिए डेमो बनाने के लिए डिज़ाइन की गई है जो एक या अधिक इनपुट स्वीकार करते हैं, और एक या अधिक आउटपुट लौटाते हैं।

Interface क्लास के तीन मुख्य तर्क हैं:

  • fn: वह फ़ंक्शन जिसके चारों ओर यूज़र इंटरफ़ेस (UI) लपेटना है
  • inputs: इनपुट के लिए उपयोग करने के लिए Gradio कंपोनेंट। कंपोनेंट की संख्या आपके फ़ंक्शन में तर्कों की संख्या से मेल खानी चाहिए।
  • outputs: आउटपुट के लिए उपयोग करने के लिए Gradio कंपोनेंट। कंपोनेंट की संख्या आपके फ़ंक्शन से लौटाए गए मानों की संख्या से मेल खानी चाहिए।

fn तर्क बहुत लचीला है — आप कोई भी Python फ़ंक्शन पास कर सकते हैं जिसे आप UI के साथ लपेटना चाहते हैं। ऊपर दिए गए उदाहरण में, हमने एक अपेक्षाकृत सरल फ़ंक्शन देखा, लेकिन फ़ंक्शन संगीत जनरेटर से लेकर टैक्स कैलकुलेटर तक पूर्व-प्रशिक्षित मशीन लर्निंग मॉडल के भविष्यवाणी फ़ंक्शन तक कुछ भी हो सकता है।

input और output तर्क एक या अधिक Gradio कंपोनेंट लेते हैं। जैसा कि हम देखेंगे, Gradio में मशीन लर्निंग एप्लिकेशन के लिए डिज़ाइन किए गए 30 से अधिक अंतर्निहित कंपोनेंट शामिल हैं (जैसे gr.Textbox(), gr.Image(), और gr.HTML() कंपोनेंट)।

[!TIP] inputs और outputs तर्कों के लिए, आप इन कंपोनेंट्स का नाम स्ट्रिंग ("textbox") के रूप में या क्लास का इंस्टेंस (gr.Textbox()) के रूप में पास कर सकते हैं।

यदि आपका फ़ंक्शन एक से अधिक तर्क स्वीकार करता है, जैसा कि ऊपर के मामले में है, तो inputs में इनपुट कंपोनेंट्स की एक सूची पास करें, जिसमें प्रत्येक इनपुट कंपोनेंट फ़ंक्शन के तर्कों में से एक के अनुरूप हो, क्रम में। यही बात तब भी लागू होती है जब आपका फ़ंक्शन एक से अधिक मान लौटाता है: बस outputs में कंपोनेंट्स की एक सूची पास करें। यह लचीलापन Interface क्लास को डेमो बनाने का एक बहुत शक्तिशाली तरीका बनाता है।

हम इंटरफ़ेस बनाने पर अपनी श्रृंखला में gr.Interface के बारे में और गहराई से जानेंगे।

अपना डेमो साझा करना

एक सुंदर डेमो का क्या उपयोग यदि आप इसे साझा नहीं कर सकते? Gradio आपको वेब सर्वर पर होस्टिंग की परेशानी के बिना आसानी से मशीन लर्निंग डेमो साझा करने देता है। बस launch() में share=True सेट करें, और आपके डेमो के लिए एक सार्वजनिक रूप से सुलभ URL बनाया जाएगा। चलिए अपने उदाहरण डेमो पर फिर से विचार करें, लेकिन अंतिम पंक्ति को इस प्रकार बदलें:

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 🚀

जब आप यह कोड चलाते हैं, तो कुछ ही सेकंड में आपके डेमो के लिए एक सार्वजनिक URL उत्पन्न हो जाएगा, जैसे:

👉   https://a23dsf231adb.gradio.live

अब, दुनिया में कोई भी व्यक्ति अपने ब्राउज़र से आपके Gradio डेमो को आज़मा सकता है, जबकि मशीन लर्निंग मॉडल और सभी गणना आपके कंप्यूटर पर स्थानीय रूप से चलती रहती है।

अपने डेमो को साझा करने के बारे में अधिक जानने के लिए, अपने Gradio एप्लिकेशन को साझा करने पर हमारी समर्पित गाइड पढ़ें।

Gradio का एक अवलोकन

अब तक, हम Interface क्लास पर चर्चा कर रहे हैं, जो एक उच्च-स्तरीय क्लास है जो आपको Gradio के साथ जल्दी से डेमो बनाने देती है। लेकिन Gradio और क्या करता है?

gr.ChatInterface के साथ चैटबॉट

Gradio में एक और उच्च-स्तरीय क्लास, gr.ChatInterface शामिल है, जो विशेष रूप से चैटबॉट UI बनाने के लिए डिज़ाइन की गई है। Interface के समान, आप एक फ़ंक्शन प्रदान करते हैं और Gradio एक पूरी तरह से काम करने वाला चैटबॉट UI बनाता है। यदि आप चैटबॉट बनाने में रुचि रखते हैं, तो आप सीधे gr.ChatInterface पर हमारी समर्पित गाइड पर जा सकते हैं।

gr.Blocks के साथ कस्टम डेमो

Gradio gr.Blocks क्लास के साथ अधिक लचीले लेआउट और डेटा प्रवाह के साथ वेब ऐप डिज़ाइन करने के लिए एक निम्न-स्तरीय दृष्टिकोण भी प्रदान करता है। Blocks आपको ऐसे काम करने की अनुमति देता है जैसे कंपोनेंट पेज पर कहाँ दिखाई देते हैं, जटिल डेटा प्रवाह को संभालना (जैसे आउटपुट अन्य फ़ंक्शन के इनपुट के रूप में काम कर सकते हैं), और उपयोगकर्ता इंटरैक्शन के आधार पर कंपोनेंट के गुण/दृश्यता को अपडेट करना — यह सब Python में।

आप gr.Blocks() का उपयोग करके बहुत कस्टम और जटिल एप्लिकेशन बना सकते हैं। उदाहरण के लिए, लोकप्रिय इमेज जनरेशन Automatic1111 Web UI Gradio Blocks का उपयोग करके बनाया गया है। हम Blocks के साथ निर्माण पर अपनी श्रृंखला में gr.Blocks के बारे में और गहराई से जानेंगे।

Gradio Python और JavaScript इकोसिस्टम

यह मुख्य gradio Python लाइब्रेरी का सार है, लेकिन Gradio वास्तव में बहुत अधिक है! यह Python और JavaScript लाइब्रेरीज़ का एक संपूर्ण इकोसिस्टम है जो आपको मशीन लर्निंग एप्लिकेशन बनाने, या उन्हें प्रोग्रामेटिक रूप से क्वेरी करने की अनुमति देता है, Python या JavaScript में। यहाँ Gradio इकोसिस्टम के अन्य संबंधित भाग हैं:

  • Gradio Python क्लाइंट (gradio_client): Python में किसी भी Gradio ऐप को प्रोग्रामेटिक रूप से क्वेरी करें।
  • Gradio JavaScript क्लाइंट (@gradio/client): JavaScript में किसी भी Gradio ऐप को प्रोग्रामेटिक रूप से क्वेरी करें।
  • Gradio-Lite (@gradio/lite): Python में Gradio ऐप लिखें जो पूरी तरह से ब्राउज़र में चलते हैं (कोई सर्वर आवश्यक नहीं!), Pyodide की बदौलत।
  • Hugging Face Spaces: Gradio एप्लिकेशन होस्ट करने के लिए सबसे लोकप्रिय स्थान — मुफ्त में!

आगे क्या?

Gradio Guides का उपयोग करके Gradio के बारे में क्रमिक रूप से सीखते रहें, जिसमें स्पष्टीकरण के साथ-साथ उदाहरण कोड और एम्बेडेड इंटरैक्टिव डेमो शामिल हैं। अगला: Gradio डेमो की प्रमुख विशेषताएँ।

या, यदि आप पहले से ही मूल बातें जानते हैं और कुछ विशिष्ट खोज रहे हैं, तो आप अधिक तकनीकी API दस्तावेज़ीकरण खोज सकते हैं।

प्रश्न?

यदि आप बग की रिपोर्ट करना चाहते हैं या फीचर अनुरोध करना चाहते हैं, तो कृपया GitHub पर एक issue बनाएँ। उपयोग के बारे में सामान्य प्रश्नों के लिए, हम हमारे Discord सर्वर पर उपलब्ध हैं और मदद करने में प्रसन्न हैं।

यदि आपको Gradio पसंद है, तो कृपया हमें GitHub पर एक ⭐ दें!

ओपन सोर्स स्टैक

Gradio कई अद्भुत ओपन-सोर्स लाइब्रेरीज़ के ऊपर बनाया गया है!

huggingface python fastapi encode svelte vite pnpm tailwind storybook chromatic

लाइसेंस

Gradio इस रिपॉजिटरी की रूट डायरेक्टरी में LICENSE फ़ाइल में पाए जाने वाले Apache License 2.0 के तहत लाइसेंस प्राप्त है।

उद्धरण

पेपर Gradio: Hassle-Free Sharing and Testing of ML Models in the Wild, ICML HILL 2019 भी देखें, और यदि आप अपने काम में Gradio का उपयोग करते हैं तो कृपया इसे उद्धृत करें।

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},
}
टूल डाउनलोड करें