Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -351,5 +351,34 @@ async def ask_question(q: str, user: User = Depends(get_current_user)):
|
|
| 351 |
answer = user.ask_question(q)
|
| 352 |
return {"question": q, "answer": answer}
|
| 353 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 354 |
if __name__ == "__main__":
|
| 355 |
uvicorn.run(app, host="0.0.0.0", port=8000)
|
|
|
|
| 351 |
answer = user.ask_question(q)
|
| 352 |
return {"question": q, "answer": answer}
|
| 353 |
|
| 354 |
+
@app.get("/user_data/")
|
| 355 |
+
async def get_user_data(user: User = Depends(get_current_user)):
|
| 356 |
+
"""Get user's current session data including papers and API key status"""
|
| 357 |
+
detailed_papers = []
|
| 358 |
+
for i, paper in enumerate(user.papers):
|
| 359 |
+
detailed_papers.append({
|
| 360 |
+
"title": paper.title,
|
| 361 |
+
"type": "arxiv" if paper.arxiv_id else "pdf",
|
| 362 |
+
"has_references": bool(paper.references),
|
| 363 |
+
"references_loaded": bool(paper.references),
|
| 364 |
+
"references": [ref.title for ref in paper.references] if paper.references else []
|
| 365 |
+
})
|
| 366 |
+
|
| 367 |
+
return {
|
| 368 |
+
"papers": user.context_papers, # Keep for backward compatibility
|
| 369 |
+
"detailed_papers": detailed_papers,
|
| 370 |
+
"has_api_key": user.QA_LLM is not None,
|
| 371 |
+
"paper_count": len(user.papers)
|
| 372 |
+
}
|
| 373 |
+
|
| 374 |
+
@app.get("/check_api_key/")
|
| 375 |
+
async def check_api_key(user: User = Depends(get_current_user)):
|
| 376 |
+
"""Check if user has an existing API key"""
|
| 377 |
+
return {
|
| 378 |
+
"has_api_key": user.QA_LLM is not None,
|
| 379 |
+
"message": "API key found" if user.QA_LLM is not None else "No API key found"
|
| 380 |
+
}
|
| 381 |
+
|
| 382 |
+
|
| 383 |
if __name__ == "__main__":
|
| 384 |
uvicorn.run(app, host="0.0.0.0", port=8000)
|