О чём урок
Теперь, когда мы можем создать базовый интерфейс и поделиться им, давайте изучим некоторые более продвинутые возможности, такие как состояние и интерпретации. Gradio поддерживает состояние сеанса, когда данные сохраняются при нескольких отправках в рамках загруженной страницы. Состояние сессии полезно для создания демо, например, чат-ботов, где необходимо сохранять данные по мере того, как пользователь взаимодействует с моделью. Обратите внимание, что состояние сессии не позволяет обмениваться данными между разными пользователями вашей модели. Чтобы хранить данные о состоянии сеанса, необходимо выполнить три действия: Передайте в вашу функцию дополнительный параметр, который представляет собой состояние интерфейса. В завершении работы функции верните обновленное значение состояния в качестве дополнительного возвращаемого значения. Добавьте входной компонент 'state' и выходной компонент 'state' при создании вашего Interface. Посмотрите пример чатбота ниже: Обратите внимание, что состояние выходного компонента сохраняется при всех отправках данных. Примечание: в параметр state можно передать значение по умолчанию, которое используется в качестве начального значения состояния. Большинство моделей машинного обучения представляют собой "черные ящики", и внутренняя логика функции скрыта от конечного пользователя. Чтобы стимулировать прозрачность, мы упростили добавление интерпретации в вашу модель, просто задав ключевое слово interpretation в классе Interface по умолчанию. Это позволит вашим пользователям понять, какие части входных данных отвечают за вывод. Взгляните на простой интерфейс ниже, который показывает классификатор изображений, также включающий интерпретацию: Проверьте функцию интерпретации, отправив входные данные и нажав кнопку Интерпретировать (Interpret) под компонентом вывода. Помимо метода интерпретации, предоставляемого Gradio по умолчанию, вы также можете задать shap для параметра interpretation и установить параметр num_shap. При этом используется интерпретация на основе Шэпли, о которой вы можете подробнее прочитать здесь. Наконец, в параметр interpretation можно передать собственную функцию интерпретации. Пример можно посмотреть на странице Gradio, посвященной началу работы здесь. На этом мы завершаем наше глубокое погружение в класс Interface в Gradio.
План урока
- Использование состояния для сохранения данных
- Использование интерпретации для понимания прогнозов
Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.