Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/abhisondakar_nlidb.json
T

1 line
20 KiB
JSON

{"repo": "abhisondakar/nlidb", "files": {".streamlit/secrets.toml": {"fca13677e30d60e45922ec400d68a4cf56ef8bd9": {"t": 1785745369.3644257, "n": 460, "h": "60e27ef534bb90d8", "c": "# DeepSeek API configuration\n# Set your DeepSeek-compatible HTTP API base URL and API key here.\nDEEPSEEK_API_URL = \"https://openrouter.ai/api/v1\"\nDEEPSEEK_API_KEY = \"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\"\n\n# Database Connections\n[connections.app_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/text\"\n\n[connections.data_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/Student\"\n"}, "2678e968aca3bd208cf408278f4a8cad7e90b37d": {"t": 1785750804.353648, "n": 460, "h": "60e27ef534bb90d8", "c": "# DeepSeek API configuration\n# Set your DeepSeek-compatible HTTP API base URL and API key here.\nDEEPSEEK_API_URL = \"https://openrouter.ai/api/v1\"\nDEEPSEEK_API_KEY = \"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\"\n\n# Database Connections\n[connections.app_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/text\"\n\n[connections.data_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/Student\"\n"}, "b2b95b8a77d6cf08e7be67ade1da3d5e2d80cddf": {"t": 1785750805.5796616, "n": 459, "h": "e7a859e9b95cdb24", "c": "# DeepSeek API configuration\n# Set your DeepSeek-compatible HTTP API base URL and API key here.\nDEEPSEEK_API_URL = \"https://openrouter.ai/api/v1\"\nDEEPSEEK_API_KEY = \"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\"\n\n# Database Connections\n[connections.app_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/text\"\n\n[connections.data_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/Student\""}, "136d8d8b2c89e7e7f32377ce21e03a6eea164499": {"t": 1785750806.6930423, "n": 370, "h": "d927325820bc5a6a", "c": "# DeepSeek API configuration\n# Set your DeepSeek-compatible HTTP API base URL and API key here.\nDEEPSEEK_API_URL = \"https://openrouter.ai/api/v1\"\nDEEPSEEK_API_KEY = \"sk-or-v1-key\"\n\n# Database Connections\n[connections.app_db]\nurl = \"postgresql://username:password@localhost:5432/dbname\"\n\n[connections.data_db]\nurl = \"postgresql://username:password@localhost:5432/dbname\"\n"}, "fca637115705bd30d224dd620249e404f04cbb91": {"t": 1785750808.4557164, "n": 459, "h": "e7a859e9b95cdb24", "c": "# DeepSeek API configuration\n# Set your DeepSeek-compatible HTTP API base URL and API key here.\nDEEPSEEK_API_URL = \"https://openrouter.ai/api/v1\"\nDEEPSEEK_API_KEY = \"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\"\n\n# Database Connections\n[connections.app_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/text\"\n\n[connections.data_db]\nurl = \"postgresql+psycopg2://Abhishek:Abhishek%40866@localhost:5432/Student\""}}, "verify_config.py": {"fca13677e30d60e45922ec400d68a4cf56ef8bd9": {"t": 1785746869.5341241, "n": 8151, "h": "f05007ddb40bf11e", "c": "#!/usr/bin/env python3\n\"\"\"\nConfiguration Verification Script\nRun this to see exactly what configuration is being loaded\n\"\"\"\n\nimport os\nfrom dotenv import load_dotenv\n\n# Force reload environment variables\nload_dotenv(override=True)\n\nprint(\"\\n\" + \"=\" * 70)\nprint(\"CONFIGURATION VERIFICATION REPORT\".center(70))\nprint(\"=\" * 70)\n\n# Get all relevant environment variables\nsql_model = os.getenv('SQL_AGENT_MODEL', 'NOT SET')\nvalidator_model = os.getenv('VALIDATOR_AGENT_MODEL', 'NOT SET')\ngoogle_key = os.getenv('GOOGLE_API_KEY', 'NOT SET')\ndeepseek_key = os.getenv('DEEPSEEK_API_KEY', 'NOT SET')\nopenrouter_key = os.getenv('OPENROUTER_API_KEY', 'NOT SET')\nanthropic_key = os.getenv('ANTHROPIC_API_KEY', 'NOT SET')\nopenai_key = os.getenv('OPENAI_API_KEY', 'NOT SET')\n\nprint(\"\\n📋 MODEL CONFIGURATION\")\nprint(\"-\" * 70)\nprint(f\"SQL_AGENT_MODEL: {sql_model}\")\nprint(f\"VALIDATOR_AGENT_MODEL: {validator_model}\")\n\nprint(\"\\n🔑 API KEYS STATUS\")\nprint(\"-\" * 70)\n\n\ndef show_key_status(name, key):\n if key == 'NOT SET':\n print(f\"❌ {name}: NOT SET\")\n elif 'your' in key.lower() or 'here' in key.lower():\n print(f\"⚠️ {name}: PLACEHOLDER (not real key)\")\n else:\n print(f\"✅ {name}: Set ({key[:15]}...{key[-5:]})\")\n\n\nshow_key_status(\"GOOGLE_API_KEY \", google_key)\nshow_key_status(\"DEEPSEEK_API_KEY \", deepseek_key)\nshow_key_status(\"OPENROUTER_API_KEY \", openrouter_key)\nshow_key_status(\"ANTHROPIC_API_KEY \", anthropic_key)\nshow_key_status(\"OPENAI_API_KEY \", openai_key)\n\n\n# Detect providers from model names\ndef detect_provider(model):\n if model == 'NOT SET':\n return 'NOT SET'\n model_lower = model.lower()\n if '/' in model:\n return 'openrouter'\n elif 'gemini' in model_lower:\n return 'google'\n elif 'deepseek' in model_lower:\n return 'deepseek'\n elif 'claude' in model_lower:\n return 'anthropic'\n elif 'gpt' in model_lower:\n return 'openai'\n else:\n return 'unknown'\n\n\nsql_provider = detect_provider(sql_model)\nvalidator_provider = detect_provider(validator_model)\n\nprint(\"\\n🤖 DETECTED PROVIDERS\")\nprint(\"-\" * 70)\nprint(f\"SQL Agent: {sql_provider}\")\nprint(f\"Validator Agent: {validator_provider}\")\n\n# Validation\nprint(\"\\n🔍 VALIDATION RESULTS\")\nprint(\"-\" * 70)\n\nissues = []\nwarnings = []\n\n# Check for slash in model names\nif '/' in sql_model:\n issues.append({\n 'type': 'CRITICAL',\n 'msg': f\"SQL_AGENT_MODEL contains '/' which triggers OpenRouter\",\n 'detail': f\"Current: {sql_model}\",\n 'fix': \"Remove '/' prefix. Example: 'deepseek/deepseek-chat' → 'deepseek-chat'\"\n })\n\nif '/' in validator_model:\n issues.append({\n 'type': 'CRITICAL',\n 'msg': f\"VALIDATOR_AGENT_MODEL contains '/' which triggers OpenRouter\",\n 'detail': f\"Current: {validator_model}\",\n 'fix': \"Remove '/' prefix. Example: 'anthropic/claude' → 'claude-3-5-sonnet-20241022'\"\n })\n\n# Check if OpenRouter is being used without key\nif (sql_provider == 'openrouter' or validator_provider == 'openrouter'):\n if openrouter_key == 'NOT SET' or 'your' in openrouter_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Using OpenRouter format but OPENROUTER_API_KEY not configured\",\n 'detail': \"Model names with '/' require OPENROUTER_API_KEY\",\n 'fix': \"Either: (1) Set OPENROUTER_API_KEY, OR (2) Remove '/' from model names\"\n })\n\n# Check API key matches for SQL agent\nif sql_provider == 'google':\n if google_key == 'NOT SET' or 'your' in google_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"SQL Agent uses Gemini but GOOGLE_API_KEY not configured\",\n 'detail': f\"Model: {sql_model}\",\n 'fix': \"Get key from: https://aistudio.google.com/app/apikey\"\n })\n elif not google_key.startswith('AIzaSy'):\n warnings.append({\n 'msg': \"GOOGLE_API_KEY doesn't start with 'AIzaSy'\",\n 'detail': \"Google API keys typically start with 'AIzaSy'\"\n })\n\nelif sql_provider == 'deepseek':\n if deepseek_key == 'NOT SET' or 'your' in deepseek_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"SQL Agent uses DeepSeek but DEEPSEEK_API_KEY not configured\",\n 'detail': f\"Model: {sql_model}\",\n 'fix': \"Get key from: https://platform.deepseek.com/api_keys\"\n })\n elif not deepseek_key.startswith('sk-'):\n warnings.append({\n 'msg': \"DEEPSEEK_API_KEY doesn't start with 'sk-'\",\n 'detail': \"DeepSeek API keys typically start with 'sk-'\"\n })\n\n# Check API key matches for Validator agent\nif validator_provider == 'deepseek':\n if deepseek_key == 'NOT SET' or 'your' in deepseek_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Validator Agent uses DeepSeek but DEEPSEEK_API_KEY not configured\",\n 'detail': f\"Model: {validator_model}\",\n 'fix': \"Get key from: https://platform.deepseek.com/api_keys\"\n })\n\nelif validator_provider == 'anthropic':\n if anthropic_key == 'NOT SET' or 'your' in anthropic_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Validator Agent uses Claude but ANTHROPIC_API_KEY not configured\",\n 'detail': f\"Model: {validator_model}\",\n 'fix': \"Get key from: https://console.anthropic.com/settings/keys\"\n })\n\nelif validator_provider == 'google':\n if google_key == 'NOT SET' or 'your' in google_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Validator Agent uses Gemini but GOOGLE_API_KEY not configured\",\n 'detail': f\"Model: {validator_model}\",\n 'fix': \"Get key from: https://aistudio.google.com/app/apikey\"\n })\n\n# Display issues\nif issues:\n print(\"\\n❌ CRITICAL ISSUES FOUND:\\n\")\n for i, issue in enumerate(issues, 1):\n print(f\"{i}. {issue['msg']}\")\n print(f\" Detail: {issue['detail']}\")\n print(f\" Fix: {issue['fix']}\")\n print()\nelse:\n print(\"\\n✅ No critical issues found!\")\n\n# Display warnings\nif warnings:\n print(\"\\n⚠️ WARNINGS:\\n\")\n for warning in warnings:\n print(f\"• {warning['msg']}\")\n print(f\" {warning['detail']}\")\n print()\n\n# Recommendations\nprint(\"\\n💡 RECOMMENDATIONS\")\nprint(\"-\" * 70)\n\nif issues:\n print(\"\\n🔧 IMMEDIATE ACTION REQUIRED:\")\n print(\"\\n1. Open your .env file\")\n print(\"2. Make these changes:\\n\")\n\n if any('/' in model for model in [sql_model, validator_model]):\n print(\" # Remove slashes from model names:\")\n if '/' in sql_model:\n clean_name = sql_model.split('/')[-1] if '/' in sql_model else sql_model\n print(f\" SQL_AGENT_MODEL={clean_name}\")\n if '/' in validator_model:\n clean_name = validator_model.split('/')[-1] if '/' in validator_model else validator_model\n print(f\" VALIDATOR_AGENT_MODEL={clean_name}\")\n print()\n\n if sql_provider == 'google' and (google_key == 'NOT SET' or 'your' in google_key.lower()):\n print(\" # Add Google Gemini API key:\")\n print(\" GOOGLE_API_KEY=AIzaSy-your-actual-key-here\")\n print(\" Get from: https://aistudio.google.com/app/apikey\")\n print()\n\n if 'deepseek' in [sql_provider, validator_provider] and (\n deepseek_key == 'NOT SET' or 'your' in deepseek_key.lower()):\n print(\" # Add DeepSeek API key:\")\n print(\" DEEPSEEK_API_KEY=sk-your-actual-key-here\")\n print(\" Get from: https://platform.deepseek.com/api_keys\")\n print()\n\n print(\"3. Save the file\")\n print(\"4. Run this script again: python verify_config.py\")\n print(\"5. If all checks pass, restart Streamlit\")\n\nelse:\n print(\"\\n✅ Your configuration is correct!\")\n print(\"\\nYou can now:\")\n print(\"1. Start Streamlit: streamlit run app.py\")\n print(\"2. Click 'Clear Cache' in the sidebar\")\n print(\"3. Test with a query like: 'Show me all tables'\")\n\nprint(\"\\n\" + \"=\" * 70)\nprint(\"\\n\")\n\n# Exit with error code if issues found\nif issues:\n exit(1)\nelse:\n exit(0)"}, "b2b95b8a77d6cf08e7be67ade1da3d5e2d80cddf": {"t": 1785750804.4919975, "n": 8151, "h": "f05007ddb40bf11e", "c": "#!/usr/bin/env python3\n\"\"\"\nConfiguration Verification Script\nRun this to see exactly what configuration is being loaded\n\"\"\"\n\nimport os\nfrom dotenv import load_dotenv\n\n# Force reload environment variables\nload_dotenv(override=True)\n\nprint(\"\\n\" + \"=\" * 70)\nprint(\"CONFIGURATION VERIFICATION REPORT\".center(70))\nprint(\"=\" * 70)\n\n# Get all relevant environment variables\nsql_model = os.getenv('SQL_AGENT_MODEL', 'NOT SET')\nvalidator_model = os.getenv('VALIDATOR_AGENT_MODEL', 'NOT SET')\ngoogle_key = os.getenv('GOOGLE_API_KEY', 'NOT SET')\ndeepseek_key = os.getenv('DEEPSEEK_API_KEY', 'NOT SET')\nopenrouter_key = os.getenv('OPENROUTER_API_KEY', 'NOT SET')\nanthropic_key = os.getenv('ANTHROPIC_API_KEY', 'NOT SET')\nopenai_key = os.getenv('OPENAI_API_KEY', 'NOT SET')\n\nprint(\"\\n📋 MODEL CONFIGURATION\")\nprint(\"-\" * 70)\nprint(f\"SQL_AGENT_MODEL: {sql_model}\")\nprint(f\"VALIDATOR_AGENT_MODEL: {validator_model}\")\n\nprint(\"\\n🔑 API KEYS STATUS\")\nprint(\"-\" * 70)\n\n\ndef show_key_status(name, key):\n if key == 'NOT SET':\n print(f\"❌ {name}: NOT SET\")\n elif 'your' in key.lower() or 'here' in key.lower():\n print(f\"⚠️ {name}: PLACEHOLDER (not real key)\")\n else:\n print(f\"✅ {name}: Set ({key[:15]}...{key[-5:]})\")\n\n\nshow_key_status(\"GOOGLE_API_KEY \", google_key)\nshow_key_status(\"DEEPSEEK_API_KEY \", deepseek_key)\nshow_key_status(\"OPENROUTER_API_KEY \", openrouter_key)\nshow_key_status(\"ANTHROPIC_API_KEY \", anthropic_key)\nshow_key_status(\"OPENAI_API_KEY \", openai_key)\n\n\n# Detect providers from model names\ndef detect_provider(model):\n if model == 'NOT SET':\n return 'NOT SET'\n model_lower = model.lower()\n if '/' in model:\n return 'openrouter'\n elif 'gemini' in model_lower:\n return 'google'\n elif 'deepseek' in model_lower:\n return 'deepseek'\n elif 'claude' in model_lower:\n return 'anthropic'\n elif 'gpt' in model_lower:\n return 'openai'\n else:\n return 'unknown'\n\n\nsql_provider = detect_provider(sql_model)\nvalidator_provider = detect_provider(validator_model)\n\nprint(\"\\n🤖 DETECTED PROVIDERS\")\nprint(\"-\" * 70)\nprint(f\"SQL Agent: {sql_provider}\")\nprint(f\"Validator Agent: {validator_provider}\")\n\n# Validation\nprint(\"\\n🔍 VALIDATION RESULTS\")\nprint(\"-\" * 70)\n\nissues = []\nwarnings = []\n\n# Check for slash in model names\nif '/' in sql_model:\n issues.append({\n 'type': 'CRITICAL',\n 'msg': f\"SQL_AGENT_MODEL contains '/' which triggers OpenRouter\",\n 'detail': f\"Current: {sql_model}\",\n 'fix': \"Remove '/' prefix. Example: 'deepseek/deepseek-chat' → 'deepseek-chat'\"\n })\n\nif '/' in validator_model:\n issues.append({\n 'type': 'CRITICAL',\n 'msg': f\"VALIDATOR_AGENT_MODEL contains '/' which triggers OpenRouter\",\n 'detail': f\"Current: {validator_model}\",\n 'fix': \"Remove '/' prefix. Example: 'anthropic/claude' → 'claude-3-5-sonnet-20241022'\"\n })\n\n# Check if OpenRouter is being used without key\nif (sql_provider == 'openrouter' or validator_provider == 'openrouter'):\n if openrouter_key == 'NOT SET' or 'your' in openrouter_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Using OpenRouter format but OPENROUTER_API_KEY not configured\",\n 'detail': \"Model names with '/' require OPENROUTER_API_KEY\",\n 'fix': \"Either: (1) Set OPENROUTER_API_KEY, OR (2) Remove '/' from model names\"\n })\n\n# Check API key matches for SQL agent\nif sql_provider == 'google':\n if google_key == 'NOT SET' or 'your' in google_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"SQL Agent uses Gemini but GOOGLE_API_KEY not configured\",\n 'detail': f\"Model: {sql_model}\",\n 'fix': \"Get key from: https://aistudio.google.com/app/apikey\"\n })\n elif not google_key.startswith('AIzaSy'):\n warnings.append({\n 'msg': \"GOOGLE_API_KEY doesn't start with 'AIzaSy'\",\n 'detail': \"Google API keys typically start with 'AIzaSy'\"\n })\n\nelif sql_provider == 'deepseek':\n if deepseek_key == 'NOT SET' or 'your' in deepseek_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"SQL Agent uses DeepSeek but DEEPSEEK_API_KEY not configured\",\n 'detail': f\"Model: {sql_model}\",\n 'fix': \"Get key from: https://platform.deepseek.com/api_keys\"\n })\n elif not deepseek_key.startswith('sk-'):\n warnings.append({\n 'msg': \"DEEPSEEK_API_KEY doesn't start with 'sk-'\",\n 'detail': \"DeepSeek API keys typically start with 'sk-'\"\n })\n\n# Check API key matches for Validator agent\nif validator_provider == 'deepseek':\n if deepseek_key == 'NOT SET' or 'your' in deepseek_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Validator Agent uses DeepSeek but DEEPSEEK_API_KEY not configured\",\n 'detail': f\"Model: {validator_model}\",\n 'fix': \"Get key from: https://platform.deepseek.com/api_keys\"\n })\n\nelif validator_provider == 'anthropic':\n if anthropic_key == 'NOT SET' or 'your' in anthropic_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Validator Agent uses Claude but ANTHROPIC_API_KEY not configured\",\n 'detail': f\"Model: {validator_model}\",\n 'fix': \"Get key from: https://console.anthropic.com/settings/keys\"\n })\n\nelif validator_provider == 'google':\n if google_key == 'NOT SET' or 'your' in google_key.lower():\n issues.append({\n 'type': 'CRITICAL',\n 'msg': \"Validator Agent uses Gemini but GOOGLE_API_KEY not configured\",\n 'detail': f\"Model: {validator_model}\",\n 'fix': \"Get key from: https://aistudio.google.com/app/apikey\"\n })\n\n# Display issues\nif issues:\n print(\"\\n❌ CRITICAL ISSUES FOUND:\\n\")\n for i, issue in enumerate(issues, 1):\n print(f\"{i}. {issue['msg']}\")\n print(f\" Detail: {issue['detail']}\")\n print(f\" Fix: {issue['fix']}\")\n print()\nelse:\n print(\"\\n✅ No critical issues found!\")\n\n# Display warnings\nif warnings:\n print(\"\\n⚠️ WARNINGS:\\n\")\n for warning in warnings:\n print(f\"• {warning['msg']}\")\n print(f\" {warning['detail']}\")\n print()\n\n# Recommendations\nprint(\"\\n💡 RECOMMENDATIONS\")\nprint(\"-\" * 70)\n\nif issues:\n print(\"\\n🔧 IMMEDIATE ACTION REQUIRED:\")\n print(\"\\n1. Open your .env file\")\n print(\"2. Make these changes:\\n\")\n\n if any('/' in model for model in [sql_model, validator_model]):\n print(\" # Remove slashes from model names:\")\n if '/' in sql_model:\n clean_name = sql_model.split('/')[-1] if '/' in sql_model else sql_model\n print(f\" SQL_AGENT_MODEL={clean_name}\")\n if '/' in validator_model:\n clean_name = validator_model.split('/')[-1] if '/' in validator_model else validator_model\n print(f\" VALIDATOR_AGENT_MODEL={clean_name}\")\n print()\n\n if sql_provider == 'google' and (google_key == 'NOT SET' or 'your' in google_key.lower()):\n print(\" # Add Google Gemini API key:\")\n print(\" GOOGLE_API_KEY=AIzaSy-your-actual-key-here\")\n print(\" Get from: https://aistudio.google.com/app/apikey\")\n print()\n\n if 'deepseek' in [sql_provider, validator_provider] and (\n deepseek_key == 'NOT SET' or 'your' in deepseek_key.lower()):\n print(\" # Add DeepSeek API key:\")\n print(\" DEEPSEEK_API_KEY=sk-your-actual-key-here\")\n print(\" Get from: https://platform.deepseek.com/api_keys\")\n print()\n\n print(\"3. Save the file\")\n print(\"4. Run this script again: python verify_config.py\")\n print(\"5. If all checks pass, restart Streamlit\")\n\nelse:\n print(\"\\n✅ Your configuration is correct!\")\n print(\"\\nYou can now:\")\n print(\"1. Start Streamlit: streamlit run app.py\")\n print(\"2. Click 'Clear Cache' in the sidebar\")\n print(\"3. Test with a query like: 'Show me all tables'\")\n\nprint(\"\\n\" + \"=\" * 70)\nprint(\"\\n\")\n\n# Exit with error code if issues found\nif issues:\n exit(1)\nelse:\n exit(0)"}}}}