talemate icon indicating copy to clipboard operation
talemate copied to clipboard

Character Cards Exported from SillyTavern Fail to Parse/Load

Open official-elinas opened this issue 9 months ago • 2 comments

I've tried a couple of cards from chub (venus) downloading the "v2" versions. I have always used that in ST, but when exporting, I get the following error:

  File "/media/npetro/nvme_1/talemate/src/talemate/server/websocket_server.py", line 192, in load_scene
    scene = await load_scene(
  File "/media/npetro/nvme_1/talemate/src/talemate/status.py", line 23, in wrapper
    return await fn(*args, **kwargs)
  File "/media/npetro/nvme_1/talemate/src/talemate/load.py", line 53, in load_scene
    return await load_scene_from_character_card(scene, file_path)
  File "/media/npetro/nvme_1/talemate/src/talemate/load.py", line 82, in load_scene_from_character_card
    character = load_character_from_image(file_path, image_format)
  File "/media/npetro/nvme_1/talemate/src/talemate/load.py", line 335, in load_character_from_image
    character.load_from_image_metadata(image_path, file_format)
  File "/media/npetro/nvme_1/talemate/src/talemate/tale_mate.py", line 300, in load_from_image_metadata
    if metadata.get("spec") == "chara_card_v2":
AttributeError: 'bool' object has no attribute 'get'

Seems like a parsing issue on how ST is exporting the card, leading it to return a boolean (False). I'll look into this issue myself as well, but just putting this out here for reference.

I verified that "spec": "chara_card_v2" exists by exporting the card as JSON.

OS: Kubuntu 23.10

official-elinas avatar May 23 '24 02:05 official-elinas