Yunit 5 / 11

Pag-log, Audit Trail at Provenability

Mga nadagdag:

  • Kakayahang magdisenyo ng isang minimum na audit trail scheme na sapat upang buuin muli ang kaganapan
  • Kakayahang pigilan ang log na maging mapagkukunan ng pagtagas sa pamamagitan ng pag-mask sa prompt/tugon
  • Kakayahang magtatag ng mga nabe-verify na log na may pagkakakilanlan ng pagkakaugnay, hindi nababago at panahon ng pagpapanatili

Sa isang AI system, isang araw ang tanong ay tiyak na tatanungin: "Bakit ginawa ang desisyong ito sa paraang ito, ano ang eksaktong nangyari noong araw na iyon?" Ang tanong na ito ay maaaring itanong ng isang customer, isang auditor, isang regulator, o isang hukuman. Ang iyong sagot ay maaaring isang nabe-verify na audit trail o "hindi namin alam." Ang huli ay hindi katanggap-tanggap sa isang corporate environment. Sa unit na ito, malalaman natin kung ano ang dapat at hindi dapat i-log na partikular sa AI, kung paano magtatag ng audit trail, at kung paano panatilihing balanse ang mga log sa seguridad at privacy.

Bakit Iba ang Pag-log sa AI?

Sa klasikal na software, "sino ang gumawa ng ano" ay naka-log. Sa AI, tatlong bagong dimensyon ang idinagdag dito: anong modelo/bersyon ang ginamit, anong prompt ang ipinadala, at anong tugon ang ginawa. Kapag may naganap na error o reklamo, hindi mo mabubuo ang insidente kung wala ang tatlong ito. Ngunit ang napaka-prompt/tugon na ito ay maaaring maglaman ng PII, tulad ng nakita natin sa unit 2 — ibig sabihin, ang log mismo ay maaaring maging mapagkukunan ng mga tagas. Ito ang sining ng balanse.

Babala: Ang pag-log ay hindi "i-log ang lahat". Ang sobrang pag-log ay lumilikha ng isang panganib sa privacy, at masyadong maliit na pag-log ay lumilikha ng kakulangan ng ebidensya. Ang layunin ay panatilihing sapat ang PII upang muling buuin ang kaganapan sa pamamagitan ng pag-mask nito.

Ano ang dapat i-log? Schema ng Audit Trail

Ang isang matatag na landas sa pag-audit ng AI ay kinabibilangan ng, hindi bababa sa:

  • Sino: User ID at tungkulin (o ID ng serbisyo).
  • Kailan: Timestamp (idagdag-lamang kung maaari).
  • Ano: Ninanais na aksyon at ipinatawag na mga tool.
  • Aling modelo: Pangalan at bersyon ng modelo (hal. claude-opus-4-8), mga kritikal na parameter gaya ng temperatura.
  • Input/output digest: Isang naka-mask na bersyon o isang digest/hash ng kahilingan at tugon.
  • Desisyon: Awtomatikong naproseso ba ito, napunta sa isang tao, naaprubahan ba o tinanggihan?
  • Resulta: Matagumpay ba ang operasyon o error, aling mapagkukunan ang apektado?

Hakbang sa Hakbang: Pagtatatag ng Audit Trail

  1. Magtakda ng layunin. Sino ang magbabasa ng mga log na ito at bakit? (Tugon sa insidente, pag-audit sa pagsunod, pag-debug.) Tinutukoy ng layunin kung ano ang iyong pinapanatili.
  2. Ipatupad ang patakaran ng PII. I-mask ang prompt/tugon bago mag-log (unit 2).
  3. Magbigay ng immutability. Hayaang maging append-only ang mga kritikal na log; Walang sinuman ang dapat na kayang burahin ang nakaraan ng tahimik.
  4. Tukuyin ang panahon ng pagpapanatili. Tukuyin ang tagal ayon sa balanse ng legal na pangangailangan at pagiging kumpidensyal; Awtomatikong tanggalin kapag nag-expire ang oras.
  5. Limitahan ang pag-access. Ang pag-access sa mga log ay dapat ding protektahan ng RBAC; Ang pagbabasa ng log ay dapat ding naka-log.
  6. Magdagdag ng correlation ID (trace ID). Ikonekta ang lahat ng hakbang ng isang kahilingan (input, tool call, verification, output) na may iisang pagkakakilanlan.

Apat na Nakokopyang Template

Audit log schema (JSON):

{ "trace_id": "...", "time": "YYYY-MM-DDThh:mm:ssZ", "user": "...", "role": "...", "model": "claude-opus-4-8", "parameters": { "temperatura": 0 }, "request_summary": "<masked>", "request_summary": "<masked>" ["tool_a", "tool_b"], "decision": "auto|human_approval", "approval": "approval|rejected|none", "result": "tagumpay|error", "affected_resource": "..."}

Log PII control prompt:

Tingnan ang mga halimbawa ng log sa ibaba. Kumpleto ba ang mga field para sa audit trail (sino, kailan, modelo, desisyon, resulta)? Na-leak din ba ang raw PII? Para sa bawat row, iulat bilang: "hindi sapat / nawawalang espasyo: ... /PII leak: ..." <logs>{{ examples }}</logs>

Prompt ng muling pagbuo ng kaganapan:

Ang mga sumusunod na talaan ng pag-audit ay nabibilang sa iisang trace_id. Gawing isang salaysay ang kaganapan ayon sa pagkakasunod-sunod: ano ang gusto ng gumagamit, ano ang ginawa ng modelo, anong mga pagpapatunay ang tumakbo, paano ginawa ang desisyon, ano ang kinalabasan? I-flag ang nawawala o hindi pare-parehong mga hakbang.<records>{{ trace_registers }}</records>

Panuntunan ng desisyon sa patakaran sa pagpapanatili:

Para sa bawat uri ng log, tukuyin:- Mayroon bang legal na obligasyon sa pagpapanatili? (minimum period if any)- Naglalaman ba ito ng PII? (kung kasama, paikliin ang tagal, paliitin ang pag-access)- Katibayan ng insidente sa seguridad? (hindi mababago ang tindahan)Resulta: "store N araw + idagdag-lamang mi + antas ng access".

Mahina Prompt / Malakas na Prompt

mahinang diskarte

Malakas na diskarte

Hindi nagla-log sa lahat ("hindi kailangan")

Pagla-log sa minimum na set upang buuin muli ang kaganapan

Pag-log raw prompt/tugon bilang ay

Naka-mask na buod + pag-log ng trace ID

Mag-imbak ng mga log nang walang limitasyon

Panahon ng pagpapanatili na may balanse ng legal + privacy

Kahit sino ay maaaring magtanggal ng mga log

Ang mga kritikal na log ay append-only, kontrolado ang access

Tatlong Mini Case

Kaso 1 — Binawasan ng Trace ID ang isang araw na pagsisiyasat sa 15 minuto. "Ang aking aplikasyon ay hindi patas na tinanggihan," sabi ng isang customer sa isang credit pre-evaluation assistant ng isang bangko. Salamat sa correlation ID, muling binuo ng team ang input ng application, mga pag-verify ng empleyado, at desisyon sa loob ng 15 minuto; ay nagpakita na ang error ay sanhi ng isang maling threshold sa isang pagpapatunay ng panuntunan at naayos ito.

Kaso 2 — Ang labis na pag-log ay natuklasan sa pag-audit. Sinusulat ng isang e-commerce na kumpanya ang lahat ng mga prompt/tugon sa mga raw log para sa pag-debug. Sa panahon ng taunang pag-audit, nakita na ang mga log na ito ay naglalaman ng mga address at numero ng telepono ng customer at itinago sa loob ng 2 taon. Ang paghahanap ay isinara sa pamamagitan ng paglipat sa isang masking + 90-araw na patakaran sa pagpapanatili; Ang audit trail function ay napanatili.

Kaso 3 — Idinagdag-lamang na log ang nagsiwalat ng panloob na pang-aabuso. Isang empleyado sa isang provider ang nagtangkang magtanggal ng mga log para itago ang isang maling batch na ginawa niya. Dahil ang mga log ay append-only at ang mga pagtatangka sa pagbabasa/pagtanggal ng log ay naitala, ang pagtatangka ay agad na nakita; Ang insidente ay nagresulta sa pagdidisiplina at pagwawasto sa proseso.

Tip: Magtalaga ng correlation ID (trace ID) sa bawat kahilingan at dalhin ito sa lahat ng hakbang. Kapag nagkaroon ng problema, ang kakayahang mangolekta ng "lahat ng bagay tungkol sa kahilingang iyon" na may isang query ang pinakamalaking accelerator ng pagtugon sa insidente.

Mga karaniwang pagkakamali

  • Hindi nagla-log sa lahat, o napakaliit na pag-log na hindi mo mabuo muli ang kaganapan.
  • Ang pag-log sa hilaw na kahilingan/tugon nang walang maskara at ginagawang pinagmulan ng pagtagas ang log.
  • Hindi pag-log pangalan/bersyon ng modelo at desisyon (awtomatiko/tao).
  • Ang pag-iimbak ng mga log para sa isang walang limitasyong yugto ng panahon ay nagdaragdag ng panganib sa privacy.
  • Ang pag-iwan ng mga kritikal na log ay maaaring magbago; Hindi pag-log log access.
  • Hindi maikonekta ang mga hakbang nang magkasama dahil hindi ito gumagamit ng correlation ID (trace ID).

Sa buod

  • Ang AI logging ay nagdaragdag ng tatlong dimensyon sa "sino ang gumawa ng ano": aling modelo/bersyon, aling prompt, aling tugon.
  • Ang layunin ay panatilihing kaunti ang PII upang mabuo muli ang kaganapan sa pamamagitan ng pag-mask nito—hindi hihigit, hindi bababa.
  • Dapat kasama sa audit trail kung sino/kailan/ano/aling mga field ng modelo/desisyon/resulta.
  • Ang mga kritikal na log ay dapat na append-only, ang access ay dapat na limitado, at ang log access ay dapat ding naka-log.
  • Ikinokonekta ng Correlation ID (trace ID) ang lahat ng hakbang ng isang kahilingan at pinapabilis ang pagsisiyasat ng insidente.

Gawain ng aplikasyon

Pumili ng kahilingan mula sa sarili mong daloy ng AI at isulat ang perpektong audit trail para dito gamit ang JSON schema sa itaas. Pagkatapos ay gumawa ng dalawang pagsubok: (1) Masasabi mo ba ang kuwento mula simula hanggang wakas gamit lamang ang recording na ito? (2) Mayroon bang hilaw na PII sa talaan? Kung may nawawalang field, idagdag ito, kung mayroong PII, i-mask ito. Panghuli, magtakda ng panahon ng pagpapanatili at antas ng pag-access.

checklist

  • [ ] Kasama sa audit trail ang mga field kung sino/kailan/ano/pattern/desisyon/resulta.
  • [ ] Ang prompt/tugon ay naka-mask bago ang mga log (walang PII).
  • [ ] Isang correlation ID (trace ID) ang itinalaga sa bawat kahilingan.
  • [ ] Ang mga kritikal na log ay append-only at kontrolado ang access.
  • [ ] Ang panahon ng pag-iimbak ay tinutukoy ng legal + balanse ng pagiging kumpidensyal, at tinatanggal sa pagtatapos ng panahon.
  • [ ] Sa pamamagitan ng mga log maaari kong buuin muli ang isang kaganapan sa loob ng wala pang 30 minuto.