Hi, I have been experimenting with switching between assistants and tools that run on the same thread.
From the way the Assistants API is designed it looks like this is meant to work, since you can create runs on any thread with any assistant.
But what I am finding is that if I run assistant A with tools 1, 2,3… then Assistant B with 4, 5, 6. If I run assistant A again, it often tries to use Assistant B’s tools (4, 5, or 6). Especially if the tool calls are relevant.
I assume this is because it sees the other tool calls in the thread history context and gets confused that it can use them.
Is this a bug? Am I trying to use the API in the wrong way?
To me this feels like a sensible way to use it, since you can teach assistants different behaviors and switch between them depending on what the user is trying to do, so I am surprised it isn’t supported.