import warnings warnings.filterwarnings('ignore') import matplotlib as mpl mpl.rcParams["figure.dpi"] = 150 from transformers import pipeline import gradio as gr # Initialize the language model generator = pipeline('text-generation', model='tiiuae/falcon-7b-instruct') def generate_script(host_name, listener_location, causes_climate_change, co2_level, effects_climate_change, sea_level_rise, warming_rate, potential_solutions, individual_role, call_to_action): # Variables prompt_template = f"""INTRODUCTION: {host_name}, good morning! This is {listener_location}'s local radio station. Today we're talking about an issue that affects us all - climate change. It's a pressing issue that requires our immediate attention... CAUSES OF CLIMATE CHANGE: The causes of climate change are {causes_climate_change}. Today, the level of CO2 in our atmosphere is {co2_level}, which is concerning... EFFECTS OF CLIMATE CHANGE: These activities result in {effects_climate_change}, leading to drastic changes in our environment. For instance, sea levels are rising at a rate of {sea_level_rise} per year, and global temperatures are increasing at a rate of {warming_rate} per decade... POTENTIAL SOLUTIONS: But don't worry, there are solutions. {potential_solutions} are all steps we can take to mitigate these effects... INDIVIDUAL ROLE: Each one of us plays a role in combatting climate change. Even small actions can make a big difference. In fact, our location, {listener_location}, is particularly vulnerable to climate change due to its geographical features... CALL TO ACTION: So, {listener_location}, why wait? Start taking steps today towards a greener future. Support local businesses that prioritize sustainability, reduce your carbon footprint, and voice your opinion to policy makers... SUMMARY: In conclusion, climate change is a serious issue that requires our immediate attention. But by understanding its causes, effects, and potential solutions, we can all play a part in mitigating its impact. Thank you for joining us today, and remember, every small action counts!""" # Generate the script script = generator(prompt_template, max_length=1000)[0]['generated_text'] # Split the script into sections sections = script.split("\n") # Calculate the word count for each section word_counts = [len(section.split()) for section in sections] # Check if any section exceeds the target word count for i, count in enumerate(word_counts): if count > 200: print(f"Warning: Section {i+1} exceeds the target word count. You may need to shorten this section.") return script # Create a Gradio interface iface = gr.Interface(fn=generate_script, inputs=[gr.inputs.Textbox(label="Host Name"), gr.inputs.Textbox(label="Listener Location"), gr.inputs.Textbox(label="Causes Climate Change"), gr.inputs.Number(label="CO2 Level"), gr.inputs.Textbox(label="Effects Climate Change"), gr.inputs.Number(label="Sea Level Rise"), gr.inputs.Number(label="Warming Rate"), gr.inputs.Textbox(label="Potential Solutions"), gr.inputs.Textbox(label="Individual Role"), gr.inputs.Textbox(label="Call To Action")], outputs="text") # Launch the interface iface.launch()