Spaces:
Runtime error
Runtime error
import streamlit as st | |
import os, time | |
from llama_index.readers.schema.base import Document | |
from llama_index import LLMPredictor, GPTSimpleVectorIndex, PromptHelper, GPTTreeIndex | |
from langchain import OpenAI | |
import pandas as pd | |
def generate_response(prompt, index, llm_predictor, test=False): | |
if test: | |
return prompt | |
else: | |
response = index.query(prompt, llm_predictor=llm_predictor) | |
return response | |
def update_chat_state(): | |
st.session_state.chat_sent = st.session_state.chat_input | |
st.session_state.chat_input = '' | |
def get_chat_input(): | |
st.text_input(label="Write your query here", key="chat_input", on_change=update_chat_state) | |
return st.session_state.chat_sent | |
def config_llm_predictor(): | |
llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.3, model_name="gpt-3.5-turbo")) | |
max_input_size = 8192 | |
num_output = None | |
max_chunk_overlap = 20 | |
prompt_helper = PromptHelper(max_input_size = max_input_size, num_output = num_output, max_chunk_overlap = max_chunk_overlap) | |
return llm_predictor | |
def load_index(json_index): | |
#index = GPTTreeIndex.load_from_disk(json_index) | |
index = GPTSimpleVectorIndex.load_from_disk(json_index) | |
return index | |
def get_data(): | |
data = pd.read_csv("data/appstore_reviews.csv") | |
data = data[["application", "review", "rating", "date"]] | |
data["application"] = data["application"].str.lower() | |
data = data[~data["review"].isna()] | |
return data | |
def set_api_key(api_key_file): | |
with open(api_key_file, "r") as file: | |
openai_key = file.read().replace("\n", "") | |
# Set environment | |
os.environ["OPENAI_API_KEY"] = openai_key | |
def get_search(data): | |
input_text = st.text_input("Search in reviews:", key="search") | |
output = data[data["review"].apply(lambda x: x.lower()).str.contains(input_text.lower())] | |
return output |