SystML մոդելներ
1) Դերը և նպատակները
System = ինֆիսի հուսալի առաքումը ապրանքի և վիրահատության ժամանակ RG/AML/Legal և ռուսական։
Նպատակները ՝ ցածր լատենտ, բարձր հասանելիություն, վերարտադրողականություն, անվտանգություն և արագ շրջադարձ (rollback)։
2) Սերվինգի ճարտարապետությունը
2. 1 Patterns
ONLS (real-time): REST/gRPC, p95 50-150 ms կերպարների համար, No. 2-5 RG/AML-ալերտների համար։
Near-real-time: 1-5 րոպե միկրոբատչիներ (OLAP-վիտրիններ)։
Batch/wwww.ru: Gold-ի գիշերային վիտրինները, WORM-ուլտրաձայնները կարգավորողի համար։
In-process scoring: Ինքնաթիռի մոդելի տեղադրումը ծառայության մեջ (ցածր ուշացում)։
Serverless: սառը մեկնարկի գործառույթները հազվադեպ խնդիրների համար։
2. 2 Տեղաբանություն
Single Model Live-ը պարզապես և արագ է։
Ensemble/Graph (router 24process nodel www.postprocess) բարդ plines է։
Sidecar Feature Fetcher-ը ձգում է onme-fichi քեշից (Redis/Scylla)։
3) Մոդելային ստանդարտ և տարբերակներ
Registry: «model _ id», «version», «stage =» Staging, Dischived +, Archived +, artefakts (քաշը, պրեզիզորը, տրամաչափությունը), պահանջները (CPU/GPU/հիշողությունը), մոդելի քարտը (տվյալները, չափերը, չափումները, ռիսկերը, ռիսկերը, ռիսկերը, ռիսկերը, ֆայինները, ֆայինները, ֆաիրնեսները)։
Իմպուտաբային արտեֆակտներ 'entent-hash; WORM օրինակները։
Եզրակացության քաղաքականությունը 'միայն միգրացիայի և ագրեսիվ մանիֆեստների միջոցով։
4) Բեռնարկղը և փաթեթավորումը
Dockerfile (ուրվագիծ)
dockerfile
FROM python:3. 11-slim
ENV PYTHONUNBUFFERED=1
WORKDIR /app
COPY requirements. txt.
RUN pip install -r requirements. txt --no-cache-dir
COPY artifacts/./artifacts/
COPY src/./src/
CMD ["python", "src/serve. py"]
Սերվերը (Fox API + gRPC, գաղափարը)
python serve. py from fastapi import FastAPI import joblib, time app = FastAPI()
model = joblib. load("artifacts/model. joblib")
scaler = joblib. load("artifacts/scaler. joblib")
@app. post("/score")
def score(payload: dict):
t0 = time. time()
x = preprocess(payload, scaler)
y = float(model. predict_proba([x])[0,1])
return {"score": y, "latency_ms": int((time. time()-t0)1000), "model_version": "1. 8. 3"}
5) Kubernetes/Helm և ավտոմեքենաների սկեյլինգը
Deploy.ru (հատված)
yaml apiVersion: apps/v1 kind: Deployment metadata: {name: ml-score, labels: {app: ml-score}}
spec:
replicas: 3 selector: {matchLabels: {app: ml-score}}
template:
metadata: {labels: {app: ml-score}}
spec:
containers:
- name: api image: registry/ml-score:1. 8. 3@sha256:...
ports: [{containerPort: 8080}]
resources:
requests: {cpu: "500m", memory: "512Mi"}
limits: {cpu: "2", memory: "2Gi"}
envFrom: [{secretRef: {name: ml-secrets}}]
readinessProbe: {httpGet: {path: /healthz, port: 8080}, periodSeconds: 5}
livenessProbe: {httpGet: {path: /livez, port: 8080}, periodSeconds: 10}
HPA (RPS/CPU)
yaml apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: {name: ml-score-hpa}
spec:
scaleTargetRef: {apiVersion: apps/v1, kind: Deployment, name: ml-score}
minReplicas: 3 maxReplicas: 50 metrics:
- type: Pods pods:
metric: {name: requests_per_second}
target: {type: AverageValue, averageValue: "15"}
- type: Resource resource: {name: cpu, target: {type: Utilization, averageUtilization: 70}}
6) Ռազմավարությունները դուրս են գալիս
Shadow (մութ մեկնարկը) 'նոր մոդելը մշակում է հարցումների պատճենները, պատասխանները անտեսվում են։ համեմատություն/լատենտ/արժեք։
Canary: 1-10 տոկոսը 2425 տոկոսը 2450 տոկոսն էր, 100 տոկոսը կանաչ SLO-ում։ ինքնաբերաբար վերափոխվում է քայքայման ժամանակ։
Blue-Green: զուգահեռ ապակիներ; ակնթարթային ուղղություն։
Gradium Feature Flag-ը շուկաների/տենանտների/սարքերի միկրոակտիվացում է։
A/B/n: առցանց փորձարկումներ sequential testing-ից։
Միկրոակտիզացիա (գաղափարը)
yaml routes:
- match: {tenant: "EEA"} # feature-flags/rules to: {model: "1. 8. 3", weight: 20}
- match: {tenant: "EEA"}
to: {model: "1. 7. 9", weight: 80}
7) Ֆիչիի on.ru/24.ru: Համարժեք է։
Փոխակերպման միասնական գրադարան և Feature Store (on.ru + 24.ru)։
Համարժեք թեստը 'MAE/MAPE-ը առցանց ավարտների և ակնթարթային ստանդարտի միջև ստանդարտ ընտրության վրա։
Քաշ ֆիչ 'Redis/Scyla, TTL պատուհանի նշանների համար։ Թայմաուտները և fallbacks-ը։
8) Դիտարկումը, SLO և alerting
8. 1 SLI/SLO ուղեցույցներ
Լատենտ ՝ p95-150 ms (կերպարացում), p99-300 ms; RG/AML ալտերտները 355-ից end-to-end-ից։
Հասանելիություն ՝ 3699։ 9%.
Ինֆիսի սխալը ՝ 240։ 5% 5xx; coverage ≥ 99%.
Դրեյֆը 'PSI fich/skora <շեմն, RF (տրամաչափը) կայուն է։
Бизнес: uplift Net Revenue, fraud saved, time-to-intervene.
8. 2 Metriki (Prometheus)
yaml
- http_request_duration_seconds{quantile="0. 95"}
- http_requests_total{code=~"5.."}
- model_inference_latency_ms_bucket
- feature_fetch_latency_ms_bucket
- model_score_distribution_bucket
- psi_feature_{name}
- expected_cost_live
Ալերտներ (հատված)
yaml
- alert: HighP95Latency expr: histogram_quantile(0. 95, sum(rate(model_inference_latency_ms_bucket[5m])) by (le)) > 0. 15 for: 10m
- alert: DriftDetected expr: psi_feature_amount_base > 0. 25 for: 15m
Трейсинг: OpenTelemetry — span’ы `feature_fetch`, `score`, `postprocess`, `guardrail`.
9) RG/AML guardrails և անվտանգության քաղաքականություն
System-/Post-inter: Արգելված գործողությունների դիմակներ (ցուցադրությունների հաճախականությունը, cooldown, ագրեսիվ օֆերի արգելք)։
Policy Shielding: ժայռը RG-ի շեմի վերևում փափուկ միջամտություն/դադար է։
Աուդիտ '«policy _ id», «propensity», «decision», «reason»։
PII-ը և նստավայրը 'հեղեղված ID-ի փոխարեն, հաճախորդների անհատական բանալիները EFC/UK/IV-ում։ խաչաձև-ռեգիոնային ջոների արգելքը առանց հիմքի։
Գաղտնիքները ՝ KFC/CMK, Secret Live; PII-ը լոգարաններում/treiss-ում։
10) Կալիբրացում, շեմեր և որոշումների քաղաքականություն
Կալիբիկ (Platt/Isotonic) որպես արտեֆակտ։
Շեմն ըստ expected cost; հայտարարված է 2019/ֆիչի դրոշում։
Safety caps: Գործողության վերին/ստորին սահմանները, ձեռքով override-ը կոմպլանսի համար։
11) Ռեզատներ, դեգրադացիաներ և DR
One-click rollback 'անցում նախորդ «model _ version» -ի վրա։
Runbook: սցենարները "լատենտություն," 5xx-ի սխալները "," dreef/տրամաչափը կոտրվեց "," արտաքին ֆրակցիոն-պրովայդերը անհասանելի է "։
Ձախողումների մեկուսացումը 'circuit breaker, retry/backoff, վերջին վալիդային լուծման քեշը։
DR 'արտեֆակտների բեքապներ/108, կրկնօրինակումը «տաք» տարածաշրջանին, ուսմունքներին։
Circuit breaker (կեղծ)
python try:
features = fetch_features(timeout=30)
except TimeoutError:
features = last_known_good(user_id) # fallback
12) Կոստ-ինժեներինգը և արտադրողականությունը
Ճանապարհի ավելացումը 'ֆիչի (30-60%), մոդելը (20-40%), ցանցը/IO (10-30%)։
Արժեքի նվազեցումը 'տաք ֆիչի, քվոտաների վրա, lightweight-մոդելը, INT8/FP16 (եթե տեղին է), lazy-postprocess։
HPA-ն RPS/CPU/latency-ի վրա, state-size սահմանափակումը հոսքի ֆիչի վրա։
Chargeback: cost/request, cost/feature; բյուջեներ շուկաների/թիմի համար։
13) Ապահով օրինագծեր և համապատասխանություններ
Պրո-պատրաստման չափանիշներ 'SLO կանաչ shadow, չկա dreaft/արտահոսք, մոդելի քարտը լցված է, fairness-սլայզերը նորմալ են։
Կարգավորիչ ՝ WORM-արխիվը (քաշը, տրամաչափը, շեմերը, մետրիկները, թեստերի լույսերը), անփոփոխ հիբրիդային հաշվետվությունները։
DSAR/RTBF 'հատուկ օգտագործողի հետքերը կեշից/ֆից։
14) QA-ն դուրս հանելուց առաջ
Ինտեգրացիոն թեստերը 'API պայմանագիրը, սխեմաները, «դատարկ/ծայրահեղ» ակցիաները։
Բեռները ՝ p99, բաշխման պոչերը, burst-2019։
Հավասարության թեստը on.ru/24.ru։
Chaos-թեստեր 'fich-cash/բազայի անջատումը, արտաքին ծառայությունների թայմաուտները։
15) Միգրացիայի օրինակներ
Ingress-ը կանարյան միկրոօրգանիզմով (գաղափար)
yaml
- match: [headers: {x-exp: "canary"}]
route:
- destination: {host: ml-score-v1-8-3, weight: 20}
- destination: {host: ml-score-v1-7-9, weight: 80}
Մոդելի առողջությունը (էնդպոինտ)
python
@app. get("/healthz")
def health():
return {"ok": True, "model_version": "1. 8. 3", "registry_sig_ok": verify_signature()}
16) Գործընթացներ և RACI
R (Responsible): MLOps (սերվինգ/նվագախումբ/դիտարկումը), Direct Eng (fichi/kashi/պայմանագրեր), Direct Science (մոդելների քարտեր/տրամաչափություն/շեմն)։
A (Accountable): Head of Data / CDO.
C (Consulted): Compli.ru/DPO (PII/RG/AML/DSAR), Lenta.ru (KMS/գաղտնիքներ/աուդիտ), SNE (SLO/պատահականություն), Finance (ROI/)։
I (Informed) 'ապրանք/Մարքեթինգ/Վիրահատություն/Աջակցություն։
17) Ճանապարհային քարտեզը
MVP (3-6 շաբաթ)
1. Մոդելային կոմպոզիցիա և իմուտաբային արտեֆակտներ։ Fox API/gRPC ծառայություն + K8s/Helm։
2. Shadow-գործարկումը r95/5x/dreefa մոնեգինգի հետ, ֆիչի համարժեք թեստը։
3. Canary 10 տոկոսը 4950 տոկոսն է 100 տոկոսը, որոնք ունեն ինքնագիր և ալտեր։
4. Մոդելի քարտը, տրամաչափը, expected-cost շեմը և Guardrails v1-ը։
Aleksanda 2 (6-12 շաբաթ)
Ֆիչա քեշը, circuit breakers, runbooks/DR ուսուցումները։
RPS/latency, cost-dashbord և chargeback-ում։
Սլայս-ռուսական fairness, WORM-արխիվը։
Բրազիլիա 3 (12-20 շաբաթ)
Սերվինգի գրաֆիկը (թեկնածուներ www.re-rank), propensity-տրամաբանությունը։
Մուլտֆիլմի տարածքը, նստավայրը (EFC/UK/RF) առանձին բեկորների հետ։
Auto-pertrate/pertrafe-ը, որակի/տրամաչափման գենը։
18) Chek-Show-Show-Sho
- Մոդելի քարտը լցված է; տվյալները/ֆիչին/տրամաչափումը/շեմը տարբերակված են։
- Ֆիչի պայմանագրերը և հավասարության թեստը on.ru/www.ru-ը կանաչ են։
- SLO: p95, 5xx, coverage - կանաչ shadow և 10% canary 2424
- Alerta and dashbords (լատենտ/սխալներ/dreef/expected-cost) ներառված են։
- Guardrails RG/AML և որոշումների աուդիտները ակտիվ են։ PII/նստավայրը պահպանված է։
- One-click rollback-ը և runbook-ը փորձարկվել են։
- Արժեքը տեղավորվում է բյուջեում; HPA-ը և քեշը տրամադրված են։
19) Anti-patterns և ռիսկեր
Ձեռքի խայթոցները առանց շարժիչների և իմպուտաբային արտեֆակտների։
Չհամաձայնեցված on.ru- ն/wwww.fich-ը երկարաժամկետ տարբերություններ ունի։
Shadow/canary-ի բացակայությունը թաքնված ռեգրեսիա է։
Ոչ թե expected cost, չկա տրամաբանություն։
Սինխրոն արտաքին lookups առանց թայմաուտների/քեշի։
Ոչ DR/rollback, ոչ WORM արխիվը։
20) Արդյունքը
ML-ի վաճառքը ոչ թե «մոդելի մարտահրավեր» է, այլ ինժեներական պլատֆորմ ՝ ստանդարտ և տարբերակներ, անվտանգ արտանետումներ (shadow/canary/blue-green), ֆիչի և տրամաբանության կարգապահություն, դիտարկումը և SLO, guardrails RG/AML-ի համար և հստակ արձագանքման պլան։ Հետևելով այս պլեյբուսին, դուք կստանաք արագ, հուսալի և կոմպլեկտիվ ինֆիս, որը կայուն է բիզնես արժեքը վերահսկվող արժեքով։