|
|
|
|
|
"""Test API mode with documents.""" |
|
|
import os |
|
|
import sys |
|
|
|
|
|
|
|
|
os.environ['LLM_PROVIDER'] = 'api' |
|
|
os.environ['HF_API_BASE_URL'] = 'https://davidtran999-hue-portal-backend.hf.space/api' |
|
|
|
|
|
|
|
|
sys.path.insert(0, 'hue_portal') |
|
|
|
|
|
|
|
|
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'hue_portal.settings') |
|
|
import django |
|
|
django.setup() |
|
|
|
|
|
from hue_portal.chatbot.llm_integration import get_llm_generator |
|
|
from hue_portal.core.models import Fine |
|
|
|
|
|
|
|
|
llm = get_llm_generator() |
|
|
print(f"✅ LLM Provider: {llm.provider}") |
|
|
print(f"✅ API URL: {llm.api_base_url}") |
|
|
print(f"✅ Available: {llm.is_available()}\n") |
|
|
|
|
|
|
|
|
fines = Fine.objects.all()[:3] |
|
|
print(f"📄 Found {len(fines)} documents\n") |
|
|
|
|
|
|
|
|
query = "Mức phạt vượt đèn đỏ là bao nhiêu?" |
|
|
print(f"❓ Query: {query}\n") |
|
|
|
|
|
|
|
|
prompt = llm._build_prompt(query, None, list(fines)) |
|
|
print(f"📝 Prompt length: {len(prompt)} chars") |
|
|
print(f"📝 Prompt preview:\n{prompt[:500]}...\n") |
|
|
|
|
|
|
|
|
print("🔗 Calling HF Spaces API...\n") |
|
|
result = llm._generate_api(prompt, None) |
|
|
|
|
|
if result: |
|
|
print(f"✅ Success! Response length: {len(result)}") |
|
|
print(f"📥 Response:\n{result[:500]}...\n") |
|
|
else: |
|
|
print("❌ No response from API\n") |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|