О чём урок
В предыдущих разделах мы изучили и создали демо, используя класс Interface. В этом разделе мы представим наш свеже разработанный низкоуровневый API под названием gradio.Blocks. Итак, в чем разница между Interface и Blocks? ⚡ Interface: высокоуровневый API, который позволяет создать полноценное демо машинного обучения, просто предоставив список входных и выходных данных. 🧱 Blocks: низкоуровневый API, который позволяет вам полностью контролировать потоки данных и компоновку вашего приложения. Вы можете создавать очень сложные, многоступенчатые приложения, используя Blocks (как "строительные блоки"). Как мы видели в предыдущих разделах, класс Interface позволяет легко создавать полноценные демо машинного обучения с помощью всего нескольких строк кода. API Interface чрезвычайно прост в использовании, но ему не хватает гибкости, которую обеспечивает API Blocks. Например, вы можете захотеть: Сгруппировать связанные демо в виде нескольких вкладок в одном веб-приложении Изменить макет вашего демо, например, указать, где расположены входные и выходные компоненты Многоступенчатые интерфейсы, в которых выход одной модели становится входом для следующей модели, или более гибкие потоки данных в целом Изменить свойства компонента (например, выбор в выпадающем списке) или его видимость на основе пользовательского ввода Ниже мы рассмотрим все эти понятия. После того как вы установили Gradio, запустите приведенный ниже код в виде сценария на Python, блокнота Jupyter или блокнота Colab. В этом простом примере представлены 4 концепции, которые лежат в основе блоков: Блоки позволяют создавать веб-приложения, сочетающие в себе разметку, HTML, кнопки и интерактивные компоненты, просто инстанцируя объекты на Python в контексте with gradio.Blocks. [!TIP] 🙋Если вы не знакомы с оператором with в Python, рекомендуем ознакомиться с отличным руководством от Real Python. Возвращайтесь сюда после его прочтения 🤗 Порядок, в котором вы инстанцируете компоненты, имеет значение, поскольку каждый элемент отображается в веб-приложении в том порядке, в котором он был создан.
План урока
- Почему Blocks 🧱?
- Создание простого демо с помощью блоков
- Настройка макета вашего демо
- Изучение событий и состояния
- Создание многоступенчатых демо
- Обновление свойств компонента
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.