ಪ್ರೊಡಕ್ಷನ್ ಏಜೆಂಟ್ ಲೂಪ್ ಅನ್ನು ನಿರ್ಮಿಸುವುದು
ಒಂದು ಡೆಮೊ ಏಜೆಂಟ್ ಅನ್ನು ನಿರ್ಮಿಸುವುದು ಸುಲಭ. ಆದರೆ ಪ್ರೊಡಕ್ಷನ್ ಏಜೆಂಟ್ ಅನ್ನು ನಿರ್ಮಿಸುವುದು ಕಷ್ಟ.
ಡೆಮೊದಲ್ಲಿ, ಲೂಪ್ ಸರಳವಾಗಿರುತ್ತದೆ: ಗಮನಿಸಿ (observe), ನಿರ್ಧರಿಸಿ (decide), ಕಾರ್ಯಗತಗೊಳಿಸಿ (act), ಪರಿಶೀಲಿಸಿ (check), ಪುನರಾವರ್ತಿಸಿ (repeat). ಮಾಡೆಲ್ ಒಂದು ಫಲಿತಾಂಶವನ್ನು ನೋಡಿ ಮುಂದಿನ ಹಂತಕ್ಕೆ ಹೋಗುತ್ತದೆ.
ಪ್ರೊಡಕ್ಷನ್ನಲ್ಲಿ, ಅದೇ ಲೂಪ್ಗೆ ಕಟ್ಟುನಿಟ್ಟಿನ ನಿಯಮಗಳ ಅಗತ್ಯವಿದೆ. ಪ್ರೊಡಕ್ಷನ್ ಏಜೆಂಟ್ ಎಂದರೆ ಕೇವಲ ಒಂದು ಮಾಡೆಲ್ ಮತ್ತು ಕೆಲವು ಟೂಲ್ಗಳಲ್ಲ. ಇದು ಅದನ್ನು ನಿಖರವಾಗಿಡಲು ಒಂದು ರಚನೆಯಲ್ಲಿ ಸುತ್ತುವರಿದ ಲೂಪ್ ಆಗಿದೆ.
ಟೂಲ್ ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು (tool responses) ನಂಬುವುದು ದೊಡ್ಡ ಬಲೆ.
ಒಂದು ಏಜೆಂಟ್ ಆರ್ಡರ್ ಅನ್ನು ರದ್ದುಗೊಳಿಸಿ ಮತ್ತು ರಿಫಂಡ್ ನೀಡಬೇಕಾಗಿದೆ ಎಂದು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ.
- ಏಜೆಂಟ್
cancel_orderಅನ್ನು ಕರೆಯುತ್ತದೆ. - ಟೂಲ್
200 OKಅನ್ನು ಹಿಂತಿರುಗಿಸುತ್ತದೆ. - ಏಜೆಂಟ್ ತಕ್ಷಣವೇ
issue_refundಅನ್ನು ಕರೆಯುತ್ತದೆ.
ಡೆಮೊದಲ್ಲಿ, ಇದು ಕೆಲಸ ಮಾಡುತ್ತದೆ. ಪ್ರೊಡಕ್ಷನ್ನಲ್ಲಿ, ಇದು ವಿಪತ್ತಾಗುತ್ತದೆ.
200 OK ಎಂದರೆ ಹೆಚ್ಚಾಗಿ ವಿನಂತಿಯನ್ನು ಸ್ವೀಕರಿಸಲಾಗಿದೆ ಎಂದರ್ಥವೇ ಹೊರತು, ಕೆಲಸ ಮುಗಿದಿದೆ ಎಂದಲ್ಲ. ರದ್ದತಿ ಪ್ರಕ್ರಿಯೆಯು ಇನ್ನೂ ಕ್ಯೂನಲ್ಲಿ (queue) ಬಾಕಿ ಇರಬಹುದು. ರದ್ದತಿಯನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವ ಮೊದಲು ಏಜೆಂಟ್ ರಿಫಂಡ್ ನೀಡಿದರೆ, ನೀವು ಕೇವಲ ಊಹೆಯ ಆಧಾರದ ಮೇಲೆ ಹಣವನ್ನು ವರ್ಗಾಯಿಸುತ್ತೀರಿ.
ನೀವು ಒಂದು ನಿಯಮವನ್ನು ಅನುಸರಿಸಲೇಬೇಕು: ಟೂಲ್ ಪ್ರತಿಕ್ರಿಯೆಯು ವಿನಂತಿಯನ್ನು ವಿವರಿಸುತ್ತದೆ, ಆದರೆ ಅದು ಅನಿವಾರ್ಯವಾಗಿ ಪ್ರಪಂಚದ (actual state of the world) ಸ್ಥಿತಿಯನ್ನು ವಿವರಿಸುವುದಿಲ್ಲ.
ಸುರಕ್ಷಿತ ಪ್ರೊಡಕ್ಷನ್ ಲೂಪ್ ಅನ್ನು ನಿರ್ಮಿಸಲು, ನಿಮಗೆ ಈ ಕೆಳಗಿನ ಘಟಕಗಳು ಬೇಕು:
• ಟೂಲ್ ಕಾಂಟ್ರಾಕ್ಟ್ಗಳು (Tool Contracts): ಪ್ರತಿಯೊಂದು ಟೂಲ್ ತನ್ನ ಇನ್ಪುಟ್, ಔಟ್ಪುಟ್, ವೈಫಲ್ಯದ ವಿಧಾನಗಳು (failure modes) ಮತ್ತು ಐಡೆಂಪೊಟೆನ್ಸಿ ಕೀ (idempotency key) ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಬೇಕು. • ವೆರಿಫಿಕೇಶನ್ ಗೇಟ್ಗಳು (Verification Gates): ಟೂಲ್ ಯಶಸ್ವಿ ಕೋಡ್ ಅನ್ನು ಹಿಂತಿರುಗಿಸಿದೆಯೇ ಎಂದು ಮಾತ್ರ ಪರಿಶೀಲಿಸಬೇಡಿ. ಬದಲಾವಣೆಯು ನಿಜವಾಗಿಯೂ ನಡೆದಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಲು ಪ್ರಪಂಚದ ನೈಜ ಸ್ಥಿತಿಯನ್ನು ಮರುಪರಿಶೀಲಿಸಿ. • ವರ್ಕಿಂಗ್ ಸ್ಟೇಟ್ (Working State): ಸತ್ಯಾಂಶಗಳನ್ನು ಚಾಟ್ ಇತಿಹಾಸದಿಂದ ಪ್ರತ್ಯೇಕವಾಗಿಡಿ. ಇದು ಸಂಭಾಷಣೆಯ ಪಠ್ಯದ ಆಧಾರದ ಮೇಲೆ ಏಜೆಂಟ್ ಭ್ರಮೆ ಮಾಡುವುದನ್ನು (hallucinating) ತಡೆಯುತ್ತದೆ. • ಅಪ್ರೂವಲ್ ಗೇಟ್ಗಳು (Approval Gates): ಹೆಚ್ಚಿನ ಅಪಾಯವಿರುವ (high-stakes) ಕ್ರಮಗಳ ಉದ್ದೇಶವನ್ನು ಅನುಮೋದಿಸಲು ಮನುಷ್ಯರನ್ನು ಬಳಸಿ. • ಸ್ಟಾಪ್ ರೂಲ್ಸ್ (Stop Rules): ನಿಯಂತ್ರಣ ಮೀರಿ ಹೋಗುವ (runaway) ಲೂಪ್ಗಳನ್ನು ತಡೆಯಲು ಹಂತಗಳು, ವೆಚ್ಚ, ಸಮಯ ಮತ್ತು ಮೌನಕ್ಕೆ ಮಿತಿಗಳನ್ನು ನಿಗದಿಪಡಿಸಿ.
ಲೂಪ್ ರಚನೆಯು ಬದಲಾಗುವುದಿಲ್ಲ. ಅದರ ಅನುಷ್ಠಾನವು (implementation) ಹೆಚ್ಚು ಕಟ್ಟುನಿಟ್ಟಾಗುತ್ತದೆ.
ಗಂಭೀರ ಪರಿಣಾಮ ಬೀರಬಹುದಾದ ಕ್ರಮಗಳಿಗಾಗಿ, ನಿಮ್ಮ "check" ಹಂತವು ಎರಡು ಭಾಗಗಳನ್ನು ಹೊಂದಿರಬೇಕು:
- ಪರಿಶೀಲಿಸಿ (Verify): ಪ್ರಪಂಚವು ನಿರೀಕ್ಷಿಸಿದಂತೆ ನಿಜವಾಗಿಯೂ ಬದಲಾಗಿದೆಯೇ?
- ಕಮಿಟ್ ಮಾಡಿ (Commit): ಈಗ ಅದು ಖಚಿತವಾದ ಮೇಲೆ, ಮುಂದಿನ ಹಂತಕ್ಕೆ ಹೋಗುವುದು ಸುರಕ್ಷಿತವೇ?
ಅತ್ಯಂತ ಸುರಕ್ಷಿತ ಏಜೆಂಟ್ ಎಂದರೆ ಅತ್ಯಂತ ಮಿತಿಯೊಳಗಿರುವ ಏಜೆಂಟ್. ಮಾಡೆಲ್ಗೆ ಹೆಚ್ಚಿನ ಸ್ವಾತಂತ್ರ್ಯ ನೀಡುವುದರಿಂದಲ್ಲ, ಬದಲಾಗಿ ಅದರ ಸುತ್ತಲೂ ಸ್ಪಷ್ಟವಾದ ಮಿತಿಗಳನ್ನು (boundaries) ನಿಗದಿಪಡಿಸುವುದರಿಂದ ವಿಶ್ವಾಸಾರ್ಹತೆ ಬರುತ್ತದೆ.
Source: https://dev.to/gursharansingh/ai-agents-in-practice-part-6-building-the-production-agent-loop-2lfi
Optional learning community: https://t.me/GyaanSetuAi