feat(gtm): add aspect ratio & corporate design; fix(market): harden backend logging & json parsing
This commit is contained in:
@@ -478,24 +478,22 @@ def translate(payload):
|
||||
def image(payload):
|
||||
prompt = payload.get('prompt', 'No Prompt')
|
||||
project_id = payload.get('projectId')
|
||||
aspect_ratio = payload.get('aspectRatio')
|
||||
|
||||
# Versuche, ein Referenzbild aus dem Payload zu holen (für Image-to-Image)
|
||||
# Frontend sendet "referenceImagesBase64" (Array)
|
||||
ref_images = payload.get('referenceImagesBase64')
|
||||
ref_image = None
|
||||
|
||||
if ref_images and isinstance(ref_images, list) and len(ref_images) > 0:
|
||||
ref_image = ref_images[0]
|
||||
elif payload.get('referenceImage'): # Fallback für alte Calls
|
||||
elif payload.get('referenceImage'):
|
||||
ref_image = payload.get('referenceImage')
|
||||
|
||||
log_and_save(project_id, "image", "prompt", prompt)
|
||||
log_and_save(project_id, "image", "prompt", f"{prompt} (Ratio: {aspect_ratio or 'default'})")
|
||||
if ref_image:
|
||||
logging.info(f"Image-Mode: Reference Image found (Length: {len(ref_image)})")
|
||||
|
||||
try:
|
||||
# Aufruf mit optionalem Referenzbild
|
||||
image_b64 = call_gemini_image(prompt, reference_image_b64=ref_image)
|
||||
image_b64 = call_gemini_image(prompt, reference_image_b64=ref_image, aspect_ratio=aspect_ratio)
|
||||
log_and_save(project_id, "image", "response_b64_preview", image_b64[:100] + "...")
|
||||
return {"imageBase64": f"data:image/png;base64,{image_b64}"}
|
||||
except Exception as e:
|
||||
|
||||
Reference in New Issue
Block a user