thesysdev/openui

The Open Standard for Generative UI

What it solves

OpenUIは、LLMの出力から直接、構造化されたインタラクティブなユーザーインターフェース (UI) を生成する方法を提供します。生成的なUIを実現するためにJSONを使用する場合に伴う高いトークンコストとレイテンシの問題を解決し、モデルの出力が定義済みの承認済みコンポーネントセットに制限されることを保証します。

How it works

OpenUIは、OpenUI Lang と呼ばれるカスタムのストリーミング優先の言語を使用します。プロセスは特定のフローに従います:開発者がコンポーネントライブラリ (Zod schemas を使用して型定義契約を型付け) を定義し、そのライブラリからLLMへの指示となるシステムプロンプトを生成し、その後、モデルの出力をストリーミングします。特化されたレンダラーがこのストリーミングをリアルタイムで段階的に解析し、トークンが届くたびに React、Vue、または Svelte のライブコンポーネントとしてレンダリングします。

Who it’s for

AIアシスタント、Copilot、および、単なるテキストではなく、チャート、フォーム、テーブルなどの複雑なUI要素をレンダリング-リングすることが求められるインタラクティブな製品フローを構築する開発者向けに設計されています。

Highlights

  • Token Efficiency: JSONベースの形式よりも最大 67% トークンを削減し、コストとレイテンシを低減します。
  • Multi-Framework Support: React、Vue、および Svelte のランタイムを提供します。
  • Streaming-First: LLMがトークンをストリーミングする際、UIコンポーネントをインクリメンタルにレンダリングします。 n- Library-Driven Prompts: ライブラリで利用可能なコンポーネントに基づいて、モデルへの指示を自動生成します。
  • Prebuilt Components: テーブルやレイアウトなどの一般的なUI要素の組み込みライブラリを含みます。