#https://python.langchain.com/docs/how_to/configure/ import gradio as gr from langchain_openai import ChatOpenAI from langchain_core.prompts import ChatPromptTemplate def generate_response(prompt, temperature, api_key): try: llm = ChatOpenAI( model="gpt-4o-mini", temperature=float(temperature), openai_api_key=api_key ) template = ChatPromptTemplate.from_messages([ ("system", "You are a creative assistant."), ("user", "{prompt}") ]) chain = template | llm return chain.invoke({"prompt": prompt}).content except Exception as e: return f"Error: {str(e)}" demo = gr.Interface( fn=generate_response, inputs=[ gr.Textbox( label="Enter your prompt", placeholder="Write something creative..." ), gr.Slider( minimum=0, maximum=1, value=0.7, step=0.1, label="Temperature (0: Focused, 1: Creative)" ), gr.Textbox( label="OpenAI API Key", type="password" ) ], outputs=gr.Textbox(label="Generated Response", lines=5), title="Creative Text Generator", description="Adjust temperature to control response creativity: 0 for focused responses, 0.7 for balanced creativity, 1 for maximum creativity." ) if __name__ == "__main__": demo.launch()