
# AI‑põhine kontekstuaalne tõendus turvaküsimustike jaoks

Turvaküsimustikud on iga B2B SaaS‑lepinguga seotud värav. Ostjad nõuavad konkreetseid tõendeid — poliitika väljavõtteid, auditiaruandeid, konfiguratsiooni ekraanipilte — et tõestada, et müüja turvaprofiil vastab nende riskitaluvusele. Traditsiooniliselt sirvivad turvameeskonnad, juristid ja insenerid mööda PDF‑ide, SharePointi kaustade ja piletisüsteemide labürinti, et leida täpselt õige dokument, mis toetab iga vastust.  

Tulemuseks on **aeglane keeramine, ebajärjekindel tõendusmaterjal ja suurenenud inimsuhtes tehtav viga**.  

Siseneb **Retrieval‑Augmented Generation (RAG)** — hübriidne tehisintellekti arhitektuur, mis ühendab suurte keelemudelite (LLM‑ide) genereerimisvõime ja vektorpõhise dokumenditaasamise täpsuse. RAG‑i sidudes Procurize‑platvormiga saavad meeskonnad automaatselt nähtavaks teha kõige asjakohasemaid nõuetele vastavuse artefakte *kui nad iga vastuse koostavad*, muutes käsitsi otsimise reaalajas, andmetel põhinevaks töövooguks.

Allpool süveneme RAG‑i tehnilisse selgroogu, illustreerime tootmisvalmis torustikku Mermaid‑iga ning pakume kasutatavaid juhiseid SaaS‑organisatsioonidele, kes on valmis kontekstuaalse tõenduse automatiseerimisele üle minema.

---

## 1. Miks kontekstuaalne tõendus on nüüd oluline

### 1.1 Regulatiivne surve
Regulatsioonid nagu **[SOC 2](https://secureframe.com/hub/soc-2/what-is-soc-2)**, **[ISO 27001](https://www.iso.org/standard/27001)**, **[GDPR](https://gdpr.eu/)** ning uued **AI‑riskiraamistikud** nõuavad konkreetseid tõendeid iga kontrolli väite kohta. Audiitorid ei ole enam rahul sellega, et “poliitika eksisteerib”; nad tahavad **jälgitavat linki** täpselt vaadatud versioonile.

### 1 2 3 4 5 6 7 8 9 10  
**Statistika**: 2024. aasta Gartneri uuringu kohaselt toob 68 % B2B‑ostjatest “puuduva või aegunud tõendusmaterjali” esmaneks põhjuseks lepingu viivitamisele.

### 1.2 Ostjate ootused
Moodne ostja hindab müüjaid **Usaldus‑skaala** alusel, mis koondab küsimustiku täidlikkuse, tõendusmaterjali värskuse ja vastuse viivituse. Automaatne tõendusmootor tõstab seda skoori otse.

### 1.3 Sisemine tõhusus
Iga minut, mille turvainsener kulutab PDF‑i otsimisele, on minut valdkondades nagu ohu‑modelleerimine või arhitektuurikontrollid kadunud. Tõendusmaterjali automaatne otsimine vabaneb kõrgema mõju turvategevuste jaoks vajaliku tööjõu.

---

## 2. Retrieval‑Augmented Generation – põhikontseptsioon

RAG töötab kahes etapis:

1. **Taasisaldamine** – süsteem teisendab loomuliku keele päringu (nt “Näita viimatist SOC 2 Type II aruannet”) embedding‑vektoriks ning otsib **vektorite andmebaasist** kõige sarnasemaid dokumente.
2. **Loomine** – LLM võtab taasiladatud dokumendid **kontekstina** ja genereerib lühikese, viidetega rikastatud vastuse.

RAG‑i ilu peitub selles, et see **ankkurdab genereeritud väljundi kontrollitavasse allikmaterjali**, kõrvaldades haloatsioonid – kriitiline nõue nõuetele vastavuse sisule.

### 2.1 Embeddingud ja vektoripoed
- **Embedding‑mudelid** (nt OpenAI `text-embedding-ada-002`) teisendavad teksti kõrgedimensioonilisteks vektoriteks.  
- **Vektoripoed** (nt Pinecone, Milvus, Weaviate) indekseerivad need vektorid, võimaldades sekundite murdosa sisemist sarnasuseotsingut miljonite lehekülgede ulatuses.

### 2.2 Prompt‑inseneriteadus tõendusmaterjali jaoks
Hästi koostatud prompt ütleb LLM‑ile:
- Lisa iga allika viide Markdown‑lingi või ID‑vormis.  
- Säilita originaalteksti sõnastus, kui tsiteerid poliitikat.  
- Märgi kõik ebaselged või aegunud sisukohad inimese ülevaatuseks.

Näidisprompt:

```text
You are an AI compliance assistant. Answer the following questionnaire item using ONLY the supplied documents. Cite each source using the format [DocID#Section].
If a required document is missing, respond with "Document not found – please upload."
```

(Ülaltoodud inglise keelt on soovitatav jätta tehnilisel tasemel, kuid eesti keeles võiks see olla:
„Sa oled AI‑koostavuse nõuete abiline. Vasta alljärgnevale küsimusele kasutades AINULT esitatud dokumente. Viita iga allika juurde vormingus [DocID#Section]. Kui vajalikku dokumenti ei leita, vasta „Dokumenti ei leitud – palun laadi üles.““ – kuid prompt’i sõnastus on tihti hoitud inglise keeles.)

---

## 3. Lõplik töövoog Procurize‑is

Allpool on visuaalne esitlus RAG‑toega küsimustiku liikumisest Procurize ökosüsteemis.

```mermaid
graph LR
    A["Kasutaja lisab küsimustiku"] --> B["AI Prompti generaator"]
    B --> C["Taasiladija (vektori DB)"]
    C --> D["Asjakohased dokumendid"]
    D --> E["Generator (LLM)"]
    E --> F["Vastus koos tõendusmaterjaliga"]
    F --> G["Ülevaade & Avaldamine"]
    G --> H["Auditilog ja versioonihaldus"]
```

**Olulised sammud selgitatud**

| Samm | Kirjeldus |
|------|-----------|
| **A – Kasutaja lisab küsimustiku** | Turvategevus loodi uus küsimustik Procurize’is, valides sihtstandardid (SOC 2, ISO 27001 jne). |
| **B – AI Prompti generaator** | Iga küsimuse jaoks koostab Procurize prompti, mis sisaldab küsimuse teksti ja olemasolevaid vastuse fragmente. |
| **C – Taasiladija** | Prompt tekitab embedding‑i ning otsib vektoripoost, kus on kõik üleslaaditud nõuetele vastavuse artefaktid (poliitikad, auditiraportid, koodikontrolli logid). |
| **D – Asjakohased dokumendid** | Parimad k‑dokumentid (tavaliselt 3‑5) toetakse, varustatud metaandmetega, ja antakse LLM‑ile. |
| **E – Generator** | LLM toodab lühikese vastuse, sisestades automaatselt viited (nt `[SOC2-2024#A.5.2]`). |
| **F – Vastus koos tõendusmaterjaliga** | Genereeritud vastus kuvatakse küsimustiku UI‑s, valmis kohapealseks redigeerimiseks või heakskiitmiseks. |
| **G – Ülevaade & Avaldamine** | Määratud ülevaatajad kontrollivad täpsust, lisavad täiendavaid märkusi ning lukustavad vastuse. |
| **H – Auditilog ja versioonihaldus** | Iga AI‑genereeritud vastus salvestatakse oma allika hetkeseansiga, tagades muutmiskindla auditijälje. |

---

## 4. RAG‑i juurutamine oma keskkonnas

### 4.1 Dokumendikorpuse ettevalmistamine
1. **Kogu** kõik nõuetele vastavuse artefaktid: poliitikad, haavatavuse skaneerimise aruanded, konfiguratsiooni baasjooned, koodikontrolli märkused, CI/CD‑torustiku logid.  
2. **Standardiseeri** failivormingud (PDF → tekst, Markdown, JSON). Kasuta OCR‑i skaneeritud PDF‑ide puhul.  
3. **Jaga** dokumendid 500‑800‑sõna segmentideks, et parandada taasiladimise täpsust.  
4. **Lisa metaandmed**: dokumendi tüüp, versioon, loomiskuupäev, nõuetele vastavuse raamistik ja unikaalne `DocID`.

### 4.2 Vektoriindeksi loomine
```python
from openai import OpenAI
from pinecone import PineconeClient

client = PineconeClient(api_key="YOUR_API_KEY")
index = client.Index("compliance-evidence")

def embed_and_upsert(chunk, metadata):
    # Teisenda lõik vektoriks
    embedding = OpenAI.embeddings.create(
        model="text-embedding-ada-002",
        input=chunk
    ).data[0].embedding
    # Lisa vektor indeksi
    index.upsert(vectors=[(metadata["DocID"], embedding, metadata)])

# Läbime kõik lõigud
for chunk, meta in corpus:
    embed_and_upsert(chunk, meta)
```
*Skript käivitatakse kord kvartali poliitikauuenduste puhul; inkrementaalsed upsert‑id hoiab indeks värskena.*

### 4.3 Integreerimine Procurize‑iga
- **Webhook**: Procurize saadab `question_created` sündmuse.  
- **Lambda‑funktsioon**: Vastuvõtab sündmuse, koostab prompti, kutsub taasiladija ning seejärel LLM‑i läbi OpenAI `ChatCompletion`.  
- **Vastus‑hook**: Sisestab AI‑genereeritud vastuse tagasi Procurize’i REST‑API kaudu.

```python
def handle_question(event):
    question = event["question_text"]
    prompt = build_prompt(question)
    relevant = retrieve_documents(prompt, top_k=4)
    answer = generate_answer(prompt, relevant)
    post_answer(event["question_id"], answer)
```

### 4.4 Inim‑in‑the‑Loop (HITL) kaitsemeetmed
- **Usaldus‑skoor**: LLM tagastab tõenäosuse; alla 0,85 läheb kohustuslikult ülevaatamisele.  
- **Versioonilukk**: Kui vastus on heaks kiidetud, jäävad allikasilmused jäigaks; hilisem poliitika muudatus loob uue versiooni, mitte olemasoleva ülekirjutamise.  
- **Auditijälg**: Iga AI‑interaktsioon logitakse koos ajatempliga ja kasutaja ID‑ga.

---

## 5. Mõju mõõtmine

| Mõõdik | Käsitsi (baas) | Pärast RAG‑i kasutuselevõttu | Parandamise % |
|--------|----------------|-----------------------------|----------------|
| Keskmine käitlemisaeg küsimustiku kohta | 14 päeva | 3 päeva | 78 % |
| Tõendusmaterjali viitamise täpsus | 68 % | 96 % | 41 % |
| Ülevaatuse ümbertöötamise määr | 22 % | 7 % |
| Nõuetele vastavuse auditi edukus (esimene esitus) | 84 % | 97 % | 15 % |

*Juhtumiuuring*: **AcmeCloud** võttis Procurize RAG‑i kasutusele 2025. II kvartalis. Nad teatasid **70 % vähendust** keskmises vastamise ajas ning **30 % tõusu** oma usaldus‑skooris suurte ettevõtete seas.

---

## 6. Parimad praktikad & vältimised

### 6.1 Hoia korpus puhtana
- **Eemalda vananenud dokumendid** (nt aegunud sertifikaadid). Märgi need `archived`‑iks, et taasiladija neid eelistatult eiraks.  
- **Normaliseeri terminoloogia** kõigis poliitikates, et suurendada sarnasuse täpsust.

### 6.2 Prompt‑distsipliin
- Väldi liiga üldiseid prompt‑e, mis toovad kaasa ebasobivaid sektsioone.  
- Kasuta **few‑shot** näiteid prompt‑is, et suunata LLM soovitud viitamise vormingule.

### 6.3 Turvalisus & privaatsus
- Salvestage embedding‑id VPC‑isoleeritud vektoripoesse.  
- Krüpteerige API‑võtmed ja kasutage **rollipõhist juurdepääsu** Lambda‑funktsioonile.  
- Tagage GDPR‑iga kooskõla kõigi dokumendites sisalduvate isikuandmete käsitlemisel.

### 6.4 Jätkuv õppimine
- Koguge ülevaatajate muudatused **tagasiside‑paaridena** (küsimus, korrigeeritud vastus) ning peenhäälestage domeenipõhist LLM‑i perioodiliselt.  
- Uuendage vektoripoesi pärast iga poliitika muudatust, et hoida teadmiste graafik värskena.

---

## 7. Tulevikusuunad

1. **Dünaamiline teadmistegraafiku integratsioon** – seosta iga tõenduslõik ettevõtte teadmistegraafiku sõlmega, võimaldades hierarhilist läbivat sirvimist (nt “Poliitika → Kontroll → Alamkontroll”).  
2. **Multimodaalne taasiladamine** – laienda teksti kõrval piltide (nt arhitektuuridiagrammid) käsitlemist CLIP‑embeddingutega, võimaldades AI‑l otse ekraanipilte viidata.  
3. **Reaalajas poliitika muudatuste hoiatused** – kui poliitika versioon muutub, käivita automaatselt asjakohasuse kontroll kõigil avatud küsimustiku vastustel ja märgi need, mis vajavad uuendamist.  
4. **Null‑šoti müüja riskiskoor** – kombineeri taasiladatud tõendusmaterjalid välise ohuintelligentsiga, et automaatselt genereerida iga müüja vastuse riskiskoor.

---

## 8. Kuidas alustada täna

1. **Auditeeri** oma praegune nõuetele vastavuse hoidla ja tuvastage puudujäägid.  
2. **Läbiviija‑piloot**: käivita RAG‑toru ühes kõrge väärtusega küsimustikus (nt SOC 2 Type II).  
3. **Integreeri** Procurize‑iga, kasutades antud webhook‑malli.  
4. **Mõõda** eespool loetletud KPI‑sid ning tee iteratiivseid parandusi.

RAG‑i kasutuselevõtt muudab traditsiooniliselt käsitsi ja veakirjaga protsessi **skaalautuvaks, auditeeritavaks ning usaldusväärseks masinaks**, mis pakub tugevat konkurentsieelist üha nõuetele vastavust rõhutavamal turul.