Spaces:
Runtime error
Runtime error
import warnings | |
from huggingface_hub import InferenceClient | |
import gradio as gr | |
#warnings.filterwarnings('ignore') | |
# Initialize the language model | |
generator = InferenceClient("mistralai/Mixtral-8x7B-Instruct-v0.1") | |
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, | |
TOPIC, DESCRIPTION): | |
try: | |
# Variables and template definitions... | |
# Combine templates based on the DESCRIPTION | |
prompt_template = f"""{introduction_template} {causes_template} {effects_template} {solutions_template} {role_template} {action_template} {summary_template} | |
TOPIC: {TOPIC}. DESCRIPTION: {DESCRIPTION}""" | |
# Generate the script using the language model | |
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: | |
return f"Warning: Section {i + 1} exceeds the target word count. You may need to shorten this section." | |
return script | |
except Exception as e: | |
error_message = f"Error: {e}" | |
# Save error log to a file | |
with open("./error_log.txt", "a") as log_file: | |
log_file.write(error_message + "\n") | |
return error_message | |
# Gradio interface setup... | |
iface = gr.Interface(fn=generate_script, | |
inputs=[gr.Textbox(label="Host Name", value="John"), | |
gr.Textbox(label="Listener Location", value="City"), | |
gr.Textbox(label="Causes Climate Change", value="human activities"), | |
gr.Number(label="CO2 Level", value=400), | |
gr.Textbox(label="Effects Climate Change", value="rising temperatures"), | |
gr.Number(label="Sea Level Rise", value=0.1), | |
gr.Number(label="Warming Rate", value=0.2), | |
gr.Textbox(label="Potential Solutions", value="renewable energy"), | |
gr.Textbox(label="Individual Role", value="reduce carbon footprint"), | |
gr.Textbox(label="Call To Action", value="act now")], | |
outputs="text") | |
# Launch the interface | |
iface.launch(debug=True) | |