Spaces:
Running
Running
File size: 2,836 Bytes
d90d6a6 12cb4be 95da284 3e64a10 d90d6a6 2011e87 f7095e2 d90d6a6 51214b8 d90d6a6 51214b8 5a47dee 95da284 d90d6a6 5a47dee d90d6a6 51214b8 d90d6a6 12cb4be a968dbe 2b6d34d d90d6a6 51214b8 2690756 4a900cc 95da284 d90d6a6 5b38336 afb0579 e8b930e afb0579 2b6d34d 0983bee afb0579 0983bee afb0579 e8b930e b6ca9eb 0983bee 95da284 2b6d34d 5b38336 0983bee 2011e87 95da284 5b38336 74ba95e bb5a2a3 111f19a e8b930e 5b38336 2690756 2b6d34d 5b3c963 2b6d34d |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 |
import io
import globales
import herramientas
import gradio_client
from huggingface_hub import InferenceClient
import conexion_firebase
def genera_platillo_gpu(platillo):
prompt = globales.previo + platillo
print("Platillo enviado:", platillo)
kwargs = {
"prompt": prompt,
"api_name": "/infer"
}
try:
client = gradio_client.Client(globales.espacio, hf_token=globales.llave)
result = client.predict(**kwargs,
# prompt=prompt,
# negative_prompt="",
# seed=42,
# randomize_seed=True,
width=786,
height=568,
# guidance_scale=3.5,
# num_inference_steps=28,
# api_name="/infer"
)
#Cuando es GPU, debe de restar segundos disponibles de HF
herramientas.restaSegundosGPU(globales.work_cost)
print("Platillo generado:", platillo)
return result[0]
except Exception as e:
print("Excepción: ", e)
# Opción para regresar imagen genérica. (ya no porque se envía desde backend.)
# return "default.png"
return '{"Error 500": e}'
def genera_platillo_inference(platillo):
modelo_actual = conexion_firebase.obtenDato('nowme', 'huggingface', 'modelo_actual')
modelo = modelo_actual
#modelo = globales.inferencia
print("Modelo:", modelo)
#Elegir proveedor de inferencia
creditos_restantes_inference = conexion_firebase.obtenDato('nowme', 'huggingface', 'hfInference')
#creditos_restantes_inference = 5000
print("Los créditos restantes de hf-inference que tienes son: ", creditos_restantes_inference)
if creditos_restantes_inference > 0:
provedor_seleccionado = globales.proveedor
else:
provedor_seleccionado = globales.proveedor_back
prompt = globales.previo + platillo
print("Platillo enviado:", platillo)
client = InferenceClient(
provider= provedor_seleccionado,
api_key=globales.llave
)
try:
image = client.text_to_image(
prompt,
model=modelo,
width=786,
height=568,
num_inference_steps=16
)
#Detenido momentaneamente por cambio a firebase.
#herramientas.restaSegundosInference(globales.inference_cost)
except Exception as e:
print("Excepción: ", e)
if "Gateway Time-out" in str(e):
print("GATEWAY TIME-OUT 💀")
modelo=globales.inferencia_backup
#Escribe en txt el nuevo modelo.
herramientas.modificaModeloActual(modelo)
return f"Error: {e}"
img_io = io.BytesIO()
image.save(img_io, "PNG")
img_io.seek(0)
print("Platillo generado:", platillo)
return img_io
|