Enables deleting assistants without automatically deleting associated threads.
Adds metadata column to thread. Column stores the thread's original assistant type: {"assistant_type": assistant["config"]["configurable"]["type"]}
Uses this metadata on the frontend to enable attaching threads to suitable assistants (@andrewnguonly this prevents the issue of deserialization by for example not allowing RAG's thread to be attached to Chatbot).
Ideally, we'd be able to show old messages in the UI for threads without assistants. But unfortunately the current state of things prevents this due to get_thread_state depending on the existence of an assistant. So, here's how the UI looks like:
As agreed @nfcampos:
{"assistant_type": assistant["config"]["configurable"]["type"]}
Ideally, we'd be able to show old messages in the UI for threads without assistants. But unfortunately the current state of things prevents this due to
get_thread_state
depending on the existence of an assistant. So, here's how the UI looks like:Screencast from 05-03-2024 11:34:11 AM.webm