𝗕𝘂𝗶𝗹𝗱𝗶𝗻𝗴 𝗥𝗲𝘀𝗶𝗹𝗶𝗲𝗻𝘁 𝗔𝗜 𝗔𝗴𝗲𝗻𝘁𝘀
AI ಏಜೆಂಟ್ಗಳು ಉತ್ಪಾದನಾ ಪರಿಸರದಲ್ಲಿ (production) ಹೆಚ್ಚಾಗಿ ವಿಫಲವಾಗುತ್ತವೆ. ಅಭಿವೃದ್ಧಿ ಪರಿಸರಗಳು (development environments) ಪರಿಪೂರ್ಣವಾಗಿರುತ್ತವೆ. ಆದರೆ ನೈಜ ಪ್ರಪಂಚ ಅಷ್ಟೇನೂ ಪರಿಪೂರ್ಣವಾಗಿರುವುದಿಲ್ಲ. ನೀವು ನೆಟ್ವರ್ಕ್ ಟೈಮೌಟ್ಗಳು (network timeouts), API ಮಿತಿಗಳು ಮತ್ತು ದೋಷಪೂರಿತ ಡೇಟಾವನ್ನು ಎದುರಿಸಬೇಕಾಗಬಹುದು. ನಿಮ್ಮ ಏಜೆಂಟ್ಗಳು ಕ್ರ್ಯಾಶ್ ಆಗದೆ ಇವುಗಳನ್ನು ನಿಭಾಯಿಸಬೇಕು.
ಉತ್ತಮ ಏಜೆಂಟ್ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಈ ಐದು ಮಾದರಿಗಳನ್ನು (patterns) ಬಳಸಿ:
Exponential Backoff with Jitter API ಕರೆಗಳನ್ನು ತಕ್ಷಣವೇ ಮರುಪ್ರಯತ್ನಿಸಬೇಡಿ. ಇದು ಸೇವೆಗಳ ಮೇಲೆ ಅತಿಯಾದ ಒತ್ತಡವನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ. ಪ್ರತಿ ವೈಫಲ್ಯದ ನಂತರ ಹೆಚ್ಚಾಗುವ ವಿಳಂಬವನ್ನು (delay) ಬಳಸಿ. ಪ್ರತಿ ವಿಳಂಬಕ್ಕೆ ಸ್ವಲ್ಪ ಯಾದೃಚ್ಛಿಕ ಸಮಯವನ್ನು (random amount of time) ಸೇರಿಸಿ. ಇದು ಅನೇಕ ಏಜೆಂಟ್ಗಳು ಏಕಕಾಲದಲ್ಲಿ ಸೇವೆಗೆ ಪ್ರವೇಶಿಸುವುದನ್ನು ತಡೆಯುತ್ತದೆ.
Circuit Breakers ಒಂದು ಸೇವೆ ಪದೇ ಪದೇ ವಿಫಲವಾದರೆ ಅದನ್ನು ಕರೆಯುವುದನ್ನು ನಿಲ್ಲಿಸಿ. ಇದು ಆ ಸೇವೆ ಚೇತರಿಸಿಕೊಳ್ಳಲು ಸಮಯ ನೀಡುತ್ತದೆ. ನಿಮ್ಮ ಏಜೆಂಟ್ ಲೂಪ್ನಲ್ಲಿ ಸಿಲುಕಿಕೊಳ್ಳುವ ಬದಲು, ದೋಷಪೂರಿತ ಭಾಗವನ್ನು ಬಿಟ್ಟುದರ ಮೂಲಕ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ಮುಂದುವರಿಸುತ್ತದೆ.
Graceful Degradation ಯಾವಾಗಲೂ 'ಪ್ಲಾನ್ ಬಿ' (Plan B) ಇರಲಿ. ನಿಮ್ಮ ಮುಖ್ಯ LLM ವಿಫಲವಾದರೆ, ಕ್ಯಾಶ್ ಮಾಡಿದ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು (cached response) ಪ್ರಯತ್ನಿಸಿ. ಅದು ವಿಫಲವಾದರೆ, ಟೆಂಪ್ಲೇಟ್ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಬಳಸಿ. ಇದು ಸಿಸ್ಟಮ್ ವೈಫಲ್ಯದ ಸಂದರ್ಭದಲ್ಲೂ ಬಳಕೆದಾರರಿಗೆ ಉತ್ತರ ಸಿಗುವಂತೆ ಮಾಡುತ್ತದೆ.
State Management ದೀರ್ಘಾವಧಿಯ ಕಾರ್ಯಗಳು ಕ್ರ್ಯಾಶ್ ಆದರೂ ನಿಲ್ಲಬಾರದು. ನಿಮ್ಮ ಪ್ರಗತಿಯನ್ನು (progress) ಆಗಾಗ್ಗೆ ಉಳಿಸಿ (save). ಏಜೆಂಟ್ ಮರುಪ್ರಾರಂಭವಾದರೆ, ಅದು ಕೊನೆಯ ಬಾರಿ ಉಳಿಸಿದ ಸ್ಥಿತಿಯನ್ನು (last saved state) ಓದಿ, ಎಲ್ಲಿ ಬಿಟ್ಟಿದ್ದನೋ ಅಲ್ಲಿಂದ ಮುಂದುವರಿಯಬೇಕು.
Continuous Monitoring ನಿಮ್ಮ ಮೆಟ್ರಿಕ್ಸ್ಗಳನ್ನು (metrics) ಪತ್ತೆಹಚ್ಚಿ. ನಿಮ್ಮ ವಿನಂತಿಗಳ ಸಂಖ್ಯೆ (request count), ವೈಫಲ್ಯದ ದರ (failure rate) ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆಯ ಸಮಯಗಳನ್ನು (response times) ನೀವು ತಿಳಿದುಕೊಳ್ಳಬೇಕು. ನೀವು ಅಳೆಯದಿದ್ದನ್ನು ಸರಿಪಡಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ.
ಈ ರಕ್ಷಣಾತ್ಮಕ ಪದರಗಳೊಂದಿಗೆ (defensive layers) ನಿಮ್ಮ ಏಜೆಂಟ್ಗಳನ್ನು ನಿರ್ಮಿಸಿ. ಇದು ನಿಮ್ಮ ಸಿಸ್ಟಮ್ಗಳನ್ನು ನೈಜ ಬಳಕೆದಾರರಿಗೆ ಸಿದ್ಧಪಡಿಸುತ್ತದೆ.
Source: https://dev.to/jasperstewart/building-resilient-ai-agents-a-step-by-step-implementation-guide-59mm
Optional learning community: https://t.me/GyaanSetuAi