SendRequest() method » History » Revision 9
Revision 8 (Tomislav Pleše, 09/21/2025 09:08 AM) → Revision 9/19 (Tomislav Pleše, 09/21/2025 09:10 AM)
# SendRequest() method
Context is created from message with following roles:
* system (content: instructions to AI model),
* assistant (content: AI model responses),
* user (content: user prompts)
Context is created as a messageList where:
* first element is the assistant role/content if it exists
* following elements are an ascending list of user prompts and assistant responses in ascending order
* last element is the newest user prompt
Sub-prompt is a prompt that is created from the contents of the Response of the currently selected Point (node - prompt + respnse). This:
* creates a new regular Point
* Regular Point
1st Sharding - Regular Point becomes Shard Point (ThreadMap = not empty, ShardList = empty) - Shard is created and added to ShardList, new Point is added to ShardPointChildren
* previous Response creates a new Point that is inserted in between the response of a current Regular Point. The splitting of the current Point is at the point of that by this becomes a Shard
Cases for the flow of sending requests to AI model:
1. Root Point - First Prompt
1. FE - Create new Point
2. FE - Show new Point on Screen - only the Prompt
3. FE - Create Context as the messageList.
4. FE - Send new Point and the messageList to BE
5. BE - Save new Point to DB
6. BE - Send messageList to OpenAI. The JSON should comprise of: model, messages, max_tokens
7. BE - Receive the Response from OpenAI
8. BE - Save Response to DB (into the previously saved new Point document)
9. BE - Send the new Point (with updated Response and other elements like Metadata) to FE
10. FE - Show updated new Point on Screen - node consisting of both Prompt message content and Response message content
2. Existing Point - Second prompt
1. FE - Create new Point
2. FE - Show new Point on Screen - the Prompt, under the previous Point
3. FE - Create Context as the messageList.
4. FE - Send new Point and the messageList to BE
5. BE - Save new Point to DB
6. BE - Send messageList to OpenAI. The JSON should comprise of: model, messages, max_tokens
7. BE - Receive the Response from OpenAI
8. BE - Save Response to DB (into the previously saved new Point document)
9. BE - Send the new Point (with updated Response and other elements like Metadata) to FE
10. FE - Show updated new Point on Screen - node consisting of both Prompt message content and Response message content
3. New shard -
1. FE - Create new Point
2. FE - Create a Shard in the current Prompt
3. FE -
3. FE - Show new Point on Screen - the Prompt, under the previous Point
3. FE - Create Context as the messageList.
4. FE - Send new Point and the messageList to BE
5. BE - Save new Point to DB
6. BE - Send messageList to OpenAI. The JSON should comprise of: model, messages, max_tokens
7. BE - Receive the Response from OpenAI
8. BE - Save Response to DB (into the previously saved new Point document)
9. BE - Send the new Point (with updated Response and other elements like Metadata) to FE
10. FE - Show updated new Point on Screen - node consisting of both Prompt message content and Response message content
4. Existing Shard - sub-prompt under a Point that has already been a Shard