GeminiAPIで画像生成!Gemini-2.0-Flashの底力!Pythonで画像を生成・編集しよう!!
Автор: ファーストゲートITチャンネル
Загружено: 2025-03-18
Просмотров: 389
Описание:
2025年3月13日からGoogle AI Studioに画像生成機能が追加されました!
しかもWebAPIを無料で使える!!
つまりプログラムで自動化できる!!これは熱い!!
この動画では、初心者の方にもわかりやすいように、GeminiAPIで画像生成行うPythonコードについて丁寧に解説しています。
この動画を見て一緒に手を動かして頂ければ、GeminiAPIで画像生成できます!!ぜひ一緒に学んでいきましょう!
なお、CursorやデスクトップのPython環境の構築方法等は関連動画欄の動画をご参照ください!
また、GoogleAIStudioの使い方等も関連動画欄をご参照ください。
【関連動画】
①Python×Cursorでデスクトップ簡易アプリ作成!(CursorとPython環境構築の解説あります)
• 【Cursor入門】【Python初心者】Python×Cursorでデスクトップ簡...
②GoogleAIStudio完全入門(基本的な使い方から音声対話、マニアックな設定まで徹底解説)
• 【完全入門】Google AI Studioの基本操作から最先端技術の使い方、更にマ...
③GoogleAIStudioで画像生成!
• 【完全ガイド】Google AI Studioで画像生成!基本操作からAI画像修正ま...
④GeminiAPIの解説動画シリーズ
◆ExcelVBA
・ExcelVBAでGeminiAPIを使う方法(ExcelVBAで癒しのお姉さんBOT作成)
• 【GeminiAPI完全入門】APIキーをゲットしてExcelに癒しのお姉さんBOT...
・ExcelVBAで画像生成!
• Excel VBAでGeminiAPI画像生成!ダウンロード付き!もう自動化するしか...
◆GAS
・GASでGeminiAPIを使う方法(対話型、画像認識、音声認識)
• 【サンプルコードあり】Google Apps Script (GAS)でGemini...
◆Python
・PythonでGeminiAPIを使う方法
(対話型)
• 【速習Python9本目】Gemini2.0Proを使おう!文章清書アプリ!Post...
(画像認識、音声認識)
• 【速習Python10本目】生成AIで画像・音声認識!Geminiライブラリの習得 ...
⑤Python速習シリーズの関連動画
5本目(PILライブラリ)
• 【速習Python5本目】「クリップボードの画像をデスクトップに一発保存」Pillo...
9本目(dotenvライブラリ)
• 【速習Python9本目】Gemini2.0Proを使おう!文章清書アプリ!Post...
【タイムライン】
0:00 はじめに、動画概要
2:15 ①準備(GeminiAPIキー、Cursorのフォルダ設定、google-genaiライブラリインストール)
4:41 ②テキストから画像生成
10:02 ③画像編集
14:42 ④公式ドキュメント
17:33 おわりに
【動画内コード】-----------------------------------------------------
注)この動画では以下を前提にしています
・次のコマンドで関連ライブラリ(PIL、dotenv)をインストールしている
pip install pillow python-dotenv
◆テキストから画像生成
from google import genai
from google.genai import types
from PIL import Image
from io import BytesIO
import os
from dotenv import load_dotenv
画像読み込みで使う
from io import BytesIO
import tkinter as tk
from tkinter import filedialog
import PIL.Image
def filePicker():
root = tk.Tk()
root.withdraw() # メインウィンドウを表示しない
file_path = filedialog.askopenfilename(
title="画像ファイルを選択",
filetypes=[("画像ファイル", "*.jpg *.jpeg *.png *.gif *.bmp")]
)
if not file_path:
print("画像ファイルが選択されませんでした。")
exit()
return file_path
def promptPicker():
prompt = tk.simpledialog.askstring("プロンプト入力", "プロンプトを入力してください:")
return prompt
def main():
image = PIL.Image.open(filePicker())
prompt = promptPicker()
load_dotenv()
apikey = os.getenv("GEMINI_API_KEY")
client = genai.Client(api_key=apikey)
response = client.models.generate_content(
model="gemini-2.0-flash-exp-image-generation",
contents=[prompt,image],
config=types.GenerateContentConfig(response_modalities=['Text', 'Image'])
)
if response.candidates[0].finish_reason == "IMAGE_SAFETY":
print("画像が生成されませんでした。Google安全基準に抵触した可能性があります")
exit()
for part in response.candidates[0].content.parts:
if part.text is not None:
print(part.text)
elif part.inline_data is not None:
image = Image.open(BytesIO(part.inline_data.data))
image.show()
if __name__=="__main__":
main()
◆テキストから画像生成
from google import genai
from google.genai import types
from PIL import Image
from io import BytesIO
import os
from dotenv import load_dotenv
画像読み込みで使う
from io import BytesIO
import tkinter as tk
from tkinter import filedialog
import PIL.Image
def filePicker():
root = tk.Tk()
root.withdraw() # メインウィンドウを表示しない
file_path = filedialog.askopenfilename(
title="画像ファイルを選択",
filetypes=[("画像ファイル", "*.jpg *.jpeg *.png *.gif *.bmp")]
)
if not file_path:
print("画像ファイルが選択されませんでした。")
exit()
return file_path
def promptPicker():
prompt = tk.simpledialog.askstring("プロンプト入力", "プロンプトを入力してください:")
return prompt
def main():
image = PIL.Image.open(filePicker())
prompt = promptPicker()
load_dotenv()
apikey = os.getenv("GEMINI_API_KEY")
client = genai.Client(api_key=apikey)
response = client.models.generate_content(
model="gemini-2.0-flash-exp-image-generation",
contents=[prompt,image],
config=types.GenerateContentConfig(response_modalities=['Text', 'Image'])
)
if response.candidates[0].finish_reason == "IMAGE_SAFETY":
print("画像が生成されませんでした。Google安全基準に抵触した可能性があります")
exit()
for part in response.candidates[0].content.parts:
if part.text is not None:
print(part.text)
elif part.inline_data is not None:
image = Image.open(BytesIO(part.inline_data.data))
image.show()
if __name__=="__main__":
main()
-------------------------------------------------------------
#生成AI, #AI, #Gemini, #gemini 2.0, #Google AI Studio, #WebAPI, #GeminiAPI #初心者, #入門, #初めて, #画像生成, #画像生成AI, #Gemini 2.0, #ファーストゲート, #体験型学習
Повторяем попытку...

Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: