MyTestKey / app.py
kalpesh225's picture
Update app.py
c79918f verified
Raw
History Blame Contribute Delete
1.67 kB
import os
import gradio as gr
from langchain.chat_models import ChatOpenAI
from langchain import LLMChain, PromptTemplate
from langchain.memory import ConversationBufferMemory
# Retrieve and validate OpenAI API key
OPENAI_API_KEY = os.getenv('OPENAI_API_KEY')
if not OPENAI_API_KEY:
raise ValueError("OPENAI_API_KEY environment variable is not set.")
# Define the prompt template
template = """Meet Riya, your youthful and witty personal assistant! At 21 years old, she's full of energy and always eager to help. Riya's goal is to assist you with any questions or problems you might have. Her enthusiasm shines through in every response, making interactions with her enjoyable and engaging.
{chat_history}
User: {user_message}
Chatbot: """
prompt = PromptTemplate(
input_variables=["chat_history", "user_message"],
template=template
)
# Initialize memory and LLM chain
memory = ConversationBufferMemory(memory_key="chat_history")
llm_chain = LLMChain(
llm=ChatOpenAI(
openai_api_key=OPENAI_API_KEY,
temperature=0.5,
model_name="gpt-3.5-turbo"
),
prompt=prompt,
verbose=False, # Set to False for cleaner output
memory=memory,
)
# Define the response function for Gradio
def get_text_response(user_message, history):
response = llm_chain.predict(user_message=user_message)
return response
# Create and launch Gradio interface
demo = gr.ChatInterface(get_text_response)
if __name__ == "__main__":
demo.launch() # Add server_name="0.0.0.0" or share=True for specific use cases #To create a public link, set `share=True` in `launch()`. To enable errors and logs, set `debug=True` in `launch()`.