𝗚𝘂𝗮𝗿𝗱𝗿𝗮𝗶𝗹𝘀 𝗳𝗼𝗿 𝗘𝗻𝘁𝗲𝗿𝗽𝗿𝗶𝘀𝗲 𝗔𝗜 𝗔𝗴𝗲𝗻𝘁𝘀
ಹೆಚ್ಚಿನ AI ಗಾರ್ಡ್ರೈಲ್ ಸಲಹೆಗಳು ಮಾರಾಟದ ಪ್ರಚಾರದಂತೆ (sales pitch) ಕೇಳಿಸುತ್ತವೆ. ಅವು ಕೇವಲ 화려한 ರೇಖಾಚಿತ್ರಗಳು ಮತ್ತು ಚೆಕ್ಲಿಸ್ಟ್ಗಳ ಮೇಲೆ ಗಮನ ಕೇಂದ್ರೀಕರಿಸುತ್ತವೆ.
ನೈಜ ಉತ್ಪಾದನಾ ಸುರಕ್ಷತೆಯು (production safety) ಅಷ್ಟೊಂದು ಆಕರ್ಷಕವಾಗಿರುವುದಿಲ್ಲ. ಇದು LLMಗಳಿಗಿಂತ ಬಹಳ ಹಿಂದೆಯೇ ಅಸ್ತಿತ್ವದಲ್ಲಿದ್ದ ವಿಷಯಗಳ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ.
ನಾನು ಒಂದು Fortune 100 ಕಂಪನಿಗಾಗಿ AI ಏಜೆಂಟ್ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಎರಡು ವರ್ಷಗಳನ್ನು ಕಳೆದಿದ್ದೇನೆ. ಈ ಏಜೆಂಟ್ಗಳು CI/CD ವೈಫಲ್ಯಗಳು, Kubernetes ಘಟನೆಗಳು ಮತ್ತು ಇನ್ಫ್ರಾಸ್ಟ್ರಕ್ಚರ್ ದಾಖಲೆಗಳನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ.
ಅವುಗಳನ್ನು ಸುರಕ್ಷಿತವಾಗಿಡಲು ನಾವು ಬಳಸುವ ಪದರಗಳ ವ್ಯವಸ್ಥೆ (layered stack) ಇಲ್ಲಿದೆ.
ಏಜೆಂಟ್ ಗಡಿಯಲ್ಲಿ ಗುರುತಿಸುವಿಕೆ (Identity). ಪ್ರತಿಯೊಂದು ಏಜೆಂಟ್ ಕೂಡ ವರ್ಕ್ಲೋಡ್ ಐಡೆಂಟಿಟಿಯನ್ನು (workload identity) ಬಳಸುತ್ತದೆ. ಅದು ಎಂದಿಗೂ ಹಂಚಿಕೆಯ ಕಡತಗಳನ್ನು (shared credentials) ಬಳಸುವುದಿಲ್ಲ. IAM ಸ್ಕೋಪ್ ನಿಮ್ಮ ಸುರಕ್ಷತೆಯ ಮಿತಿಯಾಗಿದೆ. ಏಜೆಂಟ್ಗೆ ಡೇಟಾಬೇಸ್ ಪ್ರವೇಶದ ಅಗತ್ಯವಿಲ್ಲದಿದ್ದರೆ, IAM ರೋಲ್ ಅದಕ್ಕೆ ಅನುಮತಿ ನೀಡಬಾರದು. ಇದು ನಿಮ್ಮ ಅತ್ಯಂತ ಪ್ರಮುಖ ನಿಯಂತ್ರಣವಾಗಿದೆ.
ಟೂಲ್ ಅನುಮತಿ ಪಟ್ಟಿಗಳು (Tool allow-lists). ಏಜೆಂಟ್ ಯಾವ ಟೂಲ್ಗಳನ್ನು ನೋಡಬಹುದು ಎಂಬುದನ್ನು ಪ್ಲಾಟ್ಫಾರ್ಮ್ ನಿರ್ಧರಿಸುತ್ತದೆ. ಕೋಡ್-ಸರ್ಚ್ ಏಜೆಂಟ್ಗೆ ಇಮೇಲ್ ಟೂಲ್ ಇರಬಾರದು. ನಾವು ಇದಕ್ಕಾಗಿ ಸ್ಟ್ಯಾಟಿಕ್ ಕಾನ್ಫಿಗರೇಶನ್ಗಳನ್ನು ಬಳಸುತ್ತೇವೆ. ನಾವು ಎಂದಿಗೂ ಡೈನಾಮಿಕ್ ಟೂಲ್ ರಿಜಿಸ್ಟ್ರೇಶನ್ ಬಳಸುವುದಿಲ್ಲ.
ನೆಟ್ವರ್ಕ್ ಎಗ್ರೆಸ್ ನಿಯಂತ್ರಣಗಳು (Network egress controls). ಏಜೆಂಟ್ಗಳು ಅನುಮತಿಸಲಾದ ಎಂಡ್ಪಾಯಿಂಟ್ಗಳಿಗೆ (allowlisted endpoints) ಮಾತ್ರ ತಲುಪುತ್ತವೆ. ನಾವು DNS ಫಿಲ್ಟರಿಂಗ್ ಮತ್ತು ಎಗ್ರೆಸ್ ಪ್ರಾಕ್ಸಿಯನ್ನು ಬಳಸುತ್ತೇವೆ. ಇದು ಮಾಡೆಲ್ ಹ್ಯಾಲ್ಯುಸಿನೇಶನ್ಗಳು (hallucinations) ತಪ್ಪು URL ಗಳಿಗೆ ತಲುಪದಂತೆ ತಡೆಯುತ್ತದೆ.
ಸೀಕ್ರೆಟ್ಸ್ ಪ್ರತ್ಯೇಕತೆ (Secrets isolation). ಏಜೆಂಟ್ಗಳು ಎಂದಿಗೂ ರಾಗ ಸೀಕ್ರೆಟ್ಗಳನ್ನು (raw secrets) ನೋಡುವುದಿಲ್ಲ. ನಾವು ಟೂಲ್ ಕರೆಗಳ ಸಮಯದಲ್ಲಿ ಇಂಜೆಕ್ಟ್ ಮಾಡಲಾದ ಅಲ್ಪಾವಧಿಯ ಸೆಷನ್ ಟೋಕನ್ಗಳನ್ನು ಬಳಸುತ್ತೇವೆ. ಪ್ರಾಂಪ್ಟ್ನಲ್ಲಿ ಎಂದಿಗೂ ಸೀಕ್ರೆಟ್ಗಳನ್ನು ಹಾಕಬೇಡಿ. ಪ್ರಾಂಪ್ಟ್ನಲ್ಲಿರುವ ಯಾವುದೇ ವಿಷಯವನ್ನು ಲಾಗ್ ಮಾಡಬಹುದು ಅಥವಾ ಮರುಕಳಿಸಬಹುದು (replayed).
ಸಂಪೂರ್ಣ ಆಡಿಟ್ ಟ್ರೈಲ್ಸ್ (Full audit trails). ನೀವು ಪ್ರತಿಯೊಂದು ಮಾಡೆಲ್ ಕರೆ ಮತ್ತು ಪ್ರತಿಯೊಂದು ಟೂಲ್ ಕರೆಯನ್ನು ಲಾಗ್ ಮಾಡಲೇಬೇಕು. ಇದು ಇನ್ಪುಟ್ಗಳು, ಔಟ್ಪುಟ್ಗಳು, ಟೂಲ್ ಆರ್ಗ್ಯುಮೆಂಟ್ಗಳು ಮತ್ತು ಬಳಕೆದಾರರ ಗುರುತನ್ನು ಒಳಗೊಂಡಿರುತ್ತದೆ. ಒಂದು ಘಟನೆಯ ಸಮಯದಲ್ಲಿ ಏನು ತಪ್ಪಾಗಿದೆ ಎಂಬುದನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು ನಿಮಗೆ ಇದು ಅಗತ್ಯವಿದೆ.
ಮಾನವ ಅನುಮೋದನೆ (Human approval). ರೆಕಾರ್ಡ್ ಇರುವ ವ್ಯವಸ್ಥೆಯನ್ನು (system of record) ಬದಲಾಯಿಸುವ ಯಾವುದೇ ಕ್ರಮಕ್ಕಾಗಿ, ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಸ್ಥಗಿತಗೊಳ್ಳಬೇಕು. ಮನುಷ್ಯನು ಆ ಕ್ರಮವನ್ನು ಅನುಮೋದಿಸಬೇಕು. ಇದು ನಿಮ್ಮ ಸುರಕ್ಷತಾ ಜಾಲ (safety net).
ಈ ಸಾಮಾನ್ಯ ತಪ್ಪುಗಳನ್ನು ತಪ್ಪಿಸಿ:
ಪ್ರಾಂಪ್ಟ್-ಮಟ್ಟದ ಸೂಚನೆಗಳು (Prompt-level instructions). ಮಾಡೆಲ್ಗೆ "ಎಂದಿಗೂ X ಮಾಡಬೇಡ" ಎಂದು ಹೇಳುವುದು ಸುರಕ್ಷತೆಯಲ್ಲ. ಬಳಕೆದಾರನು ಮಾಡೆಲ್ ಅನ್ನು ವಂಚಿಸಬಹುದು. ನಿಯಂತ್ರಣವನ್ನು IAM ಅಥವಾ ಟೂಲ್ ಲೇಯರ್ಗೆ ವರ್ಗಾಯಿಸಿ.
ಸಾಮಾನ್ಯ PII ಫಿಲ್ಟರ್ಗಳು (Generic PII filters). ಇವುಗಳಲ್ಲಿ ದೋಷದ ಪ್ರಮಾಣ ಹೆಚ್ಚಿರುತ್ತದೆ. IAM ಮೂಲಕ ಡೇಟಾ ಪ್ರವೇಶವನ್ನು ಸೀಮಿತಗೊಳಿಸುವುದು ಉತ್ತಮ, ಇದರಿಂದ ಏಜೆಂಟ್ ಎಂದಿಗೂ ಸೂಕ್ಷ್ಮ ಮಾಹಿತಿಯನ್ನು ನೋಡುವುದಿಲ್ಲ.
ಗಾರ್ಡ್ರೈಲ್ ಮಾಡೆಲ್ಗಳು (Guardrail models). ಮೊದಲನೆಯದನ್ನು ಗ್ರೇಡ್ ಮಾಡಲು ಎರಡನೇ LLM ಅನ್ನು ಬಳಸುವುದು ವಿಳಂಬವನ್ನು (latency) ಉಂಟುಮಾಡುತ್ತದೆ. ಇದು ನಿಜವಾದ ಸುರಕ್ಷತಾ ನಿಯಂತ್ರಣವಲ್ಲ. ಇದು ಕೇವಲ ಮಾಡೆಲ್ ಎನ್ಸೆಂಬಲ್ (model ensemble) ಮಾತ್ರ.
ನಾನು ಕಷ್ಟಪಟ್ಟು ಕಲಿತ ಪಾಠಗಳು:
ಪ್ರಾಂಪ್ಟ್ಗಳಿಗಿಂತ ಮೊದಲು IAM ಅನ್ನು ಸರಿಪಡಿಸಿ. ನಾನು IAM ರೋಲ್ಗಳನ್ನು ಬಿಗಿಗೊಳಿಸುವ ಬದಲು ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು ಟ್ಯೂನ್ ಮಾಡಲು ಸಮಯ ವ್ಯರ್ಥ ಮಾಡಿದೆ. ನಿಯಂತ್ರಣಗಳನ್ನು ಸ್ಟ್ಯಾಕ್ನಲ್ಲಿ ಸಾಧ್ಯವಾದಷ್ಟು ಕೆಳಮಟ್ಟಕ್ಕೆ ವರ್ಗಾಯಿಸಿ.
ನಿಮ್ಮ ಆಡಿಟ್ ಟ್ರೈಲ್ ಅನ್ನು ಸಮಗ್ರವಾಗಿ ನಿರ್ಮಿಸಿ. ಕೇವಲ ಪ್ರಾಂಪ್ಟ್ ಮತ್ತು ಉತ್ತರವನ್ನು ಮಾತ್ರ ದಾಖಲಿಸುವುದು ಸಾಕಾಗುವುದಿಲ್ಲ. ನಿಮಗೆ ಮಧ್ಯಂತರ ಟೂಲ್ ಕರೆಗಳು ಮತ್ತು ಆರ್ಗ್ಯುಮೆಂಟ್ಗಳ ಅಗತ್ಯವಿದೆ. ಆರಂಭದಲ್ಲೇ ಲಾಗ್ ಮಾಡುವುದು ಅಗ್ಗ, ಆದರೆ ನಂತರ ಅದನ್ನು ಸರಿಪಡಿಸುವುದು ದುಬಾರಿ.
ಏಜೆಂಟ್ ಸಂವಹನವನ್ನು ಮಿತಿಗೊಳಿಸಿ. ಮಲ್ಟಿ-ಏಜೆಂಟ್ ಸಿಸ್ಟಮ್ಗಳಲ್ಲಿ, ಏಜೆಂಟ್-to-ಏಜೆಂಟ್ ಕರೆಗಳ ಮೇಲೆ ಕಟ್ಟುನಿಟ್ಟಾದ ಮಿತಿಯನ್ನು ನಿಗದಿಪಡಿಸಿ. ಇದು ಸರಣಿ ವೈಫಲ್ಯಗಳನ್ನು ತಡೆಯುತ್ತದೆ.
ದೊಡ್ಡ ಮಟ್ಟದಲ್ಲಿ AI ಸುರಕ್ಷತೆಯು ಕೇವಲ ಮಾಡೆಲ್ ಸಮಸ್ಯೆಯಲ್ಲ. ಇದು ಪ್ಲಾಟ್ಫಾರ್ಮ್ ಸಮಸ್ಯೆ. ನಿಮ್ಮ ಏಜೆಂಟ್ಗಳನ್ನು ಇತರ ಯಾವುದೇ ಪ್ರೊಡಕ್ಷನ್ ಸಿಸ್ಟಮ್ನಂತೆ ಅಷ್ಟೇ ಕಾರ್ಯಾಚರಣೆಯ ಶಿಸ್ತಿನಿಂದ ನಿರ್ವಹಿಸಿ.
ಐಚ್ಛಿಕ ಕಲಿಕಾ ಸಮುದಾಯ: https://t.me/GyaanSetuAi