SuperAPI AI 工具集

integrate-genui-firebase

智能体与模型

查看项目

更新于 10-15 21:43

技能介绍

用途:把 genui 包集成进 Flutter 应用,并借助 Firebase AI Logic 搭建一个基础对话式智能体。该技能假设项目中的 Firebase AI Logic 已设置并可正常运行。

主要能力与流程:先在 pubspec.yaml 中确认 firebase_core 与 firebase_ai,并确保 main() 内调用 Firebase.initializeApp(WidgetsFlutterBinding.ensureInitialized(); await Firebase.initializeApp(options: DefaultFirebaseOptions.currentPlatform););随后加入 genui 依赖。导入时先用 import 'package:genui/genui.dart' hide TextPart; 隐藏 TextPart,再以 import 'package:genui/genui.dart' as genui; 起别名引入。main() 开头用 configureLogging 配置日志。之后用 FirebaseAI.googleAI().generativeModel(model: 'gemini-3-flash-preview') 创建模型并 startChat() 开启会话。

在选定的 StatefulWidget 的 State 中实例化 SurfaceController、A2uiTransportAdapter 和 Conversation,并实现 _sendAndReceive 用于把传输层消息送至 Firebase、再把 AI 回复写回传输层;订阅 _conversation.events 处理 surface 增删、文本内容与错误;用 PromptBuilder.chat 生成系统提示并通过 _conversation.sendRequest 发送;在 build() 中用 Surface 渲染 surfaceId。

限制与注意:不确定由哪个 StatefulWidget 持有状态时必须先询问用户;不得假设用户输入所需的 UI 元素,需向用户确认(TextField 与 ElevatedButton 仅为可行默认值);在 dispose() 中调用 _transport.dispose() 与 _controller.dispose() 进行清理。资料未提供收费、价格或平台等信息。