Spaces:
Sleeping
Sleeping
n0v33n
commited on
Commit
Β·
11a2bf7
1
Parent(s):
ea6c750
Uldated app.py
Browse files
app.py
CHANGED
@@ -24,18 +24,24 @@ if not GOOGLE_API_KEY:
|
|
24 |
genai.configure(api_key=GOOGLE_API_KEY)
|
25 |
|
26 |
# βββ Load or fallback LeetCode data ββββββββββββββββββββββββββ
|
|
|
27 |
GOOGLE_SHEET_URL = "https://docs.google.com/spreadsheets/d/1KK9Mnm15hV3ALJo-quJndftWfaujJ7K2_zHMCTo5mGE/"
|
28 |
FILE_ID = GOOGLE_SHEET_URL.split("/d/")[1].split("/")[0]
|
29 |
DOWNLOAD_URL = f"https://drive.google.com/uc?export=download&id={FILE_ID}"
|
30 |
-
OUTPUT_FILE = "leetcode_downloaded.xlsx"
|
31 |
|
32 |
try:
|
33 |
-
|
34 |
-
|
35 |
-
|
|
|
|
|
|
|
|
|
|
|
36 |
print(f"Loaded {len(LEETCODE_DATA)} problems")
|
37 |
-
except Exception:
|
38 |
-
print("Failed to download
|
|
|
39 |
LEETCODE_DATA = pd.DataFrame([
|
40 |
{"problem_no": 3151, "problem_level": "Easy", "problem_statement": "special array",
|
41 |
"problem_link": "https://leetcode.com/problems/special-array-i/?envType=daily-question&envId=2025-06-01"},
|
@@ -284,6 +290,7 @@ User Query: {query}
|
|
284 |
user_sessions.setdefault(session_key, {"history": []})
|
285 |
|
286 |
tool_name, args = self._classify_intent(query)
|
|
|
287 |
|
288 |
if tool_name not in self.tools:
|
289 |
return f"I couldn't understand your request. Please try asking for:\n- Daily coding question\n- Mock interview\n- Interview questions for a specific topic"
|
@@ -314,6 +321,7 @@ class ChatResponse(BaseModel):
|
|
314 |
@app.post("/chat", response_model=ChatResponse)
|
315 |
async def chat(req: ChatRequest):
|
316 |
q = preprocess_query(req.question)
|
|
|
317 |
ans = agent.process_query(q, req.user_id, req.session_id)
|
318 |
return ChatResponse(session_id=req.session_id, answer=ans)
|
319 |
|
@@ -330,4 +338,4 @@ def root():
|
|
330 |
|
331 |
if __name__ == "__main__":
|
332 |
import uvicorn
|
333 |
-
uvicorn.run(app, host="0.0.0.0", port=8000)
|
|
|
24 |
genai.configure(api_key=GOOGLE_API_KEY)
|
25 |
|
26 |
# βββ Load or fallback LeetCode data ββββββββββββββββββββββββββ
|
27 |
+
OUTPUT_FILE = "leetcode_downloaded.xlsx"
|
28 |
GOOGLE_SHEET_URL = "https://docs.google.com/spreadsheets/d/1KK9Mnm15hV3ALJo-quJndftWfaujJ7K2_zHMCTo5mGE/"
|
29 |
FILE_ID = GOOGLE_SHEET_URL.split("/d/")[1].split("/")[0]
|
30 |
DOWNLOAD_URL = f"https://drive.google.com/uc?export=download&id={FILE_ID}"
|
|
|
31 |
|
32 |
try:
|
33 |
+
if os.path.exists(OUTPUT_FILE):
|
34 |
+
print(f"Loading LeetCode data from local file: {OUTPUT_FILE}")
|
35 |
+
LEETCODE_DATA = pd.read_excel(OUTPUT_FILE)
|
36 |
+
else:
|
37 |
+
print("Local LeetCode file not found. Attempting to download...")
|
38 |
+
print("Downloading LeetCode data...")
|
39 |
+
gdown.download(DOWNLOAD_URL, OUTPUT_FILE, quiet=False)
|
40 |
+
LEETCODE_DATA = pd.read_excel(OUTPUT_FILE)
|
41 |
print(f"Loaded {len(LEETCODE_DATA)} problems")
|
42 |
+
except Exception as e:
|
43 |
+
print(f"Failed to load or download LeetCode data: {str(e)}")
|
44 |
+
print("Using fallback dataset.")
|
45 |
LEETCODE_DATA = pd.DataFrame([
|
46 |
{"problem_no": 3151, "problem_level": "Easy", "problem_statement": "special array",
|
47 |
"problem_link": "https://leetcode.com/problems/special-array-i/?envType=daily-question&envId=2025-06-01"},
|
|
|
290 |
user_sessions.setdefault(session_key, {"history": []})
|
291 |
|
292 |
tool_name, args = self._classify_intent(query)
|
293 |
+
print(f"Selected tool: {tool_name}, args: {args}") # Debug log
|
294 |
|
295 |
if tool_name not in self.tools:
|
296 |
return f"I couldn't understand your request. Please try asking for:\n- Daily coding question\n- Mock interview\n- Interview questions for a specific topic"
|
|
|
321 |
@app.post("/chat", response_model=ChatResponse)
|
322 |
async def chat(req: ChatRequest):
|
323 |
q = preprocess_query(req.question)
|
324 |
+
print(f"Preprocessed query: {q}") # Debug log
|
325 |
ans = agent.process_query(q, req.user_id, req.session_id)
|
326 |
return ChatResponse(session_id=req.session_id, answer=ans)
|
327 |
|
|
|
338 |
|
339 |
if __name__ == "__main__":
|
340 |
import uvicorn
|
341 |
+
uvicorn.run(app, host="0.0.0.0", port=8000)
|