langchain-ai / opengpts

MIT License
6.3k stars 827 forks source link

'RedisCheckpoint' object has no attribute 'serde' Running Migration Tool #334

Closed yakphi closed 1 month ago

yakphi commented 1 month ago

Running the actual last version of opengpt using docker compose. One terminal for the backend and frontend and another the migration tool.

It throws the following error:

data-migrator-1 | 2024-05-09 03:18:47,713 - INFO - Migrating checkpoints. data-migrator-1 | Traceback (most recent call last): data-migrator-1 | File "/backend/migrate_data.py", line 294, in data-migrator-1 | asyncio.run(main()) data-migrator-1 | File "/usr/local/lib/python3.11/asyncio/runners.py", line 190, in run data-migrator-1 | return runner.run(main) data-migrator-1 | ^^^^^^^^^^^^^^^^ data-migrator-1 | File "/usr/local/lib/python3.11/asyncio/runners.py", line 118, in run data-migrator-1 | return self._loop.run_until_complete(task) data-migrator-1 | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ data-migrator-1 | File "/usr/local/lib/python3.11/asyncio/base_events.py", line 654, in run_until_complete data-migrator-1 | return future.result() data-migrator-1 | ^^^^^^^^^^^^^^^ data-migrator-1 | File "/backend/migrate_data.py", line 290, in main data-migrator-1 | await migrate_data() data-migrator-1 | File "/backend/migrate_data.py", line 283, in migrate_data data-migrator-1 | await migrate_checkpoints() data-migrator-1 | File "/backend/migrate_data.py", line 193, in migrate_checkpoints data-migrator-1 | redis_checkpoint = RedisCheckpoint() data-migrator-1 | ^^^^^^^^^^^^^^^^^ data-migrator-1 | File "/usr/local/lib/python3.11/site-packages/langgraph/checkpoint/base.py", line 124, in init data-migrator-1 | self.serde = serde or self.serde data-migrator-1 | ^^^^^^^^^^ data-migrator-1 | AttributeError: 'RedisCheckpoint' object has no attribute 'serde' data-migrator-1 exited with code 1

I tried to use older versions of docker opengpt images but I got different errors also migration checkpoints.

Thanks in advance for any help.

yakphi commented 1 month ago

Solved updating the docker opengpt image of the migration tool Dockerfile to this: 'dd4b9f7'

It seems there were changes in langgraph that affects the migration.

Also I had to start with an empty posgress db as there is migration that add a foreign key to user that is not compatible with the migration tool.