Juank0621 commited on
Commit
7fc951d
·
verified ·
1 Parent(s): ae7a494

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -6
app.py CHANGED
@@ -7,16 +7,29 @@ from tools.final_answer import FinalAnswerTool
7
 
8
  from Gradio_UI import GradioUI
9
 
 
 
 
 
 
 
 
 
10
  # Below is an example of a tool that does nothing. Amaze us with your creativity !
11
  @tool
12
- def my_custom_tool(arg1:str, arg2:int)-> str: #it's import to specify the return type
13
- #Keep this format for the description / args / args description but feel free to modify the tool
14
- """A tool that does nothing yet
15
  Args:
16
- arg1: the first argument
17
- arg2: the second argument
 
 
 
18
  """
19
- return "What magic will you build ?"
 
 
 
20
 
21
  @tool
22
  def get_current_time_in_timezone(timezone: str) -> str:
 
7
 
8
  from Gradio_UI import GradioUI
9
 
10
+ from diffusers import StableDiffusionPipeline
11
+ import torch
12
+ from io import BytesIO
13
+
14
+ # Load Stable Diffusion Model
15
+ pipeline = StableDiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5")
16
+ pipeline.to("cuda") # Use GPU if available
17
+
18
  # Below is an example of a tool that does nothing. Amaze us with your creativity !
19
  @tool
20
+ def my_custom_tool(prompt: str, steps: int = 50, guidance_scale: float = 7.5) -> bytes:
21
+ """Generates an image based on a text prompt using Stable Diffusion.
 
22
  Args:
23
+ prompt: The description of the image.
24
+ steps: Number of inference steps (default is 50 for quality balance).
25
+ guidance_scale: How much the model follows the text (default is 7.5).
26
+ Returns:
27
+ The generated image in bytes (PNG format).
28
  """
29
+ image = pipeline(prompt, num_inference_steps=steps, guidance_scale=guidance_scale).images[0]
30
+ img_byte_arr = BytesIO()
31
+ image.save(img_byte_arr, format='PNG')
32
+ return img_byte_arr.getvalue()
33
 
34
  @tool
35
  def get_current_time_in_timezone(timezone: str) -> str: