mwtuni commited on
Commit
56dfc83
·
1 Parent(s): eec1f8f

Info tab shows infographic about workflow

Browse files
.gitattributes CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
 
 
33
  *.zip filter=lfs diff=lfs merge=lfs -text
34
  *.zst filter=lfs diff=lfs merge=lfs -text
35
  *tfevents* filter=lfs diff=lfs merge=lfs -text
36
+ *.png filter=lfs diff=lfs merge=lfs -text
app.py CHANGED
@@ -277,13 +277,14 @@ def initial_greeting(avatar_id):
277
  return send_message_public(avatar_id, INITIAL_GREETING, [], True)
278
 
279
 
280
- def maybe_generate_image(avatar_id, history, generate_image=True):
 
281
  if not generate_image:
282
- return gr.update(), generate_image
283
  if not avatar_id:
284
- return gr.update(), generate_image
285
  if not history:
286
- return gr.update(), generate_image
287
 
288
  last_user = None
289
  last_reply = None
@@ -298,11 +299,11 @@ def maybe_generate_image(avatar_id, history, generate_image=True):
298
  try:
299
  avatar = get_avatar({"avatar_id": avatar_id, "admin_id": ""})
300
  except ValueError:
301
- return gr.update(), False
302
 
303
  portrait_path = _resolve_path(avatar.get("portrait"))
304
  if not portrait_path or not Path(portrait_path).exists():
305
- return gr.update(), False
306
 
307
  try:
308
  prompt = build_prompt(
@@ -318,9 +319,9 @@ def maybe_generate_image(avatar_id, history, generate_image=True):
318
  record_generated_image(avatar_id, out_path, prompt, timestamp)
319
  return str(out_path), True
320
  except Exception:
321
- return gr.update(), generate_image
322
 
323
- return gr.update(), generate_image
324
 
325
 
326
  # ----------------------------------------------------
@@ -355,7 +356,7 @@ with gr.Blocks() as ui:
355
  )
356
  chat_event.then(
357
  maybe_generate_image,
358
- inputs=[avatar_id_input, state, generate_toggle],
359
  outputs=[image_display, generate_toggle],
360
  )
361
 
@@ -366,7 +367,7 @@ with gr.Blocks() as ui:
366
  )
367
  send_event.then(
368
  maybe_generate_image,
369
- inputs=[avatar_id_input, state, generate_toggle],
370
  outputs=[image_display, generate_toggle],
371
  )
372
 
@@ -384,7 +385,7 @@ with gr.Blocks() as ui:
384
  )
385
  initial_load.then(
386
  maybe_generate_image,
387
- inputs=[avatar_id_input, state, generate_toggle],
388
  outputs=[image_display, generate_toggle],
389
  )
390
 
@@ -478,6 +479,14 @@ with gr.Blocks() as ui:
478
  outputs=file_status,
479
  )
480
 
 
 
 
 
 
 
 
 
481
  # ----------------------------------------------------
482
  # Export ASGI app for Hugging Face Spaces
483
  # ----------------------------------------------------
 
277
  return send_message_public(avatar_id, INITIAL_GREETING, [], True)
278
 
279
 
280
+ def maybe_generate_image(avatar_id, history, generate_image=True, current_image=None):
281
+ current_image = current_image or None
282
  if not generate_image:
283
+ return current_image, generate_image
284
  if not avatar_id:
285
+ return current_image, generate_image
286
  if not history:
287
+ return current_image, generate_image
288
 
289
  last_user = None
290
  last_reply = None
 
299
  try:
300
  avatar = get_avatar({"avatar_id": avatar_id, "admin_id": ""})
301
  except ValueError:
302
+ return current_image, False
303
 
304
  portrait_path = _resolve_path(avatar.get("portrait"))
305
  if not portrait_path or not Path(portrait_path).exists():
306
+ return current_image, False
307
 
308
  try:
309
  prompt = build_prompt(
 
319
  record_generated_image(avatar_id, out_path, prompt, timestamp)
320
  return str(out_path), True
321
  except Exception:
322
+ return current_image, generate_image
323
 
324
+ return current_image, generate_image
325
 
326
 
327
  # ----------------------------------------------------
 
356
  )
357
  chat_event.then(
358
  maybe_generate_image,
359
+ inputs=[avatar_id_input, state, generate_toggle, image_display],
360
  outputs=[image_display, generate_toggle],
361
  )
362
 
 
367
  )
368
  send_event.then(
369
  maybe_generate_image,
370
+ inputs=[avatar_id_input, state, generate_toggle, image_display],
371
  outputs=[image_display, generate_toggle],
372
  )
373
 
 
385
  )
386
  initial_load.then(
387
  maybe_generate_image,
388
+ inputs=[avatar_id_input, state, generate_toggle, image_display],
389
  outputs=[image_display, generate_toggle],
390
  )
391
 
 
479
  outputs=file_status,
480
  )
481
 
482
+ with gr.Tab("Info"):
483
+ gr.Markdown("### Avatar MCP Workflow")
484
+ gr.Image(
485
+ label="Infographic",
486
+ value=_resolve_path("avatar_infographic.png"),
487
+ type="filepath",
488
+ )
489
+
490
  # ----------------------------------------------------
491
  # Export ASGI app for Hugging Face Spaces
492
  # ----------------------------------------------------
avatar_infographic.png ADDED

Git LFS Details

  • SHA256: ce65f3d1fec6190ab1bad891ce5f1227c60db56adb9a620697d0af51ddc8190b
  • Pointer size: 132 Bytes
  • Size of remote file: 1.36 MB
avatars/08a2fb96/portrait.png CHANGED

Git LFS Details

  • SHA256: 403150355b7bb53b4f3162abddc38f4c730d7a04e61b8ca2aa0bdccac736dd4b
  • Pointer size: 130 Bytes
  • Size of remote file: 41.2 kB