AI შეღავათები და ტრენინგის ავტომატიზაცია
1) დანიშვნა და პრინციპები
მიზანი: საიმედოდ და რეპროდუცირებულად გადაქცევა მონაცემები - ფიჩები - მოდელები - გამოსავალი - უკუკავშირი, მინიმალური დრო და რისკის/ღირებულების კონტროლი.
პრინციპები:- Pipeline-as-Code: ყველა (DAG, კონფიგურაციები, ტესტები, პოლიტიკოსები) - Git- ში, PR- ით და შურისძიებით.
- Determinism: მონაცემთა/კოდის/კონტეინერების/დამოკიდებულების ფიქსირებული ვერსიები.
- Separation of Concerns: DataOps, FeatureOps, TrainOps, DeployOps, MonitorOps.
- Guarded Automation: ავტომატიზაცია, მაგრამ ხარისხის, უსაფრთხოებისა და შესაბამისობის „კარიბჭეებით“.
- Privacy by Design: შემცირება PII, რეზიდენცია, აუდიტი.
2) კონვეიერის ფენები და არქიტექტურა
1. Ingest & Bronze: მოვლენების/ბრძოლის საიმედო მიღება (CDC, საბურავები, retrai, DLQ).
2. Silver (ნორმალიზაცია/გამდიდრება): SCD, ვალუტა/დრო, გაწმენდა, დედაპლატი.
3. გოლდი (ფანჯრები): საგნების მაგიდები და თარიღები ტრენინგის/ანგარიშგებისთვის.
4. Feature Store: ერთი ფორმულა fich online/offline, ვერსიები და SLO.
5. Train & Validate: ნიმუშების მომზადება, ტრენინგი, კალიბრაცია, შეფასება/ჩეკის კარიბჭე.
6. Registry & Promotion: მოდელების რეესტრი, ხარისხის ბარათები, პოპულარიზაციის პოლიტიკა.
7. Serving: REST/gRPC/Batch, fick ქეში, fich ficks, canary/shadow.
8. Monitor & Feedback: SLI/SLO, დრიფტი/კალიბრაცია, ონლაინ ეტიკეტები, auto retrain.
3) ორკესტრი: DAG ნიმუშები
Daily CT (D + 1): ღამის მონაცემთა ციკლი - ფიჩები - ტრენინგი, შესაბამისობა - კანდიდატი რეესტრში.
Event-Driven Retrain: PSI/ECE/Expected-cost დრიფტი ან სქემების გამოშვება.
Rolling Windows: შაბათ/monthly გადამზადება მონაცემების „მოცურების ფანჯრით“.
Blue/Green Artifacts: ყველა არტეფაქტი არის იმუნური (hash), პარალელური ვერსიები.
ორმაგი ჩაწერის გზით v1/v2: სქემების/ფირების მიგრაცია და ეკვივალენტობის შედარება.
python with DAG("ct_daily", schedule="@daily", start_date=..., catchup=False) as dag:
bronze = BashOperator(task_id="ingest_cdc", bash_command="ingest.sh")
silver = BashOperator(task_id="silver_norm", bash_command="dbt run --models silver")
gold = BashOperator(task_id="gold_marts", bash_command="dbt run --models gold")
feats = BashOperator(task_id="feature_store_publish", bash_command="features publish")
ds = BashOperator(task_id="build_dataset", bash_command="dataset build --asof {{ ds }}")
train = BashOperator(task_id="train", bash_command="trainer run --config conf.yaml")
eval = BashOperator(task_id="evaluate", bash_command="eval run --gate conf/gates.yaml")
reg = BashOperator(task_id="register", bash_command="registry add --stage Staging")
bronze >> silver >> gold >> feats >> ds >> train >> eval >> reg
4) მონაცემთა პაკეტები და ნიმუშები
Point in time join და „მომავლის გარეშე“ წინა/ეტიკეტებისთვის.
სტრატიფიკაცია ბაზრებზე/ტენანტებში/დროში, holdout და „gap“ გაჟონვისთვის.
ვერსია: 'data _ version', 'logic _ version', 'asof _ date'; WORM Snaphots.
5) Feature Store და online/offline ექვივალენტი
Fich- ის ერთიანი სპეციფიკაცია (სახელი, ფორმულა, მფლობელი, SLO, ტესტები).
ონლაინ = ოფლაინი: ტრანსფორმაციის ზოგადი კოდი; ეკვივალენტობის ტესტი (MAE/MAPE).
TTL და ქეში: ფანჯრები 10 მ/1 სთ/1 დ; Taimauty/retrai; ხალხური „last _ known _ good“.
yaml name: bets_sum_7d owner: ml-risk offline: {source: silver.fact_bets, window: "[-7d,0)"}
online: {compute: "streaming_window: 7d", ttl: "10m"}
tests:
- compare_online_offline_max_abs_diff: 0.5 slo: {latency_ms_p95: 20, availability: 0.999}
6) ტრენინგის ავტომატიზაცია (CT) და ხარისხის კარიბჭეები
CT ციკლი: ტრენინგი, ტრენინგი, კალიბრაცია, კანდიდატის შეფასება და რეგისტრაცია.
კარიბჭე (მაგალითი):- Off-line: PR-AUC - სავენტილაციო ბრენდი -,; ECE ≤ 0. 05; ექსპექტირებული ლიმიტი.
- Slice/Fairness: მეტრიკის ვარდნა ნებისმიერ სლაისში - Y%; დისპარატი ნორმალურია.
- Fich- ის ეკვივალენტი: დაახლ.
- ღირებულება: ბიუჯეტის დრო/რესურსი.
yaml gates:
pr_auc_min: 0.42 ece_max: 0.05 expected_cost_delta_max: 0.0 slice_drop_max_pct: 10 features_equivalence_p95_abs_diff_max: 0.5
7) მოდელების რეგისტრაცია და პოპულარიზაცია
მოდელის ბარათი: მონაცემები, ფანჯრები, ფიჩები, მეტრიკა off/online, კალიბრაცია, რისკები, მფლობელი.
Stages: `Staging → Production → Archived`; დაწინაურდა მხოლოდ დადასტურებული კარიბჭეების საშუალებით.
დაბრუნების პოლიტიკა: შეინახეთ უახლესი prodective ვერსიები N- ით; one-click rollback.
8) CI/CD/CT: როგორ დააკავშიროთ
CI (კოდი/ტესტები): ერთეული/ინტეგრაცია/კონტრაქტის ტესტები, ლინტერი, უსაფრთხოების სკანერები.
CD (serving): Docker/K8s/Helm/fich დროშები, canary/shadow/blue-green.
CT (მონაცემები/ტრენინგი): გრაფიკის/მოვლენების ორკესტრი; არტეფაქტები - რეესტრი.
Promotion Gates: Production მანქანა მწვანე ონლაინ SLO- ზე (კანარზე X საათზე).
9) მრავალფეროვნება და რეზიდენცია
ტენანტები/რეგიონები: იზოლირებული პაემნები და დაშიფვრის გასაღებები (EEA/UK/BR); რეგიონთაშორისი joins აკრძალვის გარეშე.
საიდუმლოებები: KMS/CMK, საიდუმლო მენეჯერი; ტოკენიზირებული ID ლოგებში.
DSAR/RTBF პოლიტიკოსები: გამოთვლილი პროგნოზები და შერჩევითი რედაქტორები ფიჩებსა და ლოგოებში; იურიდიული ჰოლდი საქმეებისთვის.
10) მონიტორინგი და გამოხმაურებები
SLI/SLO: latency p95/p99, 5xx, coverage, cost/request; draif PSI/KL, ECE, expected-cost.
ონლაინ ეტიკეტები: მარიონეტები (საათი/დღე) და დაკავებულები (D + 7/D + 30/D + 90).
ავტო მოქმედებები: ჩანაწერების/threshold განახლება - shadow retrain - canary promotion.
Runbooks: დეგრადაციის სკრიპტები (დრიფტი, კალიბრაცია, ფეხის ქეში, პროვაიდერები).
11) უსაფრთხოება, RG/AML და გადაწყვეტილებების პოლიტიკა
Guardrails: pre/post-filter, caps სიხშირე, cooldown, აკრძალვების სიები.
Policy Shielding: მოდელი - პოლიტიკის ფილტრი - მოქმედება.
აუდიტი: 'მოდელის _ id/ვერსია', 'feature _ version', 'threshold', 'policy _ id', მიზეზები.
WORM არქივი: გამოშვებები, ხარისხის ცნობები, ტესტების/სარეკლამო ჟურნალები.
12) ღირებულება და შესრულება
ბილიკის პროფილირება: ფიჩები (30-60%), ინვესტიცია (20-40%), IO/ქსელი.
Cost dashboards: cost/request, cost/feature, GPU/CPU საათი, small files.
ოპტიმიზაცია: მძიმე ხაზის ოფლაინის მატერიალიზაცია, ცხელი ფანჯრების ქეში, INT8/FP16, კვოტების/ყუთების კვოტები.
Chargeback: ჩვენ ბიუჯეტს ვანაწილებთ გუნდებს/ბაზრებს, ვაკონტროლებთ „ძვირადღირებულ“ ფიჩებს.
13) მაგალითები (ფრაგმენტები)
Argo Workflow:yaml apiVersion: argoproj.io/v1alpha1 kind: Workflow metadata: {name: ct-daily}
spec:
entrypoint: pipeline templates:
- name: pipeline dag:
tasks:
- name: gold template: task arguments: {parameters: [{name: cmd, value: "dbt run --models gold"}]}
- name: features dependencies: [gold]
template: task arguments: {parameters: [{name: cmd, value: "features publish"}]}
- name: train dependencies: [features]
template: task arguments: {parameters: [{name: cmd, value: "trainer run --config conf.yaml"}]}
- name: eval dependencies: [train]
template: task arguments: {parameters: [{name: cmd, value: "eval run --gate conf/gates.yaml"}]}
- name: task inputs: {parameters: [{name: cmd}]}
container: {image: "ml/ct:latest", command: ["/bin/bash","-lc"], args: ["{{inputs.parameters.cmd}}"]}
Gate სკრიპტი (ფსევდო კოდი):
python ok = (pr_auc >= gate.pr_auc_min and ece <= gate.ece_max and expected_cost_delta <= gate.expected_cost_delta_max and slice_drop_pct <= gate.slice_drop_max_pct and features_equivalence_p95_abs_diff <= gate.features_equivalence_p95_abs_diff_max)
exit(0 if ok else 1)
პოლიტიკის პოპულარიზაცია (იდეა):
yaml promotion:
require:
- offline_gates_passed
- canary_online_hours >= 24
- slo_green: [latency_p95, error_rate, coverage]
- drift_warn_rate <= 5%
14) პროცესები და RACI
R (Responsible):- Data Eng — Ingest/Silver/Gold, Feature Store, CDC/Backfill;
- მონაცემთა მეცნიერება - ნიმუშები/ტრენინგი/კალიბრაცია/კარიბჭეები;
- MLOps - ორკესტრი/რეესტრი/სერვინგი/დაკვირვება.
- A (Accountable): Head of Data / CDO.
- C (კონსალტინგი): კომპლექსი/DPO (PII/RG/AML/DSAR), უსაფრთხოება (KMS/აუდიტი), SRE (SLO/ღირებულება), Finance (ბიუჯეტები/ROI), Product.
- I (ინფორმირებული): მარკეტინგი/ოპერაციები/მხარდაჭერა.
15) გზის განხორციელების რუკა
MVP (3-6 კვირა):1. DAG «daily CT»: Bronze→Silver→Gold→Feature Store→Train→Eval→Registry(Staging).
2. Feature Store v1 და ონლაინ/offline ეკვივალენტობის ტესტი.
3. ხარისხის კარიბჭეები (PR-AUC/ECD/ექსპექტირებული-cost/slice).
4. მოდელების რეესტრი, ბარათი და WORM გამოშვებების არქივი.
ეტაპი 2 (6-12 კვირა):- Auto-recalibration/threshold განახლება, canary-promotion ონლაინ SLO- სთვის.
- Event-driven retrain დრიფტით; ორმაგი write v1/v2 მიგრაციისთვის.
- Cost dashbords და კვოტები backfill/raples; multi-tenant იზოლაცია.
- Fairness- ის პოლიტიკოსები სლაისებსა და მანქანების რეპორტაციაში.
- მრავალ რეგიონალური რეზიდენცია (EEA/UK/BR) ცალკეული კლავიშებით.
- გრაფიკითა და მოვლენებით მანქანის რეტრეინი, Payplines- ის დოკუმენტაციის ავტო გენი.
16) Prod List მზადყოფნა
- Pipeline-as-Code в Git; CI ტესტები (ერთეული/ინტეგრაცია/კონტრაქტები/უსაფრთხოება).
- Bronze/Silver/Gold და Feature Store სტაბილურია; ფიჩის ეკვივალენტი მწვანეა.
- ოფლაინის კარიბჭეები გადის; მოდელის ბარათი ივსება; შეიქმნა WORM არქივი.
- კანარი 24 საათი მწვანე SLO; rollback და kill-switch ღილაკი მუშაობს.
- დრიფტის მონიტორინგი/ECD/ექსპექტირებული კოდი და ონლაინ ეტიკეტები შედის.
- PII/რეზიდენცია/DSAR/RTBF/Legal Hold დაცულია; აუდიტი მორგებულია.
- ღირებულება ბიუჯეტში; აქტიურია ქეში/კვოტები/ფიჩებისა და რეპლიკების ლიმიტები.
17) ანტი შაბლონები და რისკები
სახელმძღვანელო, „ერთჯერადი“ ნაბიჯები ორკესტრის გარეთ; არ არსებობს Git მოთხრობა.
ტრენინგი კარიბჭეების და ბარათების გარეშე; დაწინაურდა „ხელით“.
არაკოორდინირებული ონლაინ/ოფლაინ ფიჩები - გაყიდვების შეუსაბამობები.
დრიფტის/კალიბრაციის უგულებელყოფა/ექსპექტირებული-საყრდენი; მხოლოდ ROC-AUC „სახეობებისთვის“.
რეზიდენციის არარსებობა/PII პოლიტიკოსი; „ნედლეული“ ID- ის ლოგიკა.
შეუზღუდავი backfill/reples - ღირებულების აფეთქება და გავლენა SLA- ზე.
18) შედეგი
AI piplines არის ღირებულების კონვეიერი და არა ლეპტოპების ნაკრები. ფორმალიზებული მონაცემთა ფენები, Feature Store და CT/CI/CD, დაამატეთ ხარისხის და უსაფრთხოების კარიბჭეები, ავტომატიზირდით retrain დრიფტით, შეინარჩუნეთ ონლაინ/ოფლაინის ეკვივალენტი და გამჭვირვალე ეკონომიკა. ასე რომ, თქვენ მიიღებთ სწრაფ, პროგნოზირებად და კომპოზიციურ ციკლს „მონაცემები - მოდელი - ეფექტი“, რომელიც მასშტაბურია ბაზრებსა და დროში.