--- title: "VertexAIImageGenerator" id: vertexaiimagegenerator slug: "/vertexaiimagegenerator" description: "This component enables image generation using Google Vertex AI generative model." --- # VertexAIImageGenerator This component enables image generation using Google Vertex AI generative model.
| | | | --- | --- | | **Mandatory run variables** | `prompt`: A string containing the prompt for the model | | **Output variables** | `images`: A list of [`ByteStream`](../../concepts/data-classes.mdx#bytestream) containing images generated by the model | | **API reference** | [Google Vertex](/reference/integrations-google-vertex) | | **GitHub link** | https://github.com/deepset-ai/haystack-core-integrations/tree/main/integrations/google_vertex |
`VertexAIImageGenerator` supports the `imagegeneration` model. ### Parameters Overview `VertexAIImageGenerator` uses Google Cloud Application Default Credentials (ADCs) for authentication. For more information on how to set up ADCs, see the [official documentation](https://cloud.google.com/docs/authentication/provide-credentials-adc). Keep in mind that it’s essential to use an account that has access to a project authorized to use Google Vertex AI endpoints. You can find your project ID in the [GCP resource manager](https://console.cloud.google.com/cloud-resource-manager) or locally by running `gcloud projects list` in your terminal. For more info on the gcloud CLI, see its [official documentation](https://cloud.google.com/cli). ## Usage You need to install `google-vertex-haystack` package to use the `VertexAIImageGenerator`: ```python pip install google-vertex-haystack ``` ### On its own Basic usage: ```python from pathlib import Path from haystack_integrations.components.generators.google_vertex import ( VertexAIImageGenerator, ) generator = VertexAIImageGenerator() result = generator.run(prompt="Generate an image of a cute cat") result["images"][0].to_file(Path("my_image.png")) ``` You can also set other parameters like the number of images generated and the guidance scale to change the strength of the prompt. Let’s also use a negative prompt to omit something from the image: ```python from pathlib import Path from haystack_integrations.components.generators.google_vertex import ( VertexAIImageGenerator, ) generator = VertexAIImageGenerator( number_of_images=3, guidance_scale=12, ) result = generator.run( prompt="Generate an image of a cute cat", negative_prompt="window, chair", ) for i, image in enumerate(result["images"]): images.to_file(Path(f"image_{i}.png")) ```