Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import cohere | |
| import os | |
| co = cohere.Client( | |
| api_key=os.getenv('api_key'), # This is your trial API key | |
| ) | |
| def cohere_response(msg): | |
| stream = co.chat_stream( | |
| model='command-r-plus', | |
| message=msg, | |
| temperature=0.3, | |
| chat_history=[], | |
| prompt_truncation='AUTO', | |
| ) | |
| output = '' | |
| for event in stream: | |
| if event.event_type == "text-generation": | |
| output += event.text | |
| print(event.text, end='') | |
| return output | |
| def generate_mockup(problem): | |
| prompt_sum = f'''You are a UX designer who is an expert in generating front-end code for a given requirement from a product manager: {problem}. | |
| You need to carefully understand the requirement and generate the HTML code for a series of mockups that together form a clickable prototype. | |
| You can use Bootstrap and popularly available visual libraries to generate the code.Each screen should be clearly delimited by the header - Screen 1, Screen 2, Screen 3, etc. Do not generate placeholders and always make assumptions that make the generated | |
| mockups useful to solve real-world problems. Each mockup should link to the next, creating a seamless user experience. The prototype should be visually appealing and | |
| satisfy the requirement as a mockup. You are supposed to just generate the HTML code and nothing else as output.''' | |
| response = cohere_response(prompt_sum) | |
| return response | |
| # Define a function to handle form submissions (this is just a placeholder) | |
| def handle_form(requirements): | |
| print(requirements) | |
| emp_content = generate_mockup(requirements) | |
| #final_html_content = extract_html(emp_content) | |
| return emp_content, emp_content | |
| # Create a Gradio interface to showcase the HTML content | |
| gr.Interface( | |
| fn=handle_form, | |
| inputs=gr.Textbox(), | |
| outputs=[gr.HTML(),gr.Textbox()], | |
| title="Mockup Generator", | |
| description="Generate a mockup for a given requirement", | |
| examples=["Design an interface for a food delivery app payment checkout screen, a menu with categories like 'Asian Cuisine' and 'Italian Pasta', and a user profile section.","Generate a newsletter template for a tech company with sections for latest news, featured products, and upcoming events."], | |
| ).launch() | |