Gradio 3.0 릴리스 노트
Hugging Face는 Gradio 3.0을 출시했습니다. 이 라이브러리는 처음부터 재설계된 것으로, Gradio Blocks라는 새로운 저수준 API와 현대화된 프런트엔드를 도입하여 보다 복잡하고 성능이 뛰어난 머신러닝 데모를 만들 수 있게 합니다.
Gradio Blocks: 맞춤형 웹 앱을 위한 저수준 API
Gradio Blocks는 새로운 저수준 언어로, 개발자가 Python만으로 복잡한 맞춤형 웹 애플리케이션을 완전히 구축할 수 있게 하며, 이전 버전보다 레이아웃과 데이터 흐름에 대한 더 큰 제어권을 제공합니다.
Blocks는 표준 Gradio 데모의 특정 제한점을 다음과 같이 해결합니다:
- Custom Layouts: 개발자는 고정된 입력-왼쪽, 출력-오른쪽 구조를 넘어설 수 있습니다.
- Flexible Data Flows: 하나의 모델 출력이 다른 모델 입력으로 사용되는 다단계 인터페이스를 지원합니다.
- Dynamic Component Properties: 컴포넌트의 가시성이나 속성(예: Dropdown의 선택 항목)을 사용자 입력에 따라 변경할 수 있습니다.
프런트엔드 재설계 및 성능 향상
Gradio 3.0은 속도, 시각적 통합 및 사용자 경험을 개선하기 위해 완전한 프런트엔드 개편을 특징으로 합니다.
기술 스택 및 성능
프런트엔드는 최신 기술, 특히 Svelte로 마이그레이션되어 페이로드가 작아지고 페이지 로드 시간이 빨라졌습니다.
UI/UX 개선
- Visual Design: 보다 깔끔한 디자인이 구현되어 데모가 다양한 환경에 자연스럽게 어울리도록 했습니다. 예를 들어 블로그 게시물에 iframe으로 삽입하는 경우도 포함됩니다.
- Component Updates: 기존 컴포넌트가 사용성을 높이기 위해 재설계되었습니다; 예를 들어
Dataframe컴포넌트는 이제 CSV 파일을 끌어다 놓아 업로드할 수 있습니다. - New Components:
Gallery컴포넌트와 같은 새로운 요소가 추가되어 모델 상호작용을 위한 UI 옵션이 확대되었습니다. - TabbedInterface: 새로운
TabbedInterface클래스를 통해 개발자는 관련 데모를 하나의 웹 애플리케이션 내에서 여러 탭으로 그룹화할 수 있습니다.
Gradio Blocks 파티
새로운 Blocks API의 채택을 장려하기 위해 Hugging Face는 2022년 5월 말까지 진행되는 "Gradio Blocks Party"라는 대회를 조직했습니다. 이 이니셔티브는 Blocks로 만든 고품질 데모 제작을 장려함으로써 최첨단 머신러닝을 비엔지니어에게도 더 접근 가능하게 만드는 것을 목표로 합니다.
Sources
- OriginalGradio 3.0 is Out!