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

1 line
2.4 KiB
JSON

{"repo": "adityanshinde/interviewguru-main", "files": {"shared/constants/llmProviders.ts": {"b7609a0c24ce3026b96b3b6a4b7c3a247936511c": {"t": 1785596379.6220052, "n": 2071, "h": "cac928279fe1027a", "c": "export type LlmProviderId = 'groq' | 'mistral' | 'opencode-zen' | 'opencode-go';\n\nexport interface LlmModelOption {\n\tid: string;\n\tlabel: string;\n}\n\nexport interface LlmProviderConfig {\n\tid: LlmProviderId;\n\tlabel: string;\n\tbaseUrl: string;\n\tenvKeyName: string;\n\tdefaultModel: string;\n\tmodels: LlmModelOption[];\n}\n\nexport const LLM_PROVIDERS: Record<LlmProviderId, LlmProviderConfig> = {\n\tgroq: {\n\t\tid: 'groq',\n\t\tlabel: 'Groq',\n\t\tbaseUrl: 'https://api.groq.com/openai/v1',\n\t\tenvKeyName: 'GROQ_API_KEY',\n\t\tdefaultModel: 'llama-3.1-8b-instant',\n\t\tmodels: [\n\t\t\t{ id: 'llama-3.1-8b-instant', label: 'Llama 3.1 8B Instant' },\n\t\t\t{ id: 'llama-3.3-70b-versatile', label: 'Llama 3.3 70B Versatile' },\n\t\t],\n\t},\n\tmistral: {\n\t\tid: 'mistral',\n\t\tlabel: 'Mistral',\n\t\tbaseUrl: 'https://api.mistral.ai/v1',\n\t\tenvKeyName: 'MISTRAL_API_KEY',\n\t\tdefaultModel: 'mistral-small-latest',\n\t\tmodels: [\n\t\t\t{ id: 'mistral-small-latest', label: 'Mistral Small' },\n\t\t\t{ id: 'mistral-medium-latest', label: 'Mistral Medium' },\n\t\t\t{ id: 'mistral-large-latest', label: 'Mistral Large' },\n\t\t],\n\t},\n\t'opencode-zen': {\n\t\tid: 'opencode-zen',\n\t\tlabel: 'OpenCode Zen',\n\t\tbaseUrl: 'https://opencode.ai/zen/v1',\n\t\tenvKeyName: 'OPENCODE_API_KEY',\n\t\tdefaultModel: 'big-pickle',\n\t\tmodels: [\n\t\t\t{ id: 'big-pickle', label: 'Big Pickle (free)' },\n\t\t\t{ id: 'deepseek-v4-flash-free', label: 'DeepSeek V4 Flash Free' },\n\t\t],\n\t},\n\t'opencode-go': {\n\t\tid: 'opencode-go',\n\t\tlabel: 'OpenCode Go',\n\t\tbaseUrl: 'https://opencode.ai/go/v1',\n\t\tenvKeyName: 'OPENCODE_API_KEY',\n\t\tdefaultModel: 'kimi-k2.5-free',\n\t\tmodels: [\n\t\t\t{ id: 'kimi-k2.5-free', label: 'Kimi K2.5 Free' },\n\t\t\t{ id: 'minimax-m2.5-free', label: 'MiniMax M2.5 Free' },\n\t\t],\n\t},\n};\n\nexport const DEFAULT_LLM_PROVIDER: LlmProviderId = 'groq';\n\nexport function isLlmProviderId(value: string | undefined | null): value is LlmProviderId {\n\treturn !!value && value in LLM_PROVIDERS;\n}\n\nexport function resolveLlmProvider(id: string | undefined | null): LlmProviderConfig {\n\tif (isLlmProviderId(id)) return LLM_PROVIDERS[id];\n\treturn LLM_PROVIDERS[DEFAULT_LLM_PROVIDER];\n}\n"}}}}