Groq ಯಾಕೆ ಮೋಸ ಮಾಡಿದಂತೆ ಭಾಸವಾಗುತ್ತದೆ
ನಾನು ಇತ್ತೀಚೆಗೆ LangGraph ಬಳಸಿ ಒಂದು multi-agent pipeline ಅನ್ನು ನಿರ್ಮಿಸಿದೆ. ನಾನು Groq ಅನ್ನು ಸಾಮಾನ್ಯ LLM ಪ್ರೊವೈಡರ್ಗಳೊಂದಿಗೆ ಹೋಲಿಸಿ ನೋಡಿದೆ. ವ್ಯತ್ಯಾಸವು ಬಹಳ ದೊಡ್ಡದಾಗಿತ್ತು.
ಇತರ ಪ್ರೊವೈಡರ್ಗಳು ಸಾಮಾನ್ಯ API call ನಂತೆ ಭಾಸವಾಗುತ್ತವೆ. ನೀವು ಒಂದು ರಿಕ್ವೆಸ್ಟ್ ಕಳುಹಿಸಿ ಪಠ್ಯಕ್ಕಾಗಿ ಕಾಯಬೇಕಾಗುತ್ತದೆ. ಆದರೆ Groq ಮೋಸ ಮಾಡಿದಂತೆ ಭಾಸವಾಗುತ್ತದೆ. ನಾನು ನನ್ನ ಪ್ರಾಂಪ್ಟ್ ಓದಿ ಮುಗಿಸುವ ಮೊದಲೇ 70B ಮಾಡೆಲ್ ಪೂರ್ಣ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ನೀಡಿತು.
Groq ಬಳಿ ಉತ್ತಮ GPUಗಳಿವೆ ಎಂದು ಹೆಚ್ಚಿನ ಜನರು ಭಾವಿಸುತ್ತಾರೆ. ಅದು ತಪ್ಪು. Groq ಯಾವುದೇ GPUಗಳನ್ನು ಬಳಸುವುದಿಲ್ಲ. ಅವರು LPU ಅಥವಾ Language Processing Unit ಎಂಬ ಹೊಸ ಚಿಪ್ ಅನ್ನು ನಿರ್ಮಿಸಿದ್ದಾರೆ.
GPUಗಳನ್ನು ಗ್ರಾಫಿಕ್ಸ್ ಮತ್ತು ಮಾಡೆಲ್ಗಳ ತರಬೇತಿಗಾಗಿ (training) ತಯಾರಿಸಲಾಗಿದೆ. ನೀವು ಬೃಹತ್ ಪ್ರಮಾಣದ ಡೇಟಾ ಬ್ಯಾಚ್ಗಳನ್ನು ಪ್ರೊಸೆಸ್ ಮಾಡುವಾಗ ಅವು ಚೆನ್ನಾಗಿ ಕೆಲಸ ಮಾಡುತ್ತವೆ. ಆದರೆ ಅವುಗಳೆಲ್ಲಾ real-time inference ಮಾಡುವಾಗ ಕಷ್ಟಪಡುತ್ತವೆ.
ಸಮಸ್ಯೆ ಎಂದರೆ "memory wall". GPUಯಲ್ಲಿ, ಮಾಡೆಲ್ ತೂಕಗಳು (weights) ಕಂಪ್ಯೂಟ್ ಕೋರ್ಗಳಿಂದ ಬೇರೆಯಾದ ಮೆಮೊರಿಯಲ್ಲಿರುತ್ತವೆ. ಡೇಟಾ ಬರುವವರೆಗೆ ಚಿಪ್ ಹೆಚ್ಚಿನ ಸಮಯ ಕಾಯಬೇಕಾಗುತ್ತದೆ.
Groq ಮೆಮೊರಿಯನ್ನು ನೇರವಾಗಿ ಚಿಪ್ ಮೇಲೆ ಇರಿಸುವ ಮೂಲಕ ಇದನ್ನು ಪರಿಹರಿಸಿದೆ. ಅವರು HBM ಬದಲಿಗೆ SRAM ಅನ್ನು ಬಳಸುತ್ತಾರೆ. ಇದು bandwidth ನಲ್ಲಿ 10x ಅಂತರವನ್ನು ಸೃಷ್ಟಿಸುತ್ತದೆ. ಲೇಟೆನ್ಸಿಯನ್ನು (latency) ಪರಿಗಣಿಸಿದಾಗ ಇದು ಡೇಟಾ ಪ್ರವೇಶವನ್ನು 20x ವೇಗಗೊಳಿಸುತ್ತದೆ.
ಈ ವೇಗಕ್ಕೆ ಮತ್ತೊಂದು ಕಾರಣವಿದೆ: determinism.
GPUಗಳು dynamic scheduling ಅನ್ನು ಬಳಸುತ್ತವೆ. ಚಿಪ್ ಚಾಲನೆಯಲ್ಲಿರುವಾಗ ಏನು ಮಾಡಬೇಕೆಂದು ತಾನೇ ನಿರ್ಧರಿಸುತ್ತದೆ. ಇದು ಸಣ್ಣ ವಿಳಂಬಗಳನ್ನು ಉಂಟುಮಾಡುತ್ತದೆ. Groq 'software-first' ವಿಧಾನವನ್ನು ಬಳಸುತ್ತದೆ. ಅವರ compiler ಪ್ರತಿಯೊಂದು ಆಪರೇಷನ್ ಮತ್ತು ಇನ್ಸ್ಟ್ರಕ್ಷನ್ ಅನ್ನು ಮೊದಲೇ ಲೆಕ್ಕಾಚಾರ ಮಾಡುತ್ತದೆ. ಚಿಪ್ ಮೊದಲೇ ನಿಗದಿಪಡಿಸಿದ ವೇಳಾಪಟ್ಟಿಯನ್ನು ಅನುಸರಿಸುತ್ತದೆ. ಅದಕ್ಕೆ ಮುಂದೆ ಏನು ಮಾಡಬೇಕೆಂದು ಯೋಚಿಸುವ ಅಗತ್ಯವಿಲ್ಲ.
ಫಲಿತಾಂಶಗಳೇ ಸಾಕ್ಷಿ: • Groq ನಲ್ಲಿ Llama 2 70B ಸೆಕೆಂಡಿಗೆ 300 ಟೋಕನ್ಗಳ ವೇಗದಲ್ಲಿ ಚಲಿಸುತ್ತದೆ. • Nvidia H100 ನಲ್ಲಿ ಇದು ಸೆಕೆಂಡಿಗೆ 30–40 ಟೋಕನ್ಗಳ ವೇಗದಲ್ಲಿ ಚಲಿಸುತ್ತದೆ. • Groq ನಲ್ಲಿ Llama 3 8B ಸೆಕೆಂಡಿಗೆ 1,300 ಕ್ಕೂ ಹೆಚ್ಚು ಟೋಕನ್ಗಳ ವೇಗವನ್ನು ತಲುಪುತ್ತದೆ.
Groq ಹೆಚ್ಚು ದಕ್ಷತೆಯನ್ನೂ ಹೊಂದಿದೆ. ಇದು ಕೆಲಸವನ್ನು ಬಹಳ ವೇಗವಾಗಿ ಮುಗಿಸುವುದರಿಂದ ಪ್ರತಿ ಟೋಕನ್ಗೆ ಕಡಿಮೆ ಒಟ್ಟು ಶಕ್ತಿಯನ್ನು ಬಳಸುತ್ತದೆ.
ಈ ವಿನ್ಯಾಸದಲ್ಲಿ ಕೆಲವು ಮಿತಿಗಳಿವೆ (tradeoffs). SRAM ದುಬಾರಿಯಾಗಿದೆ ಮತ್ತು ಹೆಚ್ಚಿನ ಸ್ಥಳವನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ. ಒಂದು ಚಿಪ್ ದೊಡ್ಡ ಮಾಡೆಲ್ ಅನ್ನು ಹಿಡಿದಿಟ್ಟುಕೊಳ್ಳಲು ಸಾಧ್ಯವಿಲ್ಲ. ದೊಡ್ಡ ಮಾಡೆಲ್ಗಳನ್ನು ನೀಡಲು ನೂರಾರು LPUಗಳು ಒಟ್ಟಾಗಿ ಕೆಲಸ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಇದು ಹಾರ್ಡ್ವೇರ್ ಅನ್ನು GPUಗಳಿಗಿಂತ ಹೆಚ್ಚು ದುಬಾರಿಯಾಗಿಸುತ್ತದೆ.
Groq ಮಾಡೆಲ್ಗಳನ್ನು ತರಬೇತಿ ಮಾಡಲು ಪ್ರಯತ್ನಿಸುತ್ತಿಲ್ಲ. ಅವರು Llama ಅಥವಾ Mixtral ನಂತಹ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಮಾಡೆಲ್ಗಳನ್ನು ಸಾಧ್ಯವಾದಷ್ಟು ವೇಗವಾಗಿ ಚಲಾಯಿಸುವುದರ ಮೇಲೆ ಗಮನ ಹರಿಸುತ್ತಾರೆ.
ಉದ್ಯಮವು ಎರಡನ್ನೂ ಬಳಸುವತ್ತ ಸಾಗುತ್ತಿದೆ. GPUಗಳು ಭಾರೀ ತರಬೇತಿ ಮತ್ತು ಆರಂಭಿಕ ಪ್ರೊಸೆಸಿಂಗ್ ಅನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ. LPUಗಳು ವೇಗದ, real-time ಸಂಭಾಷಣೆಯನ್ನು ನಿರ್ವಹಿಸುತ್ತವೆ.
Nvidia ಒಟ್ಟು ಕಂಪ್ಯೂಟೇಶನ್ಗಾಗಿ (computation) ಆಪ್ಟಿಮೈಸ್ ಆಗಿದೆ. Groq ಕಂಪ್ಯೂಟ್ ಎಂದಿಗೂ ಡೇಟಾಕ್ಕಾಗಿ ಕಾಯದಂತೆ ನೋಡಿಕೊಳ್ಳಲು ಆಪ್ಟಿಮೈಸ್ ಆಗಿದೆ. Real-time AI ಏಜೆಂಟ್ಗಳಿಗೆ, ಎರಡನೇ ಗುರಿಯೇ ಮುಖ್ಯವಾದುದು.
Source: https://dev.to/priyanshu79/why-groq-feels-like-cheating-29hm
Optional learning community: https://t.me/GyaanSetuAi
