Google最新生图模型Gemini-2.0-Flash-Exp免费用
Google发布新生图模型
Google释放出最新生图模型,在发布说明中提到:
2025年3月12日
在 Gemini-2.0-Flash-Exp 中发布原生图像输出功能
- Gemini 2.0 Flash Experimental 模型发布,支持原生图像输出功能。
- 开发者能够使用 Gemini 进行图像输出和编辑。
- 模型信息
网友试用后,评价都不错。重点是可以免费使用,使用方式见下文介绍。
通过Google AI Studio使用
通过Google AI Studio可以免费交互式使用(包括此模型外多种模型)。关于AI Studio的申请,应该有Google的账户就可以登录使用,并能在Studio中生成API key以及下载示例代码。
- 在Studio的右侧“Model”处选择“Gemini 2.0 Flash (Image Generation) Experimental”。
- 在“Output format”处选择"Images and text“。
- 以输入提示词“请绘制一个小公园的初春下雪场景,场景中需要小径、有树木等,还有小亭子中国元素为例,经过多几轮“调教”还是满足我想要的效果。
各位看官可自己试用,生图,修图。
注:AI Studio中生成图片左下角,会带Gemini的图标。
通过API在代码中生图
除了使用AI Studio之外,还可以通过API来调用“Gemini 2.0 Flash Experimental”模型生成图片,编辑图片。
-
首先要有API key
生成方式参见Get API key
-
其次使用Google SDK编码处理
可以从 AI Studio右上角“Get code”拿到示例代码,支持多种语言,本文以“python”为例。
-
环境准备及执行
以下代码是在示例代码上做了简单修改,可以根据提示词生成图片,并保存到本地文件。
# python>=3.12版本## install google ai sdk pip install google-genai# 国内访问需要设置代理## 注意环境变量一定是小写https_proxy,不能大写,不然不生效## windows (powershell)$env:https_proxy="http://your_host:port"## macos/linuxexport https_proxy="http://your_host:port"# 设置API KEY环境变量## windows (powershell)$env:GEMINI_API_KEY='your-key'## macos/linuxexport GEMINI_API_KEY=your-key# 执行python gemini-image-gen.py -p "your prompt" -o your-image-save-file
- 源代码(命名为gemini-image-gen.py)
import base64
import os
import argparse
from google import genai
from google.genai import typesdef save_binary_file(file_name, data):"""保存二进制文件Args:file_name (str): 文件保存路径data (bytes): 二进制数据"""f = open(file_name, "wb")f.write(data)f.close()def generate(prompt: str, output_file: str):"""生成图片Args:prompt (str): 提示词output_file (str): 输出文件路径Raises:ValueError: 当GEMINI_API_KEY环境变量未设置时抛出"""api_key = os.environ.get("GEMINI_API_KEY")if not api_key:raise ValueError("请设置GEMINI_API_KEY环境变量。可以通过以下方式设置:\n""Windows PowerShell: $env:GEMINI_API_KEY='your-key'\n""Windows CMD: set GEMINI_API_KEY=your-key\n""Linux/Mac: export GEMINI_API_KEY=your-key")client = genai.Client(api_key=api_key)contents = [types.Content(role="user",parts=[types.Part.from_text(text=prompt)],),]generate_content_config = types.GenerateContentConfig(temperature=1,top_p=0.95,top_k=40,max_output_tokens=8192,response_modalities=["image","text",],response_mime_type="text/plain",)for chunk in client.models.generate_content_stream(model="gemini-2.0-flash-exp",contents=contents,config=generate_content_config,):if not chunk.candidates or not chunk.candidates[0].content or not chunk.candidates[0].content.parts:continueif chunk.candidates[0].content.parts[0].inline_data:save_binary_file(output_file, chunk.candidates[0].content.parts[0].inline_data.data)print("File of mime type"f" {chunk.candidates[0].content.parts[0].inline_data.mime_type} saved"f" to: {output_file}")else:print(chunk.text)def main():parser = argparse.ArgumentParser(description="使用 Gemini 2.0 生成图片",formatter_class=argparse.RawDescriptionHelpFormatter,epilog="""
使用示例:# 生成一个下雪的公园场景python gemini-image-gen.py -p "请绘制一个小公园的下雪场景,场景中需要有树木、小亭子等中国元素" -o snowing-park.png# 生成一个春天的花园场景python gemini-image-gen.py -p "画一个春天的花园,有盛开的樱花和小溪" -o spring-garden.png注意:1. 使用前请确保已设置GEMINI_API_KEY环境变量2. 生成的图片质量取决于提示词的质量3. 如果生成失败,可以尝试修改提示词后重试
""",)parser.add_argument("-p", "--prompt", required=True,help="用于生成图片的提示词")parser.add_argument("-o", "--output",required=True,help="生成图片的保存路径")args = parser.parse_args()generate(args.prompt, args.output)if __name__ == "__main__":main()
- 生成图片示例
# 执行以下命令python gemini-image-gen.py -p "画一个春天的花园,有盛开的樱花和小溪,画面不要全部被景物充满,色彩也不要太艳丽,但要与实物接近" -o spring-garden.png
- 一次性输出结果,看起来还可以
注:当前API生成的图片还没有Gemini的图标。
总结
这是Google在生成式AI图像领域的重要更新,免费使用的特点使其对开发者和普通用户都很有吸引力。本文介绍了不同的使用方法,包括通过Google AI Studio的直接使用和通过API的编程调用,并提供了实际操作的示例。各位看官可以自己试验,欢迎分享。
相关文章:
Google最新生图模型Gemini-2.0-Flash-Exp免费用
Google发布新生图模型 Google释放出最新生图模型,在发布说明中提到: 2025年3月12日 在 Gemini-2.0-Flash-Exp 中发布原生图像输出功能 Gemini 2.0 Flash Experimental 模型发布,支持原生图像输出功能。开发者能够使用 Gemini 进行图像输出和…...
windows安装Elasticsearch
下载 下载最新版 https://www.elastic.co/downloads/elasticsearch 下载历史版本 安装 进入bin目录中 成功启动 访问 http://localhost:9200...
vulnhub靶场之stapler靶机
前言 靶机:stapler靶机,IP地址为192.168.10.12 攻击:kali,IP地址为192.168.10.6 靶机采用virtualbox,攻击机采用VMware虚拟机,都采用桥接网卡模式 文章涉及的靶机及工具,都可以自行访问官网或…...
2025年AI搜索引擎开源项目全景指南:从核心框架到生态工具
2025年AI搜索引擎开源项目全景指南:从核心框架到生态工具 在人工智能技术迅猛发展的当下,开源项目已成为构建AI搜索引擎的核心驱动力。本文整理9个具有代表性的开源项目,涵盖搜索框架、扩展生态及底层支持技术,助你快速搭建或优化…...
数字孪生像魔镜,映照出无限可能的未来
在当今科技飞速发展的时代,数字孪生作为一项极具潜力的前沿技术,正逐渐崭露头角,成为众多领域关注的焦点。它犹如一面神奇的魔镜,以数字化的方式精准映照出现实世界中的各种实体与系统,为我们开启了一扇通往无限可能未…...
PDF Reader
Acrobat Reader...
C++友元
1.什么是友元? 当我们需要在类的外部访问该类的私有成员和保护成员时,就可以利用友元来实现这一操作 在类中用 friend 关键字对函数或类进行声明 2.非成员函数友元 友元函数不是当前类的成员函数,而是当前类的外部函数,但是他可以…...
吴恩达机器学习笔记复盘(五)均方误差函数
只讲了线性回归的代价函数。 均方误差(Mean Squared Error, MSE) 均方误差(MSE)基于最小二乘法,通过计算预测值与真实值之间差值的平方的平均值来衡量模型的误差。 原理 假设我们有一组数据集,其中是第…...
使用 Docker 部署前端项目全攻略
文章目录 1. Docker 基础概念1.1 核心组件1.2 Docker 工作流程 2. 环境准备2.1 安装 Docker2.2 验证安装 3. 项目配置3.1 项目结构3.2 创建 Dockerfile 4. 构建与运行4.1 构建镜像4.2 运行容器4.3 访问应用 5. 使用 Docker Compose5.1 创建 docker-compose.yml5.2 启动服务5.3 …...
珠算与珠心算发展简介
珠算是中华传统优秀文化的科学遗产,它是我国劳动人民的伟大创造,被誉为中国的第五大发明,至今已有 1800 余年的历史。 珠算,是以算盘为工具,用手指拨动算珠进行数值计算的一门计算技术。同时,珠算又是一门科…...
基于SSM + JSP 的水果蔬菜商城
基于ssm的水果蔬菜商城系统前台和后台(源码安装视频数据库环境)计算机项目程序设计管理系统java小程序网站商城 一.相关技术 Java、Spring、Springboot、MVC、Mybatis、MySQL、SSM框架、Web、HTML、maven、JavaScript、css、vue 二.部署配置 1.IntelliJ …...
基于深度学习的蛀牙智能检测与语音提示系统【python源码+Pyqt5界面+数据集+训练代码】
《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…...
Linux与深入HTTP序列化和反序列化
深入HTTP序列化和反序列化 本篇介绍 在上一节已经完成了客户端和服务端基本的HTTP通信,但是前面的传递并没有完全体现出HTTP的序列化和反序列化,为了更好得理解其工作流程,在本节会以更加具体的方式分析到HTTP序列化和反序列化 本节会在介绍…...
音视频入门基础:RTP专题(20)——通过FFprobe显示RTP流每个packet的信息
通过FFprobe命令: ffprobe -protocol_whitelist "file,rtp,udp" -of json -show_packets XXX.sdp 可以显示SDP描述的RTP流每个packet(数据包)的信息: 对于RTP流,上述的“packet”(数据包&#…...
Java Web 大文件上传优化:从困境到高效
文章目录 Java Web 大文件上传优化:从困境到高效一、优化前的困境(一)内存占用问题(二)上传速度缓慢(三)稳定性欠佳 二、优化后的实现方案(一)客户端(Vue&…...
C++——STL 常用的查找算法
算法简介: find //查找元素find_if //按条件查找元素adjacent_find //查找相邻重复元素binary_search //二分查找法count //统计元素个数count_if //按条件统计元素个数 1. find 功能描述: 查找指定元素,找到返回指定元素的迭…...
【一次成功】Win10本地化单机部署k8s v1.31.2版本及可视化看板
【一次成功】Win10本地化单机部署k8s v1.31.2版本及可视化看板 零、安装清单一、安装Docker Desktop软件1.1 安装前<启用或关闭Windows功能> 中的描红的三项1.2 查看软件版本1.3 配置Docker镜像 二、更新装Docker Desktop三、安装 k8s3.1 点击启动安装3.2 查看状态3.3 查…...
Vulkan视频解码decode显示display之同步
在ReleaseDisplayedPicture函数中消耗图片资源并且显示display完成,设置两个标志m_hasConsummerSignalFence true 和m_hasConsummerSignalSemaphore true virtual int32_t ReleaseDisplayedPicture(DecodedFrameRelease** pDecodedFramesRelease, uint32_t nu…...
专题|Python梯度提升实例合集:GBM、XGBoost、SMOTE重采样、贝叶斯、逻辑回归、随机森林分析信贷、破产数据...
全文链接:https://tecdat.cn/?p41051 分析师:Jiajie Shi,Yimeng Li 在当今数据驱动的时代,数据分析师和数据建模师面临着各式各样复杂且极具挑战性的任务。本专题合集便是围绕这些挑战展开的宝贵知识盛宴(点击文末“阅…...
4.0 相机引导XY轴控制螺丝枪打螺丝
假如一个产品的同一水平上要打6个螺钉,是通过伺服XY轴移动带动相机以及螺丝枪,由相机拍照,根据拍照后螺丝孔位置来引导伺服进行移动以对准螺丝孔位置的。步骤如下: 一、9点标定,即把相机与伺服的实际位置关联起来。步骤…...
【ElasticSearch】学习笔记
一、lucene的组成 segment是一个具备完整搜索功能的最小单元。 多个segment组成了一个单机文本检索库lucene。 inverted index:倒排索引,用于快速根据关键词找到对应的文章term index: 构建出关键词的目录树,解决了term dictionary数据量过大ÿ…...
Spring Boot整合RabbitMQ极简教程
一、消息队列能解决什么问题? 异步处理:解耦耗时操作(如发短信、日志记录)流量削峰:应对突发请求,避免系统过载应用解耦:服务间通过消息通信,降低依赖 二、快速整合RabbitMQ 1. 环…...
代码随想录-04-字符串-03.替换数字
替换数字 题目 给定一个字符串 s,它包含小写字母和数字字符,请编写一个函数,将字符串中的字母字符保持不变,而将每个数字字符替换为number。 例如,对于输入字符串 “a1b2c3”,函数应该将其转换为 “anum…...
Tailwindcss开启黑夜模式
本篇讲述如何使用tailwindcss切换白天黑夜主题 tailwindcss自带的暗夜切换会比css自带的theme主体切换来得方便很多,学习成本也很低,只要求会用tailiwndcss 1,tailwindcss.config有两种暗夜模式切换,媒体查询和手动类切换。手动控…...
AI与人的智能,改变一生的思维模型【7】易得性偏差
目录 **易得性偏差思维模型:大脑的「热搜算法」与反操纵指南****病毒式定义:你的大脑正在被「热搜」劫持****四大核心攻击路径与史诗级案例****1. 信息过载时代的「认知短路」****2. 媒体放大器的「恐怖滤镜」****3. 个人经验的「数据暴政」****4. 社交茧…...
有序表--跳表
实现一种结构,支持如下操作,要求单次调用的时间复杂度O(log n) 1,增加x,重复加入算多个词频 2,删除x,如果有多个,只删掉一个 3,查询x的排名,x的排名为,比x小的…...
双指针---字符串替换数字(数字替换为“number“)
题目链接:替换数字 要求:时间复杂度为O(n) 思路: 1、先将字符串扩容到要输出串的长度。 2、从后向前替换数字字符,也就是双指针法,newIndex指向新长度的末尾,i指向旧长度的末尾。 #include<iostream&g…...
外星人入侵-Python-三
武装飞船 开发一个名为《外星人入侵》的游戏吧!为此将使用 Pygame,这是一组功能强大而有趣的模块,可用于管理图形、动画乃至声音, 让你能够更轻松地开发复杂的游戏。通过使用Pygame来处理在屏幕上绘制图像 等任务,可将…...
JavaScript相关面试题
以下是150道JavaScript相关面试题及详细答案: JavaScript基础 1.JavaScript是什么? JavaScript是一种直译式脚本语言,主要用于网页开发,也可用于服务器端开发(如Node.js)。它是一种动态类型、弱类型、基于原…...
常见的数学模型
数学模型的基本原理 简单来说,数学模型就是用数学语言来描述现实世界中的现象或规律。它就像一个“翻译器”,把复杂的现实问题转化成我们可以用数学方法解决的问题。 核心思想: 简化现实:现实世界太复杂,模型会抓住最…...
计算机四级 - 数据库原理 - 第3章 「关系数据库系统概述」
3.1 关系数据库系统概述 关系数据模型的三大要素:关系数据结构、关系操作集合(一次一个集合)和关系完整性约束 1. 关系语言的特点是高度非过程化的, DBMS会自动帮用户选择存取路径,用户不需要依靠循环和递归完成数据的重复操作。…...
使用PHP进行自动化测试:工具与策略的全面分析
使用PHP进行自动化测试:工具与策略的全面分析 引言 随着软件开发的复杂性不断增加,自动化测试已成为确保软件质量的关键环节。PHP作为一种广泛使用的服务器端脚本语言,拥有丰富的生态系统和工具支持,使其成为自动化测试的理想选…...
discuz门户文章允许游客评论
discuz开启游客评论 1、进入后台,用户--用户组--系统用户组--游客--编辑 2、论坛相关 设置未允许发表回复 3、门户相关--文章评论字数(设置此用户组发表文章评论字数限制,设置为0将禁止此用户组发表评论) 4、验证游客回复 测试站 http://jinzhu.zhaowo.…...
AtCoder Beginner Contest 003(A - 社の給料、B -トランプ、C -プログラミング講座、D - 社の冬 )题目讲解
前言 又更新AtCoder Beginner Contes 的题目讲解啦!! 希望能给诸位带来帮助。 话不多说,开始讲解: A - 社の給料←题目翻译 为了解决这个问题,我们需要计算青木每月完成正好N个任务时的平均工资。通过分析,我们可以发现这个问题可以通过数学公式直接求解,而不需要复…...
代码随想录二刷|图论11
图论 一、基础知识 1 无向图 (1)度:一个顶点连n条边就度为n (2)权 加权无向图:有边长的无向图 (3)通道:两个顶点之间有一些边和点,并且没有重复的边 路…...
农资出入库登记本,农药化肥库存出入库软件,佳易王农资管理庄稼医院开单管理系统操作教程
一、概述 本实例以佳易王农资管理庄稼医院开单管理系统为例说明,其他版本可参考本实例。试用版软件资源可到文章最后了解,下载的文件为压缩包文件,请使用免费版的解压工具解压即可试用。 软件特点: 1、功能实用,操作简…...
串的KMP算法详解
KMP算法深度解析 一、从暴力匹配到智能跳转: 在文本编辑器的搜索功能中,当我们在百万字的文档中查找特定关键词时,传统暴力匹配算法的时间复杂度高达O(mn)。KMP算法通过独创的部分匹配表(Partial Match Table)&#x…...
软件测试之测试分类
1. 为什么要对软件测试进行分类 软件测试是软件⽣命周期中的⼀个重要环节,具有较⾼的复杂性,对于软件测试,可以从不同的⻆度 加以分类,使开发者在软件开发过程中的不同层次、不同阶段对测试⼯作进⾏更好的执⾏和管理测试 的分类⽅…...
机器学习 : 训练过程
文章目录 概要流程1 . 前向传播2 . 计算损失3 . 后向传播4 . 梯度下降 技术名词解释小结 【全文大纲】 : https://blog.csdn.net/Engineer_LU/article/details/135149485 概要 主要思想拟合数据 流程 1 . 前向传播 y func * (wxb) 2 . 计算损失 y - Y 3 . 后向传播 根据链式法…...
六十天前端强化训练之第二十天React Router 基础详解
欢迎来到编程星辰海的博客讲解 看完可以给一个免费的三连吗,谢谢大佬! 目录 一、核心概念 1.1 核心组件 1.2 路由模式对比 二、核心代码示例 2.1 基础路由配置 2.2 动态路由示例 2.3 嵌套路由实现 2.4 完整示例代码 三、关键功能实现效果 四、…...
如何在AVL树中高效插入并保持平衡:一步步掌握旋转与平衡因子 —— 旋转篇
文章目录 AVL树种旋转的规则右单旋右单旋代码左单旋左单旋代码左右双旋左右单旋的代码右左单旋右左单旋的代码 AVL树种旋转的规则 在AVL树中,旋转是为了保持树的平衡性。AVL树是一种自平衡的二叉搜索树,它要求每个节点的左右子树的高度差不能超过1。当插…...
C++Primer学习(7.1 定义抽象数据类型)
类的基本思想是数据抽象(data abstraction)和封装(encapsulation)。数据抽象是种依赖于接口(interface)和实现(implementation)分离的编程(以及设计)技术。类的接口包括用户所能执行的操作:类的实现则包括类的数据成员、负责接口实现的函数体以及定义类所需的各种私有函数。 封…...
Vue 3 Diff 算法深度解析:与 Vue 2 双端比对对比
文章目录 1. 核心算法概述1.1 Vue 2 双端比对算法1.2 Vue 3 快速 Diff 算法 2. 算法复杂度分析2.1 时间复杂度对比2.2 空间复杂度对比 3. 核心实现解析3.1 Vue 2 双端比对代码3.2 Vue 3 快速 Diff 代码 4. 性能优化分析4.1 性能测试数据4.2 内存使用对比 5. 使用场景分析5.1 Vu…...
启动桌面Docker提示虚拟服务未启动
在启动 Docker Desktop 时,可能会遇到以下提示: Docker Desktop - Virtual Machine Platform not enabled Virtual Machine Platform not enabled该错误通常是由于 Windows 未启用 “Virtual Machine Platform” 功能导致的,这是运行 Docker…...
【SpringBoot】实现登录功能
在上一篇博客中,我们讲解了注册页面的实现。在此基础上会跳转到登录页面,今天给大家带来的是使用 SpringBoot,MyBatis,Html,CSS,JavaScript,前后端交互实现一个登录功能。 目录 一、效果 二、…...
DataWhale 速通AI编程开发:(进阶篇)第3章 提示词(Prompts)配置项
学习网址:Datawhale-学用 AI,从此开始 3.1 Roo Code提示词配置了什么 众所周知,提示词(Prompt)是用户向大语言模型输入的一段文本,用于指导大语言模型生成符合用户要求的输出。在ai编程领域更是如此,提示…...
VUE中VNode(虚拟节点)是个啥?
用 JavaScript 生成 Virtual DOM(VNode) 在 Vue 中,Virtual DOM(虚拟 DOM)是一个用 JavaScript 对象表示真实 DOM 结构的抽象层。通过这种方式,Vue 可以通过比较 Virtual DOM 与真实 DOM 的差异来最小化更…...
力扣:3. 无重复字符的最长子串(滑动窗口)
3. 无重复字符的最长子串 - 力扣(LeetCode)3. 无重复字符的最长子串 - 给定一个字符串 s ,请你找出其中不含有重复字符的 最长 子串 的长度。 示例 1:输入: s "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc"…...
注解+AOP实现权限控制
注解与AOP实战:实现权限控制 在现代Java开发中,注解(Annotation)和面向切面编程(AOP)是两种强大的技术,它们能够帮助我们实现代码的解耦,提高代码的可读性和可维护性。本文将通过一…...
2.5 python接口编程
在现代软件开发的复杂生态系统中,不同系统、模块之间的交互协作至关重要。接口编程作为一种关键机制,定义了组件之间的通信规范与交互方式。Python 凭借其卓越的灵活性、丰富的库资源以及简洁易读的语法,在接口编程领域占据了重要地位&#x…...