mirror of
https://github.com/deepset-ai/haystack.git
synced 2026-02-07 07:22:03 +00:00
73 lines
2.9 KiB
Plaintext
73 lines
2.9 KiB
Plaintext
---
|
||
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`](/docs/data-classes#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"))
|
||
```
|