CoolFace
Apppublic

ColorfulCSZ/QuickPaw

sourceHugging Faceupdated 3mo agoView on Hugging Face
0likes
startup.sh74 linesDownload Raw Back to root
1#!/bin/bash2set -e3 4# Create .qwenpaw.secret directory5mkdir -p /root/.qwenpaw.secret/providers/custom6mkdir -p /root/.qwenpaw.secret/providers/builtin7 8# Generate master key9MASTER_KEY=$(python3 -c "10import secrets, base6411raw = secrets.token_bytes(32)12print(base64.urlsafe_b64encode(raw).decode())13")14echo -n "$MASTER_KEY" > /root/.qwenpaw.secret/.master_key15 16# Encrypt and write provider function17encrypt_api_key() {18    python3 -c "19import sys, base6420from cryptography.fernet import Fernet21 22# Read master key23with open('/root/.qwenpaw.secret/.master_key', 'r') as f:24    key = f.read().strip()25 26f = Fernet(key.encode())27encrypted = f.encrypt(sys.argv[1].encode())28print(encrypted.decode())29" "$1"30}31 32write_provider() {33    local id="$1"34    local name="$2"35    local url="$3"36    local apikey="$4"37    38    if [ -z "$apikey" ]; then39        return40    fi41    42    local enc_key=$(encrypt_api_key "$apikey")43    44    cat > "/root/.qwenpaw.secret/providers/custom/${id}.json" << EOF45{46    "id": "$id",47    "name": "$name",48    "base_url": "$url",49    "api_key": "$enc_key",50    "models": [],51    "enabled": true52}53EOF54    echo "  Configured provider: $id"55}56 57# Read API keys from environment variables (HuggingFace Secrets)58write_provider "agnes" "Agnes" "https://apihub.agnes-ai.com/v1" "$AGNES_API_KEY"59write_provider "xiaomi" "XIAOMI" "https://api.xiaomimimo.com/v1" "$XIAOMI_API_KEY"60write_provider "nvidia" "NVIDIA" "https://integrate.api.nvidia.com/v1" "$NVIDIA_API_KEY"61 62# Set default model63if [ -n "$XIAOMI_API_KEY" ]; then64    cat > "/root/.qwenpaw.secret/providers/active_model.json" << EOF65{66    "provider_id": "xiaomi",67    "model": "mimo-v2.5"68}69EOF70fi71 72echo "Provider setup complete!"73exec python -m qwenpaw app --host 0.0.0.0 --port 808074