llmproxy/backend/setup_admin.py
Oliver Hofmann 562f6ecd9c Init
2026-04-27 18:54:27 +02:00

42 lines
1.2 KiB
Python

#!/usr/bin/env python3
from database import Base, engine, SessionLocal
from models import User, APIKey, Quota, Usage
from crud import create_user, create_api_key, hash_password
def setup_admin():
Base.metadata.create_all(bind=engine)
db = SessionLocal()
admin_user = db.query(User).filter(User.username == "admin").first()
if not admin_user:
admin_user = User(
username="admin",
email="admin@ollama.local",
hashed_password=hash_password("admin123"),
is_active=True
)
db.add(admin_user)
db.commit()
db.refresh(admin_user)
print("✓ Admin user created")
default_quota = Quota(
user_id=admin_user.id,
daily_tokens=10000000,
monthly_tokens=100000000,
daily_requests=10000,
monthly_requests=100000
)
db.add(default_quota)
db.commit()
print("✓ Admin quota created")
api_key = create_api_key(db, admin_user.id, "admin-api-key")
print(f"✓ Admin API Key: {api_key.key}")
else:
print("✗ Admin user already exists")
db.close()
if __name__ == "__main__":
setup_admin()