Changes between Version 1 and Version 2 of NETIntel-СЦ6-RAG-Chat
- Timestamp:
- 01/21/26 00:49:34 (3 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
NETIntel-СЦ6-RAG-Chat
v1 v2 1 = NETIntel – СЦ6: Поставување прашање преку RAG /Chat1 = NETIntel – СЦ6: Поставување прашање преку RAG / Chat 2 2 3 3 == Опис 4 Оператор поставува прашање. Серверот прави контекст од базата и праќа до LLM за одговор. 4 Најавен оператор или аналитичар поставува прашање преку AI интерфејс. 5 Серверот гради контекст (RAG – Retrieval Augmented Generation) од податоците 6 во базата на податоци и го проследува до LLM сервис за генерирање одговор. 5 7 6 8 == Актери 7 * Оператор/Аналитичар 9 * Оператор / Аналитичар 10 * Сервер (RAG логика) 8 11 * LLM сервис (OpenAI) 9 12 13 == Предуслови 14 * Валидна корисничка сесија (JWT `session` cookie добиен преку Google OAuth). 15 * Корисникот има пристап до tenant во кој припаѓаат податоците. 16 * Постојат релевантни записи во базата на податоци. 17 10 18 == Главен тек 11 1. POST /api/chat со question (+ optional computer_name). 12 2. build_rag_context чита записи од: 13 * sysmon_events 14 * computer_history 15 * computer_processes 16 3. ask_llm_with_context враќа одговор. 17 4. UI го прикажува одговорот. 19 1. Корисникот внесува прашање во AI интерфејсот (со опционален параметар `computer_name`). 20 2. Клиентскиот интерфејс праќа барање `POST /api/chat` со полето `question`. 21 3. Серверот го чита `tenant_id` од корисничката сесија и проверува пристап. 22 4. Серверот гради RAG контекст преку читање на релевантни записи од базата: 23 * `sysmon_events` 24 * `computer_history` 25 * `computer_processes` 26 (филтрирани според `tenant_id` и, доколку е зададено, `computer_name`) 27 5. Серверот го повикува LLM сервисот со креираниот контекст и поставеното прашање. 28 6. LLM сервисот враќа текстуален одговор. 29 7. Серверот го проследува одговорот до клиентскиот интерфејс. 30 8. Клиентскиот интерфејс го прикажува одговорот на корисникот. 18 31 19 == Табели 32 == Алтернативни текови / Грешки 33 * Корисникот не е автентициран → HTTP 401 (Unauthorized) 34 * Нема доволно податоци за градење контекст → информативен одговор од LLM 35 * Проблем со LLM сервисот → HTTP 502 (Bad Gateway) или fallback порака 36 37 == Табели што се засегаат 20 38 * sysmon_events 21 39 * computer_history
