amongusrickroll68 commited on
Commit
27cac51
1 Parent(s): 7f5ec51

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +53 -34
app.py CHANGED
@@ -1,41 +1,60 @@
1
- import io
2
  import requests
 
3
  from PIL import Image
4
- import torch
5
- from torchvision import transforms
6
- from torchvision.utils import save_image
7
- from torchvision.transforms.functional import resize
8
- from argparse import Namespace
9
 
10
- # Load pre-trained StyleGAN2 model from Hugging Face
11
- model = torch.hub.load('huggingface/pytorch-pretrained-StyleGAN2', 'StyleGAN2')
 
12
 
13
- # Set device to GPU if available
14
- device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
15
- model.to(device)
16
-
17
- # Set seed for reproducibility
18
- torch.manual_seed(0)
19
-
20
- # Define function to generate image from text prompt
21
  def generate_image(prompt):
22
- # Convert text prompt to embeddings using StyleGAN2's tokenizer
23
- embeddings = model.gen.encode(prompt)
24
-
25
- # Generate image from embeddings
26
- with torch.no_grad():
27
- generated_image = model.gen.decode(embeddings, input_is_latent=True)
28
-
29
- # Resize and save image
30
- generated_image = generated_image.clamp(0, 1)
31
- generated_image = resize(generated_image, (256, 256), interpolation=Image.LANCZOS)
32
- image_tensor = transforms.ToTensor()(generated_image)
33
- image_tensor = image_tensor.unsqueeze(0)
34
- save_image(image_tensor, 'output.png')
 
 
 
 
 
 
 
35
 
36
  # Example usage
37
- generate_image("A peaceful countryside with a lake and mountains in the distance")
38
-
39
- # Load generated image and display
40
- image = Image.open('output.png')
41
- image.show()
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  import requests
2
+ import json
3
  from PIL import Image
 
 
 
 
 
4
 
5
+ # Replace YOUR_API_KEY with your OpenAI API key
6
+ API_KEY = 'YOUR_API_KEY'
7
+ ENDPOINT = 'https://api.openai.com/v1/images/generations'
8
 
 
 
 
 
 
 
 
 
9
  def generate_image(prompt):
10
+ headers = {
11
+ 'Content-Type': 'application/json',
12
+ 'Authorization': f'Bearer {API_KEY}'
13
+ }
14
+
15
+ data = {
16
+ 'model': 'image-alpha-001',
17
+ 'prompt': prompt,
18
+ 'num_images': 1,
19
+ 'size': '512x512',
20
+ 'response_format': 'url'
21
+ }
22
+
23
+ response = requests.post(url=ENDPOINT, headers=headers, data=json.dumps(data))
24
+ if response.status_code == 200:
25
+ result_url = response.json()['data'][0]['url']
26
+ image = Image.open(requests.get(result_url, stream=True).raw)
27
+ return image
28
+ else:
29
+ return None
30
 
31
  # Example usage
32
+ prompt = "a cat sitting on a windowsill looking outside"
33
+ image = generate_image(prompt)
34
+ if image:
35
+ image.show()
36
+ else:
37
+ print("Error generating image")
38
+ # A red sports car driving on a winding road
39
+ prompt = "a red sports car driving on a winding road"
40
+ image = generate_image(prompt)
41
+ if image:
42
+ image.show()
43
+ else:
44
+ print("Error generating image")
45
+
46
+ # A house in a forest with a river nearby
47
+ prompt = "a house in a forest with a river nearby"
48
+ image = generate_image(prompt)
49
+ if image:
50
+ image.show()
51
+ else:
52
+ print("Error generating image")
53
+
54
+ # A slice of pepperoni pizza on a plate
55
+ prompt = "a slice of pepperoni pizza on a plate"
56
+ image = generate_image(prompt)
57
+ if image:
58
+ image.show()
59
+ else:
60
+ print("Error generating image")