galbendavids commited on
Commit
12a7c9c
·
1 Parent(s): 048b92a

הוספת אזהרות מפורשות מאוד - CreationDate לא קיים ולא צריך להשתמש בו

Browse files
Files changed (1) hide show
  1. app/sql_service.py +18 -1
app/sql_service.py CHANGED
@@ -257,6 +257,13 @@ class SQLFeedbackService:
257
  כל שאילתה חייבת להתחיל ב-SELECT ולהשתמש ב-FROM Feedback_transformed.
258
  אסור להשתמש בשמות אחרים!
259
 
 
 
 
 
 
 
 
260
  סטטיסטיקות כלליות:
261
  - סך הכל משובים: {len(self.df)}
262
  - מספר שירותים ייחודיים: {self.df['ServiceName'].nunique()}
@@ -342,6 +349,13 @@ class SQLFeedbackService:
342
 
343
  prompt = f"""אתה אנליסט נתונים מומחה. המשתמש שאל שאלה על משובי משתמשים.
344
 
 
 
 
 
 
 
 
345
  שאלת המשתמש: {query}
346
 
347
  מידע על הטבלה:
@@ -369,8 +383,10 @@ class SQLFeedbackService:
369
  4. ServiceName הוא טקסט
370
  5. Text הוא הטקסט החופשי של המשוב
371
  6. ⚠️⚠️⚠️ שאילתות מבוססות זמן - קריטי:
 
372
  - השדות שנה, חודש, יום_בשבוע, שעה, יום_לילה, יום_בחודש כבר מחושבים ומולאו בנתונים!
373
  - תמיד השתמש ישירות בשדות המחושבים - הם כבר מוכנים לשימוש!
 
374
  - דוגמה לשאילתה לפי שנה: SELECT שנה, COUNT(*) as count FROM Feedback_transformed GROUP BY שנה ORDER BY שנה
375
  - דוגמה לשאילתה לפי חודש: SELECT חודש, COUNT(*) as count FROM Feedback_transformed GROUP BY חודש ORDER BY חודש
376
  - דוגמה לשאילתה לפי יום בשבוע: SELECT יום_בשבוע, COUNT(*) as count FROM Feedback_transformed GROUP BY יום_בשבוע
@@ -381,13 +397,14 @@ class SQLFeedbackService:
381
  7. שדות תאריך/זמן: יום_בחודש, יום_בשבוע, שנה, חודש, שעה, יום_לילה - כל השדות האלה כבר מחושבים ומוכנים לשימוש ישיר!
382
  8. כל שאילתה צריכה להיות תקפה SQLite
383
  9. השתמש בפונקציות SQL סטנדרטיות: COUNT, AVG, GROUP BY, WHERE, LIKE, etc.
384
- 10. ⚠️⚠️⚠️ אל תשתמש ב-DATE() או strftime() - השדות המחושבים כבר מוכנים!
385
  11. אם השאלה מתייחסת לטקסט, השתמש ב-LIKE או INSTR לחיפוש
386
  12. אם השאלה מתייחסת לדירוגים, השתמש ב-Level עם תנאים מתאימים
387
  13. אם השאלה מתייחסת לשירותים, השתמש ב-ServiceName
388
  14. דוגמה לשאילתה נכונה: SELECT COUNT(*) FROM Feedback_transformed WHERE Level >= 4
389
  15. ⚠️⚠️⚠️ זכור: כל שאילתה חייבת להתחיל ב-SELECT ולהשתמש ב-FROM Feedback_transformed (עם אות גדולה F ו-underscore)!
390
  16. ⚠️⚠️⚠️ לפני שאתה שולח את השאילתה, ודא שהיא מכילה: FROM Feedback_transformed (עם אות גדולה F!)
 
391
 
392
  פורמט התשובה - JSON בלבד:
393
  {{
 
257
  כל שאילתה חייבת להתחיל ב-SELECT ולהשתמש ב-FROM Feedback_transformed.
258
  אסור להשתמש בשמות אחרים!
259
 
260
+ 🚫🚫🚫 אזהרה חשובה מאוד:
261
+ - השדה CreationDate לא קיים בטבלה! הוא נמחק!
262
+ - אסור להשתמש ב-CreationDate בשום שאילתה!
263
+ - אסור להשתמש ב-strftime() או DATE() על CreationDate - השדה לא קיים!
264
+ - כל המידע על תאריכים נמצא בשדות המחושבים: שנה, חודש, יום_בשבוע, שעה, יום_לילה, יום_בחודש
265
+ - אם אתה רואה CreationDate ב-schema - זה שגיאה! השתמש רק בשדות המחושבים!
266
+
267
  סטטיסטיקות כלליות:
268
  - סך הכל משובים: {len(self.df)}
269
  - מספר שירותים ייחודיים: {self.df['ServiceName'].nunique()}
 
349
 
350
  prompt = f"""אתה אנליסט נתונים מומחה. המשתמש שאל שאלה על משובי משתמשים.
351
 
352
+ 🚫🚫🚫 אזהרה קריטית - קרא היטב:
353
+ - השדה CreationDate לא קיים בטבלה! הוא נמחק לחלוטין!
354
+ - אסור להשתמש ב-CreationDate בשום שאילתה!
355
+ - אסור להשתמש ב-strftime() או DATE() על CreationDate - השדה לא קיים!
356
+ - כל המידע על תאריכים נמצא בשדות המחושבים: שנה, חודש, יום_בשבוע, שעה, יום_לילה, יום_בחודש
357
+ - אם השאלה מתייחסת לתאריכים/זמן - השתמש רק בשדות המחושבים האלה!
358
+
359
  שאלת המשתמש: {query}
360
 
361
  מידע על הטבלה:
 
383
  4. ServiceName הוא טקסט
384
  5. Text הוא הטקסט החופשי של המשוב
385
  6. ⚠️⚠️⚠️ שאילתות מבוססות זמן - קריטי:
386
+ - השדה CreationDate לא קיים! הוא נמחק! אל תשתמש בו!
387
  - השדות שנה, חודש, יום_בשבוע, שעה, יום_לילה, יום_בחודש כבר מחושבים ומולאו בנתונים!
388
  - תמיד השתמש ישירות בשדות המחושבים - הם כבר מוכנים לשימוש!
389
+ - אם השאלה מתייחסת לתאריכים/זמן - השתמש רק בשדות: שנה, חודש, יום_בשבוע, שעה, יום_לילה, יום_בחודש
390
  - דוגמה לשאילתה לפי שנה: SELECT שנה, COUNT(*) as count FROM Feedback_transformed GROUP BY שנה ORDER BY שנה
391
  - דוגמה לשאילתה לפי חודש: SELECT חודש, COUNT(*) as count FROM Feedback_transformed GROUP BY חודש ORDER BY חודש
392
  - דוגמה לשאילתה לפי יום בשבוע: SELECT יום_בשבוע, COUNT(*) as count FROM Feedback_transformed GROUP BY יום_בשבוע
 
397
  7. שדות תאריך/זמן: יום_בחודש, יום_בשבוע, שנה, חודש, שעה, יום_לילה - כל השדות האלה כבר מחושבים ומוכנים לשימוש ישיר!
398
  8. כל שאילתה צריכה להיות תקפה SQLite
399
  9. השתמש בפונקציות SQL סטנדרטיות: COUNT, AVG, GROUP BY, WHERE, LIKE, etc.
400
+ 10. 🚫🚫🚫 אל תשתמש ב-CreationDate, DATE(), או strftime() - השדה CreationDate לא קיים! השדות המחושבים כבר מוכנים!
401
  11. אם השאלה מתייחסת לטקסט, השתמש ב-LIKE או INSTR לחיפוש
402
  12. אם השאלה מתייחסת לדירוגים, השתמש ב-Level עם תנאים מתאימים
403
  13. אם השאלה מתייחסת לשירותים, השתמש ב-ServiceName
404
  14. דוגמה לשאילתה נכונה: SELECT COUNT(*) FROM Feedback_transformed WHERE Level >= 4
405
  15. ⚠️⚠️⚠️ זכור: כל שאילתה חייבת להתחיל ב-SELECT ולהשתמש ב-FROM Feedback_transformed (עם אות גדולה F ו-underscore)!
406
  16. ⚠️⚠️⚠️ לפני שאתה שולח את השאילתה, ודא שהיא מכילה: FROM Feedback_transformed (עם אות גדולה F!)
407
+ 17. 🚫🚫🚫 לפני שאתה שולח את השאילתה, ודא שאין שימוש ב-CreationDate, strftime(), או DATE() - השדה CreationDate לא קיים!
408
 
409
  פורמט התשובה - JSON בלבד:
410
  {{