From 0cff4de387e0db82dbe8375a96805e2ebf7d60f4 Mon Sep 17 00:00:00 2001 From: Moibe Date: Thu, 12 Dec 2024 22:28:47 -0600 Subject: [PATCH] Quota debits only on Zero --- funciones.py | 23 +++++++++++++++-------- globales.py | 2 +- images/favicon.png | Bin 0 -> 10183 bytes sulkuFront.py | 1 - sulkuPypi.py | 1 - tools.py | 14 ++++++++++++-- 6 files changed, 28 insertions(+), 13 deletions(-) create mode 100644 images/favicon.png diff --git a/funciones.py b/funciones.py index 05d59f9..779b738 100644 --- a/funciones.py +++ b/funciones.py @@ -9,6 +9,8 @@ import tools import time +tipo_api = None + btn_buy = gr.Button("Get Credits", visible=False, size='lg') #PERFORM es la app INTERNA que llamará a la app externa. @@ -22,17 +24,14 @@ def perform(input1, request: gr.Request): try: resultado = mass(input1) #El resultado ya viene destuplado. - except Exception as e: + except Exception as e: info_window, resultado, html_credits = sulkuFront.aError(request.username, tokens, excepcion = tools.titulizaExcepDeAPI(e)) return resultado, info_window, html_credits, btn_buy else: #Si no hubo autorización. info_window, resultado, html_credits = sulkuFront.noCredit(request.username) return resultado, info_window, html_credits, btn_buy - - #(Si llega aquí, debes debitar de la quota.) - sulkuPypi.updateQuota(globales.process_cost) - + #Primero revisa si es imagen!: if "image.webp" in resultado: #Si es imagen, debitarás. @@ -47,8 +46,10 @@ def perform(input1, request: gr.Request): #MASS es la que ejecuta la aplicación EXTERNA def mass(input1): - - api = tools.elijeAPI() + + api, tipo_api = tools.elijeAPI() + print("Una vez elegido API, el tipo api es: ", tipo_api) + client = gradio_client.Client(api, hf_token=bridges.hug) #client = gradio_client.Client("https://058d1a6dcdbaca0dcf.gradio.live/") #MiniProxy @@ -100,7 +101,13 @@ def mass(input1): # ) # #Si viene del miniproxy, hay que rehacer la tupla. - # result = ast.literal_eval(result) + # result = ast.literal_eval(result) + + #(Si llega aquí, debes debitar de la quota, incluso si detecto no-face o algo.) + if tipo_api == "gratis": + print("Como el tipo api fue gratis, si debitaremos la quota.") + sulkuPypi.updateQuota(globales.process_cost) + #No debitas la cuota si no era gratis, solo aplica para Zero. result = tools.desTuplaResultado(result) return result diff --git a/globales.py b/globales.py index a702116..e97cfc4 100644 --- a/globales.py +++ b/globales.py @@ -1,7 +1,7 @@ import gradio as gr #MAIN -version = "5.12.18" +version = "5.13.18" env = "dev" aplicacion = "superheroes-dev" #como se llama en tu repo y tu dominio. diff --git a/images/favicon.png b/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..3fe169e12c720c9d0082b4a3436ebfbb72128738 GIT binary patch literal 10183 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 literal 0 HcmV?d00001 diff --git a/sulkuFront.py b/sulkuFront.py index dc6dab5..2f1c213 100644 --- a/sulkuFront.py +++ b/sulkuFront.py @@ -3,7 +3,6 @@ import gradio as gr import threading import sulkuMessages -import time result_from_displayTokens = None result_from_initAPI = None diff --git a/sulkuPypi.py b/sulkuPypi.py index c826a78..878fb33 100644 --- a/sulkuPypi.py +++ b/sulkuPypi.py @@ -129,7 +129,6 @@ def getQuota(): if response.status_code == 200: quota = response.json() - print("Quota:", quota) else: error = f"Error al obtener el elemento todo: {response.status_code}" return error diff --git a/tools.py b/tools.py index 20e203c..83633db 100644 --- a/tools.py +++ b/tools.py @@ -6,6 +6,8 @@ import sulkuPypi import time + + def theme_selector(): temas_posibles = [ gr.themes.Base(), @@ -23,7 +25,7 @@ def initAPI(): global result_from_initAPI try: - api = elijeAPI() + api, tipo_api = elijeAPI() repo_id = api api = HfApi(token=bridges.hug) runtime = api.get_space_runtime(repo_id=repo_id) @@ -123,10 +125,18 @@ def desTuplaResultado(resultado): pass def elijeAPI(): + + global tipo_api + + #Si el resultado puede usar la Zero "por última vez", debe de ir prendiendo la otra. if sulkuPypi.getQuota() >= globales.process_cost: #Puedes usar Zero. api = globales.api_zero + tipo_api = "gratis" else: api = globales.api_cost + tipo_api = "costo" + print("La API elejida es: ", api) - return api \ No newline at end of file + + return api, tipo_api \ No newline at end of file