CoolFace
Apppublic

delqhi/sin-github-issues

sourceHugging Faceupdated 6mo agoView on Hugging Face
0likes
hf_pull_script.py60 linesDownload Raw Back to scripts
1#!/usr/bin/env python32"""3A2A Consumer Rotator (HF VM Pull Script)4Pulls a fresh OpenAI token from SIN-Supabase when a rate-limit is hit.5Infinite Scaling Architecture.6"""7 8import os9import json10import requests11from pathlib import Path12 13SUPABASE_URL = os.environ.get("SUPABASE_URL")14SUPABASE_KEY = os.environ.get("SUPABASE_SERVICE_ROLE_KEY")15AUTH_FILE = Path.home() / ".local" / "share" / "opencode" / "auth.json"16 17def pull_fresh_token():18    if not SUPABASE_URL or not SUPABASE_KEY:19        print("❌ FEHLER: SUPABASE_URL oder SUPABASE_SERVICE_ROLE_KEY fehlen!")20        return False21        22    base_url = SUPABASE_URL.rstrip('/')23    headers = {24        "apikey": SUPABASE_KEY,25        "Authorization": f"Bearer {SUPABASE_KEY}",26        "Content-Type": "application/json",27        "Prefer": "return=representation"28    }29 30    print("🔍 Suche frischen Token im Pool...")31    get_url = f"{base_url}/rest/v1/openai_account_pool?status=eq.FRESH&limit=1"32    resp = requests.get(get_url, headers=headers, timeout=5)33    34    if resp.status_code != 200 or not resp.json():35        print("❌ FEHLER: Kein frischer Token im Pool verfügbar!")36        return False37        38    row = resp.json()[0]39    row_id = row["id"]40    new_auth_data = row["auth_json_data"]41    42    patch_url = f"{base_url}/rest/v1/openai_account_pool?id=eq.{row_id}"43    requests.patch(patch_url, headers=headers, json={"status": "IN_USE"}, timeout=5)44 45    AUTH_FILE.parent.mkdir(parents=True, exist_ok=True)46    current_data = {}47    if AUTH_FILE.exists():48        try:49            current_data = json.loads(AUTH_FILE.read_text())50        except:51            pass52            53    current_data["openai"] = new_auth_data54    AUTH_FILE.write_text(json.dumps(current_data, indent=2))55    print(f"🚀 ERFOLG: Lokale auth.json überschrieben. (ID: {row_id})")56    return True57 58if __name__ == "__main__":59    pull_fresh_token()60