generative_agents icon indicating copy to clipboard operation
generative_agents copied to clipboard

Spatial memory key error

Open yhshu opened this issue 2 years ago • 4 comments

When I was using 25 agents to run 3000 steps, I got this key error for spatial memory.


GNS FUNCTION: <generate_action_game_object>
"Wolfgang Schulz's room or kitchen"
curr_world: the Ville, curr_sector: Dorm for Oak Hill College, curr_arena: Wolfgang Schulz's room or kitchen
curr_arena: Wolfgang Schulz's room or kitchen not in tree
Traceback (most recent call last):
  File "generative_agents/reverie/backend_server/persona/memory_structures/spatial_memory.py", line 105, in get_str_accessible_arena_game_objects
    x = ", ".join(list(self.tree[curr_world][curr_sector][curr_arena]))
KeyError: "Wolfgang Schulz's room or kitchen"

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "generative_agents/reverie/backend_server/reverie.py", line 468, in open_server
    rs.start_server(int_count)
  File "generative_agents/reverie/backend_server/reverie.py", line 379, in start_server
    next_tile, pronunciatio, description = persona.move(
  File "generative_agents/reverie/backend_server/persona/persona.py", line 222, in move
    plan = self.plan(maze, personas, new_day, retrieved)
  File "generative_agents/reverie/backend_server/persona/persona.py", line 148, in plan
    return plan(self, maze, personas, new_day, retrieved)
  File "generative_agents/reverie/backend_server/persona/cognitive_modules/plan.py", line 959, in plan
    _determine_action(persona, maze)
  File "generative_agents/reverie/backend_server/persona/cognitive_modules/plan.py", line 629, in _determine_action
    act_game_object = generate_action_game_object(act_desp, act_address,
  File "generative_agents/reverie/backend_server/persona/cognitive_modules/plan.py", line 221, in generate_action_game_object
    if not persona.s_mem.get_str_accessible_arena_game_objects(act_address):
  File "generative_agents/reverie/backend_server/persona/memory_structures/spatial_memory.py", line 115, in get_str_accessible_arena_game_objects
    x = ", ".join(list(self.tree[curr_world][curr_sector][curr_arena.lower()]))
KeyError: "wolfgang schulz's room or kitchen"
Error.

yhshu avatar Nov 15 '23 18:11 yhshu

这个是因为没有这个地址而错误 然后是在地点切分那里报错

2642543078 avatar Nov 16 '23 07:11 2642543078

我也碰到了,找到方法避免了吗,手动客制地址吗

wwwzwbz avatar Jan 24 '24 12:01 wwwzwbz

You may find where the exception happens (the request to the spatial memory) and simply skip that if the key does not exist. But I'm not sure if this will impair anything.

yhshu avatar Jan 24 '24 15:01 yhshu

我也碰到了,找到方法避免了吗,手动客制地址吗

是在生成小镇的game_object地点的时候报错了

2642543078 avatar Jan 25 '24 10:01 2642543078