Spaces:
Running
Running
Update agents/specialized.py
Browse files- agents/specialized.py +20 -0
agents/specialized.py
CHANGED
|
@@ -135,6 +135,26 @@ async def run_specialized_agent(agent_key: str, task: str, context: dict = None)
|
|
| 135 |
except Exception as e:
|
| 136 |
result["file_error"] = str(e)
|
| 137 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 138 |
return result
|
| 139 |
|
| 140 |
except Exception as e:
|
|
|
|
| 135 |
except Exception as e:
|
| 136 |
result["file_error"] = str(e)
|
| 137 |
|
| 138 |
+
elif agent_key == "image_agent":
|
| 139 |
+
# Generar queries (como antes)
|
| 140 |
+
match = re.search(r'\{.*"image_queries".*\}', response, re.DOTALL)
|
| 141 |
+
if match:
|
| 142 |
+
try:
|
| 143 |
+
queries = json.loads(match.group(0))["image_queries"]
|
| 144 |
+
result["queries"] = queries
|
| 145 |
+
|
| 146 |
+
# Si la tarea pide generar imagen real
|
| 147 |
+
if any(word in task.lower() for word in ["genera la imagen", "crea la imagen", "muestra la imagen", "imagen real"]):
|
| 148 |
+
# Usa la primera query (o combina todas)
|
| 149 |
+
best_prompt = ", ".join(queries) + ", highly detailed, 8k, masterpiece"
|
| 150 |
+
img_result = await generate_image_from_prompt(best_prompt)
|
| 151 |
+
if img_result["success"]:
|
| 152 |
+
result["image_url"] = img_result["image_url"]
|
| 153 |
+
else:
|
| 154 |
+
result["image_error"] = img_result["error"]
|
| 155 |
+
except:
|
| 156 |
+
pass
|
| 157 |
+
|
| 158 |
return result
|
| 159 |
|
| 160 |
except Exception as e:
|