Google在Flutter生態系推出GenUI SDK for Flutter,目標不是再做一個聊天框,而是提供一套讓大語言模型(LLM)把文字回應轉換成可操作畫面的生成式UI工作流程,作為協調層負責在人類使用者、Flutter小工具(Widget)程式碼庫與AI代理之間交換資訊,讓應用程式能維持品牌風格動態生成介面。目前GenUI SDK for Flutter以Alpha測試版形式在pub.dev開放。

傳統聊天機器人多半只回傳長段文字,當任務牽涉多個條件、比較或決策時,使用者往往要在對話紀錄中來回拉動畫面,體驗並不理想。GenUI要處理的是讓模型輸出不只是一串字,而是一份UI描述,交由前端SDK算繪成卡片、圖像、表單、滑桿或日期選擇器,使用者改以點選與調整參數進行對話,把複雜互動簡化成具體畫面。

官方舉例,使用者輸入「幫我規畫東京旅遊」之後,應用程式會將這個提示以及可用小工具目錄送往AI代理。模型在生成行程建議文字的同時,也透過GenUI提供的工具,組出一棵適合呈現內容的UI結構樹,GenUI SDK接收回應後進行反序列化,把這棵樹還原為Flutter小工具並算繪之後,SDK會依描述中的標註區分出資訊呈現元件、版面配置元件與可互動控制項,並據此建立最終介面。

使用者的點擊或輸入可以觸發新一輪請求,由代理依最新狀態回傳更新後的內容與介面,形成一個持續運轉的人機協作迴圈。

這套流程建構在一組Google的生成式UI工具與協定,用來描述LLM要呈現的畫面布局與元件,可套用在不同前端框架。GenUI SDK for Flutter採用A2UI作為UI序列化格式,相當於讓Flutter成為A2UI的其中一個實作端,之後同一套代理邏輯在其他平臺上也有機會重複利用。

GenUI目前支援多種內容生成器模式,包含直接呼叫Google Gemini API、透過Firebase AI Logic在客戶端存取Gemini,以及使用A2UI與後端代理伺服器對接。團隊也預留介面讓企業自行撰寫橋接器,串接自家LLM或其他雲端模型,只要能回傳符合A2UI格式的描述,就能沿用同一套Flutter前端與工作流程。

官方提到後續會考慮與Agent Development Kit整合,新增更多主流LLM與後端框架的官方支援,並透過逐步算繪降低等待時間,甚至讓標準介面元件能在模型尚未回應完成前先出現在畫面上。更進一步的構想包括讓模型組合出整個畫面與導覽邏輯,甚至以Dart位元組碼實作由伺服器主導的UI架構,以及與Genkit等開源AI框架結合。

熱門新聞

Advertisement