AI Agents ನೊಂದಿಗೆ ಕೋಡಿಂಗ್: ಹೆಚ್ಚಿನ ಕಾರ್ಯಕ್ಷಮತೆ (High Throughput) vs. ಕೋಡ್ ಗುಣಮಟ್ಟ (Code Quality)

AI agents ವೇಗವಾಗಿ ಕೋಡ್ ಮಾಡುತ್ತಾರೆ. ಸಮಸ್ಯೆ ಅವರು ಎಷ್ಟು ವೇಗವಾಗಿ ಬರೆಯುತ್ತಾರೆ ಎಂಬುದಲ್ಲ. ಸಮಸ್ಯೆ ಕೋಡ್ ಅನ್ನು ಸ್ವಚ್ಛವಾಗಿ ಮತ್ತು ಸ್ಥಿರವಾಗಿ (consistent) ಇಟ್ಟುಕೊಳ್ಳುವುದು.

ನಾನು ಇದನ್ನು Project Venom ಗೆ ಅನ್ವಯಿಸಿದೆ. ಗುಣಮಟ್ಟವನ್ನು ಕಳೆದುಕೊಳ್ಳದೆ ವೇಗದ ಬಳಕೆಗಾಗಿ AI agents ಅನ್ನು ಬಳಸಲು ಸಾಧ್ಯವೇ ಎಂದು ನಾನು ನೋಡಲು ಬಯಸಿದೆ.

ಫಲಿತಾಂಶಗಳು: • AI agents ಬರೆದ 138,011 ಸಾಲುಗಳ ಕೋಡ್ • 1,587 commits • 92.2% test coverage • SonarQube ನಲ್ಲಿ 0 ಗುಣಮಟ್ಟದ ಸಮಸ್ಯೆಗಳು (1,650 ಸಮಸ್ಯೆಗಳೊಂದಿಗೆ ಪ್ರಾರಂಭವಾಯಿತು)

ನಾನು ಇದನ್ನು ಹೇಗೆ ಮಾಡಿದೆ? ನಾನು ಒಂದು pipeline ಅನ್ನು ನಿರ್ಮಿಸಿದೆ. AI ಕೋಡ್ ಬರೆಯುತ್ತದೆ, ಆದರೆ ಆ ಕೋಡ್ ಉಳಿಯಬೇಕೇ ಅಥವಾ ಇಲ್ಲವೇ ಎಂಬುದನ್ನು ಪ್ರಕ್ರಿಯೆಯು ನಿರ್ಧರಿಸುತ್ತದೆ.

ಈ ಕೆಲಸದ ಹರಿವು (workflow) ಈ ಹಂತಗಳನ್ನು ಅನುಸರಿಸುತ್ತದೆ:

  1. ಮನುಷ್ಯ ಗುರಿ ಮತ್ತು ವ್ಯಾಪ್ತಿಯನ್ನು (scope) ವ್ಯಾಖ್ಯಾನಿಸುತ್ತಾರೆ.
  2. AI agent ಬದಲಾವಣೆಯನ್ನು ಯೋಜಿಸುತ್ತದೆ ಮತ್ತು ಜಾರಿಗೆ ತರುತ್ತದೆ.
  3. Local pre-commit ಪರಿசோதனೆಗಳು static validation ಮತ್ತು ಪರೀಕ್ಷೆಗಳನ್ನು ನಡೆಸುತ್ತವೆ.
  4. GitHub Actions CI (linting, contract checks, ಮತ್ತು architecture guards) ಅನ್ನು ರನ್ ಮಾಡುತ್ತದೆ.
  5. SonarQube ತಾಂತ್ರಿಕ ಸಾಲ (technical debt) ಮತ್ತು ಸಂಕೀರ್ಣತೆಯನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ.
  6. AI agents ಮತ್ತು ಮನುಷ್ಯ Pull Request ಅನ್ನು ಪರಿಶೀಲಿಸುತ್ತಾರೆ.
  7. Merge.

ಈ ಪ್ರಕ್ರಿಯೆಯು ಮೂರು ಹಂತಗಳನ್ನು ಹೊಂದಿದೆ.

ಹಂತ 1: ವೇಗ (Speed). AI agents ಕೋಡ್ ಮತ್ತು unit tests ಅನ್ನು ರಚಿಸುತ್ತವೆ. ಇದು ಯೋಜನೆಯನ್ನು ವೇಗವಾಗಿ ವಿಸ್ತರಿಸುತ್ತದೆ.

ಹಂತ 2: ನಿಯಂತ್ರಣ (Control). ನಾನು SonarQube ಅನ್ನು ಸೇರಿಸಿದೆ. ಅದು 1,650 ಸಮಸ್ಯೆಗಳನ್ನು ಕಂಡುಕೊಂಡಿತು. ನಂತರ ನಾನು local pre-commit gates ಅನ್ನು ನಿರ್ಮಿಸಿದೆ. ಈ gates ದಾಟದ ಹೊರತು AI agents ಯಾವುದೇ ಕಾರ್ಯವನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ಸಾಧ್ಯವಾಗುತ್ತಿರಲಿಲ್ಲ.

ಹಂತ 3: ಸ್ಥಿರತೆ (Stability). Pipeline ದೈನಂದಿನ ಕೆಲಸದ ಭಾಗವಾಯಿತು. ಗುಣಮಟ್ಟವು ಕೇವಲ ಅಂತಿಮ ಪರಿசோதனை ಆಗಿರಲಿಲ್ಲ. ಅದು ನಿರಂತರ ಅಗತ್ಯತೆಯಾಗಿತ್ತು.

ನಿಮ್ಮ ತಂಡಕ್ಕಾಗಿ ಪ್ರಮುಖ ಅಂಶ: ಯಾವ AI agent ಅತ್ಯುತ್ತಮವಾದುದು ಎಂದು ಕೇಳುವುದನ್ನು ನಿಲ್ಲಿಸಿ. ಅತ್ಯುತ್ತಮ agent ಪ್ರತಿ ವಾರ ಬದಲಾಗುತ್ತದೆ.

ಬದಲಾಗಿ ಇದನ್ನು ಕೇಳಿ: AI ಕೋಡ್ ಅನ್ನು ಸುರಕ್ಷಿತವಾಗಿ ಸ್ವೀಕರಿಸುವ ಪ್ರಕ್ರಿಯೆಯನ್ನು ನಾವು ಹೇಗೆ ನಿರ್ಮಿಸುವುದು?

ನಿಮಗೆ ಕನಿಷ್ಠ ಪರಿಕರಗಳ ಸೆಟ್ ಅಗತ್ಯವಿದೆ:

  • GitHub repository ಮತ್ತು Pull Requests
  • Pre-commit hooks
  • Unit tests
  • GitHub Actions
  • SonarQube ಅಥವಾ SonarCloud
  • ನಿಮ್ಮ agents ಗಾಗಿ ಸ್ಪಷ್ಟ ಸೂಚನೆಗಳು
  • ಮನುಷ್ಯ ಮತ್ತು AI ಪರಿಶೀಲನೆಗಳು

Pipeline ಇಲ್ಲದ AI coding ಕೇವಲ ಒಂದು ಪ್ರಯೋಗವಾಗಿದೆ. Pipeline ಇರುವ AI coding ಒಂದು ವೃತ್ತಿಪರ ಪ್ರಕ್ರಿಯೆಯಾಗಿದೆ.

Agent ಕೋಡ್ ಬರೆಯುತ್ತದೆ. Pipeline ಯೋಜನೆಯನ್ನು ರಕ್ಷಿಸುತ್ತದೆ.

ನೀವು AI agents ನೊಂದಿಗೆ ಹೇಗೆ ಕೆಲಸ ಮಾಡುತ್ತೀರಿ? ನೀವು ಅವುಗಳನ್ನು ಕೇವಲ ಸಹಾಯಕರು ಎಂದು ಬಳಸುತ್ತೀರಾ, ಅಥವಾ ನಿಮ್ಮ ಪ್ರಕ್ರಿಯೆಯಲ್ಲಿ ಅವುಗಳಿಗೆ ಸ್ವಂತ gates ಮತ್ತು ಸೂಚನೆಗಳಿವೆಯೇ?

Source: https://dev.to/maciej_p_3d3c100f085a/coding-with-ai-agents-between-high-throughput-and-code-quality-136g

Optional learning community: https://t.me/GyaanSetuAi