Project

General

Profile

SendRequest() method » History » Version 9

Tomislav Pleše, 09/21/2025 09:10 AM

1 1 Tomislav Pleše
# SendRequest() method
2 2 Tomislav Pleše
3 4 Tomislav Pleše
Context is created from message with following roles: 
4
* system (content: instructions to AI model), 
5
* assistant (content: AI model responses), 
6
* user (content: user prompts)
7 1 Tomislav Pleše
8 5 Tomislav Pleše
Context is created as a messageList where:
9
* first element is the assistant role/content if it exists
10
* following elements are an ascending list of user prompts and assistant responses in ascending order
11
* last element is the newest user prompt
12
13 8 Tomislav Pleše
Sub-prompt is a prompt that is created from the contents of the Response of the currently selected Point (node - prompt + respnse). This:
14
* creates a new regular Point
15 9 Tomislav Pleše
* Regular Point 
16
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
17 8 Tomislav Pleše
* 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
18 4 Tomislav Pleše
19 8 Tomislav Pleše
20 4 Tomislav Pleše
Cases for the flow of sending requests to AI model:
21
22 1 Tomislav Pleše
1. Root Point - First Prompt
23 6 Tomislav Pleše
    1. FE - Create new Point
24
    2. FE - Show new Point on Screen - only the Prompt
25
    3. FE - Create Context as the messageList.
26
    4. FE - Send new Point and the messageList to BE
27
    5. BE - Save new Point to DB
28
    6. BE - Send messageList to OpenAI. The JSON should comprise of: model, messages, max_tokens
29
    7. BE - Receive the Response from OpenAI
30
    8. BE - Save Response to DB (into the previously saved new Point document)
31
    9. BE - Send the new Point (with updated Response and other elements like Metadata) to FE
32
    10. FE - Show updated new Point on Screen - node consisting of both Prompt message content and Response message content 
33 1 Tomislav Pleše
34 2 Tomislav Pleše
2. Existing Point - Second prompt
35 6 Tomislav Pleše
    1. FE - Create new Point
36
    2. FE - Show new Point on Screen - the Prompt, under the previous Point
37
    3. FE - Create Context as the messageList.
38
    4. FE - Send new Point and the messageList to BE
39
    5. BE - Save new Point to DB
40
    6. BE - Send messageList to OpenAI. The JSON should comprise of: model, messages, max_tokens
41
    7. BE - Receive the Response from OpenAI
42
    8. BE - Save Response to DB (into the previously saved new Point document)
43
    9. BE - Send the new Point (with updated Response and other elements like Metadata) to FE
44 7 Tomislav Pleše
    10. FE - Show updated new Point on Screen - node consisting of both Prompt message content and Response message content 
45 1 Tomislav Pleše
46 8 Tomislav Pleše
3. New shard -   
47 1 Tomislav Pleše
    1. FE - Create new Point
48 8 Tomislav Pleše
    2. FE - Create a Shard in the current Prompt 
49
3. FE - 
50
    3. FE - Show new Point on Screen - the Prompt, under the previous Point
51 7 Tomislav Pleše
    3. FE - Create Context as the messageList.
52
    4. FE - Send new Point and the messageList to BE
53
    5. BE - Save new Point to DB
54
    6. BE - Send messageList to OpenAI. The JSON should comprise of: model, messages, max_tokens
55
    7. BE - Receive the Response from OpenAI
56
    8. BE - Save Response to DB (into the previously saved new Point document)
57
    9. BE - Send the new Point (with updated Response and other elements like Metadata) to FE
58
    10. FE - Show updated new Point on Screen - node consisting of both Prompt message content and Response message content 
59 6 Tomislav Pleše
60 7 Tomislav Pleše
4. Existing Shard - sub-prompt under a Point that has already been a Shard