File size: 749 Bytes
a30f2aa
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
@startuml userchat
actor User
participant "APIRouter" as router
participant "Dependencies" as dependencies
participant "SanitizeCollectionName" as sanitizer
participant "LLMInfer" as llm

User -> router : chat_with_llama(user_input)
activate router

router -> dependencies : get_current_user()
activate dependencies
dependencies --> router : current_user
deactivate dependencies

router -> sanitizer : sanitize_collection_name(current_user["user_id"])
activate sanitizer
sanitizer --> router : sanitized_name
deactivate sanitizer

router -> llm : llm_infer(sanitized_name, user_input)
activate llm
llm --> router : model_response
deactivate llm

router --> User : {"ai_response": model_response, "user_id", "name", "role"}
deactivate router
@enduml