𝗪𝗵𝘆 𝗬𝗼𝘂𝗿 𝗔𝗴𝗲𝗻𝘁𝘀 𝗔𝗿𝗲 𝗕𝘂𝗿𝗻𝗶𝗻𝗴 𝗧𝗼𝗸𝗲𝗻𝘀
ನೀವು ಒಂದು ಕೋಡಿಂಗ್ ಏಜೆಂಟ್ ಅನ್ನು ನಿಯೋಜಿಸಿದ್ದೀರಿ. ಅದು ಟಿಕೆಟ್ಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ ಮತ್ತು PRಗಳನ್ನು ಸಲ್ಲಿಸುತ್ತದೆ. ಅದು ಚೆನ್ನಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ.
ನಂತರ ಬಿಲ್ ಬರುತ್ತದೆ.
ಏಜೆಂಟ್ ನೀವು ಯೋಜಿಸಿದ್ದಕ್ಕಿಂತ ಹೆಚ್ಚು ಹಣವನ್ನು ಖರ್ಚು ಮಾಡಿದೆ. ಅದು ಏಕೆ ಎಂದು ನಿಮಗೆ ತಿಳಿದಿಲ್ಲ. ಪ್ರತಿ ಟಿಕೆಟ್ಗೆ ಅದು ಮಾಡೆಲ್ ಅನ್ನು 50 ಬಾರಿ ಬಳಸುತ್ತದೆ. ಕೆಲವು ಕರೆಗಳು ನಿಧಾನಗತಿಯ ಮರುಪ್ರಯತ್ನಗಳಾಗಿವೆ (retries). ಕೆಲವು ಒಂದೇ ಸಂದರ್ಭದ (context) ಅನಗತ್ಯ ಓದುಗಳಾಗಿವೆ.
ಇದು ಮಾಡೆಲ್ ಸಮಸ್ಯೆಯಲ್ಲ. ಇದು ಮೂಲಸೌಕರ್ಯದ (infrastructure) ಸಮಸ್ಯೆ. ನಿಮ್ಮ ತಂಡಕ್ಕೆ ಖರ್ಚಿನ ಬಗ್ಗೆ ಸ್ಪಷ್ಟತೆ ಇಲ್ಲ. ನಿಮ್ಮ ಬಜೆಟ್ ಖಾಲಿಯಾಗುವ ಮೊದಲು ನಿಯಂತ್ರಣ ಮೀರಿ ಹೋಗುತ್ತಿರುವ ಏಜೆಂಟ್ ಅನ್ನು ತಡೆಯಲು ನಿಮ್ಮ ಬಳಿ ಯಾವುದೇ ಮಾರ್ಗವಿಲ್ಲ.
ಏಜೆಂಟ್ಗಳು ಲೂಪ್ಗಳಿದ್ದಂತೆ. ಅವು ಒಂದು ಕಾರ್ಯವನ್ನು ಓದುತ್ತವೆ, ಒಂದು ಟೂಲ್ ಅನ್ನು ಬಳಸುತ್ತವೆ, ಔಟ್ಪುಟ್ ಅನ್ನು ಓದುತ್ತವೆ ಮತ್ತು ಇದನ್ನು ಪುನರಾವರ್ತಿಸುತ್ತವೆ. ಪ್ರತಿ ಹಂತವೂ ಟೋಕನ್ಗಳನ್ನು ಖರ್ಚು ಮಾಡುತ್ತದೆ. ಒಂದು ಏಜೆಂಟ್ ಪ್ರತಿ ಬಾರಿಯೂ ಸಿಸ್ಟಮ್ ಪ್ರಾಂಪ್ಟ್ ಅನ್ನು ಮರುಓದಿದರೆ, ವೆಚ್ಚವು ವೇಗವಾಗಿ ಹೆಚ್ಚಾಗುತ್ತದೆ. ಒಂದು ಸಣ್ಣ ಬಗ್ ನೂರಾರು ಹೆಚ್ಚುವರಿ ಓದುಗಳಿಗೆ ಕಾರಣವಾಗಬಹುದು.
ನೀವು ಕೇವಲ ಬಿಲ್ ಅನ್ನು ನೋಡುತ್ತೀರಿ, ಕರೆಗಳನ್ನು (calls) ಅಲ್ಲ. ಇದು ತುಂಬಾ ತಡವಾದ ಕ್ರಮ.
ಯಶಸ್ವಿ ತಂಡಗಳು ಮೊದಲ ದಿನದಿಂದಲೇ ವೆಚ್ಚದ ನಿಯಂತ್ರಣಗಳನ್ನು ನಿರ್ಮಿಸುತ್ತವೆ. ಅವು ಈ ವಿಧಾನಗಳನ್ನು ಬಳಸುತ್ತವೆ:
- ಮಾಸಿಕ ಬಜೆಟ್ ಮಿತಿಯನ್ನು ನಿಗದಿಪಡಿಸಿ.
- ಪ್ರತಿ ಕರೆಯನ್ನು ಯಾವ ಏಜೆಂಟ್ ಮತ್ತು ಯಾವ ಕಾರ್ಯವು ಪ್ರಚೋದಿಸಿತು ಎಂಬುದನ್ನು ಲಾಗ್ ಮಾಡಿ.
- ಒಂದು ಕಾರ್ಯವು ಇನ್ನೊಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ವೆಚ್ಚ ಏಕೆ ಮಾಡಿತು ಎಂಬುದಕ್ಕೆ ಉತ್ತರಿಸಿ.
ಪ್ರೊಡಕ್ಷನ್ನಲ್ಲಿ ಏಜೆಂಟ್ಗಳನ್ನು ನಡೆಸಲು, ನಿಮಗೆ ಇವು ಬೇಕು:
- ಪ್ರತಿ ಏಜೆಂಟ್ ಟ್ರ್ಯಾಕಿಂಗ್: ಪ್ರತಿ ಬಳಕೆದಾರ ಮತ್ತು ಪ್ರತಿ ಕಾರ್ಯದ ವೆಚ್ಚವನ್ನು ತಿಳಿಯಿರಿ.
- ವರ್ಚುವಲ್ ಕೀಗಳು: ತಂಡಗಳನ್ನು ಪ್ರತ್ಯೇಕಿಸಿ, ಇದರಿಂದ ಒಬ್ಬ ಅಭಿವೃದ್ಧಿಪಡಿಸುವವನು (developer) ಇಡೀ ಬಜೆಟ್ ಅನ್ನು ಖರ್ಚು ಮಾಡಲು ಸಾಧ್ಯವಾಗುವುದಿಲ್ಲ.
- ಬಜೆಟ್ ನಿಯಂತ್ರಣಗಳು: ಕಟ್ಟುನಿಟ್ಟಾದ ಮಿತಿಗಳನ್ನು ನಿಗದಿಪಡಿಸಿ. ಏಜೆಂಟ್ ಮಿತಿಯನ್ನು ತಲುಪಿದಾಗ ಅದು ನಿಮಗೆ ಎಚ್ಚರಿಕೆ ನೀಡಬೇಕು ಅಥವಾ ಕಾರ್ಯಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುವುದನ್ನು ನಿಲ್ಲಿಸಬೇಕು.
- ಖರ್ಚಿನ ಸ್ಪಷ್ಟತೆ: ಟ್ರೆಂಡ್ಗಳು ಮತ್ತು ಪ್ರತಿ ಕಾರ್ಯದ ಸರಾಸರಿ ವೆಚ್ಚವನ್ನು ನೋಡಲು ಡ್ಯಾಶ್ಬೋರ್ಡ್ ಬಳಸಿ.
- ವಿವರವಾದ ಲಾಗ್ಗಳು: ಕರೆಗಳ ವಿಧಗಳ ವಿತರಣೆಯನ್ನು ನೋಡಿ.
ನೀವು ಇವುಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಿದರೆ, ನೀವು ಅರಿವಿಲ್ಲದೆಯೇ ಕೆಲಸ ಮಾಡುತ್ತೀರಿ.
LiteLLM ಇದನ್ನು ತಪ್ಪಿಸಲು ಒಂದು ನಿರ್ದಿಷ್ಟ ಮಾದರಿಯನ್ನು ಬಳಸುತ್ತದೆ:
- ಬ್ರೈನ್ ಮತ್ತು ಸ್ಯಾಂಡ್ಬಾಕ್ಸ್ ವಿಭಜನೆ: ತರ್ಕವು (reasoning) ಒಂದು ಕಡೆ ಮತ್ತು ಕಾರ್ಯಗತಗೊಳಿಸುವಿಕೆ (execution) ಇನ್ನೊಂದು ಕಡೆ ನಡೆಯುತ್ತದೆ. ಇದು ನಿರಂತರ ಮರುಓದುಗಳನ್ನು ತಡೆಯುತ್ತದೆ.
- ಸ್ಪಷ್ಟ ಟೂಲ್ ಇಂಟರ್ಫೇಸ್ಗಳು: ಉದ್ದವಾದ ಪಠ್ಯದ ಬದಲಿಗೆ ರಚನಾತ್ಮಕ ವ್ಯಾಖ್ಯಾನಗಳನ್ನು (structured definitions) ಬಳಸಿ.
- ಗೇಟ್ವೇ ಟ್ರ್ಯಾಕಿಂಗ್: ಪ್ರತಿ ಕರೆಯು ಏಜೆಂಟ್ ಮತ್ತು ತಂಡದ ಐಡಿ ಹೊಂದಿರುವ ಗೇಟ್ವೇ ಮೂಲಕ ಮಾರ್ಗದರ್ಶನಗೊಳ್ಳುತ್ತದೆ.
- ಕಡ್ಡಾಯ ಬಜೆಟ್ಗಳು: ಏಜೆಂಟ್ ಒಂದು ಕಾರ್ಯವನ್ನು ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು ತನ್ನ ಉಳಿದ ಬಜೆಟ್ ಅನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ.
ನೀವು ಈ ಪರಿಕರಗಳಿಲ್ಲದೆ ಏಜೆಂಟ್ಗಳನ್ನು ನಿರ್ಮಿಸಿದರೆ, ವೆಚ್ಚದ ಸ್ಫೋಟವನ್ನು ಎದುರಿಸಬೇಕಾಗುತ್ತದೆ. ಏಜೆಂಟ್ ಒಂದು ಎಡ್ಜ್ ಕೇಸ್ (edge case) ಅಥವಾ ಲೂಪ್ ಅನ್ನು ತಲುಪುವವರೆಗೆ ಚೆನ್ನಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ. ಅಷ್ಟರಲ್ಲಾಗಲೇ ಹಣ ಖಾಲಿಯಾಗಿರುತ್ತದೆ.
ಈಗ ಈ ಕ್ರಮಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳಿ:
- ನಿಮ್ಮ ಕೊನೆಯ API ಬಿಲ್ ಅನ್ನು ಆಡಿಟ್ ಮಾಡಿ.
- ಪ್ರತಿ ಕರೆಯನ್ನು ಏಜೆಂಟ್ ಐಡಿ ಮತ್ತು ಟಾಸ್ಕ್ ಐಡಿಯೊಂದಿಗೆ ಇನ್ಸ್ಟ್ರುಮೆಂಟ್ ಮಾಡಿ.
- ಇಂದೇ ಬಜೆಟ್ ಮಿತಿಯನ್ನು ನಿಗದಿಪಡಿಸಿ.
- ವಿಫಲವಾದ ಮರುಪ್ರಯತ್ನಗಳನ್ನು (failed retries) ಕಂಡುಹಿಡಿಯಲು ಟೂಲ್ ಕರೆಗಳನ್ನು ಲಾಗ್ ಮಾಡಿ.
- ಪ್ರತಿ ವಾರ ಕರೆಗಳ ಮಾದರಿಗಳನ್ನು (call patterns) ಪರಿಶೀಲಿಸಿ.
ವಿಶ್ವಾಸಾರ್ಹ ಏಜೆಂಟ್ಗಳನ್ನು ದುಬಾರಿ ತಪ್ಪುಗಳಿಂದ ಪ್ರತ್ಯೇಕಿಸುವ ಮೂಲಸೌಕರ್ಯವನ್ನು ನಿರ್ಮಿಸಿ.
ಮೂಲ: https://dev.to/paultwist/why-your-agents-are-silently-burning-tokens-and-how-to-stop-them-7g8
ಐಚ್ಛಿಕ ಕಲಿಕಾ ಸಮುದಾಯ: https://t.me/GyaanSetuAi