很多团队想做“智能体应用”,但被工具链劝退:JS、Go、Dart、Python 各一套 SDK,模型厂商 API 又不统一。Genkit 是 Google 开源的框架,目标就是“一套范式,多种语言”——你用几乎相同的写法,就能在 JS/Go/Dart/Python 里构建带检索、多模态、向量库的智能体应用,而且它本就是 Google 生产环境在用的。

项目基本信息

信息项详情
项目名称genkit
GitHub地址https://github.com/genkit-ai/genkit
项目描述Google 开源、支持 JS/Go/Dart/Python 的智能体应用框架
作者genkit-ai
开源协议Apache License 2.0
开源状态公开
LanguagesTypeScript
支持平台Windows / macOS / Linux
最后更新2026-10-26

一、项目介绍

genkit-ai/genkit 是 Google 开源的智能体应用开发框架,支持 JavaScript、Go、Dart、Python。它把模型调用、嵌入(embedders)、检索、多模态、向量数据库等能力抽象成统一 API,并提供开发者 UI 与 CLI 做本地调试与评估。Genkit 的优势在于“生产可用”——Google 自己就在生产环境使用它。

二、核心优势

  1. 多语言一致:JS/Go/Dart/Python 共享同一套概念与写法。
  2. 模型中立:通过插件接入不同模型厂商,不被单一供应商锁定。
  3. 内置可观测:自带 Developer UI 与追踪,便于调试 agent 流程。
  4. 生产导向:支持流式、工具调用、RAG 等生产常见模式。
  5. 跨平台:基于 Node/各语言 SDK,Windows / macOS / Linux 均可。

三、适用场景

  • 跨语言团队统一智能体技术栈。
  • 需要可观测、可评估的生产级 AI 应用。
  • 集成 Google AI(Gemini)又想保留切换余地的项目。

四、安装教程

以 JavaScript/TypeScript 为例:

npm install genkit @genkit-ai/google-genai

启动开发者 UI 与本地调试:

npx genkit start

常见报错:若 npx genkit start 报端口占用,用 npx genkit start --port 4001 换端口;未配置 GOOGLE_API_KEY 时 generate 会失败,需在环境变量中填入密钥。

五、使用示例

import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/google-genai';

const ai = genkit({ plugins: [googleAI()] });

const { text } = await ai.generate({
    model: googleAI.model('gemini-flash-latest'),
    prompt: '用一句话解释什么是向量数据库',
});
console.log(text);

真实输出:

向量数据库是一类为高效存储和检索高维向量(如文本嵌入)而优化的数据库,常用于语义搜索与 RAG。

这是最基础的 generate 调用,Genkit 的真正价值在把它扩展成带工具与检索流程的 agent。

六、常见问题

Q:必须只用 Gemini 吗?
A:不是,genkit 的核心与模型无关,google-genai 只是其中一个插件,也可接入其他厂商。

Q:支持哪些语言?
A:官方支持 JavaScript、Go、Dart、Python,写法高度一致。

Q:能本地离线跑吗?
A:框架本身本地可跑,但是否离线取决于你接入的模型是否提供本地推理。

七、总结

Genkit 用“多语言统一 + 生产可用 + 内置可观测”的组合,降低了智能体应用的工程门槛,尤其适合已经在 Google 技术栈里的团队。Apache-2.0 协议开源,是当前少有的跨语言 agent 框架之一。