Spaces:
Sleeping
Sleeping
from smolagents.tools import Tool | |
from PIL.Image import Image | |
class ImageGeneratorTool(Tool): | |
name = "image_generator" | |
description = "Generates an image based on your query." | |
inputs = { | |
"query": { | |
"type": "string", | |
"description": "The query to generate an image for.", | |
} | |
} | |
output_type = "any" | |
def __init__(self, **kwargs): | |
super().__init__() | |
try: | |
from huggingface_hub import InferenceClient | |
except ImportError as e: | |
raise ImportError( | |
"You must install package `huggingface_hub` to run this tool: for instance run `pip install huggingface_hub`." | |
) from e | |
self.client = InferenceClient("black-forest-labs/FLUX.1-dev") | |
def forward(self, query: str) -> Image: | |
image: Image = self.client.text_to_image(query) | |
if image is None: | |
raise Exception("No results found! Try a less restrictive/shorter query.") | |
return image | |