Hammad712 commited on
Commit
a3a1703
·
verified ·
1 Parent(s): aa4bd46

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +12 -4
main.py CHANGED
@@ -34,12 +34,19 @@ def load_components():
34
  global llm, embeddings, vectorstore, retriever, chain
35
 
36
  try:
 
 
 
 
 
 
 
37
  # 1) Init LLM & Embeddings
38
  llm = ChatGroq(
39
  model="meta-llama/llama-4-scout-17b-16e-instruct",
40
  temperature=0,
41
  max_tokens=1024,
42
- api_key=os.getenv("API_KEY"),
43
  )
44
  embeddings = HuggingFaceEmbeddings(
45
  model_name="intfloat/multilingual-e5-large",
@@ -109,15 +116,16 @@ Your response:
109
 
110
  @app.get("/")
111
  def root():
112
- return {"message": "Arabic Hadith Finder API is up and running!"}
113
 
114
  @app.post("/query")
115
  def query(request: QueryRequest):
116
  try:
117
- logger.info(f"Received query: %s", request.question)
118
  result = chain.invoke({"query": request.question})
119
  logger.info("Query processed successfully.")
120
  return {"answer": result.get("result")}
121
  except Exception as e:
122
  logger.error("Error processing query", exc_info=True)
123
- raise HTTPException(status_code=500, detail="Internal server error.")
 
 
34
  global llm, embeddings, vectorstore, retriever, chain
35
 
36
  try:
37
+ # Ensure API key is provided
38
+ api_key = os.getenv("API_KEY")
39
+ if not api_key:
40
+ logger.error("API_KEY environment variable is not set or empty.")
41
+ raise RuntimeError("API_KEY environment variable is not set or empty.")
42
+ logger.info("API_KEY is set.")
43
+
44
  # 1) Init LLM & Embeddings
45
  llm = ChatGroq(
46
  model="meta-llama/llama-4-scout-17b-16e-instruct",
47
  temperature=0,
48
  max_tokens=1024,
49
+ api_key=api_key,
50
  )
51
  embeddings = HuggingFaceEmbeddings(
52
  model_name="intfloat/multilingual-e5-large",
 
116
 
117
  @app.get("/")
118
  def root():
119
+ return {"message": "API is up and running!"}
120
 
121
  @app.post("/query")
122
  def query(request: QueryRequest):
123
  try:
124
+ logger.info("Received query: %s", request.question)
125
  result = chain.invoke({"query": request.question})
126
  logger.info("Query processed successfully.")
127
  return {"answer": result.get("result")}
128
  except Exception as e:
129
  logger.error("Error processing query", exc_info=True)
130
+ # Return detailed error for debugging
131
+ raise HTTPException(status_code=500, detail=str(e))