讲师中心 微信公众号
AI工具推荐 视频效率加速

怎么用 Node.js 调用 Gemini 的多模态能力?图片识别实战教程

陌静君_9514

陌静君_9514

发布时间:2026-03-30 19:09:30

|

550人浏览过

|

来源于php中文网

原创

需通过 Google AI Studio 的 REST API 调用 Gemini 多模态能力,方法包括:一、使用 @google/generative-ai SDK 自动处理 Base64 与 multipart;二、手动构造 multipart/form-data 请求;三、流式分块处理大图以避免内存溢出。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

怎么用 node.js 调用 gemini 的多模态能力?图片识别实战教程

如果您希望在 Node.js 环境中调用 Gemini 的多模态能力(如图像内容识别、图文理解等),需通过 Google AI Studio 提供的 REST API 接口发送包含图片 Base64 编码与文本提示的请求。以下是实现该功能的多种可行方法:

一、使用 Google AI SDK(@google/generative-ai)直接调用

该方法依赖官方维护的 Node.js 客户端 SDK,支持自动处理 multipart 请求与图片编码,适用于单图或多图输入场景。

1、在项目根目录执行 npm install @google/generative-ai 安装 SDK。

2、从 Google AI Studio 获取 API Key,并设置为环境变量 GOOGLE_API_KEY。

3、读取本地图片文件,使用 fs.readFileSync 读取二进制数据,再调用 Buffer.from(imageData).toString('base64') 转为 Base64 字符串。

4、创建 GoogleGenerativeAI 实例,调用 getGenerativeModel 指定模型为 gemini-pro-vision(注意:当前已重命名为 gemini-1.5-flash-latest 或 gemini-1.5-pro-latest,需确认可用模型名)。

5、构建 generateContent 所需的 parts 数组,其中图片部分格式为 { inlineData: { data: base64String, mimeType: 'image/jpeg' } },文本部分为 { text: '请描述这张图片的内容' }。

二、手动构造 multipart/form-data 请求

该方法绕过 SDK,直接使用 node-fetch 或 axios 发送原始 HTTP 请求,适合需要精细控制请求头、分块上传或集成至已有 HTTP 中间件的场景。

1、安装 form-data 和 node-fetch:npm install form-data node-fetch。

2、创建 FormData 实例,使用 append 方法添加 contents 字段,其值为 JSON 字符串,结构包含 parts 数组。

Baoyu Danger Gemini Web
Baoyu Danger Gemini Web

通过逆向工程的Gemini网页API生成图像和文本。支持文本生成、提示词图像生成以及用于视觉输入的参考图像等。

下载

3、将图片文件读取为 Buffer,并以 multipart/form-data 格式附加到 FormData 中,字段名必须为 file,同时在 JSON 字符串的 parts 内引用该文件名(如 { file: 'image.jpg' })。

4、设置请求头 Authorization: Bearer YOUR_API_KEY 与 Content-Type 为 multipart/form-data; boundary=...(由 form-data 库自动生成)。

5、向 https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash-latest:generateContent?key=YOUR_API_KEY 发起 POST 请求。

三、使用流式 Base64 图片 + 文本组合请求(兼容大图)

该方法专为处理超过 20MB 的高分辨率图像设计,避免内存溢出,通过分块读取文件并动态拼接 multipart body。

1、引入 fs.createReadStream 与 stream.Readable 构造自定义流。

2、生成唯一 boundary 字符串,手动拼接 multipart header、JSON 元数据段、图片二进制段及结尾边界。

3、将拼接后的流作为请求体传入 fetch,并显式设置 Content-Type 为带 boundary 的 multipart 类型。

4、确保图片 MIME 类型准确填写(如 image/png、image/webp),否则 API 将返回 400 错误。

5、响应体需通过 response.json() 解析,提取 candidates[0].content.parts[0].text 获取识别结果。

热门AI工具

更多
讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

PixPix
PixPix Hot

PixPix是一款面向电商视觉生产的AI商品图生成工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

SkildArt
SkildArt Hot

SkildArt是一款AI文本写作工具,一站式 AI 视觉创作平台。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

墨刀AI
墨刀AI Hot

一款AI图像与设计工具,主要用于产品经理的专属智能体,适合需要提升相关任务效率的用户。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

相关专题

更多
Gemini网页版零基础入门:5分钟上手Gemini聊天指南
Gemini网页版零基础入门:5分钟上手Gemini聊天指南

本专题专为零基础用户打造,5分钟快速掌握Gemini网页版核心用法。从账号登录到界面布局,详解如何发起对话、优化提示词及利用多模态功能。通过实战案例,教你高效获取信息、创作内容与分析数据。无论学习还是工作,轻松开启AI辅助新时代,让Gemini成为你的得力智能助手。

17017

2026.03.18

如何写出高效Gemini提示:Chain of Thought实用教程
如何写出高效Gemini提示:Chain of Thought实用教程

本专题详解如何利用“思维链”(Chain of Thought)技巧激发 Gemini 模型的深度推理能力。通过引导模型将复杂问题拆解为逐步推导的逻辑链条,显著提升其在数学计算、代码生成及逻辑分析任务中的准确率。文章提供实用提示模板与对比案例,助您掌握结构化提问方法,从简单指令升级为高效交互,轻松获取更精准、可解释的智能回答。

57

2026.03.23

Gemini多模态实战:图片PDF视频输入完整处理指南
Gemini多模态实战:图片PDF视频输入完整处理指南

本指南全面解析 Gemini 多模态实战,涵盖图片、PDF 及视频的高效处理流程。从上传技巧到提示词设计,教您如何提取文档关键信息、分析图表数据及解读视频内容。通过真实案例演示,助您掌握跨模态交互核心技能,轻松构建智能文档分析与多媒体理解应用,释放 AI 潜能。

77

2026.03.23

Gemini提示工程进阶:Few-shot与角色扮演优化方法
Gemini提示工程进阶:Few-shot与角色扮演优化方法

本进阶指南深入解析 Few-shot 学习与角色扮演在 Gemini 提示工程中的核心应用。通过精选示例引导模型模仿特定风格,结合角色设定规范输出语气与逻辑,显著提升复杂任务的处理精度。文章提供实用模板与调优策略,助您打造个性化 AI 助手,实现从通用回答到专业级交互的质的飞跃。

96

2026.03.23

Google AI Studio使用教程:从模板到自定义Prompt实战
Google AI Studio使用教程:从模板到自定义Prompt实战

本教程手把手教您掌握 Google AI Studio,从快速调用官方模板到深度自定义 Prompt 实战。内容涵盖界面导航、参数调优及版本管理,助您灵活构建专属 AI 应用。通过真实案例演示,让您轻松实现从创意构思到原型部署的全流程,高效释放 Gemini 模型潜能,打造智能化解决方案。

101

2026.03.23

Gemini API快速上手:Python调用generateContent完整指南
Gemini API快速上手:Python调用generateContent完整指南

本指南详解如何使用 Python 快速调用 Gemini API 的 generateContent 方法。从环境配置、密钥管理到核心代码实现,逐步演示文本生成、多模态输入及流式响应处理。包含完整示例与错误排查技巧,助开发者轻松集成 Gemini 强大能力,构建高效智能应用,开启 AI 开发新篇章。

110

2026.03.23

如何实现Gemini函数调用:Tool Use与外部工具集成教程
如何实现Gemini函数调用:Tool Use与外部工具集成教程

本教程深入解析 Gemini 函数调用机制,详解 Tool Use 配置与外部工具集成流程。从定义函数架构到处理动态参数,手把手教您连接数据库、搜索 API 及自定义服务。通过实战案例,展示如何让 AI 自主规划并执行复杂任务,突破纯文本限制,构建具备真实行动力的智能代理系统。

185

2026.03.23

Gemini结构化输出JSON模式:API稳定提取数据实战
Gemini结构化输出JSON模式:API稳定提取数据实战

本实战指南详解如何利用 Gemini API 的 JSON 模式实现结构化数据提取。通过配置响应格式约束,确保模型输出严格符合预定义 Schema,彻底解决解析错误难题。内容涵盖字段定义、类型校验及异常处理,助您在信息抽取、数据清洗等场景中构建高稳定性管道,轻松将非结构化文本转化为可靠的应用数据。

111

2026.03.23

LLVM自定义Pass怎么写
LLVM自定义Pass怎么写

本专题聚焦LLVM自定义Pass开发,整理Pass类结构、run()方法、PreservedAnalyses、CMake构建、插件注册、-load-pass-plugin加载和测试用例编写流程。

100

2026.09.30

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Gemini Notebook常见问题解答
Gemini Notebook常见问题解答

共0课时 | 0人学习

Gemini Notebook官方手册
Gemini Notebook官方手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn