Project

General

Profile

SendRequest() method » History » Revision 8

Revision 7 (Tomislav Pleše, 09/21/2025 08:59 AM) → Revision 8/19 (Tomislav Pleše, 09/21/2025 09:08 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 
 * 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 -    
     sub-prompt under a Regular Point that by this becomes a Shard   
     1. FE - Create new Point 
     2. FE - Create a Shard in the current Prompt  
 3. FE -  
     3. FE - Show new Point on Screen - only the Prompt, under the previous Point 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  

 4. Existing Shard - sub-prompt under a Point that has already been a Shard