Spaces:
Runtime error
Runtime error
import os | |
import streamlit as st | |
from groq import Groq | |
from dotenv import load_dotenv | |
load_dotenv() | |
def make_call(api): | |
"""Calls the Groq API (assuming API key auth) and handles potential errors.""" | |
try: | |
client = Groq( | |
api_key=api, | |
) # Configure the model with the API key | |
query = st.text_input("Enter your query") | |
prmptquery= f"Act as bhagwan Krishna and answer this query in context to bhagwat geeta, you may also provide reference to shloks from chapters of bhagwat geeta which is relevant to the query. Query= {query}" | |
chat_completion = client.chat.completions.create( | |
messages=[ | |
{ | |
"role": "user", | |
"content": prmptquery, | |
} | |
], | |
model="mixtral-8x7b-32768", | |
) | |
# print(response.text) # Return the response for further processing | |
return chat_completion.choices[0].message.content | |
except Exception as e: | |
print(f"API call failed for: {e}") | |
return None # Indicate failur | |
api1 = os.getenv("GROQ_API_KEY1") | |
api2 = os.getenv("GROQ_API_KEY2") | |
apis = [ | |
api1, | |
api2 | |
] | |
# Loop indefinitely | |
data = None | |
# while True: # Loop indefinitely | |
for api in apis: | |
data = make_call(api) | |
if data: # Check for a successful response | |
st.write(data) | |
break # Exit both the for loop and while loop | |
else: | |
st.write(f"Failed to retrieve data from.") | |
# if data: # If a successful response was found, break the outer while loop | |
# break |