imstevenleo commited on
Commit
6b7f850
·
1 Parent(s): f8b3706

Enhanced AraGPT2 response with better cleaning and prompts

Browse files
Files changed (1) hide show
  1. app.py +13 -9
app.py CHANGED
@@ -90,30 +90,34 @@ async def get_car(car_id: int):
90
  @app.get("/car_info/")
91
  async def get_car_info(model: str):
92
  try:
93
- cars = db.get_all_cars() # استخدمنا db
94
  available_cars = [car for car in cars if car['model'].lower() == model.lower()]
95
 
96
  if not available_cars:
97
- prompt = f"ما اعرف هذا الموديل '{model}'، ممكن تكلي شنو تعرف عنه؟"
98
  try:
99
  gen = load_generator()
100
- response = gen(prompt, max_length=100, num_return_sequences=1)[0]['generated_text']
101
- response = response.split("؟")[0].strip() + "."
 
 
102
  return {"message": response}
103
  except Exception as e:
104
  logger.error(f"Error generating response for unknown model: {str(e)}")
105
- return {"message": "عذرًا، حدث خطأ أثناء توليد الرد."}
106
 
107
  car = available_cars[0]
108
- prompt = f"زبون يريد يعرف عن سيارة {car['model']}، سعرها {car['price']} ووضعها {car['status']}، كله بلهجة عراقية طبيعية."
109
  try:
110
  gen = load_generator()
111
- response = gen(prompt, max_length=150, num_return_sequences=1)[0]['generated_text']
112
- response = response.split("؟")[0].strip() + "."
 
 
113
  return {"message": response}
114
  except Exception as e:
115
  logger.error(f"Error generating response for car info: {str(e)}")
116
- return {"message": "عذرًا، حدث خطأ أثناء توليد الرد."}
117
  except Exception as e:
118
  logger.error(f"Error processing car info for model {model}: {str(e)}")
119
  raise HTTPException(status_code=500, detail="خطأ أثناء معالجة طلب المعلومات")
 
90
  @app.get("/car_info/")
91
  async def get_car_info(model: str):
92
  try:
93
+ cars = db.get_all_cars()
94
  available_cars = [car for car in cars if car['model'].lower() == model.lower()]
95
 
96
  if not available_cars:
97
+ prompt = f"ما اعرف هذا الموديل '{model}'، اعطيني معلومات عنه بلهجة عراقية طبيعية."
98
  try:
99
  gen = load_generator()
100
+ response = gen(prompt, max_length=80, num_return_sequences=1, do_sample=True, temperature=0.7)[0]['generated_text']
101
+ response = response.split(".")[0].split("؟")[0].strip() + "."
102
+ if len(response) < 20: # إذا الرد قصير جدًا، نرجع رد افتراضي
103
+ response = f"والله ما عندي معلومات كافية عن '{model}'، جربي موديل ثاني!"
104
  return {"message": response}
105
  except Exception as e:
106
  logger.error(f"Error generating response for unknown model: {str(e)}")
107
+ return {"message": "عذرًا، خطأ أثناء توليد الرد."}
108
 
109
  car = available_cars[0]
110
+ prompt = f"اعطيني معلومات عن سيارة {car['model']}، سعرها {car['price']} دولار ووضعها {car['status']}، بلهجة عراقية طبيعية."
111
  try:
112
  gen = load_generator()
113
+ response = gen(prompt, max_length=100, num_return_sequences=1, do_sample=True, temperature=0.7)[0]['generated_text']
114
+ response = response.split(".")[0].split("؟")[0].strip() + "."
115
+ if len(response) < 20: # إذا الرد قصير جدًا
116
+ response = f"سيارة {car['model']} سعرها {car['price']} دولار، ووضعها {car['status']}، حلوة ومناسبة للعراق!"
117
  return {"message": response}
118
  except Exception as e:
119
  logger.error(f"Error generating response for car info: {str(e)}")
120
+ return {"message": "عذرًا، خطأ أثناء توليد الرد."}
121
  except Exception as e:
122
  logger.error(f"Error processing car info for model {model}: {str(e)}")
123
  raise HTTPException(status_code=500, detail="خطأ أثناء معالجة طلب المعلومات")