Public Access
Initial commit: LiteLLM config + docker-compose + helper scripts
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
import re, os, sys
|
||||
|
||||
# Read the litellm config
|
||||
with open("/opt/litellm/config.yaml") as f:
|
||||
content = f.read()
|
||||
|
||||
# Helper to extract keys by source name
|
||||
def extract_keys_before(content, keyword, count=5):
|
||||
"""Extract api_key values that appear before a given keyword."""
|
||||
lines = content.split("\n")
|
||||
keys = []
|
||||
for i, line in enumerate(lines):
|
||||
if keyword in line.lower():
|
||||
# Look backwards for api_key
|
||||
for j in range(i-1, max(0, i-10), -1):
|
||||
if "api_key" in lines[j]:
|
||||
key = lines[j].split('"')[1] if '"' in lines[j] else None
|
||||
if key and key not in keys:
|
||||
keys.append(key)
|
||||
break
|
||||
return keys[:count]
|
||||
|
||||
# Extract by model group
|
||||
gemini_keys = extract_keys_before(content, "gemini")
|
||||
github_keys = extract_keys_before(content, "github")
|
||||
groq_keys = extract_keys_before(content, "groq")
|
||||
|
||||
# Print as env file format
|
||||
print("# GENERATED ENV FILE")
|
||||
print("# Copy these to /etc/litellm/.env")
|
||||
|
||||
for i, k in enumerate(gemini_keys):
|
||||
print(f"GEMINI_API_KEY_{i+1}={k}")
|
||||
|
||||
for i, k in enumerate(github_keys):
|
||||
# GitHub models use a different env var format
|
||||
print(f"GITHUB_TOKEN_{i+1}={k}")
|
||||
|
||||
for i, k in enumerate(groq_keys):
|
||||
print(f"GROQ_API_KEY_{i+1}={k}")
|
||||
Reference in New Issue
Block a user