Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -28,17 +28,16 @@ from langchain.prompts import (
|
|
| 28 |
)
|
| 29 |
|
| 30 |
|
| 31 |
-
from dotenv import load_dotenv
|
| 32 |
-
|
| 33 |
-
# Load environment variables from .env file
|
| 34 |
-
load_dotenv()
|
| 35 |
-
|
| 36 |
-
# Access the API key
|
| 37 |
-
google_api_key = os.getenv("GOOGLE_API_KEY")
|
| 38 |
-
|
| 39 |
-
|
| 40 |
-
|
| 41 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 42 |
#api_key2 = st.secrets["OPENAI_API_KEY"]
|
| 43 |
os.environ["GOOGLE_API_KEY"] = google_api_key
|
| 44 |
|
|
@@ -183,9 +182,9 @@ def main():
|
|
| 183 |
|
| 184 |
for msg in st.session_state.messages:
|
| 185 |
st.chat_message(msg["role"]).write(msg["content"])
|
| 186 |
-
if msg["role"] == "Assistant":
|
| 187 |
|
| 188 |
-
st.chat_message(msg["role"]).audio(msg["audio_content"], format='audio/wav')
|
| 189 |
#st.audio(audio_msg, format='audio/mp3').audio(audio_msg)
|
| 190 |
|
| 191 |
|
|
@@ -225,12 +224,11 @@ def main():
|
|
| 225 |
compliment = ['thank you', 'thanks', 'thanks a lot', 'thanks a bunch', 'great', 'ok', 'ok thanks', 'okay', 'great', 'awesome', 'nice']
|
| 226 |
|
| 227 |
prompt_template =dedent(r"""
|
| 228 |
-
You are a helpful assistant to help user find information from
|
| 229 |
talk humbly. Answer the question from the provided context. Do not answer from your own training data.
|
| 230 |
Use the following pieces of context to answer the question at the end.
|
| 231 |
If you don't know the answer, just say that you don't know. Do not makeup any answer.
|
| 232 |
-
|
| 233 |
-
Please Do Not say: "Based on the provided context"
|
| 234 |
Always use the context to find the answer.
|
| 235 |
|
| 236 |
this is the context from study material:
|
|
@@ -290,19 +288,19 @@ def main():
|
|
| 290 |
|
| 291 |
elif uploaded_file:
|
| 292 |
with st.spinner('Bot is typing ...'):
|
| 293 |
-
docs = db.similarity_search(prompt, k=
|
| 294 |
response = chain.run(input_documents=docs, question=prompt)
|
| 295 |
|
| 296 |
|
| 297 |
lang = detect(response)
|
| 298 |
|
| 299 |
-
audio_buffer = BytesIO()
|
| 300 |
-
audio_file = gTTS(text=response, lang=lang, slow=False)
|
| 301 |
-
audio_file.write_to_fp(audio_buffer)
|
| 302 |
-
audio_buffer.seek(0)
|
| 303 |
# st.audio(audio_buffer, format='audio/mp3')
|
| 304 |
#st.session_state.audio.append({"role": "Assistant", "audio": audio_buffer})
|
| 305 |
-
st.session_state.messages.append({"role": "Assistant", "content": response, "audio_content": audio_buffer})
|
| 306 |
|
| 307 |
assistant_message = {"role": "assistant", "content": response}
|
| 308 |
else:
|
|
@@ -312,20 +310,20 @@ def main():
|
|
| 312 |
response = chain.invoke({"chat_history": memory, "question": prompt}).content
|
| 313 |
|
| 314 |
|
| 315 |
-
lang = detect(response)
|
| 316 |
|
| 317 |
-
audio_buffer = BytesIO()
|
| 318 |
-
audio_file = gTTS(text=response, lang=lang, slow=False)
|
| 319 |
-
audio_file.write_to_fp(audio_buffer)
|
| 320 |
-
audio_buffer.seek(0)
|
| 321 |
#st.audio(audio_buffer, format='audio/mp3')
|
| 322 |
#st.session_state.audio.append({"role": "Assistant", "audio": audio_buffer})
|
| 323 |
-
st.session_state.messages.append({"role": "Assistant", "content": response, "audio_content": audio_buffer})
|
| 324 |
|
| 325 |
assistant_message = {"role": "assistant", "content": response}
|
| 326 |
|
| 327 |
st.write(response)
|
| 328 |
-
st.audio(audio_buffer, format='audio/wav')
|
| 329 |
|
| 330 |
|
| 331 |
except Exception as e:
|
|
|
|
| 28 |
)
|
| 29 |
|
| 30 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 31 |
|
| 32 |
+
def get_key():
|
| 33 |
+
try:
|
| 34 |
+
google_api_key = st.secrets["GOOGLE_API_KEY"]
|
| 35 |
+
return google_api_key
|
| 36 |
+
except Exception as e:
|
| 37 |
+
google_api_key = os.environ.get("GOOGLE_API_KEY")
|
| 38 |
+
return google_api_key
|
| 39 |
+
|
| 40 |
+
google_api_key = get_key()
|
| 41 |
#api_key2 = st.secrets["OPENAI_API_KEY"]
|
| 42 |
os.environ["GOOGLE_API_KEY"] = google_api_key
|
| 43 |
|
|
|
|
| 182 |
|
| 183 |
for msg in st.session_state.messages:
|
| 184 |
st.chat_message(msg["role"]).write(msg["content"])
|
| 185 |
+
#if msg["role"] == "Assistant":
|
| 186 |
|
| 187 |
+
#st.chat_message(msg["role"]).audio(msg["audio_content"], format='audio/wav')
|
| 188 |
#st.audio(audio_msg, format='audio/mp3').audio(audio_msg)
|
| 189 |
|
| 190 |
|
|
|
|
| 224 |
compliment = ['thank you', 'thanks', 'thanks a lot', 'thanks a bunch', 'great', 'ok', 'ok thanks', 'okay', 'great', 'awesome', 'nice']
|
| 225 |
|
| 226 |
prompt_template =dedent(r"""
|
| 227 |
+
You are a helpful assistant to help user find information from the olympics documents. which will be held in paris this summer.
|
| 228 |
talk humbly. Answer the question from the provided context. Do not answer from your own training data.
|
| 229 |
Use the following pieces of context to answer the question at the end.
|
| 230 |
If you don't know the answer, just say that you don't know. Do not makeup any answer.
|
| 231 |
+
|
|
|
|
| 232 |
Always use the context to find the answer.
|
| 233 |
|
| 234 |
this is the context from study material:
|
|
|
|
| 288 |
|
| 289 |
elif uploaded_file:
|
| 290 |
with st.spinner('Bot is typing ...'):
|
| 291 |
+
docs = db.similarity_search(prompt, k=7, fetch_k=20)
|
| 292 |
response = chain.run(input_documents=docs, question=prompt)
|
| 293 |
|
| 294 |
|
| 295 |
lang = detect(response)
|
| 296 |
|
| 297 |
+
#audio_buffer = BytesIO()
|
| 298 |
+
#audio_file = gTTS(text=response, lang=lang, slow=False)
|
| 299 |
+
#audio_file.write_to_fp(audio_buffer)
|
| 300 |
+
#audio_buffer.seek(0)
|
| 301 |
# st.audio(audio_buffer, format='audio/mp3')
|
| 302 |
#st.session_state.audio.append({"role": "Assistant", "audio": audio_buffer})
|
| 303 |
+
#st.session_state.messages.append({"role": "Assistant", "content": response, "audio_content": audio_buffer})
|
| 304 |
|
| 305 |
assistant_message = {"role": "assistant", "content": response}
|
| 306 |
else:
|
|
|
|
| 310 |
response = chain.invoke({"chat_history": memory, "question": prompt}).content
|
| 311 |
|
| 312 |
|
| 313 |
+
#lang = detect(response)
|
| 314 |
|
| 315 |
+
#audio_buffer = BytesIO()
|
| 316 |
+
#audio_file = gTTS(text=response, lang=lang, slow=False)
|
| 317 |
+
#audio_file.write_to_fp(audio_buffer)
|
| 318 |
+
#audio_buffer.seek(0)
|
| 319 |
#st.audio(audio_buffer, format='audio/mp3')
|
| 320 |
#st.session_state.audio.append({"role": "Assistant", "audio": audio_buffer})
|
| 321 |
+
#st.session_state.messages.append({"role": "Assistant", "content": response, "audio_content": audio_buffer})
|
| 322 |
|
| 323 |
assistant_message = {"role": "assistant", "content": response}
|
| 324 |
|
| 325 |
st.write(response)
|
| 326 |
+
#st.audio(audio_buffer, format='audio/wav')
|
| 327 |
|
| 328 |
|
| 329 |
except Exception as e:
|