[Assistants API] Forking a thread

An endpoint to fork a thread would be very useful.

What do I mean by forking?

Let’s imagine we’re on a system like Slack where people can start threads on any message. Let’s say on a channel you have:

  • message 1
  • message 2
  • message 3

For our assistant we created a thread with these 3 messages.

Now somebody creates a Slack thread starting at message 2 - now we have:

  • message 1
  • mesage 2
    • message 2.1
    • message 2.2
  • message 3

At this point we need 2 threads: the 1st one that still exists (1, 2, 3) and a new one that is a fork: (1, 2, 2.1, 2.2).

Of course this can be emulated manually by creating a new thread with a copy of all the messages of the 1st one, but an automatic way to handle this with one call would be useful and appreciated.

Of course you’d think that you could create a new thread with a copy of some conversation, but you can’t. Only user role messages can be placed, not what the AI said.

The path OpenAI is following makes it clear: API developer → fancy ChatGPT user and no more.

+1 to this feature request. It is built into the ChatGPT. If an assistant responds with a poor repose that influences future runs. Being able to delete messages or fork conversations is essential.

1 Like

I’ve recently thought about this idea, i think it is a must for branching the conversations.