Spaces:
Runtime error
Runtime error
# -*- coding: utf-8 -*- | |
"""Copy of Copy of Chatbot with custom knowledge base | |
Automatically generated by Colaboratory. | |
Original file is located at | |
https://colab.research.google.com/drive/1VSXUmag_76fzebs16YhW_as4mdhHNdkx | |
""" | |
#pip install llama-index | |
#pip install langchain | |
#pip install gradio | |
#pip install pandas | |
#pip install openpyxl | |
import pandas as pd | |
from llama_index import SimpleDirectoryReader, GPTListIndex, readers, GPTSimpleVectorIndex, LLMPredictor, PromptHelper | |
from langchain import OpenAI | |
import sys | |
import os | |
from IPython.display import Markdown, display | |
import pandas as pd | |
from llama_index import SimpleDirectoryReader, GPTListIndex, readers, GPTSimpleVectorIndex, LLMPredictor, PromptHelper | |
from langchain import OpenAI | |
from IPython.display import Markdown, display | |
import gradio as gr | |
df = pd.read_excel('Shegardi_dataset.xlsx', sheet_name='dataset') | |
os.environ['OPENAI_API_KEY'] = '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' | |
def construct_index(directory_path): | |
# set maximum input size | |
max_input_size = 4096 | |
# set number of output tokens | |
num_outputs = 2000 | |
# set maximum chunk overlap | |
max_chunk_overlap = 20 | |
# set chunk size limit | |
chunk_size_limit = 600 | |
# define LLM | |
llm_predictor = LLMPredictor(llm=OpenAI(temperature=0.5, model_name="text-davinci-003", max_tokens=num_outputs)) | |
prompt_helper = PromptHelper(max_input_size, num_outputs, max_chunk_overlap, chunk_size_limit=chunk_size_limit) | |
documents = SimpleDirectoryReader(directory_path).load_data() | |
index = GPTSimpleVectorIndex( | |
documents, llm_predictor=llm_predictor, prompt_helper=prompt_helper | |
) | |
# Fix for the error message | |
index.registry.add_type_to_struct(1, {"answer": str, "question": str}) | |
index.save_to_disk('index.json') | |
return index | |
# construct_index("context_data/data") | |
# Include other necessary imports here | |
def ask_ai(query): | |
index = GPTSimpleVectorIndex.load_from_disk('index.json') | |
response = index.query(query, response_mode="compact") | |
return response.response | |
iface = gr.Interface(fn=ask_ai, inputs="text", outputs="text", | |
title="The following is a conversation with a human called Shegardi. Shegardi is helpful, precise, truthful, and very friendly. Also, Shegardi is an employee of Warba Bank, located in Kuwait. Shegardi will only use the information provided to him. ", | |
description="Enter a question and get an answer from Shegardi.") | |
iface.launch() | |