fynn3003's picture
Create app.py
20c75d5
import gradio as gr
import os
from langchain.chat_models import ChatOpenAI
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
from langchain.chains import SimpleSequentialChain
def load_chain(api_key):
os.environ["OPENAI_API_KEY"] = api_key
llm = ChatOpenAI(model_name="gpt-3.5-turbo", temperature=0.1)
first_prompt = PromptTemplate(
input_variables=["user_in"],
template= "Write the outline of the coding steps to develop the program {user_in} in five steps. Use Python3 and Be concise. \n\n"
)
chain = LLMChain(llm=llm, prompt=first_prompt)
second_prompt = PromptTemplate(
input_variables=["program"],
template= '''Write the python3 code for each step of the {program} described. Use python3 style. Be concise in the code and opinionated about framework choice.'''
)
chain_two = LLMChain(llm=llm, prompt=second_prompt)
overall_chain = SimpleSequentialChain(chains=[chain, chain_two], verbose=True)
return overall_chain
def answer_question(api_key, question):
chain = load_chain(api_key)
output = chain.run(input=question)
return output
ifaces = gr.Interface(
fn=answer_question,
inputs=[gr.inputs.Textbox(
label="Your OpenAI API Key",
placeholder="e.g. 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"),
gr.inputs.Textbox(label="Write a python script to:",
placeholder="e.g. Find the 10th number of the Fibonacci sequence")],
outputs=gr.outputs.Textbox(label="User guide"),
title="Python Code Generator",
description="Enter your OpenAI API key below and a description of your desired python project in 1-2 sentences"
)
ifaces.launch()