
# Federacinio mokymosi paremtas atitikties asistentas paskirstytoms komandų

## Įvadas

Saugumo klausimynai, atitikties auditai ir trečiųjų šalių rizikos įvertinimai yra kasdienybė SaaS paslaugų tiekėjams, fintech įmonėms ir bet kuriai organizacijai, keičiančiai duomenis su reguliuojamais partneriais. Rankinis darbas, reikalingas įrodymų rinkimui, šimtų klausimų atsakymui ir atsakymų sinchronizavimui tarp kelių verslo padalinių, greitai tampa našumo trūkumu.

Tradicinės AI‑valdomos klausimynų platformos centralizuoja visus duomenis vienoje saugykloje, treniruoja didelius kalbos modelius (LLM) ant šių duomenų ir generuoja atsakymus. Nors efektyvu, toks požiūris kelia du pagrindinius iššūkius:

1. **Duomenų suverenumas** – Daugelis jurisdikcijų ([EU‑GDPR](https://gdpr.eu/), Kinijos PIPL, JAV CLOUD Act) draudžia neapdorotų klausimyno duomenų perkėlimą per sienas.  
2. **Įmonės silos** – Paskirstytos komandos (produktų, inžinerijos, teisinės, pardavimų) prižiūri atskiras įrodymų saugyklas, kurios retai mato kitų patobulinimus.

**Federacinis mokymasis** išsprendžia abu klausimus. Vietoje duomenų perkėlimo į centralų serverį, kiekviena komanda treniruoja vietinį modelį ant savo klausimyno įrodymų. Vietiniai modelio parametrai tada saugiai agreguojami, sukuriant globalų modelį, kuris nuolat tobulėja, neatskleidžiant neapdorotų duomenų. Rezultatas – *atitikties asistentas*, kuris nuolat mokosi iš visų komandų kolektyvinės išminties, tuo pačiu gerbdamas duomenų rezidencijos reikalavimus.

Šiame straipsnyje išsamiai apžvelgsime visos eigų schemą nuo aukštos lygio architektūros iki konkrečių įgyvendinimo žingsnių, ir pabrėšime realų verslo poveikį, kurio galima tikėtis.

---

## Kodėl egzistuojantys sprendimai nepatenkina poreikių

| Problema | Centralizuotos AI platformos | Federacinis požiūris |
|----------|------------------------------|----------------------|
| **Duomenų lokalumas** | Būtina įkelti visus įrodymus į debesų kibirą → reguliacinė rizika. | Duomenys niekada nepalieka kilmės aplinkos; keliauja tik modelio atnaujinimai. |
| **Modelio nuosmukis** | Globalus modelis atnaujinamas kas ketvirtį; atsakymai tampa pasenusę. | Nuolatinė vietinė mokymo ciklais teikia atnaujinimus beveik realiu laiku. |
| **Komandų autonomija** | Vienas šablonas visiems; sunku pritaikyti specifinėms produktų sritims. | Kiekviena komanda gali lokaliai patobulinti modelį pagal savo produktų terminologiją. |
| **Pasitikėjimas ir auditai** | Sunku įrodyti, kuris įrodymas prisidėjo prie konkretaus atsakymo. | Saugios agregacijos žurnalai suteikia nekeičiamą kilmės patikrinimą kiekvienam gradientui. |

Glaustai – lėtesnis atsakymo laikas, didesnė atitikties rizika ir sumažintas patikimumas auditoriams.

---

## Federacinio mokymosi pagrindai

1. **Vietinis mokymas** – Kiekvienas dalyvis (komanda, regionas ar produktų linija) vykdo mokymo darbą savo duomenų rinkinyje, kuris paprastai susideda iš ankščiau atsakytų klausimynų, susijusių įrodymų ir peržiūros komentarų.  
2. **Modelio atnaujinimas** – Po kelių epochų dalyvis apskaičiuoja *gradientą* (arba svorio deltą) ir užšifruoja jį homomorfiniu šifravimu arba naudojant saugią daugiapusę skaičiavimą (MPC).  
3. **Saugus agregavimas** – Orkestratorius (dažniausiai debesų funkcija) surenka šifruotus atnaujinimus iš visų dalyvių, juos agreguoja ir sukuria naują globalų modelį. Nei neapdoroti duomenys, nei net grynieji gradientai nėra atskleidžiami.  
4. **Modelio platinimas** – Atnaujintas globalus modelis transliuojamas atgal į kiekvieną dalyvį, tapdamas nauju baziniu modeliu kitam vietiniam mokymo ciklui.

Procesas kartojamas nuolat, paverčiant atitikties asistentą į savi‑mokantį sistemą, kuri tobulėja su kiekvienu organizacijoje atsakytu klausimynu.

---

## Sistemos architektūra

Žemiau pateikiama aukšto lygio architektūros schema, išreikšta Mermaid diagramoje. Visų mazgų pavadinimai palikti originaliai (kadangi jie yra kodo dalyje).

```mermaid
graph TD
    "Distributed Teams" -->|"Local Evidence Store"| L1[ "Team Node A" ]
    "Distributed Teams" -->|"Local Evidence Store"| L2[ "Team Node B" ]
    "Distributed Teams" -->|"Local Evidence Store"| L3[ "Team Node C" ]

    L1 -->|"Local Training"| LT1[ "Federated Trainer A" ]
    L2 -->|"Local Training"| LT2[ "Federated Trainer B" ]
    L3 -->|"Local Training"| LT3[ "Federated Trainer C" ]

    LT1 -->|"Encrypted Gradients"| AG[ "Secure Aggregator" ]
    LT2 -->|"Encrypted Gradients"| AG
    LT3 -->|"Encrypted Gradients"| AG

    AG -->|"Aggregated Model"| GM[ "Global Model Hub" ]
    GM -->|"Model Pull"| LT1
    GM -->|"Model Pull"| LT2
    GM -->|"Model Pull"| LT3

    LT1 -->|"Answer Generation"| CA[ "Compliance Assistant UI" ]
    LT2 -->|"Answer Generation"| CA
    LT3 -->|"Answer Generation"| CA
```

**Pagrindiniai komponentai**

| Komponentas | Vaidmuo |
|-------------|---------|
| **Vietinė įrodymų saugykla** | Saugoma talpykla (pvz., šifruotas S3 kibiras, vietinė duomenų bazė) su ankstesniais klausimyno atsakymais, įrodymais ir peržiūros pastabomis. |
| **Federacinis treneris** | Lengvas Python arba Rust servisas, veikiantis komandos infrastruktūroje, kuris tieka vietinius duomenis LLM adaptacijos procesui (pvz., LoRA ant OpenAI, HuggingFace). |
| **Saugus agregatorius** | Debesų funkcija (AWS Lambda, GCP Cloud Run), naudojanti slenkutinį homomorfinį šifravimą, kad sujungtų atnaujinimus be galimybės matyti žaliąją vertę. |
| **Globalus modelio centras** | Versijuojama modelio registracija (MLflow, Weights & Biases), sauganti agreguotą modelį ir sekanti kilmės metaduomenis. |
| **Atitikties asistento UI** | Web‑pagrindinė pokalbių sąsaja, integruota į esamą klausimyno platformą (Procurize, ServiceNow ir kt.), teikianti realaus laiko atsakymų pasiūlymus. |

---

## Praktinis darbo eiga

1. **Klausimo gavimas** – Tiekėjas atsiunčia naują saugumo klausimyną. Atitikties asistento UI rodo klausimą atsakingai komandai.  
2. **Vietinis pradinio užklausimo generavimas** – Komandos FedTrainer naudoja naujausią globalų modelį, prideda komandai būdingą kontekstą (produkto pavadinimas, neseniai atlikti architektūros pokyčiai) ir sukuria atsakymo juodraštį.  
3. **Žmogaus peržiūra** – Saugumo analitikai koreguoja juodraštį, prideda įrodymus ir patvirtina. Galutinis atsakymas kartu su įrodymais saugomas vietinėje įrodymų saugykloje.  
4. **Mokymo ciklo pradžia** – Dienos pabaigoje FedTrainer sugrupuoja naujai patvirtintus atsakymus, kelias laiko vietiniam modeliui keletą žingsnių ir šifruoja gautą svorio deltą.  
5. **Saugus agregavimas** – Visi dalyviai siunčia šifruotus deltas į Saugų agregatorių. Agregatorius juos sujungia į naują globalų modelį ir įrašo jį į Modelio centrą.  
6. **Modelio atnaujinimas** – Visos komandos kitą kartą traukia atnaujintą modelį (pvz., kas 12 val.) – tai užtikrina, kad kitių komandų žinios įtakos ateities atsakymus.

---

## Kiekybiniai privalumai

| Rodiklis | Tradicinė centralizuota sistema | Federacinio asistento (bandomasis projektas) |
|----------|----------------------------------|----------------------------------------------|
| **Vidutinis atsakymo laikas** | 3,8 d. | 0,9 d. |
| **Audito problemų procentas** | 4,2 % atsakymų paženklinta | 1,1 % atsakymų paženklinta |
| **Duomenų rezidencijos incidentai** | 2 per metus | 0 (neperkeliami neapdoroti duomenys) |
| **Modelio patobulinimo vėlavimas** | Ketvirtiniai leidimai | Nuolatinis (12 val. ciklas) |
| **Komandos pasitenkinimas (NPS)** | 38 | 71 |

Šie duomenys gaunami iš 6‑mėnesio bandomojo projekto vidutinio dydžio SaaS įmonėje, kurioje federacinis asistentas buvo diegiamas trijose produktų komandose Šiaurės Amerikoje, Europoje ir Azijoje‑Ramiojo vandenyno regione.

---

## Įgyvendinimo planas

### 1 fasis – Pagrindai (1‑4 savaitės)

1. **Įrodymų katalogavimas** – Inventorizuoti visus ankstesnius klausimyno atsakymus ir susijusius dokumentus. Pažymėti pagal produktą, regioną ir atitikties normas.  
2. **Pasirinkti bazinį modelį** – Pasirinkti našų LLM, tinkamą adaptacijai (pvz., LLaMA‑2‑7B su LoRA adapteriais).  
3. **Paruošti saugią saugyklą** – Sukurti šifruotus kibirus arba vietines duomenų bazes kiekviename regione. Įgalinti IAM taisykles, apribojančias prieigą tik atitinkamai komandai.  

### 2 fasis – Federacinio Trenerio kūrimas (5‑8 savaitės)

1. **Sukurti mokymo konvejerį** – Naudoti HuggingFace `transformers` su `peft` LoRA; supakuoti į Docker atvaizdą.  
2. **Integruoti šifravimą** – Pasitelkti OpenMined `PySyft` biblioteką adityviam slaptų dalijimuisi arba AWS Nitro Enclave aparatūriniam šifravimui.  
3. **CI/CD įdiegimas** – Deploy’inti trenerį kaip Kubernetes Job, vykdomą kas naktį.  

### 3 fasis – Saugus agregatorius ir Modelio centras (9‑12 savaitės)

1. **Deploy’inti agregatorių** – Serverless funkcija, priimanti šifruotus svorio deltas, tikrinanti parašus ir atlikanti homomorfinį sumavimą.  
2. **Versijuojama modelio saugykla** – Įdiegti MLflow tracking server su S3 backend; įgalinti modelio kilmės žymas (komanda, partijos ID, laikas).  

### 4 fasis – UI integravimas (13‑16 savaitės)

1. **Chat UI** – Praplėsti esamą klausimyno portalą React komponentu, kuris kreipiasi į globalų modelį per FastAPI inferencijos endpointą.  
2. **Atsiliepimų ciklas** – Fiksuoti vartotojo pataisas kaip „peržiūrėtus pavyzdžius“ ir grąžinti į vietinę saugyklą.  

### 5 fasis – Stebėsena ir valdymas (17‑20 savaitės)

1. **Metrų skydelis** – Sekti atsakymo laiko, modelio slankio (KL divergencijos) ir agregacijos klaidų rodiklius.  
2. **Auditų protokolas** – Registruoti kiekvieną gradiento pateikimą su TEE‑pasirašyta metainformacija, kad patenkintų auditorius.  
3. **Atitikties peržiūra** – Atlikti trečiosios šalies saugumo auditą šifravimo ir agregacijos grandinės.  

---

## Geriausios praktikos ir įspėjimai

| Praktika | Kodėl svarbu |
|----------|--------------|
| **Diferencijuota privatumas** | Į gradientus pridėti kelią kalibruotą triukšmą, kad neatskleistų retų klausimyno turinio. |
| **Modelio suspaudimas** | Naudoti kvantizaciją (pvz., 8‑bitų), kad sumažintų inferencijos delsą kraštinėse įrenginiuose. |
| **Atsarginis atstatymas** | Laikyti ankstesnę globalios modelio versiją mažiausiai trijų agregacijos ciklų, jei atnaujinimas sugadina našumą. |
| **Tarptautinė komunikacija** | Sukurti „Klausimų valdymo tarybą“, peržiūrintą visoms komandoms bendrus šablonus. |
| **Teisinė šifravimo peržiūra** | Patikrinti, ar pasirinktos kriptografinės priemonės patvirtintos visose veiklos jurisdikcijose. |

---

## Ateities perspektyvos

Federacinis atitikties asistentas yra tik pirmas žingsnis link **pasitikėjimo audito audito audito audito** (trust fabric), kur kiekvienas saugumo klausimynas tampa audituojamu sandoriu decentralizuotoje ledger sistemoje. Įsivaizduokime, kad federacinį modelį papildys:

* **Nulinio žinojimo įrodymai** – Įrodyti, kad atsakymas atitinka reguliacinę nuostatą, neatskleidžiant pagrindinių įrodymų.  
* **Blockchain pagrindu kilmės registras** – Nekeičiama kiekvieno įrodymo hash, susietas su modelio atnaujinimu, generuojantis auditų taką.  
* **Automatiškai generuojamos reguliacinės šiltnamio žemėlapiai** – Realaus laiko rizikos balai, išsiskleidę iš agreguoto modelio, patraukiami į vykdomąją valdymo skydelį vadovams.  

Šie papildymai pavers atitiktį iš reaktivaus, rankinio darbo į prognozuojamą, duomenimis pagrįstą funkciją, kuri auga kartu su organizacija.

---

## Išvada

Federacinis mokymasis suteikia praktišką, privatumo saugantį kelią, kaip pakelti AI‑valdomą klausimynų automatizavimą paskirstytoms komandoms. Laikant įrodymus vietoje, nuolat tobulinant bendrą modelį ir integruojant asistentą tiesiai į darbo eigą, organizacijos gali sumažinti atsakymo laiką, mažinti auditų klaidas ir išlaikyti atitiktį visame pasaulyje.

Pradėkite nuo mažų projektų, greitai iteruokite ir leiskite kolektyvinei komandų išmintžiai būti varikliu, kuris maitina patikimus, audituojamus atitikties atsakymus – šiandien ir rytoj.

---

## <span class='highlight-content'>Žiūrėti</span> Also

- [Google AI Blog – Federated Learning: Challenges and Opportunities](https://ai.googleblog.com/2022/04/federated-learning-challenges-and.html)  
- [NIST Privacy Framework – Managing Data Residency in AI Systems](https://www.nist.gov/privacy-framework)  
- [OpenMined – Secure Multi‑Party Computation for Federated Learning](https://www.openmined.org)