Skip to content

Commit efd94c5

Browse files
authored
feat(genai): Add new sample for image gen (#13336)
* feat(genai): Add new sample for image gen * chore: merge fixes in test file * fix: remove seed value
1 parent b3e0ae1 commit efd94c5

File tree

2 files changed

+54
-0
lines changed

2 files changed

+54
-0
lines changed
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# Copyright 2025 Google LLC
2+
#
3+
# Licensed under the Apache License, Version 2.0 (the "License");
4+
# you may not use this file except in compliance with the License.
5+
# You may obtain a copy of the License at
6+
#
7+
# https://www.apache.org/licenses/LICENSE-2.0
8+
#
9+
# Unless required by applicable law or agreed to in writing, software
10+
# distributed under the License is distributed on an "AS IS" BASIS,
11+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+
# See the License for the specific language governing permissions and
13+
# limitations under the License.
14+
15+
16+
def generate_images(output_gcs_uri: str) -> str:
17+
# [START googlegenaisdk_imggen_with_txt]
18+
from google import genai
19+
from google.genai.types import GenerateImagesConfig
20+
21+
client = genai.Client()
22+
23+
# TODO(developer): Update and un-comment below line
24+
# output_gcs_uri = "gs://your-bucket/your-prefix"
25+
26+
image = client.models.generate_images(
27+
model="imagen-3.0-generate-002",
28+
prompt="A dog reading a newspaper",
29+
config=GenerateImagesConfig(
30+
aspect_ratio="1:1",
31+
number_of_images=1,
32+
safety_filter_level="BLOCK_MEDIUM_AND_ABOVE",
33+
person_generation="DONT_ADULT",
34+
output_gcs_uri=output_gcs_uri,
35+
),
36+
)
37+
38+
# Example response:
39+
# gs://your-bucket/your-prefix
40+
print(image.generated_images[0].image.gcs_uri)
41+
# [END googlegenaisdk_imggen_with_txt]
42+
return image.generated_images[0].image.gcs_uri
43+
44+
45+
if __name__ == "__main__":
46+
generate_images(output_gcs_uri="gs://your-bucket/your-prefix")

genai/image_generation/test_image_generation.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@
3232
import imggen_scribble_ctrl_type_with_txt_img
3333
import imggen_style_reference_with_txt_img
3434
import imggen_subj_refer_ctrl_refer_with_txt_imgs
35+
import imggen_with_txt
3536

3637

3738
os.environ["GOOGLE_GENAI_USE_VERTEXAI"] = "True"
@@ -55,6 +56,13 @@ def output_gcs_uri() -> str:
5556
blob.delete()
5657

5758

59+
def test_img_generation(output_gcs_uri: str) -> None:
60+
response = imggen_with_txt.generate_images(
61+
output_gcs_uri=output_gcs_uri
62+
)
63+
assert response
64+
65+
5866
def test_img_customization_subject(output_gcs_uri: str) -> None:
5967
response = imggen_subj_refer_ctrl_refer_with_txt_imgs.subject_customization(
6068
output_gcs_uri=output_gcs_uri

0 commit comments

Comments
 (0)