RAG-Chatbot-Interface / interaction.py
Logeswaransr's picture
Update interaction.py
55e433e verified
from gtts import gTTS
import base64
import os
from initialize import init_doc_store, define_components, define_pipeline
API_Key = os.environ['API_KEY']
def init_pipeline():
path = 'RAG Files/'
files = os.listdir(path)
document_Store = init_doc_store(path, files)
retreiver, prompt_builder, generator = define_components(document_Store, API_Key)
pipeline = define_pipeline(retreiver, prompt_builder, generator)
return pipeline
def generate_response(question, pipeline):
response = pipeline.run({
'retriever':{'query':question},
'prompt_builder':{'question':question}
})
response = response['llm']['replies'][0]
return response
def audio_response(response):
audio_stream="response_audio.mp3"
tts = gTTS(response)
tts.save(audio_stream)
with open(audio_stream, 'rb') as file:
audio_data = file.read()
audio_base64 = base64.b64encode(audio_data).decode('utf-8')
audio_tag = f'<audio autoplay="true" src="data:audio/mp3;base64,{audio_base64}">'
return audio_tag