jina rerank working

This commit is contained in:
2026-01-13 09:51:35 +08:00
parent 370fe6368a
commit 9745ca2476
23 changed files with 1967 additions and 6 deletions

110
test_odds_query.py Normal file
View File

@@ -0,0 +1,110 @@
import requests
import json
import time
# Test query for workspace test1
url = "http://localhost:3015/query"
headers = {
"Content-Type": "application/json",
"X-API-Key": "jleu1212",
"X-Workspace": "test1" # Specify workspace
}
query = "what is odds"
print(f"Testing query: '{query}' for workspace: test1")
print("="*60)
# Test 1: With rerank enabled
print("\n1. Testing WITH rerank enabled (enable_rerank=True):")
data_with_rerank = {
"query": query,
"enable_rerank": True,
"only_need_context": True # Get context to see what's retrieved
}
try:
start_time = time.time()
response = requests.post(url, headers=headers, json=data_with_rerank, timeout=30)
elapsed = time.time() - start_time
print(f" Status Code: {response.status_code}")
print(f" Response Time: {elapsed:.2f}s")
if response.status_code == 200:
result = response.json()
response_text = result.get('response', '')
# Check for rerank-related messages
if "Rerank is enabled but no rerank model is configured" in response_text:
print(" ⚠️ Rerank warning found: 'Rerank is enabled but no rerank model is configured'")
print(" This means the checkbox works but Jina API is not configured")
elif "Successfully reranked" in response_text:
print(" ✅ Rerank success message found!")
else:
# Check if we can find any rerank scores in the response
if "rerank_score" in response_text.lower():
print(" ✅ Rerank scores found in response!")
else:
print(" No rerank indicators found in response")
# Show response snippet
print(f" Response snippet (first 500 chars):")
print(f" {response_text[:500]}...")
except Exception as e:
print(f" Error: {e}")
# Test 2: Without rerank enabled
print("\n2. Testing WITHOUT rerank enabled (enable_rerank=False):")
data_without_rerank = {
"query": query,
"enable_rerank": False,
"only_need_context": True
}
try:
start_time = time.time()
response = requests.post(url, headers=headers, json=data_without_rerank, timeout=30)
elapsed = time.time() - start_time
print(f" Status Code: {response.status_code}")
print(f" Response Time: {elapsed:.2f}s")
if response.status_code == 200:
result = response.json()
response_text = result.get('response', '')
# Show response snippet for comparison
print(f" Response snippet (first 500 chars):")
print(f" {response_text[:500]}...")
except Exception as e:
print(f" Error: {e}")
# Test 3: Check server configuration
print("\n3. Checking server configuration:")
try:
config_response = requests.get("http://localhost:3015/config", headers={"X-API-Key": "jleu1212"})
if config_response.status_code == 200:
config = config_response.json()
print(f" Rerank binding: {config.get('rerank_binding', 'NOT FOUND')}")
print(f" Rerank model: {config.get('rerank_model', 'NOT FOUND')}")
print(f" Enable rerank: {config.get('enable_rerank', 'NOT FOUND')}")
if config.get('rerank_binding') == 'jina':
print(" ✅ Server configured for Jina rerank")
elif config.get('rerank_binding') == 'null':
print(" ❌ Server NOT configured for rerank (binding=null)")
else:
print(f" Rerank binding: {config.get('rerank_binding')}")
except Exception as e:
print(f" Error getting config: {e}")
print("\n" + "="*60)
print("ANALYSIS:")
print("1. Compare response times: Rerank should take longer if calling external API")
print("2. Check for 'Successfully reranked' or 'rerank_score' in responses")
print("3. Verify server configuration shows 'rerank_binding: jina'")
print("4. If 'Rerank is enabled but no rerank model is configured' appears,")
print(" the checkbox works but Jina API key is missing/invalid")