从 Gemini 到 Vertex AI:js-genai 跨平台开发指南

📅 发布时间:2026/7/15 21:21:11 👁️ 浏览次数:
从 Gemini 到 Vertex AI:js-genai 跨平台开发指南
从 Gemini 到 Vertex AIjs-genai 跨平台开发指南【免费下载链接】js-genaiTypeScript/JavaScript SDK for Gemini and Vertex. [EXPERIMENTAL]项目地址: https://gitcode.com/gh_mirrors/js/js-genaiGoogle Gen AI JavaScript SDKjs-genai是面向 TypeScript 和 JavaScript 开发者的终极工具可轻松构建由 Gemini 驱动的跨平台应用。该 SDK 同时支持 Gemini 开发者 API 和 Vertex AI 平台让你能够灵活选择最适合项目需求的 AI 服务。本文将带你快速掌握 js-genai 的核心功能、安装步骤和实战应用助你在前端和后端环境中无缝集成强大的生成式 AI 能力。 为什么选择 js-genaijs-genai 作为 Google 官方推出的 SDK具有以下显著优势双平台支持同时兼容 Gemini 开发者 API 和 Vertex AI满足不同场景需求全栈覆盖完美支持 Node.js 后端和浏览器前端开发TypeScript 原生提供完整类型定义提升开发体验和代码质量丰富功能集支持内容生成、函数调用、文件管理、实时交互等高级特性持续更新优先支持 Gemini 2.0 最新功能保持技术领先性 快速安装指南系统要求Node.js 20 或更高版本推荐使用最新 LTS 版本基础安装命令npm install google/genai⚠️ 注意对于 Vertex AI 用户还需完成额外配置步骤包括启用 Vertex AI API、配置身份验证等详细说明参见 Prerequisites 初始化与认证Gemini 开发者 API 初始化最简便的方式是使用从 Google AI Studio 获取的 API 密钥import { GoogleGenAI } from google/genai; const ai new GoogleGenAI({ apiKey: YOUR_GEMINI_API_KEY });Vertex AI 初始化对于企业级应用推荐使用 Vertex AIimport { GoogleGenAI } from google/genai; const ai new GoogleGenAI({ vertexai: true, project: your_project_id, location: your_location, // 例如us-central1 });环境变量配置Node.js 专用为提高安全性和配置灵活性可通过环境变量进行配置Gemini 开发者 APIexport GOOGLE_API_KEYyour-api-keyVertex AIexport GOOGLE_GENAI_USE_VERTEXAItrue export GOOGLE_CLOUD_PROJECTyour-project-id export GOOGLE_CLOUD_LOCATIONus-central1然后在代码中直接初始化import { GoogleGenAI } from google/genai; const ai new GoogleGenAI(); // 自动从环境变量读取配置 核心功能与使用示例1. 文本内容生成生成文本是最基础也最常用的功能async function generateText() { const response await ai.models.generateContent({ model: gemini-2.5-flash, contents: 为什么天空是蓝色的, }); console.log(response.text); }2. 流式内容生成对于需要实时反馈的场景流式生成是理想选择async function streamGenerateText() { const response await ai.models.generateContentStream({ model: gemini-2.5-flash, contents: 写一首关于人工智能的100字诗歌。, }); for await (const chunk of response) { process.stdout.write(chunk.text); // 逐段输出结果 } }3. 函数调用功能js-genai 支持让模型调用外部函数实现与外部系统的交互async function functionCallingExample() { // 1. 定义函数声明 const controlLightDeclaration { name: controlLight, parametersJsonSchema: { type: object, properties: { brightness: { type: number }, colorTemperature: { type: string }, }, required: [brightness, colorTemperature], }, }; // 2. 调用模型并启用函数调用 const response await ai.models.generateContent({ model: gemini-2.5-flash, contents: 把灯光调暗让房间感觉舒适温暖。, config: { toolConfig: { functionCallingConfig: { mode: ANY, // 强制模型调用函数 allowedFunctionNames: [controlLight], } }, tools: [{ functionDeclarations: [controlLightDeclaration] }] } }); // 3. 解析函数调用结果并执行相应操作 console.log(response.functionCalls); }4. 高级交互功能预览Interactions API 提供了统一的接口简化状态管理和工具编排async function interactionExample() { // 创建一个基本交互 const interaction await ai.interactions.create({ model: gemini-2.5-flash, input: 你好我叫小明。, }); // 继续之前的对话 const followUpInteraction await ai.interactions.create({ model: gemini-2.5-flash, input: 我叫什么名字, previous_interaction_id: interaction.id, }); console.log(followUpInteraction.outputs[0].text); // 应输出小明 } 项目结构与核心模块js-genai 的核心功能通过以下主要模块提供ai.models用于查询模型、生成内容、生成图像等ai.caches创建和管理缓存减少重复使用大型提示前缀的成本ai.chats创建本地有状态聊天对象简化多轮交互ai.files上传文件到 API 并在提示中引用ai.live启动实时交互会话支持文本、音频、视频输入和输出完整的 API 文档可在 docs/ 目录中找到包含所有类、接口和函数的详细说明。 更多资源示例代码项目中的 sdk-samples/ 目录包含丰富的示例覆盖各种使用场景API 参考详细的 API 文档可在 api-report/ 目录中查看代码生成指南参考 codegen_instructions.md 获取使用 AI 生成 SDK 代码的最佳实践️ 安全最佳实践API 密钥安全避免在客户端代码中暴露 API 密钥生产环境应使用服务器端实现输入验证始终验证和清理用户输入防止注入攻击错误处理使用 SDK 提供的 ApiError 类妥善处理 API 错误 总结js-genai 为 JavaScript/TypeScript 开发者提供了一个功能强大且易于使用的接口无论是构建简单的聊天应用还是复杂的企业级 AI 解决方案都能满足需求。通过支持 Gemini 和 Vertex AI 双平台它为开发者提供了前所未有的灵活性和选择空间。立即通过以下命令开始你的 AI 开发之旅git clone https://gitcode.com/gh_mirrors/js/js-genai cd js-genai npm install探索 sdk-samples/ 目录中的示例代码快速掌握 js-genai 的强大功能构建属于你的下一代 AI 应用【免费下载链接】js-genaiTypeScript/JavaScript SDK for Gemini and Vertex. [EXPERIMENTAL]项目地址: https://gitcode.com/gh_mirrors/js/js-genai创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考