SuperAPI AI 工具集

developing-genkit-dart

编程与开发

查看项目

更新于 10-13 20:08

技能介绍

Genkit Dart 是面向 Dart 语言的 AI SDK,提供统一接口用于代码生成、结构化输出、工具、Flows 和 AI 智能体。

核心功能与使用方式

该技能支持的核心框架能力包括:初始化 Genkit(Genkit())、生成内容(ai.generate)、定义工具(ai.defineTool)、定义 Flow(ai.defineFlow)、嵌入(ai.embedMany)、流式输出,以及调用远程 flow 端点。需要上述帮助时,可通过 references/genkit.md 加载核心框架参考文档。

Genkit CLI

Genkit CLI 提供本地开发 UI,用于运行 Flow、追踪执行过程、试用模型以及评估输出。可通过 genkit --version 检查是否已安装。

安装命令:

curl -sL cli.genkit.dev | bash # Native CLI

OR

npm install -g genkit-cli # Via npm

用法:将运行命令包裹在 genkit start 中,以挂载 Genkit 开发者 UI 和追踪能力:

genkit start -- dart run main.dart

插件生态

Genkit 依赖大量插件来执行生成式 AI 操作、对接外部 LLM 或托管 Web 服务器。使用任一插件时,应参考对应的参考文档以确认用法:

  • genkit_google_genai(references/genkit_google_genai.md):Google Gemini 插件接口用法。
  • genkit_anthropic(references/genkit_anthropic.md):Anthropic 插件接口,用于 Claude 模型。
  • genkit_openai(references/genkit_openai.md):OpenAI 插件接口,用于 GPT 模型、Groq 及自定义兼容端点。
  • genkit_middleware(references/genkit_middleware.md):用于特定智能体行为的工具,包括文件系统、技能和 toolApproval 中断。
  • genkit_mcp(references/genkit_mcp.md):Model Context Protocol 集成(Server、Host 和 Client 能力)。
  • genkit_chrome(references/genkit_chrome.md):使用 Prompt API 在 Chrome 浏览器内本地运行 Gemini Nano。
  • genkit_shelf(references/genkit_shelf.md):通过 Dart Shelf 以 HTTP 方式集成 Genkit Flow actions。
  • genkit_firebase_ai(references/genkit_firebase_ai.md):Firebase AI 插件接口(通过 Vertex AI 使用 Gemini API)。

外部依赖

在 Tools、Flows 和 Prompts 中定义 schema 映射时,必须使用 schemantic 库。使用前应阅读 references/schemantic.md,了解如何实现类型安全的生成式 Dart 代码。这在遇到 @Schema()、SchemanticType 或带 $ 前缀的类等符号时尤为重要。Genkit Dart 的所有数据模型都使用 schemantic,因此理解该库是使用 Genkit Dart 的关键。

最佳实践

  • 生成最终回复前,始终使用 dart analyze 确认代码可正常编译。
  • 始终使用 Genkit CLI 进行本地开发和调试。

适用场景与限制

适用场景:在 Dart 中构建 AI 智能体、使用 Genkit flows、将 LLM 集成到 Dart 应用中,以及使用上述插件对接不同模型或平台。

限制:资料未提供具体的收费、价格、平台兼容版本、性能效果或详细使用步骤说明,暂未提供。