@flink-app/gemini-adapter

中文文档
2.0.0-alpha.134发布于 2026/11/07MITTypeScriptCommonJS近 30 天下载 4904

Flink AI 框架的 Google 双子座适配器

中文使用文档
文档目录10 节
  1. 安装
  2. 使用量
  3. 配置
  4. 支持的模式
  5. 思考
  6. 结构化输出和工具选择
  7. 图像模型
  8. 特征
  9. 使用 FlinkAgent
  10. 许可证

@flink-app/ gemini- 适应器

Google 双子座适配器 Flink AI框架,基于 @google/genai SDK(双子座开发者 API). SDK是一个正常的依赖, 不需要其他安装.

安装

npm install @flink-app/gemini-adapter

使用量

import { GeminiAdapter } from "@flink-app/gemini-adapter";
import { FlinkApp } from "@flink-app/flink";

const app = new FlinkApp({
  ai: {
    llms: {
      default: new GeminiAdapter({
        apiKey: process.env.GOOGLE_AI_API_KEY!,
        model: "gemini-2.0-flash",
      }),
    },
  },
});

配置

选项类型需求说明
键string对谷歌 AI API 密钥
模式string对双子座模型名(如. "gemini-2.0-flash", (中文(简体) ), "gemini-1.5-pro"(中文(简体) )
思维组合GeminiThinkingConfig没有传经如来 config.thinkingConfig (单位:千美元)includeThoughts, (中文(简体) ), thinkingBudget, (中文(简体) ), thinkingLevel,任何未来领域)
调试boolean没有启用调试记录( 默认 ): false(中文(简体) )

支持的模式

  • gemini-2.0-flash - 快速、有成本效益(建议默认)
  • gemini-1.5-pro - 能力高,背景长
  • gemini-1.5-flash - 快速、平衡的能力
  • gemini-2.5-pro-preview-03-25 - 最新预览模式

思考

思维模型(Gemini 2.5 / 3 系列)配置 thinkingConfig,通过逐字记录 config.thinkingConfig数字 :

const adapter = new GeminiAdapter({
  apiKey: process.env.GOOGLE_AI_API_KEY!,
  model: "gemini-2.5-pro",
  thinkingConfig: { includeThoughts: true, thinkingBudget: 2048 }, // optional
});
  • 与 includeThoughts: true,思考摘要作为 reasoning 块并被物剂浮出水面 reasoning_delta 活动 fullStream。它们从未出现在 textStream 或者说 result.message。摘要不发回双子座.
  • 思想签名 文本返回,函数调用部分被捕获(providerData.gemini.signatures),并在后回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回回 双子座 3 拒绝工具调用续作, 当第一个函数调用的签名缺失时为 400 , 所以不管发生 thinkingConfig。 。 。 .
  • 思考符号thoughtsTokenCount)列入报告 outputTokens。 。 。 .

结构化输出和工具选择

经纪人的 model.structuredOutput 以 config.responseMimeType: "application/json" 加号 responseSchema双子座取了JSON Schema的OpenAPI风格子集,所以 $schema, (中文(简体) ), $ref, (中文(简体) ), $defs, (中文(简体) ), additionalProperties 财务报告和审定财务报表 default 被剥去(同样的消毒工具计划)。 解析后的答复如下: result.structured。 。 。 .

双子座不接受反应计划与函数声明. 在携带工具的步骤上,通过系统指令请求 schema 代替,而 Flink 验证答案;一旦一个步骤没有工具,即使用 原生反应 schema .

model.toolChoice 以 toolConfig.functionCallingConfig数字 : "auto" → AUTO, (中文(简体) ), "none" → NONE, (中文(简体) ), "required" → ANY, (中文(简体) ), { type: "tool", name } → ANY 与 allowedFunctionNames: [name]。只有当请求带有工具时才发出.

图像模型

GeminiImageModel 执行 Flink 的 ImageModel 具有图像能力的双子座模型的接口(gemini-3.1-flash-image, (中文(简体) ), gemini-3-pro-image, (中文(简体) ), gemini-3.1-flash-lite-image)通过 generateContent 带有图像响应模式.

import { GeminiImageModel } from "@flink-app/gemini-adapter";

const app = new FlinkApp<AppCtx>({
    ai: {
        images: {
            default: new GeminiImageModel({ apiKey: process.env.GEMINI_API_KEY!, model: "gemini-3.1-flash-image", imageSize: "2K" }),
        },
    },
});

const { images } = await ctx.ai.images.default.edit({
    prompt: "Make it night time, keep the car unchanged",
    images: [imageFromBuffer(file, "image/png")],
});
  • 编辑是即时驱动的:双子座不带口罩(capabilities.mask 假的, 面具失败 unsupported(中文(简体) )
  • size 减为带警告的宽度比; n 上面有一个由平行请求提供
  • 文本与图像一起返回 providerMetadata.gemini.text· ; providerOptions.gemini 合并到请求中 config
  • 见 图像模型指南

特征

  • QQ 工具调用支持
  • * 思考(thinkingConfig (通过) reasoning_delta,在转弯时重放签名
  • * 流式反应(SSE/NDJSON)
  • QQ 转向执行( 连续的相同作用信息合并)
  • 系统指令处理
  • JSON Schema 为双子座兼容性进行消毒
  • QQ 调用跟踪
  • 调试日志

使用 FlinkAgent

import { FlinkAgent } from "@flink-app/flink";
import { GeminiAdapter } from "@flink-app/gemini-adapter";

export default class CarAgent extends FlinkAgent<AppContext> {
  instructions = "You are a helpful car assistant.";
  llm = new GeminiAdapter({
    apiKey: process.env.GOOGLE_AI_API_KEY!,
    model: "gemini-2.0-flash",
  });
}

许可证

麻省理工学院

版本与发布记录

@flink-app/gemini-adapter 共发布 67 个版本,首次发布于 2026/03/09;过去 12 个月发布了 67 个版本。

版本发布日期距今
2.0.0-alpha.134latest2026/11/078 天前
2.0.0-alpha.1332026/11/069 天前
2.0.0-alpha.1322026/11/0510 天前
2.0.0-alpha.1312026/10/2818 天前
2.0.0-alpha.1302026/10/2521 天前
2.0.0-alpha.1292026/10/2521 天前

关于 @flink-app/gemini-adapter 的常见问题

@flink-app/gemini-adapter 是什么?

Flink AI 框架的 Google 双子座适配器

如何安装 @flink-app/gemini-adapter?

在项目目录运行 npm install @flink-app/gemini-adapter,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@flink-app/flink(>=2.0.0-alpha.134)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@flink-app/gemini-adapter 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@flink-app/gemini-adapter 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@flink-app/gemini-adapter 可以商用吗?

@flink-app/gemini-adapter 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@flink-app/gemini-adapter 的下载量有多少?

根据 npm 官方下载统计,@flink-app/gemini-adapter 在 2026/10/15 – 2026/11/13 这 30 天内被下载 4,904 次,日均约 163 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@flink-app/gemini-adapter 还在维护吗?

最新版本 2.0.0-alpha.134 发布于 2026/11/07(8 天前);至今共发布 67 个版本,其中过去 12 个月发布了 67 个;首次发布于 2026/03/09。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。