Spaces:
Sleeping
Sleeping
Commit
Β·
725cf7b
1
Parent(s):
c152345
Fix question classification: prevent general questions from using training data
Browse files
app.py
CHANGED
|
@@ -472,8 +472,12 @@ Minimum purchase is 1 roll (67-70 yards)."""
|
|
| 472 |
"""Generate response using HuggingFace Inference API with training data fallback"""
|
| 473 |
|
| 474 |
# Check if this is a specific Textilindo business question that should use training data
|
| 475 |
-
business_keywords = ['lokasi', 'alamat', 'ongkir', 'pengiriman', 'harga', 'produk', 'katalog', 'pemesanan', 'pembayaran', 'textilindo']
|
| 476 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 477 |
|
| 478 |
# For business questions, try training data first
|
| 479 |
if is_business_question:
|
|
@@ -484,6 +488,7 @@ Minimum purchase is 1 roll (67-70 yards)."""
|
|
| 484 |
|
| 485 |
# For all other questions, use AI model first
|
| 486 |
logger.info(f"Question type: {'Business' if is_business_question else 'General'}")
|
|
|
|
| 487 |
logger.info(f"Using AI model for: {user_message[:50]}...")
|
| 488 |
|
| 489 |
if not self.client:
|
|
@@ -588,9 +593,13 @@ Minimum purchase is 1 roll (67-70 yards)."""
|
|
| 588 |
if "hello" in user_message.lower() or "hi" in user_message.lower():
|
| 589 |
return "Halo! Saya adalah asisten AI Textilindo. Bagaimana saya bisa membantu Anda hari ini? π"
|
| 590 |
elif "weather" in user_message.lower() or "cuaca" in user_message.lower():
|
| 591 |
-
return "Maaf, saya tidak bisa memberikan informasi cuaca. Tapi saya bisa membantu Anda dengan pertanyaan tentang produk dan layanan Textilindo!"
|
| 592 |
elif "how are you" in user_message.lower() or "apa kabar" in user_message.lower():
|
| 593 |
return "Saya baik-baik saja, terima kasih! Saya siap membantu Anda dengan pertanyaan tentang Textilindo. Ada yang bisa saya bantu?"
|
|
|
|
|
|
|
|
|
|
|
|
|
| 594 |
else:
|
| 595 |
return f"Halo! Saya adalah asisten AI Textilindo. Saya bisa membantu Anda dengan pertanyaan tentang produk dan layanan kami, atau sekadar mengobrol! Bagaimana saya bisa membantu Anda hari ini? π"
|
| 596 |
|
|
|
|
| 472 |
"""Generate response using HuggingFace Inference API with training data fallback"""
|
| 473 |
|
| 474 |
# Check if this is a specific Textilindo business question that should use training data
|
| 475 |
+
business_keywords = ['lokasi', 'alamat', 'ongkir', 'pengiriman', 'harga', 'produk', 'katalog', 'pemesanan', 'pembayaran', 'textilindo', 'roll', 'kain', 'minimal order', 'jam operasional']
|
| 476 |
+
general_keywords = ['weather', 'cuaca', 'temperature', 'suhu', 'rain', 'hujan', 'sunny', 'cerah', 'cloudy', 'berawan', 'time', 'waktu', 'date', 'tanggal', 'hello', 'hi', 'halo', 'hai', 'how are you', 'apa kabar']
|
| 477 |
+
|
| 478 |
+
# Check if it's a general question that should NOT use training data
|
| 479 |
+
is_general_question = any(keyword in user_message.lower() for keyword in general_keywords)
|
| 480 |
+
is_business_question = any(keyword in user_message.lower() for keyword in business_keywords) and not is_general_question
|
| 481 |
|
| 482 |
# For business questions, try training data first
|
| 483 |
if is_business_question:
|
|
|
|
| 488 |
|
| 489 |
# For all other questions, use AI model first
|
| 490 |
logger.info(f"Question type: {'Business' if is_business_question else 'General'}")
|
| 491 |
+
logger.info(f"General question detected: {is_general_question}")
|
| 492 |
logger.info(f"Using AI model for: {user_message[:50]}...")
|
| 493 |
|
| 494 |
if not self.client:
|
|
|
|
| 593 |
if "hello" in user_message.lower() or "hi" in user_message.lower():
|
| 594 |
return "Halo! Saya adalah asisten AI Textilindo. Bagaimana saya bisa membantu Anda hari ini? π"
|
| 595 |
elif "weather" in user_message.lower() or "cuaca" in user_message.lower():
|
| 596 |
+
return "Maaf, saya tidak bisa memberikan informasi cuaca terkini. Tapi saya bisa membantu Anda dengan pertanyaan tentang produk dan layanan Textilindo! Apakah ada yang ingin Anda ketahui tentang kain atau layanan kami?"
|
| 597 |
elif "how are you" in user_message.lower() or "apa kabar" in user_message.lower():
|
| 598 |
return "Saya baik-baik saja, terima kasih! Saya siap membantu Anda dengan pertanyaan tentang Textilindo. Ada yang bisa saya bantu?"
|
| 599 |
+
elif "time" in user_message.lower() or "waktu" in user_message.lower():
|
| 600 |
+
return f"Waktu saat ini adalah {datetime.now().strftime('%H:%M WIB, %d %B %Y')}. Apakah ada yang ingin Anda ketahui tentang produk Textilindo?"
|
| 601 |
+
elif "date" in user_message.lower() or "tanggal" in user_message.lower():
|
| 602 |
+
return f"Hari ini adalah {datetime.now().strftime('%d %B %Y')}. Apakah ada yang ingin Anda ketahui tentang produk Textilindo?"
|
| 603 |
else:
|
| 604 |
return f"Halo! Saya adalah asisten AI Textilindo. Saya bisa membantu Anda dengan pertanyaan tentang produk dan layanan kami, atau sekadar mengobrol! Bagaimana saya bisa membantu Anda hari ini? π"
|
| 605 |
|