Flutter集成Firebase AI Logic

Firebase AI Logic简介

Firebase AI Logic可让您使用Google最新的生成式AI模型:Gemini模型和 Imagen模型,可以使用 Firebase AI Logic客户端SDK。Gemini支持多模态(图片,视频,文档等格式)和自然语言输入。

Firebase AI Logic开启

  1. 登录Firebase控制台,然后选择您的Firebase项目。
  2. 在Firebase控制台中,前往Firebase AI Logic页面。
  3. 点击开始,启动引导式工作流,帮助您为项目设置必需的API和资源。 选择要与 Firebase AI Logic SDK 搭配使用的"Gemini API"提供方。Gemini Developer API 建议首次使用该功能的用户选择此选项。如果您愿意,可以随时添加结算信息或设置 Vertex AI Gemini API。

添加Firebase AI Logic的SDK

按照上图中的步骤,将Firebase添加到您的Flutter应用。 在您的Flutter项目目录中,运行以下命令以安装核心插件和 Firebase AI Logic 插件:

在lib/main.dart文件中,导入Firebase 核心插件、Firebase AI Logic插件以及您之前生成的配置文件。 同样在lib/main.dart 文件中,使用配置文件导出的 DefaultFirebaseOptions对象初始化 Firebase。 安卓设备运行时候会ndk版本过低的错误,错误如下所示:

可以按照图片中的修复方案进行修复。

初始化服务并创建模型实例并调用相应的API

scss 复制代码
  // Initialize the Gemini Developer API backend service
// Create a `GenerativeModel` instance with a model that supports your use case
  final model =
  FirebaseAI.googleAI().generativeModel(model: 'gemini-2.5-flash');

// Provide a prompt that contains text
  final prompt = [Content.text('Write a story about a magic backpack.')];

// To generate text output, call generateContent with the text input
  final response = await model.generateContent(prompt);
  print(response.text);

示例代码如上所示。

LLM(大语言模型)简介

LLM如何通信,步骤:

  1. 用户输入:用户在聊天界面中输入文本,或者其他格式的输入。
  2. 请求格式设置:应用将文本格式设置为Gemini API的Content对象。
  3. API通信:系统会通过Firebase AI逻辑将文本发送到 Gemini API。
  4. LLM处理:Gemini模型会处理文本并生成回答。
  5. 响应处理:应用接收响应并更新界面。 LLM通讯其实也就是和CS建构相似的一种架构,通过协议来处理请求处理数据,并把相应结果返回的请求者。 LLM调用本地函数的过程如下所示:
  6. 函数选择:LLM会根据用户的请求决定是否有必要进行函数调用。
  7. 参数生成:LLM 会生成符合函数架构的参数值。
  8. 函数调用格式:LLM 会在响应中发送结构化函数调用对象。
  9. 应用处理:您的应用会收到此调用并执行相关函数(在下一步中实现)。
  10. 响应集成:在多轮对话中,LLM 会预期返回函数的结果。 效果图如下所示:

参考资料

codelabs.developers.google.com/codelabs/fl... firebase.google.com/docs/ai-log...

firebase.flutter.dev/docs/overvi...

相关推荐
武子康2 小时前
调查研究-209 Apptronik Robot Park 深度解析:人形机器人竞争,开始拼“真实世界数据工厂“
人工智能·google·llm
月光下的丝瓜17 小时前
Flutter 国内安装指南
前端·flutter
DigitalOcean19 小时前
DigitalOcean 推出大模型自动化评估功能,上线前精准避坑
llm·agent
ch_09181 天前
从0构建SDK第3节:实现 ReActAgent 的推理与行动循环
typescript·llm·agent
得物技术1 天前
AI UITester:AI Native 的 UI 自动化测试新范式|得物技术
llm·aigc·测试
不好听6131 天前
Harness Engineering:给千里马套上缰绳
llm·agent
小林ixn1 天前
LLM如何预测下一个词?从Token到概率,一文看懂大模型推理内幕
人工智能·llm
树獭非懒1 天前
从零构建ReAct智能体:让AI学会边想边做
人工智能·llm·agent
Hyyy2 天前
SSE和WebSocket 是什么,AI 场景下如何选择
llm