rahul7star commited on
Commit
68a4c6f
·
verified ·
1 Parent(s): 17c4ee5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +3 -23
app.py CHANGED
@@ -4,7 +4,6 @@ import torch
4
  import random
5
  from datasets import load_dataset
6
  from transformers import GPT2LMHeadModel, GPT2Tokenizer
7
- import torch
8
 
9
  # Load dataset
10
  dataset = load_dataset("rahul7star/hindi-poetry")["train"]
@@ -14,14 +13,6 @@ model_name = "rahul7star/hindi_poetry_language_model"
14
  tokenizer = GPT2Tokenizer.from_pretrained(model_name)
15
  model = GPT2LMHeadModel.from_pretrained(model_name)
16
 
17
- # 1️⃣ Load Model & Tokenizer from Hugging Face Hub
18
- # model_name = "rahul7star/hindi_poetry_language_model"
19
- # tokenizer = AutoTokenizer.from_pretrained(model_name)
20
- # model = AutoModelForCausalLM.from_pretrained(model_name)
21
-
22
- # Ensure model uses the correct pad token
23
- #model.config.pad_token_id = tokenizer.pad_token_id
24
-
25
  # 2️⃣ Function to Generate Hindi Poetry
26
  def generate_poetry_base(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.95):
27
  input_ids = tokenizer(prompt, return_tensors="pt").input_ids
@@ -41,7 +32,6 @@ def generate_poetry(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.9
41
  with torch.no_grad():
42
  output = model.generate(
43
  input_ids,
44
-
45
  max_length=max_length,
46
  temperature=temperature, # Increased randomness
47
  top_p=top_p,
@@ -54,11 +44,8 @@ def generate_poetry(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.9
54
  )
55
  return tokenizer.decode(output[0], skip_special_tokens=True)
56
 
57
-
58
-
59
-
60
  # Poetry Generation Function with Random Selection from Dataset and Explicit 4-Line Structure
61
- def generate_random_poem(num_lines=4, max_length=150, temperature=1.0, top_p=0.9):
62
  # Randomly select a line from the dataset
63
  random_line = random.choice(dataset["poem"])
64
 
@@ -111,16 +98,9 @@ def generate_random_poem(num_lines=4, max_length=150, temperature=1.0, top_p=0.9
111
 
112
  return final_poem
113
 
114
-
115
-
116
-
117
-
118
-
119
-
120
  # 3️⃣ Gradio Interface
121
  interface = gr.Interface(
122
- #fn=generate_poetry,
123
- fn=generate_random_poem(num_lines=4),
124
  inputs=[
125
  gr.Textbox(label="Enter Prompt", placeholder="Start your Hindi poem..."),
126
  gr.Slider(50, 500, step=10, value=100, label="Max Length"),
@@ -130,7 +110,7 @@ interface = gr.Interface(
130
  ],
131
  outputs=gr.Textbox(label="Generated Hindi Poem"),
132
  title="Hindi Poetry Generator ✨",
133
- description="Generate beautiful Hindi poetry Just enter a prompt and adjust parameters Exp - मैया मोरी",
134
  )
135
 
136
  # 4️⃣ Run the Gradio App
 
4
  import random
5
  from datasets import load_dataset
6
  from transformers import GPT2LMHeadModel, GPT2Tokenizer
 
7
 
8
  # Load dataset
9
  dataset = load_dataset("rahul7star/hindi-poetry")["train"]
 
13
  tokenizer = GPT2Tokenizer.from_pretrained(model_name)
14
  model = GPT2LMHeadModel.from_pretrained(model_name)
15
 
 
 
 
 
 
 
 
 
16
  # 2️⃣ Function to Generate Hindi Poetry
17
  def generate_poetry_base(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.95):
18
  input_ids = tokenizer(prompt, return_tensors="pt").input_ids
 
32
  with torch.no_grad():
33
  output = model.generate(
34
  input_ids,
 
35
  max_length=max_length,
36
  temperature=temperature, # Increased randomness
37
  top_p=top_p,
 
44
  )
45
  return tokenizer.decode(output[0], skip_special_tokens=True)
46
 
 
 
 
47
  # Poetry Generation Function with Random Selection from Dataset and Explicit 4-Line Structure
48
+ def generate_random_poem(prompt, num_lines=4, max_length=150, temperature=1.0, top_p=0.9):
49
  # Randomly select a line from the dataset
50
  random_line = random.choice(dataset["poem"])
51
 
 
98
 
99
  return final_poem
100
 
 
 
 
 
 
 
101
  # 3️⃣ Gradio Interface
102
  interface = gr.Interface(
103
+ fn=generate_random_poem, # Use function directly without calling it
 
104
  inputs=[
105
  gr.Textbox(label="Enter Prompt", placeholder="Start your Hindi poem..."),
106
  gr.Slider(50, 500, step=10, value=100, label="Max Length"),
 
110
  ],
111
  outputs=gr.Textbox(label="Generated Hindi Poem"),
112
  title="Hindi Poetry Generator ✨",
113
+ description="Generate beautiful Hindi poetry. Just enter a prompt and adjust parameters. Example: 'मैया मोरी'",
114
  )
115
 
116
  # 4️⃣ Run the Gradio App