Spaces:
No application file
No application file
import os | |
import openai | |
from dotenv import load_dotenv | |
from index import IndexSearchEngine | |
from gpt_3_manager import Gpt3Manager | |
from prompt import QuestionAnsweringPrompt, PassageSummarizationPrompt | |
load_dotenv() | |
OPENAI_API_KEY = os.getenv("OPENAI_API_KEY") | |
openai.api_key = OPENAI_API_KEY | |
class ChatBot: | |
def __init__(self, index_search_engine: IndexSearchEngine): | |
self.index_search_engine = index_search_engine | |
def ask(self, question): | |
search_result = self.index_search_engine.search(question=question) | |
answers = [] | |
for result in search_result: | |
print("iterating over answering questions") | |
question_answering_prompt = QuestionAnsweringPrompt.load( | |
"prompts\question_answering.txt" | |
) | |
answer = Gpt3Manager.get_completion( | |
prompt=question_answering_prompt, max_tokens=80, model="text-curie-001" | |
) | |
answers.append(answer) | |
passage_summarization_prompt = PassageSummarizationPrompt.load( | |
"prompts\passage_summarization.txt" | |
) | |
final_answer = Gpt3Manager.get_completion(prompt=passage_summarization_prompt) | |
return final_answer | |