Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -684,28 +684,27 @@ async def reset():
|
|
| 684 |
except Exception as e:
|
| 685 |
return {"success": False, "message": f"Reset error: {str(e)}"}
|
| 686 |
|
| 687 |
-
|
| 688 |
-
async def chat(message: str = Form(...)):
|
| 689 |
-
"""Main chat endpoint"""
|
| 690 |
-
if not GROQ_AVAILABLE:
|
| 691 |
-
return {"response": "Error: Groq API not configured. Please check API key."}
|
| 692 |
-
|
| 693 |
-
try:
|
| 694 |
-
from core.language_detector import detect_input_language, get_system_prompt, generate_basic_code
|
| 695 |
-
from core.memory_db import tidb_memory
|
| 696 |
-
except ImportError as e:
|
| 697 |
-
return {"response": f"Error: Required modules not found - {str(e)}"}
|
| 698 |
-
|
| 699 |
-
lang_mode = detect_input_language(message)
|
| 700 |
-
system_prompt = get_system_prompt(lang_mode, AumCoreConfig.USERNAME)
|
| 701 |
-
|
| 702 |
-
# Check for code generation requests
|
| 703 |
msg_lower = message.lower()
|
| 704 |
-
CODE_KEYWORDS = ["python code", "write
|
| 705 |
-
|
| 706 |
-
|
| 707 |
|
| 708 |
if any(k in msg_lower for k in CODE_KEYWORDS):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 709 |
code_response = generate_basic_code(message)
|
| 710 |
try:
|
| 711 |
tidb_memory.save_chat(message, code_response, lang_mode)
|
|
|
|
| 684 |
except Exception as e:
|
| 685 |
return {"success": False, "message": f"Reset error: {str(e)}"}
|
| 686 |
|
| 687 |
+
# Check for code generation requests - ENHANCED
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 688 |
msg_lower = message.lower()
|
| 689 |
+
CODE_KEYWORDS = ["python", "code", "write", "generate", "create", "script",
|
| 690 |
+
"program", "function", "mount", "colab", "coding", "debug",
|
| 691 |
+
"algorithm", "import", "def ", "class ", "for loop", "while"]
|
| 692 |
|
| 693 |
if any(k in msg_lower for k in CODE_KEYWORDS):
|
| 694 |
+
# NEW: Try expert coding module first
|
| 695 |
+
code_module = app.state.module_manager.get_module("code_intelligence")
|
| 696 |
+
if code_module and hasattr(code_module, 'process_code_request'):
|
| 697 |
+
try:
|
| 698 |
+
expert_response = await code_module.process_code_request(message, client)
|
| 699 |
+
try:
|
| 700 |
+
tidb_memory.save_chat(message, expert_response, lang_mode)
|
| 701 |
+
except:
|
| 702 |
+
pass
|
| 703 |
+
return {"response": expert_response}
|
| 704 |
+
except Exception as e:
|
| 705 |
+
print(f"⚠️ Expert coding failed: {e}")
|
| 706 |
+
|
| 707 |
+
# Fallback to basic code
|
| 708 |
code_response = generate_basic_code(message)
|
| 709 |
try:
|
| 710 |
tidb_memory.save_chat(message, code_response, lang_mode)
|