
# თვითმომსახურე AI თანდათამზებს ასისტენტი: RAG-ს სახის როლ‑ დაფუძნება წვდომა უსაფრთხოების კითხვარის ავტომატიზაციისთვის

SaaS-ის სწრაფად მიმავალი სამყაროში უსაფრთხოების კითხვარები, შესაბამისობის აუდიტები და ვენდორის შეფასებები გადადია შენიშვნის რიტუალად. კომპანიები, რომლებიც შეუძლია სწრაფად, ზუსტად და ნათლად აუდიტის ტრანსკრიპტით უპასუხოს, იღებენ კონტრაქტებს, ინარჩუნებენ მომხმარებლებს და ნაკლებად იდიფიცირეულადია სამართლებრივ რისკებზე. ცანდტურებული ფიზიკური პროცესები — შთამბეჭდავი ტექსტის დაკოპირება, დოკუმენტაციის ძებნა, ვერსიების დაკონტროლება — უკვე არ არის შესამოქმედი.

წინ-განაა **თვითმომსახურე AI შესაბამისობის ასისტენტი** (SSAIA). **Retrieval‑Augmented Generation (RAG)**‑ის გაერთიანებით **Role‑Based Access Control (RBAC)**‑ის, SSAIA‑მა შეუძლია ყველა აქტორის — უსაფრთხოების ინჟინრებიდან, პროდუქტის მენეჯერებიდან, სამართლის კონსულტანტებიდან, სასყოთა წარმომადგენლებისგან — თითოეულისთვის სწორ დუბლებაზე, კონტექსტული პასუხის შექმნისა და შესაბამისია. ყველა ეს ერთი კოლაბორაციული პორტალი იმყოფება.

მდგომარეობის წინაპია არქიტექტურული საჰედ ღმერის, მონაცემთა ნაკადის, უსაფრთხოების გარანტიისა და პრაქტიკული ნაბიჯები, რომ SSAIA‑ის მოდერნულ SaaS ორგანიზაციებში მოხერხდება. ჩვენ ასევე გამოგვაქვს Mermaid დიაგრამა, რომელიც აჩვენებს end‑to‑end არსებული პროპლემასთან, განვსაზღვრავთ ფუძის დონეების შესახებ.

---

## 1️⃣ რატომ შერიშავთ RAGსა და RBAC‑ს?

| პოლისი | Retrieval‑Augmented Generation (RAG) | Role‑Based Access Control (RBAC) |
|--------|--------------------------------------|-----------------------------------|
| **მთავარი მიზანი** | პრაცადეკანტებული მონაცემთა ბაზიდან შესაბამისი ფრაზების დარეკება და მათი ინტეგრირება AI‑შექმნილ ტექსტში. | უზრუნველყოს, რომ მომხმარებლები იხედავენ თუ რედაქტირებენ მხოლოდ იმ მონაცემებს, რომელზე აქვთ ავტორიზაცია. |
| **გააკონტროლება კითხვაროებისთვის** | უზრუნველყოფს, რომ პასუხები დაფუძნებულია უკვე დამოწმებულ დოქუმენტებზე (პოლისი დოკუმენტები, აუდიტის ლოგები, ტესტის შედეგები). | თავიდან ასაცილებს სავარაუდოდ კონფიდენციალურ კონტროლებს ან დოკუმენტებს უვარგის ადამიანებზე. |
| **ურთიერთი გავლენა შესაბამისობაზე** | მხარდამჭერი არის მიზეზით‑დაბმული პასუხების მიწოდება, როგორიცაა [SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2), [ISO 27001](https://www.iso.org/standard/27001), [GDPR](https://gdpr.eu/) და ა.შ. | სწორია მონაცემ‑პიროვნების რეგულაციებთან, რომლებიც მოთხოვნენ მინიმალურ პრივილეგიუმის წინამეკითხვა. |
| **სინერბია** | RAG მოგაქვს *რა*; RBAC ბრუნავს *ვის* და *როგორ* ეს შინაარსის გამოყენება. | ერთად ისინი აცდენენ **უსაფრთხო, აუდიტის‑ჰანდქროფ და კონტექსტის‑შენი** პასუხის გენერირების ბარათს. |

შერწყმა მოაცილებს ორი დიდ შიშს:

1. **საწყისი ან არასაკმარისი ევდენცია** – RAG ყოველთვის კომპლექტის ყველაზე ახლოს ფ ლიდერებსა მასივზე ვექტორურ მსგავსებაზე და მეტა‑დატასტირზე.
2. **ხალხის შეცდომა მონაცემის გამჟღავნებაში** – RBAC‑მა ირჩევს, რომ მაგალითად, სეილის წარმომადგენელი ნახოს მხოლოდ ღია პოლიტიკის ნაწილის, ხოლო უსაფრთხოების ინჟინერი შეხედავს შიდა პენეტრაციის ანგარიშებს.

---

## 2️⃣ არქიტექტურული გაცნობა

ქვემოთ მაღალი‑დონის Mermaid‑დიაგრამისგან ჩანს Self‑Service AI Compliance Assistant‑ის ძირითადი კომპონენტები და მონაცემთა ნაკადის.

```mermaid
flowchart TD
    subgraph UserLayer["მომხმარებლის იმიტაციის ფენა"]
        UI[ "ვებ UI / Slack Bot" ]
        UI -->|Auth Request| Auth[ "იდენტის პროვაიდერი (OIDC)" ]
    end

    subgraph AccessControl["RBAC ეკჰანირია"]
        Auth -->|Issue JWT| JWT[ "ხელმოწერილი ტოკენი" ]
        JWT -->|Validate| RBAC[ "პოლიცის გადაწყვეტილების წერტილი\n(PDP)" ]
        RBAC -->|Allow/Deny| Guard[ "პოლისის განსახილველი წერტილი\n(PEP)" ]
    end

    subgraph Retrieval["RAG დაბრუნება"]
        Guard -->|Query| VectorDB[ "ვექტორას სახელი\n(FAISS / Pinecone)" ]
        Guard -->|Metadata Filter| MetaDB[ "მეტა‑დატა ბაზა\n(Postgres)" ]
        VectorDB -->|TopK Docs| Docs[ "ესინსირული დოკუმენტის ნაკლები" ]
    end

    subgraph Generation["LLM გენერაციის სერვისი"]
        Docs -->|Context| LLM[ "დიდი ენის მოდელი\n(Claude‑3, GPT‑4o)" ]
        LLM -->|Answer| Draft[ "პირადი პასუხი" ]
    end

    subgraph Auditing["აუდიტი & ვერსიანობა"]
        Draft -->|Log| AuditLog[ "იმიუჟირებელი ლოგი\n(ChronicleDB)" ]
        Draft -->|Store| Answers[ "პასუხის საცავი\n(Encrypted S3)" ]
    end

    UI -->|Submit Questionnaire| Query[ "კითხანის პრიმტი" ]
    Query --> Guard
    Guard --> Retrieval
    Retrieval --> Generation
    Generation --> Auditing
    Auditing -->|Render| UI
```

**დიაგრამის მნიშვნელოვანი ქონებები**

* იდენტიფიკაციის პროვაიდერი (IdP) აუკმებს მომხმარებლებს და იზდომის JWT‑ს როლ‑კარგის მითითებით.
* **Policy Decision Point (PDP)** პროცედურებს იყენებს როლ‑მატრიცასთან (მაგ. *წაიკითხეთ ღია პოლიტიკა*, *მიაწოდეთ შიდა ეფექტის გუნდი*).
* **Policy Enforcement Point (PEP)** აკავშირდება ყველა მოთხოვნის მიმართ დაბრუნების ენჯინში, დარწმუნებით, რომ ავტორიზებული აღჭურვილობა ამოიღებს.
* **VectorDB** ინახავს ყველა შესაბამისობის მასალის (პოლისები, აუდიტის ანგარიშები, ტესტის ლოგები) ემბედინგებს. **MetaDB** მოიცავს სტრუქტურირებული მნიშნვნელობის ქვე‑ქმედებს: კონფიდენციალურობის დონე, პროცედურების მრავალჯერადი განახლება, მფუთის კოდის ფაქტორები.
* **LLM** მიიღებს შერჩეულ დოკუმენტებზე კონტექსტსა და ხორციელდება, რომ შექმნათ **ტრეანსფერირებელი** პასუხი, რომელიც შეიძლება აცნოს წყაროებზე.
* **AuditLog** ეპოვენია ყველა მოთხოვნა, მომხმარებელი და მომზადებული პასუხი, რაც სრულ ფორნოვან შესაცვლელად იძლევა.

---

## 3️⃣ მონაცემთა მოდელირება: ევიდენცია როგორც სტრუქტურირებული ცოდნა

რისტორანტული SSAIA‑ის საერთო ადგილის დადება სწორად არკეთებული ცოდნის ბაზა. ქვემოთ წარმოდგენილია ერთი ევიდენციის სქემა:

```json
{
  "id": "evidence-12345",
  "title": "კვარტალური პროფილაკის შემოწმება – Q2 2025",
  "type": "Report",
  "confidentiality": "internal",
  "tags": ["penetration-test", "network", "critical"],
  "owner": "security-team@example.com",
  "created_at": "2025-06-15T08:30:00Z",
  "last_updated": "2025-09-20T12:45:00Z",
  "version": "v2.1",
  "file_uri": "s3://compliance-evidence/pt-q2-2025.pdf",
  "embedding": [0.12, -0.04, ...],
  "metadata": {
    "risk_score": 8,
    "controls_covered": ["A.12.5", "A.13.2"],
    "audit_status": "approved"
  }
}
```

* **confidentiality** – განისაზღვრება RBAC‑ის ფილტრი; მხოლოდ `role: security-engineer` შეიძლება ნახოს `internal`‑ის ევიდენცია.
* **embedding** – რამდენიმე ვექტორების ბაზის გაუჭრითი შესაძირებად ძიება.
* **metadata** – საშუალებას იძლევა *ფაცეტებული* მოთხოვნა (მაგ. “მაჩვენეთ მხოლოდ ISO 27001‑ის დამოწმებული დოკუმენტები, რისკ‑ქულა ≥ 7”).

---

## 4️⃣ Retrieval‑Augmented Generation ნაკადი

1. **მომხმარებელი მიწოდებს კითხვას** – მაგალითად, “განვითარეთ თქვენი მონაცემის‑დაცის დაშიფვრას (encryption at rest).”
2. **RBAC‑ის ფლაკიკე შეამოწმებს** მომხმარებლის როლს. თუ მომხმარებელი *პროდუქტის მენეჯერია* და აქვს მხოლოდ ღია დოკუმენტები, იმოძრავდება `confidentiality = public`.
3. **ვექტორული სახე** იღებს top‑k (5‑7) ყველაზე შესაბამისი ნაკლებებს.
4. **მეტა‑დატა ფილტრები** შემაძლიერებს შედეგებს (მაგ. `audit_status = approved`).
5. **LLM‑ის პრომპტი**:

   ```
   Question: Describe your data‑at‑rest encryption mechanisms.
   Context:
   1. [Chunk from Policy A – encryption algorithm details]
   2. [Chunk from Architecture Diagram – key management flow]
   3. [...]
   Provide a concise, compliance‑ready answer. Cite sources using IDs.
   ```

6. **გენერაცია**: `Our platform encrypts data at rest using AES‑256‑GCM (Evidence ID: evidence‑9876). Key rotation occurs every 90 days (Evidence ID: evidence‑12345).`
7. **ადმინისტრატორის დათვალიერება (არავალებალურად)** – მომხმარებელი შეიძლება რედაქტიროს, ყველა რედაქტირება ვერსიანდება.
8. **პასუხის შენახვა** – შიფრარულ Answer Store‑ში, ხოლო უცვლელი აუდიტის ჩანაწერი აკრიფება.

---

## 5️⃣ როლ‑დაფუძნობილი წვდომის გრანსულობა

| როლი | უფლებები | მიმოქცევა |
|------|----------|-----------|
| **უსაფრთხოების ინჟინერი** | ყველა ევიდენციის ნახვა/რედაქტირება, პასუხის გენერაცია, დრაფტის დამოწმება | შიდა კონტროლების ღრმა განყოფილება |
| **პროდუქტის მენეჯერი** | ღია პოლიტიკების ნახვა, პასუხის გენერაცია (ღია ევიდენციის შესაბამისად) | მარკეტინგული შესაბამისობის ბარგის დეფინირება |
| **სამართლებრივი კონსულტანტი** | ყველა ევიდენციის ნახვა, სამართლებრივი ეფექტის ანოტირება | რეგულაციის შესაბამისობის გამტკიცება |
| **საყვარზე თანამშრომელი** | მხოლოდ ღია პასუხების ნახვა, ახალი დრაფტის მოთხოვნა | სწრაფი RFP‑ის პასუხის გადაჭრა |
| **აუდიტორი** | ყველა ევიდენციის ნახვა, რედაქტირება აკრძალულია | ტრეილებში τρί-პარტია შეფასება |

დამატებით **OPA (Open Policy Agent)**‑ის წესებია განიმყოფილება, რაც საშუალებას იძლევა დინამიკური შეფასება მოთხოვნის ატრიბუტებზე, მაგალითად *question tag* ან *evidence risk score*. OPA‑ის მაგალითი (JSON):

```json
{
  "allow": true,
  "input": {
    "role": "product-manager",
    "evidence_confidentiality": "public",
    "question_tags": ["encryption", "privacy"]
  },
  "output": {
    "reason": "Access granted: role matches confidentiality level."
  }
}
```

---

## 6️⃣ აუდიტის ტრაექტორია & შესაბამისობის სარგებელი

აუდიტის მოთხოვნები:

1. **ვინ ნახა ევიდენცია?** – JWT‑ის კლემი ლოგირებულია `AuditLog`‑ში.
2. **რა ევიდენცია გამოყენებულია?** – ციტატები (`Evidence ID`) შედის პასუხში და საცავს თანავე.
3. **როდის აიღეს პასუხი?** – უცვლელი დროის შტამები (ISO 8601) რეის‑ონი ჩანაწერში (Amazon QLDB ან ბლოკ‑ჩეინი).

ეს ლოგები შეიძლება გაუქმდეს **SOC 2**‑ის‑შესაბამის CSV ფორმატში ან ინტեգრირდეს **GraphQL**‑API‑ით compliance‑dashboard‑ისათვის.

---

## 7️⃣ შესრულების გზა

| ფაზა | მიზნები | დროის შეზღუდვების პერიოდი |
|------|----------|---------------------------|
| **1. საფუძვლები** | IdP (Okta) დაყენება, RBAC მატრიცის განსაზღვრა, VectorDB & Postgres provisioning | 2 კვირა |
| **2. ცოდნის ბაზის იმპორტი** | ETL‑პაიპლაინი PDF, markdown, spreadsheet‑ის დამუშავება → embeddings + metadata | 3 კვირა |
| **3. RAG სერვისი** | LLM (Claude‑3) პროკტისკენ, პრომპტების შაბლონები | 2 კვირა |
| **4. UI & ინტეგრაცია** | ვებ UI, Slack‑ბოტი, API‑მიმდინარეობა Jira, ServiceNow‑ისზე | 4 კვირა |
| **5. აუდიტი & რეპორტინგი** | უცვლელი აუდიტ‑ლოგ, ვერსიონინგი, ექსპორტის კონექტორები | 2 კვირა |
| **6. პილოტი & უკუკავშირი** | უსაფრთხოების ჯგუფის ცდა, KPI‑ის შეგროვება (წესანაკარგის დრო, შეცდომის დონე) | 4 კვირა |
| **7. ორგანიზაციული გადაყრა** | როლ‑მატრიცის გაფართოება, სერვისის ტრენინგი გაყიდვების, პროდუქტის გუნდებისთვის, დოკუმენტაციის გამოსვლა | მუდმივი |
| **KPI-ები** | საშუალო პასუხის დრო < 5 წთ, ევიდენციის გადამოყენების რეგისტრი > 80 %, აუდიტის შემთხვევის ნაკლებობა = 0 | — |

---

## 8️⃣ რეალური მაგალითი: დღევანდელი დღეებიდან წუთის ტრანსქერექციამდე

*კომპანია X* იყავი **30‑დღიანი საშუალო** ISO 27001‑ის კითხვარულთა პასუხის დრო. SSAIA‑ის დაყენებით:

| მაჩვენებელი | SSAIA-ის წინ | SSAIA-ის შემდეგ |
|--------------|--------------|------------------|
| საშუალო რეაგირების დრო | 72 საათი | 4 წუთი |
| ხელით კოპირება‑ასპექტის შეცდომები | 12 ყ.თ. | 0 |
| ევიდენციის ვერსიის არასწორობა | 8 ინცედიენტი | 0 |
| აუდიტორის განაკვეთობა | 3.2 / 5 | 4.8 / 5 |
| ROI | — | $350 k წლიური დაზოგვა (მაწარმოების შემცირება + სწრაფია დილის დაკარდება) |

---

## 9️⃣ უსაფრთხოების განკარგება & მკაცრი კონტროლები

1. **Zero‑Trust ქსელი** – ყველა სერვისი დაკავშირებულია Private VPC‑ში, მუტუალური TLS‑ით.
2. **შიფრაცია დისკზე** – SSE‑KMS S3‑ის ბაკეტებში, სვეტური შიფრაცია PostgreSQL‑ში.
3. **Prompt‑Injection დამოწმება** – მომხმარებლის ტექსტის სანიტირება, ტოკენის ლიმიტის დაყენება, მუდმივი სისტემის პრომპტის პრეფიქსი.
4. **Rate‑Limiting** – API‑gateway‑ის დინამიკური შეზღუდვა LLM‑ის შეზღუდულზე.
5. **მონიტორინგი** – CloudTrail‑ის აქტივაციის ლოგები, anomaly‑detection‑ის დაყენება ავტენტიფიკაციის მიღებული დიზაინში.

---

## 🔟 მომავალ შენიშვნები

* **Federated Learning** – LLM‑ის ადგილობრივი ფაინ‑ტუნინგი სანდო ორგანიზაციის ჯარარის გარეშე.
* **Differential Privacy** – ენბიერძის ცვალებადობა ევიდენციის შესახებ, რომელიც შენარჩუნებს ნაკლურობითს.
* **Multilingual RAG** – მასალის ავტომატური თარგმნა გლോബალური გუნდებისთვის, ციტატით ციტატითიქნის შენარჩუნებით.
* **Explainable AI** – provenance‑გრაფის ჩვენება ყოველ პასუხის ტოკენზე, აუდიტორებისთვის გაუმარჯოთ.

---

## 📚 გამომავალი მოსახედი

- [Retrieval‑Augmented Generation: The Next Frontier for Enterprise AI](https://arxiv.org/abs/2005.11401)  
- [Open Policy Agent (OPA) – Policy‑as‑Code for RBAC](https://www.openpolicyagent.org)  
- [Zero‑Trust Architecture for Cloud‑Native Applications](https://www.nist.gov/publications/zero-trust-architecture)

---

## <span class='highlight-content'>იხილეთ</span> ასევე