chatlocal / modules /chat_functions /generar_imagen.py
Miguel Diaz
Generar paso 1
58acd19
import json
import os
import openai
from .. import log_module
# Verifica si la API est谩 activa
activo = True
try:
openai.api_key = os.getenv("OPENAI_API_KEY")
except:
activo = False
user_text = "Generar imagen"
structure_info = {
"imagen_generada": {
"url": "URL de la imagen generada"
}
}
info = {
"type": "function",
"function": {
"name": "generate_image",
"description": "Genera una imagen basada en un prompt utilizando la API de OpenAI. Devuelve la URL de la imagen generada.",
"parameters": {
"type": "object",
"properties": {
"prompt": {
"type": "string",
"description": "El texto que describe la imagen a generar. Ejemplo: Un gato montado en un unicornio bajo la lluvia.",
},
"info": {
"type": "string",
"description": "El usuario no ver谩 esto. Explica por qu茅 se llam贸 a esta funci贸n.",
}
},
"required": ["prompt"],
}
}
}
def ejecutar(params, gid):
prompt = params["prompt"]
try:
response = openai.Image.create(
prompt=prompt,
n=1,
size="512x512"
)
image_url = response['data'][0]['url']
retorno = {"imagen_generada": {"url": image_url}}
log_module.logger(gid).info(f"Generar imagen {params}")
return json.dumps(retorno)
except Exception as e:
log_module.logger(gid).error(f"Generar imagen fall贸: {repr(e)}")
return json.dumps({"status": "api failed"})