""" Test to verify Jina rerank configuration changes. This shows what would happen when the server is restarted with Jina rerank enabled. """ import os import sys # Add LightRAG to path sys.path.insert(0, 'LightRAG-main') # Test the rerank module directly try: from lightrag.rerank import jina_rerank print("✓ Jina rerank module imported successfully") # Check what environment variables are needed print("\nEnvironment variables needed for Jina rerank:") print("1. JINA_API_KEY or RERANK_BINDING_API_KEY") print("2. Optional: RERANK_MODEL (default: 'jina-reranker-v2-base-multilingual')") print("3. Optional: RERANK_BINDING_HOST (default: 'https://api.jina.ai/v1/rerank')") # Show current environment print("\nCurrent environment variables:") jina_key = os.getenv('JINA_API_KEY') or os.getenv('RERANK_BINDING_API_KEY') if jina_key: if jina_key == 'your-jina-api-key-here': print("✗ JINA_API_KEY: Set to placeholder value (needs real API key)") else: print(f"✓ JINA_API_KEY: Set (length: {len(jina_key)} chars)") else: print("✗ JINA_API_KEY: Not set") print(f"RERANK_MODEL: {os.getenv('RERANK_MODEL', 'Not set (will use default)')}") print(f"RERANK_BINDING_HOST: {os.getenv('RERANK_BINDING_HOST', 'Not set (will use default)')}") # Show server configuration changes print("\n" + "="*50) print("SERVER CONFIGURATION CHANGES MADE:") print("1. Changed --rerank-binding from 'null' to 'jina'") print("2. Added JINA_API_KEY and RERANK_BINDING_API_KEY environment variables") print("3. Note: Need to restart server for changes to take effect") # What happens when querying with enable_rerank=True print("\n" + "="*50) print("EXPECTED BEHAVIOR AFTER SERVER RESTART:") print("1. Server config will show: rerank_binding='jina'") print("2. Query with enable_rerank=True will call Jina AI API") print("3. Without valid API key: Will get 401/403 error from Jina API") print("4. With valid API key: Documents will be reranked by relevance") except ImportError as e: print(f"✗ Error importing: {e}") except Exception as e: print(f"✗ Error: {e}") # Check start_server.py changes print("\n" + "="*50) print("MODIFIED start_server.py HIGHLIGHTS:") with open('LightRAG-main/start_server.py', 'r') as f: lines = f.readlines() for i, line in enumerate(lines): if 'rerank-binding' in line: print(f"Line {i+1}: {line.strip()}") if 'JINA_API_KEY' in line: print(f"Line {i+1}: {line.strip()}")