OUI-1: 맞춤형 UI 요소를 생성하는 모델
OUI-1: a model that generates bespoke UI elements
핵심 요약
DiffusionGemma 기반의 OUI-1 모델이 전용 DSL을 통해 UI 생성 효율을 높일 수 있을지 논의하는 글입니다.
- OUI-1 모델 — OpenUI-Lang이라는 전용 DSL을 학습하여 UI 요소를 생성함
- 컨텍스트 효율성 — 시스템 프롬프트 대신 모델 학습을 통해 토큰 소모를 줄이고 대화 공간을 확보함
- 성능 및 속도 — 실시간 UI 생성 시 지연 시간 문제와 모델의 범용성 유지 여부가 관건임
- 로컬 실행 — 소비자용 GPU에서 모델을 구동하기 위한 GGUF 변환 및 실행 방법이 논의됨

openui.com에서 DiffusionGemma를 파인튜닝한 모델인 OUI-1을 내놨더라고. 학습 데이터셋이 일반적인 HTML이나 Markdown, React 코드가 아니라 OpenUI-Lang이라는 커스텀 DSL(도메인 특화 언어)을 쓴다는 게 포인트임.
이게 왜 흥미롭냐면, 일반 LLM한테 시스템 프롬프트로 OpenUI-Lang을 쓰게 할 수는 있는데, 그러면 컨텍스트 윈도우를 엄청나게 잡아먹거든. 내 생각엔 DSL로 모델을 파인튜닝하면 그 오버헤드를 줄여서 실제 대화에 쓸 공간을 더 확보할 수 있을 것 같음. 툴 콜 같은 다른 작업이랑 같이 쓸 때 포맷이나 사용법을 일일이 설명하는 긴 프롬프트가 필요 없으니까.
근데 한편으로는 특정 DSL로 파인튜닝하면 다른 게 필요할 때도 무조건 그 포맷으로만 뱉어내려고 하지 않을까? 일반 Markdown을 얼마나 잘 처리할지, 아니면 Markdown이랑 OpenUI-Lang 사이를 얼마나 잘 오갈 수 있을지 궁금하네.
이거 관련해서 얘기가 별로 없길래, 다들 생성형 UI랑 RTX 5090 같은 소비자용 GPU에서 전용 모델을 로컬로 돌리는 거에 대해 어떻게 생각하는지 궁금함.
이거 세팅하려면 뭐가 제일 나을까? 보니까 llama.cpp에서 아직 DiffusionGemma를 지원 안 하는 것 같아서 Ollama로 돌리는 건 안 될 듯함. Hugging Face에 가중치는 올라와 있던데, 이걸 어떻게 돌려야 할지 감이 안 잡히네. 뭐 좋은 방법 아는 사람?
