𝗦𝗽𝗿𝗶𝗻𝗴 𝗔𝗜: 𝗧𝗵𝗲 𝗦𝗲𝗻𝗶𝗼𝗿 𝗗𝗲𝘃'𝘀 𝗛𝗼𝗻𝗲𝘀𝘁 𝗧𝗮𝗸𝗲
Java ಡೆವಲಪರ್ಗಳು AI ಎಂದರೆ Python ಗೆ ಬದಲಾಗುವುದು ಎಂದು ಭಾವಿಸಿದ್ದರು. ಆ ಊಹೆಯು ತಪ್ಪಾಗಿತ್ತು.
ದೀರ್ಘಕಾಲದವರೆಗೆ, AI ಪರಿಸರ ವ್ಯವಸ್ಥೆಯು ಕೇವಲ Python ಗೆ ಸೀಮಿತವಾಗಿದೆ ಎಂದು ಅನಿಸುತ್ತಿತ್ತು. ನೀವು ಎಂಟರ್ಪ್ರೈಸ್ Java ಸಿಸ್ಟಮ್ಗಳನ್ನು ನಡೆಸುತ್ತಿದ್ದರೆ, ನೀವು ಹಿಂದೆ ಉಳಿದಿದ್ದೇವೆ ಎಂದು ಭಾವಿಸಿರಬಹುದು. ನೀವು ಕಠಿಣ ನಿರ್ಧಾರ ಎದುರಿಸಬೇಕಾಯಿತು: ನಿಮ್ಮ Spring Boot microservices ಅನ್ನು ಹಾಗೆಯೇ ಇರಿಸಿಕೊಳ್ಳಬೇಕೆ ಅಥವಾ LLM ಕರೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಒಂದು Python sidecar ಅನ್ನು ನಿರ್ಮಿಸಬೇಕೆ?
Spring AI ಇದನ್ನು ಬದಲಾಯಿಸುತ್ತದೆ. ಇದು ನಿಮಗೆ ಈಗಾಗಲೇ ತಿಳಿದಿರುವ ಪ್ಯಾಟರ್ನ್ಗಳನ್ನು ಬಳಸಿಕೊಂಡು Spring container ಗೆ AI ಅನ್ನು ತರುತ್ತದೆ.
Spring AI ಎಂದರೇನು?
ಇದು Java ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು AI ಮಾಡೆಲ್ಗಳೊಂದಿಗೆ ಸಂಪರ್ಕಿಸುವ ಒಂದು ಅಪ್ಲಿಕೇಶನ್ ಫ್ರೇಮ್ವರ್ಕ್ ಆಗಿದೆ. ಇದು Spring Data ನಂತೆಯೇ ತತ್ವಗಳನ್ನು ಬಳಸುತ್ತದೆ. ನೀವು AI ವೆಂಡರ್ಗಳನ್ನು ಬದಲಾಯಿಸಿದಾಗ ನಿಮ್ಮ ಕೋಡ್ ಬದಲಾಗದಂತೆ ಮಾಡಲು ನೀವು abstractions ಬಳಸುತ್ತೀರಿ.
ಪ್ರಮುಖ ಅಂಶಗಳು:
- OpenAI, Anthropic ಮತ್ತು Google ನಂತಹ 20ಕ್ಕೂ ಹೆಚ್ಚು ಮಾಡೆಲ್ ಪ್ರೊವೈಡರ್ಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ.
- PostgreSQL ಮತ್ತು Pinecone ನಂತಹ 12ಕ್ಕೂ ಹೆಚ್ಚು vector stores ಗಳನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ.
- ಅಂತರ್ಗತ RAG, tool calling ಮತ್ತು chat memory ಅನ್ನು ಒದಗಿಸುತ್ತದೆ.
- Model Context Protocol (MCP) ನೊಂದಿಗೆ ಸಂಯೋಜಿಸುತ್ತದೆ.
ಇದು ನಿಮ್ಮ ತಂಡಕ್ಕೆ ಏಕೆ ಮುಖ್ಯ:
ನೀವು LLM ಗೆ ನೇರವಾದ (raw) HTTP ಕರೆಗಳನ್ನು ಬರೆಯುವ ಅಗತ್ಯವಿಲ್ಲ. ನೀವು Spring Boot ಬಳಸುತ್ತಿದ್ದರೆ, ಮಾಡೆಲ್ಗಳೊಂದಿಗೆ ಸಂವಹನ ನಡೆಸಲು ChatClient ಅನ್ನು ಬಳಸಬಹುದು. ಒಂದು ಸರಳ ಕಾನ್ಫಿಗರೇಶನ್ ಫೈಲ್ ಅನ್ನು ಬದಲಾಯಿಸುವ ಮೂಲಕ ನೀವು ಮಾಡೆಲ್ಗಳನ್ನು ಬದಲಾಯಿಸಬಹುದು. ನಿಮ್ಮ ಬಿಸಿನೆಸ್ ಲಾಜಿಕ್ ಹಾಗೆಯೇ ಇರುತ್ತದೆ.
Spring AI vs LangChain4j:
ನಿಮ್ಮ ಪ್ರಸ್ತುತ ಸ್ಟ್ಯಾಕ್ (stack) ಆಧಾರದ ಮೇಲೆ ನೀವು ಆಯ್ಕೆ ಮಾಡಬೇಕು:
- ನಿಮ್ಮ ತಂಡವು Spring Boot ಬಳಸುತ್ತಿದ್ದರೆ Spring AI ಬಳಸಿ. ಇದು ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ observability ಮತ್ತು security ಪರಿಕರಗಳಿಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ.
- ನೀವು Quarkus, Micronaut ಬಳಸುತ್ತಿದ್ದರೆ ಅಥವಾ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ AI ಪ್ರೊವೈಡರ್ಗಳ ಪಟ್ಟಿ ಬೇಕಿದ್ದರೆ LangChain4j ಬಳಸಿ.
ಒಟ್ಟಾರೆಯಾಗಿ ಹೇಳುವುದಾದರೆ:
Java ಅನ್ನು AI ಬದಲಾಯಿಸುತ್ತಿಲ್ಲ. Java, AI ಅನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳುತ್ತಿದೆ. Spring AI ನೀವು ನಂಬುವ ಪರಿಸರ ವ್ಯವಸ್ಥೆಯನ್ನು ಬಿಡದೆಯೇ ಪ್ರೊಡಕ್ಷನ್-ಗ್ರೇಡ್ ಏಜೆಂಟಿಕ್ ಸಿಸ್ಟಮ್ಗಳನ್ನು (agentic systems) ನಿರ್ಮಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
ನೀವು Spring ತಂಡದಲ್ಲಿದ್ದರೆ, ಸಣ್ಣದಾಗಿ ಪ್ರಾರಂಭಿಸಿ. ಒಂದು ಪ್ರೊವೈಡರ್ನೊಂದಿಗೆ ChatClient ಬಳಸಿ. ಡಾಕ್ಯುಮೆಂಟ್ ರಿಟ್ರಿೀವಲ್ ಅಗತ್ಯವಿದ್ದಾಗ vector stores ಅನ್ನು ಸೇರಿಸಿ. ನಿಮ್ಮ AI ಸಾಮರ್ಥ್ಯಗಳನ್ನು ಹಂತ ಹಂತವಾಗಿ ನಿರ್ಮಿಸಿ.
Source: https://dev.to/sayed_ali_alkamel/spring-ai-the-senior-devs-honest-take-on-javas-ai-moment-2g9c
Optional learning community: https://t.me/GyaanSetuAi