0

0

使用 Gemini 和 Vertex AI 构建 AI 图像识别应用程序

碧海醫心

碧海醫心

发布时间:2026-01-15 09:37:14

|

967人浏览过

|

来源于php中文网

原创

人工智能ai)主导的时代,图像识别技术正成为各类应用的核心支柱。无论是智能驾驶系统还是疾病辅助诊断,对高精度、高稳定性的图像识别能力的需求始终在攀升。本文将带您一步步实践,如何借助 google 的 gemini 模型与 vertex ai 平台,搭建一套专属的 ai 图像识别应用。gemini 是一款先进的多模态大模型,具备跨模态理解与生成能力,可同时处理文本、图像、代码等多种类型的内容。vertex ai 则是 google cloud 提供的一站式机器学习平台,集成了模型开发、训练、部署与监控等全生命周期管理功能。将二者协同使用,能让您以更短周期、更高效率完成定制化图像识别系统的构建。本指南涵盖详细操作流程、可运行代码示例及典型问题应对策略,助您顺利落地项目。

要点

  • 基于 Google Gemini 模型与 Vertex AI 平台搭建 AI 图像识别系统。
  • Gemini 具备强大的多模态感知与生成能力,支持图文联合理解与推理。
  • Vertex AI 是 Google Cloud 上的统一 ML 开发平台,提供模型训练、部署与规模化服务支持。
  • Gemini 与 Vertex AI 深度集成,显著降低图像识别类应用的开发门槛与实施成本。
  • 教程包含分步操作指引、完整代码片段及实用排错方法。

构建 AI 图像识别应用程序

准备工作

在启动开发前,请确认已完成以下基础配置:

  • Google Cloud 账户: 若尚未注册,请先创建账户。Vertex AI 服务必须依托有效的 Google Cloud 账户方可启用。

    ☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

    使用 Gemini 和 Vertex AI 构建 AI 图像识别应用程序

  • 启用 Vertex AI API: 登录 Google Cloud 控制台,在对应项目中开启 Vertex AI API。

  • 安装 Python SDK: 通过 pip 安装官方 Vertex AI Python 客户端库,用于程序化调用相关服务。

    <code>  pip install google-cloud-aiplatform</code>
  • 配置身份验证机制: 在本地环境完成身份认证配置,推荐使用 Google Cloud CLI 或服务账号密钥方式,确保 SDK 可安全访问云端资源。

  • 掌握 Python 基础: 本教程默认读者已具备 Python 编程经验,能理解基本语法与模块调用逻辑。

使用 Vertex AI Python SDK

实验环境启动后,界面将分为左右两栏:左侧为代码编辑区,右侧为操作指引。请按如下步骤接入生成式 AI 接口:

1. 新建源文件

在编辑器中点击 File > New File,新建一个空白脚本文件。

2. 插入核心代码

将下方代码块复制并粘贴至编辑器中。

使用 Gemini 和 Vertex AI 构建 AI 图像识别应用程序

以下代码利用 Gemini 视觉模型解析图像语义内容:

from google.cloud import aiplatform

client = aiplatform.gapic.PredictionServiceClient(
    client_options={"api_endpoint": "us-central1-aiplatform.googleapis.com"}
)

model = "gemini-pro-vision"
location = "us-central1"

instance = {
    "image": {
        "image_bytes": {
            "mime_type": "image/jpeg",
            "data": image_data,
        }
    },
    "prompt": "What is shown in this image?",
}

response = client.predict(
    endpoint=f"projects/{project_id}/locations/{location}/endpoints/{model}",
    instances=[instance],
    parameters=parameters,
)

print(response.predictions[0]["content"])

3. 保存脚本文件

点击 File > Save,输入文件名为 genai.py,确认保存。

4. 配置运行环境变量

在新终端窗口中执行以下命令,设置必要环境参数:

GarbageSort垃圾识别工具箱
GarbageSort垃圾识别工具箱

GarbageSort垃圾识别工具箱是一个基于uni-app开发的微信小程序,使用SpringBoot2搭建后端服务,使用Swagger2构建Restful接口文档,实现了文字查询、语音识别、图像识别其垃圾分类的功能。前端:微信小程序 采用 uni-app 开发框架,uni-app 是一个使用 Vue.js 开发所有前端应用的框架,开发者编写一套代码,可发布到iOS、Android、H5、以及各

下载
export GOOGLE_CLOUD_PROJECT=[YOUR_PROJECT_ID]
export GOOGLE_CLOUD_LOCATION=us-central1
export GOOGLE_GENAI_USE_VERTEXAI=TRUE

请将 [YOUR_PROJECT_ID] 替换为您实际的 Google Cloud 项目标识符。

5. 执行脚本并查看结果

在代码编辑器所在窗格中运行以下命令:

python3 genai.py

⚠️ 注意:若返回 HTTP 500 错误,建议重试执行;部分情况下需重新加载环境变量后再运行。

成功运行后,终端将输出模型对所传图像内容的自然语言描述。

代码原理详解

我们来逐层解析该段逻辑的实现机制:

  • 依赖导入: 引入 google.cloud.aiplatform 模块,作为连接 Vertex AI 服务的桥梁。
  • 客户端初始化: 构造 PredictionServiceClient 实例,并指定美国中部区域(us-central1)的 API 端点。
  • 模型与区域设定: 明确调用 gemini-pro-vision 多模态模型,并限定其部署地域。
  • 请求体构造: 组织预测请求数据结构,含图像原始字节(Base64 编码)、MIME 类型及用户提问文本(prompt)。
  • 发起推理请求: 调用 client.predict() 方法,向指定模型端点提交请求,其中 instances 为输入样本,parameters 为可选调控参数。
  • 结果提取与输出: 从响应对象中读取首个预测项的 content 字段,即模型生成的图像语义描述。

该示例实质是在 Vertex AI 上加载预训练的 Gemini 模型(如 gemini-2.0-flash-001),并通过 generate_content 接口完成图文联合推理。输入包括图像 URI 和自然语言指令,模型据此完成跨模态理解任务,并输出符合提示意图的文本答案。

优化图像识别应用程序

合理选用 Gemini 模型

Gemini 系列提供多种规格模型,适用于不同复杂度与性能要求的场景。针对图像识别任务,gemini-pro-vision 是通用首选;但当面对细粒度识别、低光照图像或医学影像等挑战性任务时,可尝试更高阶模型。

  • 权衡模型规模: 更大的参数量通常带来更强泛化力,但会增加延迟与计费成本。应结合业务 SLA 选取最优平衡点。
  • 对比模型架构差异: Gemini 不同版本融合了 Transformer 主干与视觉专用 CNN 结构,建议在真实数据上横向测试各版本表现。
  • 引入迁移学习策略: 可基于 Gemini 的视觉编码器进行轻量化微调(Fine-tuning),仅用少量标注样本即可适配垂直领域需求,大幅节省训练开销。

提示词(Prompt)工程优化

提示设计直接影响模型输出质量。优质 prompt 能有效引导模型聚焦关键视觉特征,提升识别一致性与准确性。

  • 语言精准简练: 避免歧义表达,尽量采用明确主谓宾结构,例如“请列出图中所有可见动物种类”优于“图里有什么?”
  • 尝试多样化句式: 包括疑问句、指令式、填空式等格式,观察哪一类最契合当前任务目标。
  • 注入上下文线索: 若已知图像所属类别(如“X光胸片”“街景监控截图”),可在 prompt 中显式声明,增强模型先验认知。
  • 持续迭代调优: 提示工程本质是实验科学。建议建立评估集,定量对比不同 prompt 下的准确率、召回率等指标,形成闭环优化机制。

如何使用 AI 图像识别应用程序

支持多种图像来源

欢迎尝试不同来源的图像资源,全面检验 Gemini 的识别广度与鲁棒性。

使用 Gemini 和 Vertex AI 构建 AI 图像识别应用程序

图像可来自本地磁盘(需转换为 Base64 或上传至 Cloud Storage),亦可直接引用公开 GCS URI。格式需为 JPEG 或 PNG。

您还可更换 prompt 内容,提出差异化问题,例如:

  • “图像中主要物体的颜色分布是怎样的?”
  • “图中是否存在交通标志?如有,请指出类型。”
  • “该场景可能发生在什么时间与天气条件下?”

以下为官方提供的测试图像 URI 示例:

  • gs://cloud-samples-data/generative-ai/image/scones.jpg
  • gs://cloud-samples-data/generative-ai/image/3flowers.jpg
  • gs://cloud-samples-data/generative-ai/image/cat.jpg

通过组合不同图像与 prompt,您可以深入探索 Gemini 的多模态推理边界,并快速验证其在实际业务中的适用性。

Gemini 和 Vertex AI 的优缺点

? 优势

  • 多模态能力突出,原生支持图文混合理解与生成
  • 与 Google Cloud 生态深度打通,部署链路成熟稳定
  • SDK 封装完善,开发者上手门槛较低

? 局限

  • 对计算资源消耗较大,尤其在高并发场景下需合理规划配额
  • 不同任务间性能波动明显,需针对性调优
  • 强绑定 Google Cloud 平台,跨云迁移成本较高

常见问题解答

如何查询 Google Cloud 项目 ID?
登录 Google Cloud 控制台,进入 IAM & Admin > Settings 页面,项目 ID 将在顶部区域清晰显示。

如何排查 500 错误?
500 错误多由服务端临时异常引发,建议按顺序排查:

  • 重启执行流程,排除瞬时网络抖动影响;
  • 核对 GOOGLE_CLOUD_PROJECT 等环境变量是否拼写正确且已生效;
  • 进入 API 与服务控制台,确认 Vertex AI API 已在当前项目中启用;
  • 如仍无法解决,可提交工单至 Google Cloud 技术支持团队获取进一步协助。

如何提升识别准确率?

  • 升级至更高精度的 Gemini 视觉模型(如 gemini-2.0-pro-vision);
  • 设计更具引导性的 prompt,加入约束条件与输出格式要求;
  • 补充高质量标注数据,开展小样本微调;
  • 应用图像预处理(如对比度增强、去噪)与后处理(如关键词过滤、实体归一化)策略。

相关问题

Gemini 与 Vertex AI 还有哪些延伸应用场景?
除图像识别外,二者还可赋能以下方向:

  • 自然语言处理(NLP): 文本摘要、多语言翻译、情感倾向分析、文档问答等;
  • 智能编程辅助: 自动生成函数、补全代码注释、重构建议、单元测试生成;
  • 商业智能分析: 构建预测模型识别销售趋势、客户流失风险、库存预警等;
  • 智能客服系统: 快速构建多轮对话机器人,支持语音转文本+意图识别+知识库检索;
  • 医疗影像辅助: 对 CT/MRI/X光图像进行病灶定位、分割与初步判读,辅助放射科医生决策。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

28

2026.02.28

Golang 工程化架构设计:可维护与可演进系统构建
Golang 工程化架构设计:可维护与可演进系统构建

Go语言工程化架构设计专注于构建高可维护性、可演进的企业级系统。本专题深入探讨Go项目的目录结构设计、模块划分、依赖管理等核心架构原则,涵盖微服务架构、领域驱动设计(DDD)在Go中的实践应用。通过实战案例解析接口抽象、错误处理、配置管理、日志监控等关键工程化技术,帮助开发者掌握构建稳定、可扩展Go应用的最佳实践方法。

23

2026.02.28

Golang 性能分析与运行时机制:构建高性能程序
Golang 性能分析与运行时机制:构建高性能程序

Go语言以其高效的并发模型和优异的性能表现广泛应用于高并发、高性能场景。其运行时机制包括 Goroutine 调度、内存管理、垃圾回收等方面,深入理解这些机制有助于编写更高效稳定的程序。本专题将系统讲解 Golang 的性能分析工具使用、常见性能瓶颈定位及优化策略,并结合实际案例剖析 Go 程序的运行时行为,帮助开发者掌握构建高性能应用的关键技能。

27

2026.02.28

Golang 并发编程模型与工程实践:从语言特性到系统性能
Golang 并发编程模型与工程实践:从语言特性到系统性能

本专题系统讲解 Golang 并发编程模型,从语言级特性出发,深入理解 goroutine、channel 与调度机制。结合工程实践,分析并发设计模式、性能瓶颈与资源控制策略,帮助将并发能力有效转化为稳定、可扩展的系统性能优势。

16

2026.02.27

Golang 高级特性与最佳实践:提升代码艺术
Golang 高级特性与最佳实践:提升代码艺术

本专题深入剖析 Golang 的高级特性与工程级最佳实践,涵盖并发模型、内存管理、接口设计与错误处理策略。通过真实场景与代码对比,引导从“可运行”走向“高质量”,帮助构建高性能、可扩展、易维护的优雅 Go 代码体系。

18

2026.02.27

Golang 测试与调试专题:确保代码可靠性
Golang 测试与调试专题:确保代码可靠性

本专题聚焦 Golang 的测试与调试体系,系统讲解单元测试、表驱动测试、基准测试与覆盖率分析方法,并深入剖析调试工具与常见问题定位思路。通过实践示例,引导建立可验证、可回归的工程习惯,从而持续提升代码可靠性与可维护性。

2

2026.02.27

漫蛙app官网链接入口
漫蛙app官网链接入口

漫蛙App官网提供多条稳定入口,包括 https://manwa.me、https

164

2026.02.27

deepseek在线提问
deepseek在线提问

本合集汇总了DeepSeek在线提问技巧与免登录使用入口,助你快速上手AI对话、写作、分析等功能。阅读专题下面的文章了解更多详细内容。

8

2026.02.27

AO3官网直接进入
AO3官网直接进入

AO3官网最新入口合集,汇总2026年可用官方及镜像链接,助你快速稳定访问Archive of Our Own平台。阅读专题下面的文章了解更多详细内容。

309

2026.02.27

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 4.7万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.8万人学习

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

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号