# GenAI Program g4 - GloVe paragraph generation from a seed word
!pip install gensim

import gensim.downloader as api
import random

print("Loading GloVe model...")
model = api.load("glove-wiki-gigaword-100")
print("Model loaded!")

def generate_similar_words(seed_word, topn=10):
    if seed_word in model:
        return [word for word, _ in model.most_similar(seed_word, topn=topn)]
    return []

def create_paragraph(seed_word):
    similar_words = generate_similar_words(seed_word)
    if not similar_words:
        return f"No similar words found for '{seed_word}'."

    random.shuffle(similar_words)
    selected = similar_words[:5]

    paragraph = (
        f"In a world defined by {seed_word}, "
        f"people found themselves surrounded by concepts like {', '.join(selected[:-1])}, and {selected[-1]}. "
        f"These ideas shaped the way they thought, acted, and dreamed. "
        f"Every step forward reflected the essence of '{seed_word}', "
        f"bringing them closer to understanding the true meaning of {selected[0]}."
    )
    return selected,paragraph

seed = "freedom"
sel,para=create_paragraph(seed)
print("Similar Words: ",sel)
print(para)
