tuan243 commited on
Commit
205ba60
·
verified ·
1 Parent(s): 433d5e2

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +15 -4
main.py CHANGED
@@ -112,13 +112,17 @@ async def ai_personal_advice(request: AIRequest):
112
  raise HTTPException(status_code=500, detail="Firebase not initialized.")
113
 
114
  user_doc = db.collection("user_profiles").document(request.user_id).get()
 
 
115
  if not user_doc.exists:
116
  logging.warning(f"User profile not found for user_id: {request.user_id}")
117
- return {"advice": "Không tìm thấy thông tin người dùng."}
 
 
 
 
 
118
 
119
- data = user_doc.to_dict() or {}
120
- bios = request.bios if request.bios else data.get("bios", "Chưa có bios.")
121
- focus_history = data.get("focus_history", [])
122
  focus_text = "\n".join([f"- {f['time_start']}: {f['total_time']} phút" for f in focus_history])
123
 
124
  prompt = f"""
@@ -129,10 +133,16 @@ async def ai_personal_advice(request: AIRequest):
129
 
130
  Hãy tư vấn cách cải thiện hiệu suất làm việc dựa trên thông tin trên.
131
  """
 
 
132
  input_ids = tokenizer(prompt, return_tensors="pt", truncation=True, max_length=1024)
133
  response = ai_model.generate(**input_ids, max_new_tokens=500)
134
  advice = tokenizer.decode(response[0], skip_special_tokens=True)
135
 
 
 
 
 
136
  return {"advice": advice}
137
 
138
  except Exception as e:
@@ -141,6 +151,7 @@ async def ai_personal_advice(request: AIRequest):
141
  logging.error(traceback.format_exc())
142
  raise HTTPException(status_code=500, detail=error_message)
143
 
 
144
  # Trang chủ
145
  @app.get("/")
146
  async def home():
 
112
  raise HTTPException(status_code=500, detail="Firebase not initialized.")
113
 
114
  user_doc = db.collection("user_profiles").document(request.user_id).get()
115
+
116
+ # Check if the document exists
117
  if not user_doc.exists:
118
  logging.warning(f"User profile not found for user_id: {request.user_id}")
119
+ bios = "Không thông tin người dùng."
120
+ focus_history = []
121
+ else:
122
+ data = user_doc.to_dict() or {}
123
+ bios = request.bios if request.bios else data.get("bios", "Chưa có bios.")
124
+ focus_history = data.get("focus_history", [])
125
 
 
 
 
126
  focus_text = "\n".join([f"- {f['time_start']}: {f['total_time']} phút" for f in focus_history])
127
 
128
  prompt = f"""
 
133
 
134
  Hãy tư vấn cách cải thiện hiệu suất làm việc dựa trên thông tin trên.
135
  """
136
+
137
+ # Truncate prompt if it's too long
138
  input_ids = tokenizer(prompt, return_tensors="pt", truncation=True, max_length=1024)
139
  response = ai_model.generate(**input_ids, max_new_tokens=500)
140
  advice = tokenizer.decode(response[0], skip_special_tokens=True)
141
 
142
+ # Đảm bảo câu trả lời là một câu hoàn chỉnh
143
+ if not advice.endswith("."):
144
+ advice += "."
145
+
146
  return {"advice": advice}
147
 
148
  except Exception as e:
 
151
  logging.error(traceback.format_exc())
152
  raise HTTPException(status_code=500, detail=error_message)
153
 
154
+
155
  # Trang chủ
156
  @app.get("/")
157
  async def home():