Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -11,7 +11,7 @@ model = AutoModelForCausalLM.from_pretrained(model_name)
|
|
11 |
model.config.pad_token_id = tokenizer.pad_token_id
|
12 |
|
13 |
# 2️⃣ Function to Generate Hindi Poetry
|
14 |
-
def
|
15 |
input_ids = tokenizer(prompt, return_tensors="pt").input_ids
|
16 |
with torch.no_grad():
|
17 |
output = model.generate(
|
@@ -24,6 +24,25 @@ def generate_poetry(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.9
|
|
24 |
)
|
25 |
return tokenizer.decode(output[0], skip_special_tokens=True)
|
26 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
def generate_random_poem(num_lines=4, max_length=150, temperature=1.0, top_p=0.9):
|
28 |
# Randomly select a line from the dataset
|
29 |
random_line = random.choice(dataset["poem"])
|
|
|
11 |
model.config.pad_token_id = tokenizer.pad_token_id
|
12 |
|
13 |
# 2️⃣ Function to Generate Hindi Poetry
|
14 |
+
def generate_poetry_base(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.95):
|
15 |
input_ids = tokenizer(prompt, return_tensors="pt").input_ids
|
16 |
with torch.no_grad():
|
17 |
output = model.generate(
|
|
|
24 |
)
|
25 |
return tokenizer.decode(output[0], skip_special_tokens=True)
|
26 |
|
27 |
+
def generate_poetry(prompt, max_length=100, temperature=0.7, top_k=50, top_p=0.95):
|
28 |
+
input_ids = tokenizer(prompt, return_tensors="pt").input_ids
|
29 |
+
with torch.no_grad():
|
30 |
+
output = model.generate(
|
31 |
+
input_ids,
|
32 |
+
attention_mask=attention_mask,
|
33 |
+
max_length=max_length,
|
34 |
+
temperature=temperature, # Increased randomness
|
35 |
+
top_p=top_p,
|
36 |
+
do_sample=True,
|
37 |
+
repetition_penalty=1.5, # Added repetition penalty to prevent duplicates
|
38 |
+
num_beams=5, # Use beam search for higher quality output
|
39 |
+
no_repeat_ngram_size=2, # Prevent repeating the same n-grams
|
40 |
+
early_stopping=True,
|
41 |
+
pad_token_id=pad_token_id
|
42 |
+
)
|
43 |
+
return tokenizer.decode(output[0], skip_special_tokens=True)
|
44 |
+
|
45 |
+
|
46 |
def generate_random_poem(num_lines=4, max_length=150, temperature=1.0, top_p=0.9):
|
47 |
# Randomly select a line from the dataset
|
48 |
random_line = random.choice(dataset["poem"])
|