Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| import json | |
| import os | |
| from llama_index import SimpleDirectoryReader, GPTListIndex, readers, GPTSimpleVectorIndex, LLMPredictor, PromptHelper | |
| from langchain import OpenAI | |
| import sys | |
| from IPython.display import Markdown, display | |
| def construct_index(directory_path): | |
| max_input_size = 4096 | |
| num_outputs = 4096 | |
| max_chunk_overlap = 20 | |
| chunk_size_limit = 600 | |
| llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.5, model_name="gpt-3.5-turbo", max_tokens=num_outputs)) | |
| prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit) | |
| ''' | |
| import tkinter as tk | |
| from llama_index import GPTSimpleVectorIndex, LLMPredictor, PromptHelper | |
| from langchain import OpenAI | |
| from IPython.display import Markdown, display | |
| # Define the GUI | |
| class ChatBotGUI: | |
| def __init__(self, master): | |
| self.master = master | |
| master.title("Chat Bot") | |
| # Create a label and an entry for the question | |
| self.label = tk.Label(master, text="Ask me anything:") | |
| self.label.pack() | |
| self.entry = tk.Entry(master) | |
| self.entry.pack() | |
| # Create a button to submit the question | |
| self.button = tk.Button(master, text="Submit", command=self.submit_question) | |
| self.button.pack() | |
| # Create a text box to display the response | |
| self.textbox = tk.Text(master) | |
| self.textbox.pack() | |
| def submit_question(self): | |
| question = self.entry.get() | |
| response = ask_ai(question) | |
| self.textbox.insert(tk.END, "You: " + question + "\n") | |
| self.textbox.insert(tk.END, "Bot: " + response + "\n\n") | |
| self.entry.delete(0, tk.END) | |
| # Create an instance of the GUI and start the main loop | |
| root = tk.Tk() | |
| chatbot_gui = ChatBotGUI(root) | |
| root.mainloop() | |
| ''' | |
| os.environ["OPENAI_API_KEY"] = "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" | |
| construct_index("data") | |
| def ask_ai(question,openai_api_key): | |
| if openai_api_key == "": | |
| os.environ["OPENAI_API_KEY"] = "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" | |
| else: | |
| os.environ["OPENAI_API_KEY"] = openai_api_key | |
| construct_index("data") | |
| index = GPTSimpleVectorIndex.load_from_disk('index.json') | |
| response = index.query(question, response_mode="compact") | |
| return response.response | |
| api_key = gr.inputs.Textbox(label="Paste OPENAI API Key (Or left it blank to use default api)") | |
| iface = gr.Interface(fn=ask_ai, inputs=["text", api_key], outputs="text", title="Chatbot") | |
| iface.launch() |