Project

General

Profile

Actions

SendRequest() method » History » Revision 5

« Previous | Revision 5/19 (diff) | Next »
Tomislav Pleše, 09/20/2025 02:34 PM


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

Cases for the flow of sending requests to AI model:

  1. Root Point - First Prompt

    • FE - Create new Point
    • FE - Show new Point on Screen - only the Prompt
    • FE - Create Context - messageList from:
      • previous Points
      • previous Points (Prompt + Response)
      • . List is ascending: from the first message, down to the newest prompt. Since there is only this first Prompt, add only that.
    • FE - Send new Point and messageList to BE
    • BE - Save new Point to DB
    • BE - Send messageList (in this case onltPrompt to OpenAI
    • BE - Receive the Response from OpenAI
    • BE - Save Response to DB (in the new Point document)
    • BE - Send the new Point (with updated Response) to FE
    • FE - Show updated new Point on Screen - both Prompt and Response
  2. Existing Point - Second prompt

    • FE - Create new Point
    • FE - Show new Point on Screen - only the Prompt, under the previous Point
    • FE - Create Context - message list from previous Points (Prompt + Response). List is ascending: from the first message, down to the newest prompt.
    • FE - Send new Point and the messageList to BE
    • BE - Save new Point to DB
    • BE - Receive the Response from OpenAI
    • BE - Send Prompt to OpenAI
    • BE - Receive the Response from OpenAI
    • BE - Save Response to DB (with the new Point)
    • BE- Send the new Point (with updated Response) to FE
    • FE - Show updated new Point on Screen - both Prompt and Response
  3. New shard - prompt

  4. Existing Shard - prompt

Updated by Tomislav Pleše 3 months ago · 19 revisions