Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -3,39 +3,35 @@ import json
|
|
| 3 |
import firebase_admin
|
| 4 |
from firebase_admin import credentials, firestore
|
| 5 |
from flask import Flask, request, jsonify
|
| 6 |
-
from dotenv import load_dotenv
|
| 7 |
from huggingface_hub import InferenceClient
|
| 8 |
|
| 9 |
-
# Carregar variáveis do .env
|
| 10 |
-
load_dotenv()
|
| 11 |
-
|
| 12 |
app = Flask(__name__)
|
| 13 |
|
| 14 |
-
# === Inicialização segura do Firebase ===
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
if not firebase_key:
|
| 19 |
-
raise RuntimeError("❌ Variável FIREBASE_KEY não encontrada no ambiente.")
|
| 20 |
|
| 21 |
-
|
| 22 |
-
|
| 23 |
-
|
|
|
|
|
|
|
| 24 |
firebase_admin.initialize_app(cred)
|
| 25 |
-
|
| 26 |
-
|
| 27 |
-
|
| 28 |
-
|
| 29 |
-
|
| 30 |
|
| 31 |
-
# ===
|
| 32 |
HF_TOKEN = os.getenv("HF_TOKEN")
|
| 33 |
if not HF_TOKEN:
|
| 34 |
-
raise RuntimeError("❌
|
| 35 |
|
| 36 |
client = InferenceClient(token=HF_TOKEN)
|
| 37 |
|
| 38 |
-
# === Rota de teste ===
|
| 39 |
@app.route("/")
|
| 40 |
def index():
|
| 41 |
return jsonify({"status": "online", "message": "API Flask funcionando!"})
|
|
@@ -74,6 +70,5 @@ def analyze():
|
|
| 74 |
|
| 75 |
if __name__ == "__main__":
|
| 76 |
port = int(os.environ.get("PORT", 8080))
|
|
|
|
| 77 |
app.run(host="0.0.0.0", port=port, debug=False)
|
| 78 |
-
|
| 79 |
-
|
|
|
|
| 3 |
import firebase_admin
|
| 4 |
from firebase_admin import credentials, firestore
|
| 5 |
from flask import Flask, request, jsonify
|
|
|
|
| 6 |
from huggingface_hub import InferenceClient
|
| 7 |
|
|
|
|
|
|
|
|
|
|
| 8 |
app = Flask(__name__)
|
| 9 |
|
| 10 |
+
# === Inicialização segura do Firebase usando Secrets do Hugging Face ===
|
| 11 |
+
firebase_key = os.getenv("FIREBASE_KEY")
|
| 12 |
+
if not firebase_key:
|
| 13 |
+
raise RuntimeError("❌ FIREBASE_KEY não encontrada nos Secrets do Space.")
|
|
|
|
|
|
|
| 14 |
|
| 15 |
+
try:
|
| 16 |
+
# Converte a string JSON em dicionário
|
| 17 |
+
cred_dict = json.loads(firebase_key)
|
| 18 |
+
cred = credentials.Certificate(cred_dict)
|
| 19 |
+
if not firebase_admin._apps:
|
| 20 |
firebase_admin.initialize_app(cred)
|
| 21 |
+
db = firestore.client()
|
| 22 |
+
print("✅ Firebase conectado com sucesso.")
|
| 23 |
+
except Exception as e:
|
| 24 |
+
print(f"❌ Erro ao inicializar Firebase: {e}")
|
| 25 |
+
db = None
|
| 26 |
|
| 27 |
+
# === Inicialização da Hugging Face usando Secrets do Space ===
|
| 28 |
HF_TOKEN = os.getenv("HF_TOKEN")
|
| 29 |
if not HF_TOKEN:
|
| 30 |
+
raise RuntimeError("❌ HF_TOKEN não encontrado nos Secrets do Space.")
|
| 31 |
|
| 32 |
client = InferenceClient(token=HF_TOKEN)
|
| 33 |
|
| 34 |
+
# === Rota de teste simples ===
|
| 35 |
@app.route("/")
|
| 36 |
def index():
|
| 37 |
return jsonify({"status": "online", "message": "API Flask funcionando!"})
|
|
|
|
| 70 |
|
| 71 |
if __name__ == "__main__":
|
| 72 |
port = int(os.environ.get("PORT", 8080))
|
| 73 |
+
# Host 0.0.0.0 para ser acessível no container/Hugging Face Space
|
| 74 |
app.run(host="0.0.0.0", port=port, debug=False)
|
|
|
|
|
|