| import streamlit as st |
|
|
| from langchain.agents import create_pandas_dataframe_agent |
| from langchain.chat_models import ChatOpenAI |
| from langchain.agents.agent_types import AgentType |
| from langchain.chat_models.azure_openai import AzureChatOpenAI |
|
|
| import pandas as pd |
|
|
| form = st.sidebar.form(key='my_form') |
| user_api_key = form.text_input( |
| label="#### Your OpenAI API key 👇", |
| placeholder="Paste your openAI API key, sk-", |
| type="password") |
| uploaded_file = form.file_uploader("Choose a file") |
| text_prompt = form.text_area('Text Prompt', value='Hello, how are you?') |
| submit_button = form.form_submit_button(label='Submit') |
|
|
| if submit_button : |
| df = pd.read_csv(uploaded_file) |
|
|
| st.title("OpenAI Chatbot 🤖" |
| ) |
| st.subheader("This is a simple chatbot that uses OpenAI's GPT-3 model to generate responses to your text prompt. ") |
| |
| st.subheader("Your data:") |
| st.write(df) |
| |
| |
| st.markdown("""---""") |
|
|
| st.subheader("AI generated response:") |
|
|
| chat_model = AzureChatOpenAI( |
| deployment_name="chatgpt-4-32k", |
| openai_api_version="2023-03-15-preview", |
| openai_api_type="azure", |
| openai_api_base="https://api.hku.hk", |
| openai_api_key="", |
| ) |
| |
| agent = create_pandas_dataframe_agent( |
| llm=chat_model, |
| df=df, |
| verbose=True, |
| max_tokens_limit=2048, |
| handle_parsing_errors="Check your output and make sure it conforms!", |
| ) |
| |
| result = agent.run(text_prompt) |
| st.write(result) |
| |
| |
| |