OpenAI Codex ಯಾವುದೇ ಮಾನವನಿಂದ ಬರೆಯಲಾದ ಅಸೆಂಬ್ಲಿ ಸಾಲುಗಳಿಲ್ಲದೆ, 18 ಸೋರ್ಸ್ ಫೈಲ್ಗಳು ಮತ್ತು ಸುಮಾರು 2,500 ಸಾಲುಗಳ ಕೋಡ್ನೊಂದಿಗೆ ಸಂಪೂರ್ಣ 16-bit x86 Assembly Asteroids-ಶೈಲಿಯ DOS ಗೇಮ್ ಅನ್ನು ರಚಿಸಿದೆ. ಈ ಪ್ರಯೋಗವು, ಸಾಮಾನ್ಯ “code-completion” ಪ್ರದರ್ಶನಗಳಿಗಿಂತ ಒಂದು ಹೆಜ್ಜೆ ಮುಂದೆ ಹೋಗಿ, ಯೋಜನೆಯಿಂದ ಹಿಡಿದು ಡಿಬಗ್ ಮಾಡುವವರೆಗೆ ಸಂಪೂರ್ಣ ಸಾಫ್ಟ್ವೇರ್ ಜೀವನಚಕ್ರವನ್ನು (software lifecycle) ಪ್ರೋಗ್ರಾಮರ್ನ ನೇರ ಹಸ್ತಕ್ಷೇಪವಿಲ್ಲದೆ ಎಐ (AI) ನಿರ್ವಹಿಸಬಲ್ಲದು ಎಂಬುದನ್ನು ತೋರಿಸುತ್ತದೆ.
ಈ ಪರೀಕ್ಷೆಯ ಮಹತ್ವವೇನು
ಹೆಚ್ಚಿನ ಸಾರ್ವಜನಿಕ AI-ಕೋಡಿಂಗ್ ಪ್ರದರ್ಶನಗಳು ಸಣ್ಣ ಸ್ನಿಪ್ಪೆಟ್ಗಳು ಅಥವಾ ಸರಳ ಉಪಯುಕ್ತತೆಗಳಿಗಷ್ಟೇ ಸೀಮಿತವಾಗಿವೆ. ಇದರ ಮಿತಿಯನ್ನು ಪರೀಕ್ಷಿಸಲು, ಈ ಪ್ರಯೋಗವು Codex ಅನ್ನು ಅತ್ಯಂತ ಕಠಿಣ ಪರಿಸರಕ್ಕೆ ತಳ್ಳಿತು: ಯಾವುದೇ ಗೇಮ್ ಎಂಜಿನ್ಗಳು, ಗ್ರಾಫಿಕ್ಸ್ ಲೈಬ್ರರಿಗಳು ಅಥವಾ ಹೈ-ಲೆವೆಲ್ ಭಾಷೆಯ ಸೌಲಭ್ಯಗಳಿಲ್ಲದ, DOS ಮೇಲಿನ 16-bit x86 Assembly. ಎಐ ಕೇವಲ ಕೋಡ್ ಅನ್ನು ರಚಿಸುವುದು ಮಾತ್ರವಲ್ಲದೆ, ಸುತ್ತಮುತ್ತಲಿನ ಎಂಜಿನಿಯರಿಂಗ್ ಕಾರ್ಯಗಳನ್ನು ಸಹ ನಿರ್ವಹಿಸಬಲ್ಲದೇ ಎಂಬುದನ್ನು ನೋಡುವುದು ಇದರ ಗುರಿಯಾಗಿತ್ತು.
ಪಾತ್ರಗಳ ವಿಭಜನೆ ಹೇಗೆ ಮಾಡಲಾಯಿತು
ಮಾನವನ ಜವಾಬ್ದಾರಿಗಳು ಮೂರು ಕ್ರಮಗಳಿಗೆ ಸೀಮಿತವಾಗಿದ್ದವು:
- ಒಟ್ಟಾರೆ ಯೋಜನೆಯ ಗುರಿಯನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುವುದು (ಒಂದು Asteroids-ಶೈಲಿಯ ಶೂಟರ್).
- ಗೇಮ್ಪ್ಲೇಗೆ ಸಂಬಂಧಿಸಿದ ಯಾವುದೇ ಪ್ರಶ್ನೆಗಳು ಉದ್ಭವಿಸಿದಾಗ ಉತ್ತರಿಸುವುದು.
- ಪ್ರತಿಯೊಂದು ಬಿಲ್ಡ್ ಅನ್ನು ಪ್ಲೇ-ಟೆಸ್ಟ್ ಮಾಡುವುದು ಮತ್ತು ಕಂಡುಬಂದ ಬಗ್ಗಳನ್ನು ವರದಿ ಮಾಡುವುದು.
Codex ನ ಜವಾಬ್ದಾರಿಗಳು ಉಳಿದೆಲ್ಲವನ್ನೂ ಒಳಗೊಂಡಿದ್ದವು:
- ಯೋಜನಾ ಯೋಜನೆ ಮತ್ತು ಆರ್ಕಿಟೆಕ್ಚರ್ ಅನ್ನು ಸಿದ್ಧಪಡಿಸುವುದು.
- Assembly ಸೋರ್ಸ್ ಫೈಲ್ಗಳನ್ನು ಬರೆಯುವುದು.
- ಕೋಡ್ ಅನ್ನು ಡಿಬಗ್ ಮಾಡುವುದು, ರಿಫ್ಯಾಕ್ಟರ್ ಮಾಡುವುದು ಮತ್ತು ಮರುರಚಿಸುವುದು.
- ಕಮಿಟ್ಗಳು ಮತ್ತು ಬ್ರಾಂಚ್ ನಿರ್ವಹಣೆಯನ್ನು ಒಳಗೊಂಡಂತೆ Git ರೆಪೊಸಿಟರಿಯನ್ನು ನಿರ್ವಹಿಸುವುದು.
- ಬೈನರಿಯನ್ನು ಬಿಲ್ಡ್ ಮಾಡುವುದು ಮತ್ತು ಅದನ್ನು DOS ಎಮ್ಯುಲೇಟರ್ನಲ್ಲಿ ರನ್ ಮಾಡುವುದು.
ಮಾನವನು ಎಂದಿಗೂ ಒಂದೇ ಒಂದು Assembly ಸೂಚನೆಯನ್ನು ಟೈಪ್ ಮಾಡಲಿಲ್ಲ, ಕಾಂಪೈಲರ್ ಅನ್ನು ಬಳಸಲಿಲ್ಲ ಮತ್ತು ಅಭಿವೃದ್ಧಿಯ ಸಮಯದಲ್ಲಿ ಗೇಮ್ ಅನ್ನು ಪ್ರಾರಂಭಿಸಲಿಲ್ಲ. ಸಂವಹನವು ಕೇವಲ ಬಗ್ಗಳ ಲಕ್ಷಣಗಳನ್ನು ವಿವರಿಸುವುದಕ್ಕೆ ಸೀಮಿತವಾಗಿತ್ತು; ಎಐ ತಾನಾಗಿಯೇ ಮೂಲ ಕಾರಣವನ್ನು ಪತ್ತೆಹಚ್ಚಿ ಸರಿಪಡಿಸಿತು.
ಪುನರಾವರ್ತಿತ ಕಾರ್ಯವಿಧಾನ
ಪ್ರತಿಯೊಂದು ಚಕ್ರವು Codex ಒಂದು ಮೈಲಿಗಲ್ಲನ್ನು ಪ್ರಸ್ತಾಪಿಸುವುದರೊಂದಿಗೆ ಪ್ರಾರಂಭವಾಗುತ್ತಿತ್ತು (ಉದಾಹರಣೆಗೆ, “player ship movement ಅನ್ನು ಅನುಷ್ಠಾನಗೊಳಿಸಿ”). ನಂತರ ಅದು ಅದಕ್ಕೆ ಸಂಬಂಧಿಸಿದ ಸೋರ್ಸ್ ಫೈಲ್ಗಳನ್ನು ತಯಾರಿಸಿ, ಅವುಗಳನ್ನು ಕಮಿಟ್ ಮಾಡಿ, ಎಕ್ಸಿಕ್ಯೂಟಬಲ್ ಅನ್ನು ಬಿಲ್ಡ್ ಮಾಡಿ, ಪರೀಕ್ಷಕರಿಗೆ ರನ್ ಮಾಡಬಹುದಾದ ಬಿಲ್ಡ್ ಅನ್ನು ನೀಡುತ್ತಿತ್ತು. Codex ಸಮಸ್ಯೆಯ ಲಕ್ಷಣವನ್ನು ವಿಶ್ಲೇಷಿಸಿ, ಕೋಡ್ ಬೇಸ್ ಮೂಲಕ ಅದನ್ನು ಪತ್ತೆಹಚ್ಚಿ, ಹೆಚ್ಚಿನ ಮಾನವ ಮಾರ್ಗದರ್ಶನವಿಲ್ಲದೆ ಪ್ಯಾಚ್ ಅನ್ನು ಹೊರಡಿಸುತ್ತಿತ್ತು.
ಅಂತಿಮ ಉತ್ಪನ್ನದಲ್ಲಿ ಏನಿವೆ
- ಸಾಂಪ್ರದಾಯಿಕ ರೆಪೊಸಿಟರಿ ರಚನೆಯಲ್ಲಿ ಸಂಘಟಿತವಾಗಿರುವ 18 Assembly ಸೋರ್ಸ್ ಫೈಲ್ಗಳು.
- ಇನ್ಪುಟ್ ಹ್ಯಾಂಡ್ಲಿಂಗ್, ಸ್ಪ್ರೈಟ್ ಡ್ರಾಯಿಂಗ್, ಕೊಲಿಷನ್ ಡಿಟೆಕ್ಷನ್ ಮತ್ತು ಹೈ-ಸ್ಕೋರ್ ಸಿಸ್ಟಮ್ ಅನ್ನು ಒಳಗೊಂಡಿರುವ ≈2,500 ಸಾಲುಗಳ Assembly ಕೋಡ್.
- ಪ್ರಮಾಣಿತ DOS ಪರಿಸರದಲ್ಲಿ ರನ್ ಆಗುವ ಮತ್ತು ಕ್ಲಾಸಿಕ್ Asteroids ಗೇಮ್ಪ್ಲೇ ಅನ್ನು ಅನುಕರಿಸುವ ಪ್ಲೇಯಬಲ್ DOS ಎಕ್ಸಿಕ್ಯೂಟಬಲ್.
- ಶೂನ್ಯ ಮಾನವ-ಬರಹದ Assembly, ಇದು ಎಐ ಎಲ್ಲಾ ಲೋ-ಲೆವೆಲ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಕಾರ್ಯಗಳನ್ನು ನಿರ್ವಹಿಸಿದೆ ಎಂಬುದನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ.
ಪರಿಣಾಮಗಳು ಮತ್ತು ಮಹತ್ವ
ಒಂದು ಯೋಜನೆಯನ್ನು ಕಲ್ಪನೆಯಿಂದ ಹಿಡಿದು ಕಾರ್ಯನಿರ್ವಹಿಸುವ ಬೈನರಿಯವರೆಗೆ ಎಐ ಸ್ವತಂತ್ರವಾಗಿ ಮುನ್ನಡೆಸಬಲ್ಲದಿದ್ದರೆ, ಕೋಡ್ಬೇಸ್ನ ಪ್ರಾಥಮಿಕ ಸಂಘಟಕನಾಗಿ ಪ್ರೋಗ್ರಾಮರ್ ಹೊಂದಿರುವ ಸಾಂಪ್ರದಾಯಿಕ ಪಾತ್ರವು ಬದಲಾಗುತ್ತದೆ. ಕಂಪನಿಗಳು ಬಾಯ್ಲರ್ ಪ್ಲೇಟ್ ಸೆಟಪ್, ಡಾಕ್ಯುಮೆಂಟೇಶನ್ ಮತ್ತು ದಿನನಿತ್ಯದ ಡಿಬಗ್ ಮಾಡುವಿಕೆಯಲ್ಲಿ ವ್ಯಯಿಸುವ ಸಮಯವನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು, ಇದರಿಂದ ಎಂಜಿನಿಯರ್ಗಳು ವಿನ್ಯಾಸ ಮತ್ತು ಉತ್ಪನ್ನದ ಕಾರ್ಯತಂತ್ರದ ಮೇಲೆ ಗಮನ ಹರಿಸಲು ಮುಕ್ತರಾಗುತ್ತಾರೆ.
ಈ ಪ್ರಯೋಗವು ಮಿತಿಗಳನ್ನು ಸಹ ಎತ್ತಿ ತೋರಿಸುತ್ತದೆ. ಪರೀಕ್ಷಾ ಪರಿಸರವು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ಕಿರಿದಾಗಿತ್ತು: ಚೆನ್ನಾಗಿ ಅರ್ಥಮಾಡಿಕೊಳ್ಳಬಹುದಾದ ಮೆಕ್ಯಾನಿಕ್ಸ್ ಹೊಂದಿರುವ ಸಿಂಗಲ್-ಪ್ಲೇಯರ್ DOS ಗೇಮ್. ಬಾಹ್ಯ ಅವಲಂಬನೆಗಳು, ಭದ್ರತಾ ನಿರ್ಬಂಧಗಳು ಅಥವಾ ಕಾರ್ಯಕ್ಷಮತೆ-ನಿರ್ಣಾಯಕ ಕೋಡ್ ಪಥಗಳನ್ನು ಹೊಂದಿರುವ ದೊಡ್ಡ, ಮಲ್ಟಿ-ಮಾಡ್ಯೂಲ್ ಸಿಸ್ಟಮ್ಗಳಿಗೆ ಈ ವಿಧಾನವನ್ನು ವಿಸ್ತರಿಸುವುದು ಇನ್ನೂ ಸಾಬೀತಾಗಿಲ್ಲ. ಅಷ್ಟೇ ಅಲ್ಲದೆ, ಮಾನವ ಪರೀಕ್ಷಕರು ಇನ್ನೂ ಅಂತಿಮ ಗುಣಮಟ್ಟದ ಕಾವಲುಗಾರರಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತಿದ್ದರು; ಆ ಮೇಲ್ವಿಚಾರಣೆ ಇಲ್ಲದಿದ್ದರೆ ಪತ್ತೆಹಚ್ಚಲಾಗದ ಲಾಜಿಕ್ ದೋಷವು ತಪ್ಪಿಹೋಗಬಹುದಿತ್ತು.
ವಿರೋಧಾತ್ಮಕ ವಾದಗಳು ಮತ್ತು ಮುಕ್ತ ಪ್ರಶ್ನೆಗಳು
- Reliability (ವಿಶ್ವಾಸಾರ್ಹತೆ): Assembly ಪ್ರೋಗ್ರಾಮಿಂಗ್ ತುಂಬಾ ಕಠಿಣವಾದದ್ದು; ಒಂದು ಸಣ್ಣ ತಪ್ಪು ಕೂಡ ಇಡೀ ಪ್ರೋಗ್ರಾಂ ಅನ್ನು ಕ್ರ್ಯಾಶ್ ಮಾಡಬಹುದು. Codex ತಾನು ಕಂಡ ಬಗ್ಗಳನ್ನು ಸರಿಪಡಿಸಿತು, ಆದರೆ ಸ್ಟ್ರೆಸ್ ಟೆಸ್ಟಿಂಗ್ ಅಡಿಯಲ್ಲಿ ಮಾತ್ರ ಕಾಣಿಸಿಕೊಳ್ಳುವ ಸೂಕ್ಷ್ಮ ಸಮಯದ (timing) ಸಮಸ್ಯೆಗಳನ್ನು ಅದು ತಪ್ಪಿಸಬಹುದು.
- Maintainability (ನಿರ್ವಹಣೆ): ಮಾನವ ಶೈಲಿಯ ಮಾರ್ಗಸೂಚಿಗಳಿಲ್ಲದೆ ರಚಿಸಲಾದ ಕೋಡ್ ಅನ್ನು ಭವಿಷ್ಯದ ಡೆವಲಪರ್ಗಳು ಓದಲು ಅಥವಾ ವಿಸ್ತರಿಸಲು ಕಷ್ಟವಾಗಬಹುದು, ವಿಶೇಷವಾಗಿ ಎಐ ನ ನಾಮಕರಣ ಪದ್ಧತಿಗಳು ತಂಡದ ಮಾನದಂಡಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿದ್ದರೆ.
- Intellectual property (ಬೌದ್ಧಿಕ ಆಸ್ತಿ): ಎಐ ಕೋಡ್ ಬರೆದಾಗ ಅದರ ಮಾಲೀಕ ಯಾರು? ಪ್ರಸ್ತುತ ಲೈಸೆನ್ಸಿಂಗ್ ಚೌಕಟ್ಟುಗಳು ಮಾನವನ ಕರ್ತೃತ್ವವನ್ನು ಪರಿಗಣಿಸುತ್ತವೆ, ಇದು ಎಐ ನಿರ್ಮಿತ ವಸ್ತುಗಳಿಗೆ ಒಂದು ಅಸ್ಪಷ್ಟ ಪ್ರದೇಶವನ್ನು (gray area) ಬಿಡುತ್ತದೆ.
ಮುಂದೆ ಏನನ್ನು ಗಮನಿಸಬೇಕು
- ವ್ಯಾಪಕ ಬೆಂಚ್ಮಾರ್ಕ್ಗಳು: ನೆಟ್ವರ್ಕ್ಡ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು, ಮೊಬೈಲ್ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಅಥವಾ ಆಧುನಿಕ C/C++ ಪ್ರಾಜೆಕ್ಟ್ಗಳಿಗೆ ಇದೇ ಸ್ವತಂತ್ರ ಕಾರ್ಯವಿಧಾನವನ್ನು ಅನ್ವಯಿಸುವುದು, ಈ ವಿಧಾನವು ರೆಟ್ರೋ-ಶೈಲಿಯ ಗೇಮ್ಗಳ ಆಚೆಗೂ ವಿಸ್ತರಿಸಬಲ್ಲದೇ ಎಂದು ಪರೀಕ್ಷಿಸುತ್ತದೆ.
- ಟೂಲ್ ಇಂಟಿಗ್ರೇಷನ್: Codex ಅನ್ನು CI/CD ಪೈಪ್ಲೈನ್ಗಳಿಗೆ ಅಳವಡಿಸುವುದರಿಂದ ಕೇವಲ ಕೋಡ್ ಉತ್ಪಾದನೆಯನ್ನಷ್ಟೇ ಅಲ್ಲದೆ, ಟೆಸ್ಟಿಂಗ್, ಸೆಕ್ಯೂರಿಟಿ ಸ್ಕ್ಯಾನಿಂಗ್ ಮತ್ತು ಡಿಪ್ಲಾಯ್ಮೆಂಟ್ ಅನ್ನು ಸಹ ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸಬಹುದು.
- ನೀತಿಗಳ ವಿಕಸನ: ಎಐ-ನಿರ್ಮಿತ ಕೋಡ್ ಹೆಚ್ಚಾದಂತೆ, ಮಾಲೀಕತ್ವ, ಹೊಣೆಗಾರಿಕೆ ಮತ್ತು ಅನುಸರಣೆಯ ಬಗ್ಗೆ ಕಾನೂನು ಮತ್ತು ಕಾರ್ಪೊರೇಟ್ ನೀತಿಗಳು ಸ್ಪಷ್ಟವಾಗಿರಬೇಕಾಗುತ್ತದೆ.
ಇದರ ಸಾರಾಂಶ ಸ್ಪಷ್ಟವಾಗಿದೆ: AI ಈಗ ಸ್ಪಷ್ಟವಾಗಿ ವ್ಯಾಖ್ಯಾನಿಸಲಾದ ಮತ್ತು ಮಿತಿಯೊಳಗಿನ ಯೋಜನೆಗಳಿಗಾಗಿ ಒಬ್ಬಂಟಿ ಸಾಫ್ಟ್ವೇರ್ ಎಂಜಿನಿಯರ್ ಆಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸಬಲ್ಲದು, ಅಂದರೆ ಮಾನವನ ಹಸ್ತಚಾಲಿತ ಕೋಡಿಂಗ್ ಇಲ್ಲದೆಯೇ ಕಾರ್ಯಗತಗೊಳಿಸುವ low-level code ಅನ್ನು ನೀಡಬಲ್ಲದು. ಆ ಸಾಮರ್ಥ್ಯವು ಮುಖ್ಯವಾಹಿನಿ ಅಭಿವೃದ್ಧಿಯನ್ನು ಮರುರೂಪಿಸುತ್ತದೆಯೇ ಎಂಬುದು, ಪರಿಸರ ವ್ಯವಸ್ಥೆಯು ವಿಶ್ವಾಸಾರ್ಹತೆ, ನಿರ್ವಹಣಾ ಸಾಮರ್ಥ್ಯ ಮತ್ತು ಕಾನೂನುపరಕವಾದ ಕಾಳಜಿಗಳನ್ನು ಎಷ್ಟು ವೇಗವಾಗಿ ಪರಿಹರಿಸುತ್ತದೆ ಎಂಬುದರ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ.
