ಪರಿಚಯ: ವೇಗದ ಬಲೆ
AI ಅನುಮಾನದಲ್ಲಿ “ವೇಗ”ದ ಬಗ್ಗೆ ಹೇಳುವುದಾದರೆ, ಎಲ್ಲರಿಗೂ ಅದು ಬೇಕು, ಆದರೆ ಅದರ ಅರ್ಥವೇನು ಎಂದು ಯಾರಿಗೂ ತಿಳಿದಿಲ್ಲ. ಒಬ್ಬ ಬಳಕೆದಾರನಿಗೆ ಕಡಿಮೆ ಲೇಟೆನ್ಸಿ ಬೇಕೆ? ಹಲವಾರು ವಿನಂತಿಗಳ ಮೂಲಕ ಹೆಚ್ಚಿನ ಥ್ರೋಪುಟ್ ಬೇಕೆ? ಪ್ರತಿ ಡಾಲರ್ಗೆ ಉತ್ತಮ ಟೋಕನ್ಗಳು ಬೇಕೆ? ಅಥವಾ ನಿಮ್ಮ ಡೆಮೊ VP ಮುಂದೆ ಸಾಯದಿರಲು ಕಡಿಮೆ ಟೈಮ್ಔಟ್ಗಳು ಬೇಕೆ? "SGL vs vLLM" ಎನ್ನುವುದು ಹ್ಯಾಕರ್ ನ್ಯೂಸ್ನಲ್ಲಿ ಸರಳವಾಗಿ ಕಾಣುವ ಹೋಲಿಕೆಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ ಮತ್ತು ಜನರು ನಿಜವಾಗಿ ಬಳಸುವಂತಹದ್ದನ್ನು ನೀವು ಸಾಗಿಸಲು ಪ್ರಯತ್ನಿಸಿದಾಗ ಗೋಜಲಾಗುತ್ತದೆ.
ನಾವು ಸರ್ವಿಂಗ್ ಫ್ರೇಮ್ವರ್ಕ್ಗಳನ್ನು ಕಾಗದದ ಟವೆಲ್ಗಳ ಬ್ರ್ಯಾಂಡ್ಗಳಂತೆ ಪರಿಗಣಿಸಲು ತರಬೇತಿ ನೀಡಿದ್ದೇವೆ: ಅವೆಲ್ಲವೂ ಚೆಲ್ಲಿದ ದ್ರವವನ್ನು ಹೀರಿಕೊಳ್ಳುತ್ತವೆ, ಕೇವಲ “ಹೆಚ್ಚುವರಿ-ಹೀರಿಕೊಳ್ಳುವ” ಒಂದನ್ನು ಆರಿಸಿಕೊಳ್ಳಿ. ಪ್ರಾಯೋಗಿಕವಾಗಿ, SGL ಮತ್ತು vLLM ವಿಭಿನ್ನ ರೀತಿಯ ಮಾಪ್ಗಳಾಗಿವೆ. ಅವು ವಿಭಿನ್ನ ಭೌತಶಾಸ್ತ್ರದೊಂದಿಗೆ ಒಂದೇ ರೀತಿಯ ಗೊಂದಲಗಳನ್ನು ಪರಿಹರಿಸುತ್ತವೆ—ಮತ್ತು ನಿಮ್ಮ GPU ಗಳು ಕರಗುತ್ತಿರುವಾಗ ವಿನಂತಿ ವೇಳಾಪಟ್ಟಿ ಹೇಗೆ ಕಾರ್ಯನಿರ್ವಹಿಸಬೇಕು ಎಂಬುದರ ಕುರಿತು ವಿಚಿತ್ರವಾದ ಅಭಿಪ್ರಾಯಗಳನ್ನು ಹೊಂದಿವೆ.
ಬನ್ನಿ, ಪ್ರಚಾರವನ್ನು ಕಡಿಮೆ ಮಾಡೋಣ, ಊಹೆಗಳನ್ನು ಕೆಣಕೋಣ ಮತ್ತು SGL vs vLLM ನಿಜವಾಗಿ ಎಲ್ಲಿ ಭಿನ್ನವಾಗುತ್ತವೆ ಎಂಬುದರ ಬಗ್ಗೆ ಮಾತನಾಡೋಣ—ಮತ್ತು ನೀವು ಇನ್ನೂ "ತಪ್ಪಾದ" ಒಂದನ್ನು ಏಕೆ ಆರಿಸಿಕೊಳ್ಳಬಹುದು ಮತ್ತು ಸರಿಯಾಗಿರಬಹುದು ಎಂಬುದನ್ನು ತಿಳಿಯೋಣ.
SGL vs vLLM: ನಿಜವಾಗಿ ಪ್ರಶ್ನೆ ಏನು?
- ನಿಮ್ಮ ಕೀವರ್ಡ್ ಡಯೆಟ್ "SGL vs vLLM" ಆಗಿದ್ದರೆ, ನಿಮ್ಮ ನಿಜವಾದ ಪ್ರಶ್ನೆ ಬಹುಶಃ: ಕಡಿಮೆ ನಾಟಕದೊಂದಿಗೆ ಒಂದೇ GPU ನಿಂದ ಯಾವ ಸರ್ವರ್ ಹೆಚ್ಚು ಟೋಕನ್ಗಳನ್ನು ಹೊರತೆಗೆಯುತ್ತದೆ?
- ಅಥವಾ: ಥ್ರೋಪುಟ್ ಅನ್ನು ಕುಂಬಳಕಾಯಿಯನ್ನಾಗಿ ಮಾಡದೆ ಸಂವಾದಾತ್ಮಕ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಯಾವುದು ನನ್ನ ಮಾದರಿಯನ್ನು ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕವಾಗಿ ಮಾಡುತ್ತದೆ?
- ಅಥವಾ, ಹೆಚ್ಚು ಪ್ರಾಮಾಣಿಕವಾಗಿ: ಯಾವುದನ್ನು ನಾನು ಶುಕ್ರವಾರದೊಳಗೆ ನಿಯೋಜಿಸಬಹುದು ಮತ್ತು ಸೋಮವಾರ ವಿಷಾದಿಸುವುದಿಲ್ಲ?
ಅದು ಚೌಕಟ್ಟು. ವಿವರಗಳು ಮುಖ್ಯ, ಆದರೆ ಸಮಾನವಾಗಿ ಅಲ್ಲ.
vLLM ಯಾವುದಕ್ಕಾಗಿ ಆಪ್ಟಿಮೈಸ್ ಆಗಿದೆ (ಮತ್ತು ಅದು ಏನು ಅಲ್ಲ)
vLLM ನ ಬ್ರ್ಯಾಂಡ್ ಎಂದರೆ ಮೆದುಳಿನೊಂದಿಗೆ ಥ್ರೋಪುಟ್. ಪ್ರಮುಖ ವೈಶಿಷ್ಟ್ಯವೆಂದರೆ PagedAttention, ಇದು VRAM ಪೇಜಿಂಗ್ ಯೋಜನೆಯಾಗಿದ್ದು, KV ಸಂಗ್ರಹವನ್ನು ಜಂಕ್ ಡ್ರಾಯರ್ ಬದಲಿಗೆ ಮೆಮೊರಿ-ನಿರ್ವಹಣಾ ವ್ಯವಸ್ಥೆಯಂತೆ ಪರಿಗಣಿಸುತ್ತದೆ. ಪ್ಯಾಡಿಂಗ್ ಮತ್ತು ಸೋಮಾರಿ ಸನ್ನಿವೇಶಗಳಲ್ಲಿ ಅಮೂಲ್ಯವಾದ GPU ಮೆಮೊರಿಯನ್ನು ವ್ಯರ್ಥ ಮಾಡದೆ ನೀವು ಬಹಳಷ್ಟು ಏಕಕಾಲಿಕ ವಿನಂತಿಗಳನ್ನು ಪ್ಯಾಕ್ ಮಾಡಬಹುದು. ಕ್ಯೂಯಿಂಗ್ ವ್ಯವಸ್ಥೆಯನ್ನು ಬ್ಯಾಚ್ ಮಾಡಿದ, ಏಕಕಾಲಿಕ ಉತ್ಪಾದನೆಗಾಗಿ ಆಪ್ಟಿಮೈಸ್ ಮಾಡಲಾಗಿದೆ—ಅನೇಕ ಬಳಕೆದಾರರು, ಅನೇಕ ಚಾಟ್ಗಳು ಅಥವಾ API ಎಂಡ್ಪಾಯಿಂಟ್ ಸಣ್ಣ ಮತ್ತು ಮಧ್ಯಮ ವಿನಂತಿಗಳಿಂದ ಹೊಡೆತ ತಿನ್ನುತ್ತದೆ ಎಂದು ಭಾವಿಸಿ.
ಸರಳ ಇಂಗ್ಲಿಷ್ನಲ್ಲಿ: vLLM ಮೆಮೊರಿ ಮತ್ತು ವೇಳಾಪಟ್ಟಿಯ ಬಗ್ಗೆ ಚುರುಕಾಗಿರುವುದರಿಂದ ಪ್ರತಿ GPU ಗೆ ನಿಮಗೆ ಹೆಚ್ಚು ಏಕಕಾಲಿಕ ಉತ್ಪಾದನೆಯನ್ನು ನೀಡುತ್ತದೆ. ಇದು ಒಳ್ಳೆಯ ರೀತಿಯಲ್ಲಿ ನೀರಸವಾಗಿದೆ—ಸಂಪ್ರದಾಯವಾದಿ ಡೀಫಾಲ್ಟ್ಗಳು, ಘನ ಕಾರ್ಯಕ್ಷಮತೆ ಮತ್ತು ಸಾಮಾನ್ಯ ಆಕಾರಗಳಿಗೆ ಕೇವಲ ಕೆಲಸ ಮಾಡುವ ಪ್ರವೃತ್ತಿ.
ಇದು ನಿಮ್ಮನ್ನು ಎಲ್ಲಿ ಕಚ್ಚುತ್ತದೆ: ಅಲ್ಟ್ರಾ-ಕಡಿಮೆ-ಲೇಟೆನ್ಸಿ ಸಂವಾದಾತ್ಮಕ UX (ಏಕ-ಬಳಕೆದಾರ ಬಿಗಿಯಾದ ಲೂಪ್ಗಳು), ವಿಚಿತ್ರ ಆಕಾರದ ಪ್ರಾಂಪ್ಟ್ಗಳು (ದೈತ್ಯ ಇನ್ಪುಟ್ + ಸಣ್ಣ ಔಟ್ಪುಟ್, ಅಥವಾ ಅದರ ವಿರುದ್ಧ), ಮತ್ತು ಸೂಕ್ಷ್ಮವಾದ ವಿಸ್ತರಣೆಗಳು (ಕಸ್ಟಮ್ ಲೇಯರ್ಗಳು, ಬೆಸ್ಪೋಕ್ ಕ್ವಾಂಟೈಸೇಶನ್, ಅಥವಾ ಬ್ಲೀಡಿಂಗ್-ಎಡ್ಜ್ ಸ್ಯಾಂಪ್ಲಿಂಗ್ ತಂತ್ರಗಳು) ಕೆಲವೊಮ್ಮೆ vLLM ನ ಗಾರ್ಡ್ರೈಲ್ಗಳಿಗೆ ವಿರುದ್ಧವಾಗಿ ಉಜ್ಜುತ್ತವೆ. ಇದು ಹೆಚ್ಚಿನ ತಂಡಗಳಿಗೆ ಸಾಗಿಸಬಹುದಾದ ಆಧಾರವಾಗಿದೆ—ನೀವು ಅಂಚನ್ನು ಹೊಡೆಯುವವರೆಗೆ ಮತ್ತು ಬೇಸ್ಲೈನ್ ಏಕೆ ಅಸ್ತಿತ್ವದಲ್ಲಿದೆ ಎಂಬುದನ್ನು ಕಂಡುಹಿಡಿಯುವವರೆಗೆ.
SGL ಯಾವುದಕ್ಕಾಗಿ ಆಪ್ಟಿಮೈಸ್ ಆಗಿದೆ (ಮತ್ತು ಅದು ಏಕೆ ಆಸಕ್ತಿದಾಯಕವಾಗಿದೆ)
SGL ನ ಪಿಚ್ ಸ್ವಲ್ಪ ಹೆಚ್ಚು ಗರಿಷ್ಠವಾಗಿದೆ: ಸ್ಮಾರ್ಟ್ ವೇಳಾಪಟ್ಟಿಯನ್ನು ಬಳಸಿಕೊಂಡು ಲೇಟೆನ್ಸಿ ಮತ್ತು ಥ್ರೋಪುಟ್ ಎರಡನ್ನೂ ಸ್ಕ್ವೀಝ್ ಮಾಡಿ—ಹೆಚ್ಚು ಡೈನಾಮಿಕ್ ಪ್ರಿಂಪ್ಟೇಶನ್, ಉತ್ತಮವಾದ ಹಂಚಿಕೆ ಮತ್ತು ಏಕಕಾಲಿಕ ವಿನಂತಿಗಳನ್ನು ಜಗ್ಲಿಂಗ್ ಮಾಡಲು ಸಿದ್ಧರಿರುವುದರಿಂದ ಯಾವುದೇ ಒಂದು ವಿನಂತಿಯು ಹಸಿವಿನಿಂದ ಬಳಲದಂತೆ ಹಿಂಡು ವೇಗವಾಗಿ ಚಲಿಸುತ್ತದೆ. vLLM ನ ಮೆಮೊರಿ ಮಾದರಿಯು ಅದರ ಕರೆ ಮಾಡುವ ಕಾರ್ಡ್ ಆಗಿದ್ದರೆ, SGL ನ ವೇಳಾಪಟ್ಟಿಯು ಅದರದ್ದಾಗಿದೆ. VRAM ಗೆ ಹೆಚ್ಚಿನದನ್ನು ಪ್ಯಾಕ್ ಮಾಡುವುದು ಮಾತ್ರ ಗುರಿಯಲ್ಲ, ಆದರೆ ದೀರ್ಘ ಸನ್ನಿವೇಶಗಳು ಕಡಲತೀರದ ತಿಮಿಂಗಿಲದಂತೆ ಕುಳಿತುಕೊಳ್ಳಲು ಬಿಡದೆ GPU ನ ಕಂಪ್ಯೂಟ್ ಲೇನ್ಗಳನ್ನು ಫೀಡ್ ಮಾಡುವುದು, ಆದರೆ ಸಣ್ಣ ವಿನಂತಿಗಳು ಕಾಯುತ್ತಿರುತ್ತವೆ.
ಪ್ರಾಯೋಗಿಕವಾಗಿ, SGL ಸಾಮಾನ್ಯವಾಗಿ ಸ್ಪೈಕಿಯಾಗಿರುವ ಅಥವಾ ಮಿಶ್ರವಾಗಿರುವ ಕೆಲಸದ ಹೊರೆಯು ಇದ್ದಾಗ ಹೊಳೆಯುತ್ತದೆ—ಕೆಲವು ದೊಡ್ಡ ಪ್ರಾಂಪ್ಟ್ಗಳು, ಕೆಲವು ಸಣ್ಣ ಪ್ರತಿಕ್ರಿಯೆಗಳು, ಟ್ರಾಫಿಕ್ನ ಸ್ಫೋಟಗಳು ಮತ್ತು ಲೇಟೆನ್ಸಿ ಸ್ಪೈಕ್ಗಳು UX ಕೊಲೆಗಾರರಾಗಿರುವ ಸಂವಾದಾತ್ಮಕ ಸೆಷನ್ಗಳು. ಇದು "ಸಂದಣಿಯ ಕಾಫಿ ಶಾಪ್" ಸರ್ವರ್ ಆಗಿದೆ: ಬಹಳಷ್ಟು ಸಣ್ಣ ಆರ್ಡರ್ಗಳು, 14-ಘಟಕಾಂಶಗಳ ಕಸ್ಟಮ್ ಲ್ಯಾಟೆಯೊಂದಿಗೆ ಒಬ್ಬ ವ್ಯಕ್ತಿ, ಮತ್ತು ಸಮಾನಾಂತರಗೊಳಿಸುವುದು ಹೇಗೆಂದು ತಿಳಿದಿರುವ ಬರಿಸ್ತಾ.
ಅನಾನುಕೂಲ ಸತ್ಯ: ಸ್ಮಾರ್ಟ್ ವೇಳಾಪಟ್ಟಿ ಎಂದರೆ ಹೆಚ್ಚು ಪಾಲಿಸಿ ಎಂದರ್ಥ. ಹೆಚ್ಚು ನಾಬ್ಗಳು. ನೀವು ತಪ್ಪಾಗಿ ಪಡೆಯಬಹುದಾದ ಹೆಚ್ಚಿನ ನಿರ್ಧಾರಗಳು. ನಿಮಗೆ ಸತ್ತ-ಸರಳ, ಸರಕು ನಿಯೋಜನೆ ಅಗತ್ಯವಿದ್ದರೆ, SGL ನ ನಮ್ಯತೆಯು ಡ್ರ್ಯಾಗನ್ನಲ್ಲಿ ಕೊನೆಗೊಳ್ಳುವ ಹಲವಾರು ಆಯ್ಕೆಗಳನ್ನು ಹೊಂದಿರುವ ನಿಮ್ಮ ಸ್ವಂತ ಸಾಹಸವನ್ನು ಆಯ್ಕೆ ಮಾಡುವಂತೆ ಭಾಸವಾಗಬಹುದು.
ಕೋರ್ ಟ್ರೇಡ್: ಲೇಟೆನ್ಸಿ vs ಥ್ರೋಪುಟ್ vs ಊಹಿಸುವಿಕೆ
- ಲೇಟೆನ್ಸಿ: SGL ಮಿಶ್ರ ಕೆಲಸದ ಹೊರೆಗಳಿಗೆ ಟೈಲ್ ಲೇಟೆನ್ಸಿಯನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಪ್ರವೃತ್ತಿಯನ್ನು ಹೊಂದಿದೆ ಏಕೆಂದರೆ ಅದು ಜಗ್ಲಿಂಗ್ ಬಗ್ಗೆ ಹೆಚ್ಚು ಆಕ್ರಮಣಕಾರಿಯಾಗಿದೆ. vLLM ಸ್ಥಿರವಾಗಿದೆ, ಆದರೆ ಕ್ಯೂ ಆಳವಾಗಿದ್ದಾಗ ಥ್ರೋಪುಟ್ಗೆ ಆದ್ಯತೆ ನೀಡುತ್ತದೆ.
- ಥ್ರೋಪುಟ್: vLLM ನ PagedAttention ಪ್ರತಿ-GPU ಗೆ ಹೆಚ್ಚಿನ ಟೋಕನ್ಗಳನ್ನು ಪಡೆಯಲು ಏಕಕಾಲಿಕ ವಿನಂತಿಗಳನ್ನು ಪ್ಯಾಕ್ ಮಾಡುವಲ್ಲಿ ದೈತ್ಯವಾಗಿದೆ. ಸ್ಮಾರ್ಟ್ ಪ್ರಿಂಪ್ಟೇಶನ್ ಕಂಪ್ಯೂಟ್ ಬಬಲ್ಗಳನ್ನು ತಡೆಯುವ ಮಿಶ್ರ-ಲೋಡ್ ಸನ್ನಿವೇಶಗಳಲ್ಲಿ SGL ಅದನ್ನು ಸರಿಹೊಂದಿಸಬಹುದು ಅಥವಾ ಸೋಲಿಸಬಹುದು.
- ಊಹಿಸುವಿಕೆ: vLLM "ನೀರಸ ಮತ್ತು ಸ್ಥಿರ" ಗಾಗಿ ಗೆಲ್ಲುತ್ತದೆ, SGL "ನಾನು ಇದನ್ನು ಟ್ಯೂನ್ ಮಾಡಿ ನಾನು ನಿಜವಾಗಿ ಹೊಂದಿರುವ ಟ್ರಾಫಿಕ್ ಅನ್ನು ರೂಪಿಸಬಹುದು" ಗಾಗಿ ಗೆಲ್ಲುತ್ತದೆ. ಊಹಿಸುವಿಕೆ ನೈತಿಕ ಸದ್ಗುಣವಲ್ಲ; ಇದು ಕೆಲವು ತಂಡಗಳಿಗೆ ಒಂದು ಅವಶ್ಯಕತೆಯಾಗಿದೆ ಮತ್ತು ಇತರರಿಗೆ ಸ್ಟ್ರೈಟ್ಜಾಕೆಟ್ ಆಗಿದೆ.
ಬ್ಯಾಚಿಂಗ್ ಮತ್ತು ಡಿನ್ನರ್-ರಶ್ ಸಮಸ್ಯೆ
ರೆಸ್ಟೋರೆಂಟ್ ಅನ್ನು ಊಹಿಸಿ. vLLM ಕನಿಷ್ಠ ಖಾಲಿ ಸ್ಥಳವಿರುವಂತೆ ಟೆಟ್ರಿಸ್ನಂತೆ ಟೇಬಲ್ಗಳನ್ನು ಜೋಡಿಸುವ ಮೂಲಕ ಎಲ್ಲರಿಗೂ ತ್ವರಿತವಾಗಿ ಆಸನಗಳನ್ನು ನೀಡುತ್ತದೆ. SGL ಸಹ ನೆಲವನ್ನು ನಡೆಸುತ್ತದೆ, ಆದರೆ ಮೈಟ್ರೆ ಡಿ' ಸಹ ಅಡುಗೆಮನೆಯನ್ನು ಸೂಕ್ಷ್ಮವಾಗಿ ನಿರ್ವಹಿಸುತ್ತಿದ್ದಾನೆ—ಆರು-ಟಾಪ್ ಫ್ರೈಗಳಿಗಾಗಿ ಕಾಯುತ್ತಿರುವ ಡಜನ್ ಎರಡು-ಟಾಪ್ಗಳನ್ನು ನಿರ್ಬಂಧಿಸದಂತೆ ಕೋರ್ಸ್ಗಳನ್ನು ಬದಲಾಯಿಸುತ್ತಿದ್ದಾನೆ. SGL vs vLLM ನ ಅಂಶವೆಂದರೆ "ಯಾರು ವೇಗವಾಗಿ ಆಸನಗಳನ್ನು ನೀಡುತ್ತಾರೆ" ಎಂಬುದಲ್ಲ, ಆದರೆ "ಬಸ್ ಪ್ರವಾಸವು ಕಾಣಿಸಿಕೊಂಡಾಗ ಮತ್ತು ಅವರಲ್ಲಿ ಅರ್ಧದಷ್ಟು ಜನರು ಗ್ಲುಟನ್-ಮುಕ್ತರಾಗಿದ್ದಾಗ ಊಟದ ಕೋಣೆಯನ್ನು ಯಾರು ಝೇಂಕರಿಸುವಂತೆ ಮಾಡುತ್ತಾರೆ" ಎಂಬುದಾಗಿದೆ.
ನಿಮ್ಮ ಟ್ರಾಫಿಕ್ ಸುಗಮವಾಗಿದ್ದರೆ ಮತ್ತು ನಿಮ್ಮ ವಿನಂತಿ ಆಕಾರಗಳು ಸ್ಥಿರವಾಗಿದ್ದರೆ, vLLM ನ ಟೆಟ್ರಿಸ್ ಗೆಲ್ಲುತ್ತದೆ. ನಿಮ್ಮ ಟ್ರಾಫಿಕ್ ಪ್ರಾಂಪ್ಟ್ ಉದ್ದಗಳ ವಿತರಣೆಯೊಂದಿಗೆ ಸ್ಪೈಕಿಯಾಗಿದ್ದರೆ ಮತ್ತು ನೀವು ಸಂವಾದಾತ್ಮಕ ಬಳಕೆದಾರರಿಗೆ 95 ನೇ ಶೇಕಡಾವಾರು ಲೇಟೆನ್ಸಿಯ ಬಗ್ಗೆ ಕಾಳಜಿವಹಿಸುತ್ತಿದ್ದರೆ, SGL ನ ಅಡುಗೆಮನೆ ನೃತ್ಯ ಸಂಯೋಜನೆಯು ಲಾಭವನ್ನು ನೀಡುತ್ತದೆ.
KV ಸಂಗ್ರಹ: ವಿಚಿತ್ರವಲ್ಲದ ಒಂದು ವಿಚಿತ್ರ ಟ್ರಿಕ್
SGL ಮತ್ತು vLLM ಎರಡೂ ಗಮನ ಸಂಗ್ರಹವನ್ನು ಅಮೂಲ್ಯವಾದ ಲೋಹದಂತೆ ಪರಿಗಣಿಸುತ್ತವೆ. vLLM ನ ಪೇಜಿಂಗ್ ಎನ್ನುವುದು ಪ್ರಮಾಣಿತ ಟ್ರಿಕ್ ಆಗಿದೆ: ಕೀ/ಮೌಲ್ಯಗಳನ್ನು ಕಾಂಪ್ಯಾಕ್ಟ್ ಆಗಿ ಇರಿಸಿ, ಡಿಫ್ರಾಗ್ಮೆಂಟ್ ಮಾಡಿ ಮತ್ತು ಪ್ಯಾಡಿಂಗ್ನಲ್ಲಿ VRAM ಅನ್ನು ವ್ಯರ್ಥ ಮಾಡುವುದನ್ನು ನೀವು ತಪ್ಪಿಸುತ್ತೀರಿ. SGL ನ ವಿಧಾನವು ಸಂಗ್ರಹವು ಭೂಕುಸಿತವಾಗದಂತೆ ಯಾವಾಗ ಮತ್ತು ಹೇಗೆ ಪ್ರಿಂಪ್ಟ್ ಮಾಡುವುದು ಮತ್ತು ಕೆಲಸವನ್ನು ಪರಸ್ಪರ ಸೇರಿಸುವುದು ಎಂಬುದರ ಕುರಿತು ಹೆಚ್ಚು.
ನಿಮ್ಮ ಮಾದರಿಯು ಬಹು ಏಕಕಾಲಿಕ ಸೆಷನ್ಗಳಿಗೆ ಸ್ಥಳಾವಕಾಶದೊಂದಿಗೆ ಸ್ವಲ್ಪಮಟ್ಟಿಗೆ ಹೊಂದಾಣಿಕೆಯಾಗಿದ್ದರೆ, vLLM ನ ಮೆಮೊರಿ ದಕ್ಷತೆಯು "ರನ್ ಆಗುತ್ತದೆ" ಮತ್ತು "OOM" ನಡುವಿನ ವ್ಯತ್ಯಾಸವಾಗಿರಬಹುದು. ನಿಮ್ಮ ಮಾದರಿಯು ಆರಾಮವಾಗಿ ಹೊಂದಿಕೆಯಾಗಿದ್ದರೆ ಆದರೆ ನಿಮ್ಮ ಬಳಕೆದಾರರು ಲಾಗ್ ಸ್ಪೈಕ್ಗಳ ಬಗ್ಗೆ ದೂರು ನೀಡಿದರೆ, SGL ನ ವೇಳಾಪಟ್ಟಿಯು "ಬಳಸಬಹುದಾದ" ಮತ್ತು "ಆನಂದದಾಯಕ" ನಡುವಿನ ವ್ಯತ್ಯಾಸವಾಗಿರಬಹುದು.
ಟೋಕನ್ ಬಜೆಟ್ ಮತ್ತು ಮಾನವ ಗ್ರಹಿಕೆ
ಬಳಕೆದಾರರು "ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ ಟೋಕನ್ಗಳನ್ನು" ಗ್ರಹಿಸುವುದಿಲ್ಲ. ಅವರು ಗ್ರಹಿಸುತ್ತಾರೆ: ಟ್ಯಾಪ್… ಕಾಯಿರಿ… ಪ್ರತ್ಯುತ್ತರ ಪ್ರಾರಂಭವಾಗುತ್ತದೆ… ಹರಿಯುತ್ತದೆ… ಮುಗಿದಿದೆ. ಥ್ರೋಪುಟ್ ಆರ್ಥಿಕ ಮೆಟ್ರಿಕ್ ಆಗಿದೆ; ಲೇಟೆನ್ಸಿ ಮಾನಸಿಕ ಮೆಟ್ರಿಕ್ ಆಗಿದೆ. SGL ನ ಪಕ್ಷಪಾತವು ಮನೋವಿಜ್ಞಾನದ ಕಡೆಗೆ ಇರುತ್ತದೆ—ಮೊದಲ ಟೋಕನ್ಗಳು ಹರಿಯುವಂತೆ ಮಾಡಿ ಮತ್ತು ಟೈಲ್ ಸ್ಪೈಕ್ಗಳನ್ನು ತಡೆಯಿರಿ. vLLM ನ ಪಕ್ಷಪಾತವು ಅರ್ಥಶಾಸ್ತ್ರದ ಕಡೆಗೆ ಇರುತ್ತದೆ—ಸ್ಥಿರ-ಸ್ಥಿತಿಯ ಉತ್ಪಾದನೆಯನ್ನು ಗರಿಷ್ಠಗೊಳಿಸಿ. ಯಾವುದೂ ತಪ್ಪು ಅಲ್ಲ. ಆದರೆ ನಿಮ್ಮ ಉತ್ಪನ್ನವು ಬಹುಶಃ ಒಂದು ರೀತಿಯಲ್ಲಿ ವಾಲುತ್ತದೆ.
ಕ್ವಾಂಟೈಸೇಶನ್ ಮತ್ತು ಹೌಸ್ ಆಫ್ ಕಾರ್ಡ್ಸ್
ಇಲ್ಲಿ ಅಚ್ಚುಕಟ್ಟಾದ ಕಥೆಗಳು ಒಡೆಯುತ್ತವೆ. ನೀವು 4-ಬಿಟ್ ಅಥವಾ 8-ಬಿಟ್ ಕ್ವಾಂಟೈಸೇಶನ್, ಕಸ್ಟಮ್ ಕರ್ನಲ್ಗಳು ಅಥವಾ ಮುಖ್ಯ-ರಸ್ತೆಯ ಮಾದರಿ ವಾಸ್ತುಶಿಲ್ಪವನ್ನು ಎಸೆದ ತಕ್ಷಣ, ನಿಮಗೆ ಇಂದು ಅಗತ್ಯವಿರುವ ಕರ್ನಲ್ ಬೆಂಬಲವನ್ನು ಹೊಂದಿರುವ ಯೋಜನೆಯಿಂದಾಗಿ ನಿರ್ಧಾರವನ್ನು ತೆಗೆದುಕೊಳ್ಳಬಹುದು. SGL vs vLLM ಎಂದರೆ "40 ನಿಮಿಷಗಳ ನಂತರ ನಿಗೂಢ ನಿಖರತೆ ಹಿಂಜರಿತಗಳು ಅಥವಾ ಸಾಫ್ಟ್-ಕ್ರ್ಯಾಶ್ಗಳಿಲ್ಲದೆ ಏನು ರನ್ ಆಗುತ್ತದೆ" ಎಂಬುದಾಗಿದೆ.
ನೀವು ವೇಳಾಪಟ್ಟಿಯನ್ನು ಎಷ್ಟು ಬೇಕಾದರೂ ಪ್ರಣಯಗೊಳಿಸಬಹುದು; ಕರ್ನಲ್ಗಳು ಗುರುತ್ವಾಕರ್ಷಣೆಯಾಗಿವೆ. ನೀವು ಸಾಗಿಸಲು ಯೋಜಿಸಿರುವ ನಿಖರವಾದ ಮಾದರಿ, ಡಿಟೈಪ್ ಮತ್ತು GPU ಗಾಗಿ ಮ್ಯಾಟ್ರಿಕ್ಸ್ ಅನ್ನು ಪರಿಶೀಲಿಸಿ. ನಂತರ ಯಾರನ್ನೂ ನಂಬದವರಂತೆ ಪರೀಕ್ಷಿಸಿ—ನಿಮ್ಮನ್ನು ಒಳಗೊಂಡಂತೆ.
ಸ್ಟ್ರೀಮಿಂಗ್ UX: ಕೊನೆಯದಕ್ಕಿಂತ ಮೊದಲ ಟೋಕನ್ ಹೆಚ್ಚು ಮುಖ್ಯವಾಗಿದೆ
vLLM ಹೆಚ್ಚಿನ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಸಾಕಷ್ಟು ಚೆನ್ನಾಗಿ ಸ್ಟ್ರೀಮ್ ಮಾಡುತ್ತದೆ. ಹೆಡ್-ಆಫ್-ಲೈನ್ ನಿರ್ಬಂಧವನ್ನು ಕಡಿಮೆ ಮಾಡುವಲ್ಲಿ SGL ನ ಗೀಳು ಮೊದಲ ಟೋಕನ್ ಸಮಯದಿಂದ ಬಳಕೆದಾರರ ಅನುಭವವು ಬದುಕುತ್ತದೆಯೇ ಅಥವಾ ಸಾಯುತ್ತದೆಯೇ ಎಂಬ ಅಂಚನ್ನು ನೀಡುತ್ತದೆ—"ಇದು ತಕ್ಷಣವೇ ಭಾಸವಾಗುತ್ತದೆ" ಮತ್ತು "ಇದು ಏಕೆ ತಿರುಗುತ್ತಿದೆ?" ನಡುವಿನ ವ್ಯತ್ಯಾಸ. ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್ ಕೋಡ್-ಸಹಾಯ, ಹುಡುಕಾಟ-ವರ್ಧಿತ ಚಾಟ್ ಅಥವಾ ಮಾನವರು ಲೂಪ್ನಲ್ಲಿರುವ ಯಾವುದಾದರೂ ಆಗಿದ್ದರೆ, ಕಚ್ಚಾ ಟೋಕನ್ಗಳು-ಪ್ರತಿ-ಸೆಕೆಂಡ್ಗಿಂತ ಆ ಮೊದಲ ಟೋಕನ್ ಹೆಚ್ಚು ಮುಖ್ಯವಾಗಿದೆ.
ಇದಕ್ಕೆ ಬದಲಾಗಿ, ನೀವು ಸಾಪ್ತಾಹಿಕ ವರದಿಗಳನ್ನು ಬ್ಯಾಚ್ನಲ್ಲಿ ಕ್ರ್ಯಾಂಕ್ ಮಾಡುತ್ತಿದ್ದರೆ ಅಥವಾ ಸರ್ವರ್-ಸೈಡ್ನಲ್ಲಿ ದೀರ್ಘ-ರೂಪದ ಔಟ್ಪುಟ್ಗಳನ್ನು ರೆಂಡರ್ ಮಾಡುತ್ತಿದ್ದರೆ, vLLM ನ ಸ್ಥಿರ-ಸ್ಥಿತಿಯ ಥ್ರೋಪುಟ್ GPU ಸಮಯದಲ್ಲಿ ನಿಮಗೆ ಡಾಲರ್ಗಳನ್ನು ಮರಳಿ ಗೆಲ್ಲುತ್ತದೆ. ಇಡೀ ವಿಷಯವು ಹಿನ್ನೆಲೆ ಕೆಲಸವಾಗಿದ್ದರೆ ಮೊದಲ ಟೋಕನ್ 150 ms ನಲ್ಲಿ ಬಂದಿದೆಯೇ ಅಥವಾ 450 ms ನಲ್ಲಿ ಬಂದಿದೆಯೇ ಎಂಬುದರ ಬಗ್ಗೆ ಯಾರೂ ತಲೆಕೆಡಿಸಿಕೊಳ್ಳುವುದಿಲ್ಲ.
Ops ರಿಯಾಲಿಟಿ: ಲಾಗ್ಗಳು, ಮಿತಿಗಳು ಮತ್ತು "ಯಾರು ಆನ್ ಕಾಲ್ ಆಗಿದ್ದಾರೆ?" ಪರೀಕ್ಷೆ
- vLLM: ಪ್ರಬುದ್ಧ ಕಾರ್ಯಾಚರಣೆಯ ಕಥೆ. ಬಗ್ಗೆ ತರ್ಕಿಸಲು ಸುಲಭ. ಸಾಮರ್ಥ್ಯ ಯೋಜನೆಯ ಸ್ಪಷ್ಟ ಮೆಟ್ರಿಕ್ಗಳು ಏಕೆಂದರೆ ಬ್ಯಾಚಿಂಗ್ ಮತ್ತು ಪೇಜಿಂಗ್ ಊಹಿಸಬಹುದಾದವು.
- SGL: ಹೆಚ್ಚು ಡಯಲ್ಗಳು. ಸಂಭಾವ್ಯವಾಗಿ ಹೆಚ್ಚಿನ ಶಕ್ತಿ. ನಿಮ್ಮ ಟ್ರಾಫಿಕ್ ಮಾದರಿಗಳನ್ನು ನಿಮಗೆ ತಿಳಿದಿರುವಾಗ ಮತ್ತು ಅವುಗಳನ್ನು ರೂಪಿಸಲು ನೀವು ಸಿದ್ಧರಿರುವಾಗ ಉತ್ತಮ. ಆದರೆ "ಬೆಳಿಗ್ಗೆ 2 ಗಂಟೆಗೆ ಆನ್ ಕಾಲ್" ಕಥೆ ನಿಮ್ಮ ರನ್ಬುಕ್ಗಳಂತೆ ಮಾತ್ರ ಉತ್ತಮವಾಗಿದೆ.
ಉಪಯುಕ್ತ ರೂಢಿಗತ ವಿಧಾನ: ನಿಮ್ಮ ತಂಡವು ತನ್ನದೇ ಆದ p95/p99 ಗುರಿಗಳನ್ನು ಮತ್ತು ಅವು ಆದಾಯ ಅಥವಾ UX ಗೆ ಹೇಗೆ ಮ್ಯಾಪ್ ಆಗುತ್ತವೆ ಎಂಬುದನ್ನು ವಿವರಿಸಲು ಸಾಧ್ಯವಾಗದಿದ್ದರೆ, vLLM ಗೆ ಡೀಫಾಲ್ಟ್ ಆಗಿ. ನೀವು ಸಾಧ್ಯವಾದರೆ ಮತ್ತು ಮಿಶ್ರ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ ಕಡಿಮೆ-ಟೈಲ್ ಲೇಟೆನ್ಸಿಯನ್ನು ಬೆನ್ನಟ್ಟಲು ನಿಮಗೆ ಒಂದು ಕಾರಣವಿದ್ದರೆ, SGL ಅದರ ಸಂಕೀರ್ಣತೆಯನ್ನು ಗಳಿಸುತ್ತದೆ.
RAG ಮತ್ತು ಬ್ಯಾಂಡ್ವಿಡ್ತ್-ಹೆವಿ ಪ್ರಾಂಪ್ಟ್
ರಿಟ್ರೈವಲ್-ವರ್ಧಿತ ಉತ್ಪಾದನೆಯು ಇನ್ಪುಟ್ ಬದಿಯಲ್ಲಿ ಗ್ಯಾಸೋಲಿನ್ ಅನ್ನು ಎಸೆಯುತ್ತದೆ. ಸನ್ನಿವೇಶದ ತುಣುಕುಗಳೊಂದಿಗಿನ ದೈತ್ಯ ಪ್ರಾಂಪ್ಟ್ಗಳು ಲೇಟೆನ್ಸಿಯನ್ನು ಟೋಕನೈಸೇಶನ್ ಮತ್ತು ಇನ್ಪುಟ್ ಪಾಸ್ ವೆಚ್ಚದ ಕಾರ್ಯವನ್ನಾಗಿ ಮಾಡುತ್ತವೆ. vLLM ನ ಮೆಮೊರಿ ಪ್ಯಾಕಿಂಗ್ ಈ ರಾಕ್ಷಸರನ್ನು ಹೆಚ್ಚು ಅಕ್ಕಪಕ್ಕದಲ್ಲಿ ಹೊಂದಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. SGL ನ ವೇಳಾಪಟ್ಟಿಯು ಕೆಲವು ತಿಮಿಂಗಿಲಗಳು ಪಾಡ್ ಅನ್ನು ಫ್ರೀಜ್ ಮಾಡದಂತೆ ತಡೆಯಬಹುದು. ನಿಮ್ಮ RAG "ದೊಡ್ಡ ಪ್ರಾಂಪ್ಟ್ + ಸಣ್ಣ ಉತ್ತರ" ದಂತೆ ಕಾಣುತ್ತಿದ್ದರೆ, SGL ನ ಪ್ರಿಂಪ್ಟೇಶನ್ ವಿಷಯಗಳನ್ನು ಜೀವಂತವಾಗಿರಿಸುತ್ತದೆ. ಅದು ನಿರಂತರ ಪರಿಮಾಣದಲ್ಲಿ "ಮಧ್ಯಮ ಪ್ರಾಂಪ್ಟ್ + ಮಧ್ಯಮ ಉತ್ತರ" ಆಗಿದ್ದರೆ, vLLM ನ ಪ್ಯಾಕಿಂಗ್ ಗೆಲ್ಲುತ್ತದೆ.
ವೆಚ್ಚ ಮಾದರಿಗಳನ್ನು ನೀವು ನಿಜವಾಗಿ ವಿವರಿಸಬಹುದು
- ಪ್ರತಿ GPU ಗಂಟೆಗೆ ಟೋಕನ್ಗಳು: ಹೆಚ್ಚಿನ-ಲೋಡ್ ಸ್ಥಿರ-ಸ್ಥಿತಿಗೆ vLLM ಗೆಲ್ಲುವ ಪ್ರವೃತ್ತಿಯನ್ನು ಹೊಂದಿದೆ.
- ಪ್ರತಿ ಸಂವಾದಾತ್ಮಕ ಸೆಷನ್ಗೆ ವೆಚ್ಚ: ಮಾನವ ಗ್ರಹಿಕೆಯಲ್ಲಿ ನೀವು ಫ್ರೇಮ್ಗಳನ್ನು ಬಿಡಲು ಸಾಧ್ಯವಾಗದಿದ್ದಾಗ SGL ಗೆಲ್ಲುವ ಪ್ರವೃತ್ತಿಯನ್ನು ಹೊಂದಿದೆ.
- ಇಂಜಿನಿಯರಿಂಗ್ ಸಮಯ: vLLM ಸಾಮಾನ್ಯವಾಗಿ ಅಗ್ಗವಾಗಿದೆ, ನೀವು ಈಗಾಗಲೇ SGL ನಲ್ಲಿ ಆಳವಾಗಿಲ್ಲದಿದ್ದರೆ ಮತ್ತು ಲಾಭಗಳನ್ನು ಪಡೆಯದ ಹೊರತು. ಬದಲಾಯಿಸುವ ವೆಚ್ಚಗಳು ನಿಜವಾಗಿವೆ.
ಇವುಗಳಲ್ಲಿ ಯಾವುದೂ ಸಂಪೂರ್ಣವಲ್ಲ. ಆದರೆ ನಿಮ್ಮ CFO ಕೇಳಿದರೆ, ಈಗ ನಿಮ್ಮಲ್ಲಿ ಇಂಗ್ಲಿಷ್ನಂತೆ ಧ್ವನಿಸುವ ವಾಕ್ಯಗಳಿವೆ.
ನೀವು ನಿರ್ಲಕ್ಷಿಸಬೇಕಾದ ಮಾನದಂಡಗಳು (ಮತ್ತು ನೀವು ನಿರ್ಲಕ್ಷಿಸಬಾರದ ಮಾನದಂಡಗಳು)
ವಿನಂತಿ ಆಕಾರ ವಿತರಣೆ, ಬ್ಯಾಚ್ ಗಾತ್ರ, ಗರಿಷ್ಠ ಏಕಕಾಲಿಕತೆ, ಮಾದರಿ ಡಿಟೈಪ್ ಮತ್ತು GPU ಮಾದರಿಯನ್ನು ಬಹಿರಂಗಪಡಿಸದ ಏಕ-ಸಂಖ್ಯೆಯ ಚಾರ್ಟ್ಗಳನ್ನು ನಿರ್ಲಕ್ಷಿಸಿ. ಅವು ಸರಿಯಾದ ಬೆಳಕನ್ನು ಹೊಂದಿರುವ ಫಿಟ್ನೆಸ್ ಸೆಲ್ಫಿಗಳು. ಉಪಯುಕ್ತ ಮಾನದಂಡಗಳು:
- ಮಿಶ್ರ ವಿತರಣೆ ಲೋಡ್ ಪರೀಕ್ಷೆಗಳು: ಸಣ್ಣ, ಮಧ್ಯಮ, ದೀರ್ಘ ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು ವಿವಿಧ ಗರಿಷ್ಠ ಟೋಕನ್ಗಳೊಂದಿಗೆ ಬೆರೆಸಲಾಗುತ್ತದೆ.
- ಬರ್ಸ್ಟ್ ಅಡಿಯಲ್ಲಿ ಟೈಲ್ ಲೇಟೆನ್ಸಿ: ಸಿಮ್ಯುಲೇಟೆಡ್ ಟ್ರಾಫಿಕ್ ಸ್ಪೈಕ್ ಸಮಯದಲ್ಲಿ p95/p99 ಮೊದಲ-ಟೋಕನ್ ಸಮಯವನ್ನು ಅಳೆಯಿರಿ.
- ಮೆಮೊರಿ ಹೆಡ್ರೂಮ್: ಗುರಿ ಏಕಕಾಲಿಕತೆಯಲ್ಲಿ ಮಾದರಿ ಮತ್ತು ಕೆವಿ ಸಂಗ್ರಹದೊಂದಿಗೆ ನಿಜವಾದ OOM ಅಂಚು.
- ಸಮಯದೊಂದಿಗೆ ಸ್ಥಿರತೆ: ಆರು ಗಂಟೆಗಳ ಕಾಲ ರನ್ ಮಾಡಿ; ನಿಧಾನ ಸೋರಿಕೆಗಳು, ಥ್ರೋಪುಟ್ ಡ್ರಿಫ್ಟ್ ಅಥವಾ ಅಪರೂಪದ ಸ್ಥಗಿತಗಳಿಗಾಗಿ ವೀಕ್ಷಿಸಿ.
ಇತರರ ಟ್ರಾಫಿಕ್ಗಾಗಿ ಇತರರ GPU ನಲ್ಲಿ ಅದು ವೇಗವಾಗಿದ್ದರೆ "ವೇಗವಾಗಿ" ಮುಖ್ಯವಲ್ಲ.
ಡೆವಲಪರ್ ದಕ್ಷತಾಶಾಸ್ತ್ರ: ನಿಮಗೆ ಎಷ್ಟು ಅಮೂರ್ತತೆ ಬೇಕು?
vLLM ಕ್ಲೀನ್ API ಗಳು, ಊಹಿಸಬಹುದಾದ ಕಾನ್ಫಿಗ್ಗಳು ಮತ್ತು ಜನಪ್ರಿಯ ಟೂಲ್ಚೈನ್ಗಳೊಂದಿಗೆ ಹೊಂದಾಣಿಕೆಯನ್ನು ಬೆಂಬಲಿಸುತ್ತದೆ. ಇದು ಸರಕು ಸೇವೆ ಲೇಯರ್ ಬಯಸುವ ತಂಡಗಳಿಗೆ ಸುರಕ್ಷಿತ ಡೀಫಾಲ್ಟ್ ಆಗಿದೆ. SGL ನಿಮಗೆ ಹೆಚ್ಚು ಪಾಲಿಸಿ ಮೇಲ್ಮೈಯನ್ನು ನೀಡುತ್ತದೆ: ಆದ್ಯತೆ, ಪ್ರಿಂಪ್ಟೇಶನ್ ನಡವಳಿಕೆ ಮತ್ತು ನಿಮ್ಮ ಕಂಪ್ಯೂಟ್ನ ಆಕಾರವನ್ನು ಕೆತ್ತುವ ಸ್ಥಳಾವಕಾಶ. ನಿಮಗೆ ಅದು ಅಗತ್ಯವಿದ್ದರೆ ಅದು ಚಿನ್ನ—ಮತ್ತು ನಿಮಗೆ ಇಲ್ಲದಿದ್ದರೆ ಓವರ್ಹೆಡ್.
ವಿಸ್ತರಣೆ ಕಥೆಯು ಹೋಲುತ್ತದೆ. vLLM ಜನಪ್ರಿಯ ಪರಿಸರ ವ್ಯವಸ್ಥೆಗಳು ಮತ್ತು ಹೋಸ್ಟ್ ಮಾಡಿದ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳೊಂದಿಗೆ ಮುಂಚೆಯೇ ಸಂಯೋಜಿಸುವ ಪ್ರವೃತ್ತಿಯನ್ನು ಹೊಂದಿದೆ. SGL ವೇಳಾಪಟ್ಟಿ ವೈಶಿಷ್ಟ್ಯಗಳು ಮತ್ತು ಸುಧಾರಿತ ಏಕಕಾಲಿಕತೆಯ ಮೇಲೆ ವೇಗವಾಗಿ ಚಲಿಸುತ್ತದೆ. ನಿಮಗೆ SGL ಏಕೆ ಬೇಕು ಎಂದು ನಿಮಗೆ ತಿಳಿದಿದ್ದರೆ, ನೀವು ಬಹುಶಃ ಮಾಡುತ್ತೀರಿ. ನಿಮಗೆ ಗೊತ್ತಿಲ್ಲದಿದ್ದರೆ, ನೀವು ಬಹುಶಃ ಇನ್ನೂ ಮಾಡುವುದಿಲ್ಲ.
ಬಹು-ಮಾದರಿ ಮೃಗಾಲಯ ಸಮಸ್ಯೆ
ಒಂದು ಪ್ರಮುಖ ಮಾದರಿಯನ್ನು ಸರ್ವ್ ಮಾಡುವುದು ಹಳೆಯದು. ಹೆಚ್ಚಿನ ನೈಜ ಅಪ್ಲಿಕೇಶನ್ಗಳು ಹಲವಾರು ಮಾದರಿಗಳನ್ನು ಜಗ್ಲಿಂಗ್ ಮಾಡುತ್ತವೆ: ಸೂಚನಾ-ಟ್ಯೂನ್ ಮಾಡಿದ LLM ಗಳು, ಮರು-ರ್ಯಾಂಕರ್ಗಳು, ಎಂಬೆಡಿಂಗ್ಗಳು, ಬಹುಶಃ ದೃಷ್ಟಿ-ಭಾಷಾ ಮಾದರಿ. vLLM ನ ಊಹಿಸುವಿಕೆಯು ಬಹು ಮಾದರಿಗಳಾದ್ಯಂತ ಸಾಮರ್ಥ್ಯವನ್ನು ಕತ್ತರಿಸಲು ಸುಲಭಗೊಳಿಸುತ್ತದೆ. SGL ನ ವೇಳಾಪಟ್ಟಿಯು ಸಣ್ಣ, ಹೆಚ್ಚಿನ-ಆದ್ಯತೆಯ ಕರೆಗಳನ್ನು ಮೊಣಕಾಲಿಗೆ ತಳ್ಳುವ ದೀರ್ಘಕಾಲೀನ ಹಂದಿಗಳನ್ನು ತಪ್ಪಿಸಲು ನಿಮಗೆ ಸಾಧನಗಳನ್ನು ನೀಡುತ್ತದೆ—ಆದರೆ ನೀವು ನಿಯಮಗಳನ್ನು ಹೊಂದಿಸಬೇಕಾಗುತ್ತದೆ. ಯಾಂತ್ರೀಕರಣವು ಸಹಾಯ ಮಾಡುತ್ತದೆ, ಆದರೆ ಪಾಲಿಸಿಗೆ ಇನ್ನೂ ಮೆದುಳು ಬೇಕು.
ಆಡಳಿತದ ಬಗ್ಗೆ ಒಂದು ಮಾತು: SLA ಗಳು ಅಥವಾ ವೈಬ್ಸ್?
ನೀವು ಗ್ರಾಹಕರಿಗೆ ಸಂಖ್ಯೆಗಳನ್ನು (SLA, SLO, ನಿಮ್ಮ ಸಂಕ್ಷಿಪ್ತಣಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ) ನೀಡಬೇಕಾದರೆ, ನೀರಸವು ಒಂದು ವೈಶಿಷ್ಟ್ಯವಾಗಿದೆ. vLLM ನ ಸ್ಥಿರತೆಯು ಮಿತಿಗಳನ್ನು ಭರವಸೆ ನೀಡಲು ಮತ್ತು ಅವುಗಳನ್ನು ತಲುಪಲು ಸುಲಭಗೊಳಿಸುತ್ತದೆ. ನಿಮ್ಮ ಉತ್ಪನ್ನವು "ಅನುಭವ" ದ ಬಗ್ಗೆ ಇದ್ದರೆ ಮತ್ತು ಅನುಭವವು ತ್ವರಿತ ಪ್ರತಿಕ್ರಿಯೆಯಿಂದ ವ್ಯಾಖ್ಯಾನಿಸಲ್ಪಟ್ಟಿದ್ದರೆ (IDE ಕೋಪಿಲ್ಗಳನ್ನು ಯೋಚಿಸಿ), ಒತ್ತಡದಲ್ಲಿ ಬಳಕೆದಾರರ ಅನುಭವವನ್ನು ರಕ್ಷಿಸುವ SGL ನ ಸಾಮರ್ಥ್ಯವು ಹೆಚ್ಚುವರಿ ಚಿಂತನೆಗೆ ಯೋಗ್ಯವಾಗಿದೆ.
GPU ತಪ್ಪಾದ ಉತ್ತರವಾದಾಗ
ಕಡಿಮೆ GPU ಗಳನ್ನು ಬಳಸುವ ಹಾಟೆಸ್ಟ್ ಸರ್ವಿಂಗ್ ಸ್ಟಾಕ್ ಆಗಿದೆ. ಉತ್ತಮ ಸನ್ನಿವೇಶ ವಿಂಡೋಗಳು, ಸ್ಮಾರ್ಟ್ ಟ್ರಂಕೇಶನ್, ಉತ್ತಮ ರಿಟ್ರೈವಲ್, ಪ್ರತಿಕ್ರಿಯೆ ಸಂಗ್ರಹಣೆ ಮತ್ತು ಪ್ರತಿ ಬಟನ್ ಕ್ಲಿಕ್ಗೆ LLM ವಾರ್ ಅಂಡ್ ಪೀಸ್ ಅನ್ನು ಬರೆಯಲು ಕೇಳದಿರುವಂತಹ ವಯಸ್ಕ ಕೆಲಸವನ್ನು ನೀವು ಮಾಡಿದಾಗ SGL ಮತ್ತು vLLM ಎರಡೂ ಪ್ರಯೋಜನ ಪಡೆಯುತ್ತವೆ. ಅಗ್ಗದ ಲೇಟೆನ್ಸಿ ಎಂದರೆ ನೀವು ಎಂದಿಗೂ ಉತ್ಪಾದಿಸದ ಟೋಕನ್.
ನೈಜ-ಪ್ರಪಂಚದ ಮಾದರಿಗಳು (AKA, ಜನರು ನಿಜವಾಗಿ ಹೇಗೆ ಆಯ್ಕೆ ಮಾಡುತ್ತಾರೆ)
- ಮುಂದಿನ ವಾರ AI ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ಸಾಗಿಸುವ ಪ್ರಾರಂಭ: vLLM. ಸಾಮರ್ಥ್ಯಕ್ಕೆ ವೇಗ ಗೆಲ್ಲುತ್ತದೆ.
- ಸಂವಾದಾತ್ಮಕ UX ಮತ್ತು ಸ್ಪೈಕಿ ಟ್ರಾಫಿಕ್ ಹೊಂದಿರುವ ಉತ್ಪನ್ನ: ಟೈಲ್ ಲೇಟೆನ್ಸಿಗಾಗಿ ಟ್ಯೂನ್ ಮಾಡಿದ SGL.
- ಬ್ಯಾಕೆಂಡ್ ಬ್ಯಾಚ್ ಉತ್ಪಾದನೆ: vLLM, ಕಥೆಯ ಅಂತ್ಯ.
- RAG-ಹೆವಿ ಬೆಂಬಲ ಸಾಧನ: ನಿಮ್ಮ ಪ್ರಾಂಪ್ಟ್ಗಳು ದೊಡ್ಡದಾಗಿದ್ದರೆ ಟೈ-ಬ್ರೇಕರ್ SGL ಗೆ ಹೋಗುತ್ತದೆ; ಇಲ್ಲದಿದ್ದರೆ vLLM.
- GPU ತಜ್ಞರಿಲ್ಲದ ತಂಡ: vLLM. ನಟಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಿ.
- ವೇಳಾಪಟ್ಟಿಯನ್ನು ಆನಂದಿಸುವ ಕಾರ್ಯಕ್ಷಮತೆ-ಮನಸ್ಸಿನ ನಾಯಕನನ್ನು ಹೊಂದಿರುವ ತಂಡ: SGL. ಜವಾಬ್ದಾರಿಯುತವಾಗಿ ಆನಂದಿಸಿ.
ಕೋಡ್ ಸಹಾಯ ಮತ್ತು IDE ಗಳಿಗಾಗಿ SGL vs vLLM
ಇದು ಸ್ಪಷ್ಟವಾದ ಪ್ರಕರಣಗಳಲ್ಲಿ ಒಂದಾಗಿದೆ. ಕೋಡ್ ಸಹಾಯಕರು ಗ್ರಹಿಸಿದ ಪ್ರತಿಕ್ರಿಯಾತ್ಮಕತೆಯ ಮೇಲೆ ಬದುಕುತ್ತಾರೆ ಮತ್ತು ಸಾಯುತ್ತಾರೆ. ಮೊದಲ ಟೋಕನ್ ವೇಗವಾಗಿ, ಸ್ಟ್ರೀಮ್ ಸ್ಥಿರವಾಗಿರಬೇಕು, ಬಳಕೆದಾರರು ಸತತವಾಗಿ ಮೂರು ಬಾರಿ ಶಾರ್ಟ್ಕಟ್ ಅನ್ನು ಹೊಡೆದಾಗ ಟೈಲ್ ಸ್ಪೈಕ್ಗಳನ್ನು ತಪ್ಪಿಸಿ. SGL ನ ಪ್ರಿಂಪ್ಟೇಶನ್-ಕೇಂದ್ರಿತ ಜಗತ್ತಿನ ನೋಟವು ಇಲ್ಲಿ ಲಾಭಾಂಶವನ್ನು ನೀಡುತ್ತದೆ. vLLM ಇದನ್ನು ಮಾಡಬಹುದು—ವಿಶೇಷವಾಗಿ ಎಚ್ಚರಿಕೆಯ ಕಾನ್ಫಿಗ್ ಮತ್ತು ಹೆಡ್ರೂಮ್ನೊಂದಿಗೆ—ಆದರೆ ನೀವು ಸಾಮಾನ್ಯವಾಗಿ ಕೆಲವು ಲೇಟೆನ್ಸಿಯನ್ನು ಟೇಬಲ್ ಮೇಲೆ ಬಿಡುತ್ತೀರಿ.
ಪ್ರಮಾಣದಲ್ಲಿ ಚಾಟ್ಬಾಟ್ಗಳಿಗಾಗಿ SGL vs vLLM
ಅದನ್ನು ತಿರುಗಿಸಿ. ದೊಡ್ಡ, ಸ್ಥಿರವಾದ ಚಾಟ್ ಟ್ರಾಫಿಕ್ಗಾಗಿ—ಬೆಂಬಲ ಬಾಟ್ಗಳು, ಆಂತರಿಕ ಸಹಾಯಕರು, ವಿಶಾಲವಾದ ಪ್ರಶ್ನೆ ಮತ್ತು ಉತ್ತರ—vLLM ನ ಸಾಮರ್ಥ್ಯ ಪ್ಯಾಕಿಂಗ್ ನಿರಂತರವಾಗಿ ನೀಡುವ ಉಡುಗೊರೆಯಾಗಿದೆ. ನಿಮ್ಮ ಗ್ರಾಫ್ ಹೆಚ್ಚಾಗಿ ಸಮತಟ್ಟಾಗಿದ್ದರೆ ಮತ್ತು ವ್ಯಾಪಾರ ಮಾದರಿಯು ಪ್ರತಿ-ಡಾಲರ್ಗೆ ಟೋಕನ್ಗಳಿಗೆ ಪ್ರತಿಫಲ ನೀಡಿದರೆ ನಿಮಗೆ ಅದು ಬೇಕು.
ಮಧ್ಯದ ಮಾರ್ಗ: ನೀವು ಎರಡನ್ನೂ ಚಲಾಯಿಸಬಹುದು
ಆಘಾತಕಾರಿ ಟೇಕ್: ವಿಭಿನ್ನ ಕೆಲಸದ ಹೊರೆಗಳು, ವಿಭಿನ್ನ ಸರ್ವರ್ಗಳು. ನಿಮಗೆ ಸಂವಾದಾತ್ಮಕತೆ ಮತ್ತು ಕಡಿಮೆ ಟೈಲ್ ಲೇಟೆನ್ಸಿ ಅಗತ್ಯವಿರುವಲ್ಲಿ SGL ಅನ್ನು ರನ್ ಮಾಡಿ; ಬಲ್ಕ್ಗಾಗಿ vLLM ಅನ್ನು ರನ್ ಮಾಡಿ. ಎಂಡ್ಪಾಯಿಂಟ್, ಟೆನೆಂಟ್ ಅಥವಾ ದಿನದ ಸಮಯದ ಪ್ರಕಾರ ರೂಟ್ ಮಾಡಿ. ops ಓವರ್ಹೆಡ್ ನಿಜ, ಆದರೆ ನೀವು ತಪ್ಪು ಆಯ್ಕೆಗಳಿಂದ ಸ್ವಾತಂತ್ರ್ಯವನ್ನು ಖರೀದಿಸುತ್ತೀರಿ.
Sider.AI ಎಲ್ಲಿ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ (ಮತ್ತು ಎಲ್ಲಿ ಹೊಂದಿಕೆಯಾಗುವುದಿಲ್ಲ) Sider.AI ನಿಜವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ—ಕನಿಷ್ಠ ನೀವು ಅದನ್ನು ಯಾವುದಕ್ಕಾಗಿ ಉತ್ತಮವಾಗಿದೆಯೋ ಅದಕ್ಕಾಗಿ ಬಳಸಿದಾಗ, ವಿಚಿತ್ರವೆಂದರೆ, ಮಾರ್ಕೆಟಿಂಗ್ ಹೇಳುವ ವಿಷಯವಲ್ಲ. ಪ್ರಾಯೋಗಿಕ AI ವರ್ಕ್ಸ್ಟೇಷನ್ ಮತ್ತು ವರ್ಕ್ಫ್ಲೋ ಅಗತ್ಯವಿರುವುದರಿಂದ ನೀವು SGL vs vLLM ಅನ್ನು ಜಗ್ಲಿಂಗ್ ಮಾಡುತ್ತಿದ್ದರೆ, ಅದು ತನ್ನದೇ ಆದ ಅಂಟು ಕೋಡ್ ಅಡಿಯಲ್ಲಿ ಕುಸಿಯುವುದಿಲ್ಲ, Sider ನ ಸಂಯೋಜಿತ ಪರಿಸರವು ಯಾರೂ ಬಜೆಟ್ ಮಾಡದ ಭಾಗವಾಗಿದೆ: ಪ್ರಾಂಪ್ಟ್ಗಳು, ಡಾಕ್ಸ್ಗಳು ಮತ್ತು ಪ್ರಯೋಗಗಳು ನೀವು ಸ್ಕ್ರ್ಯಾಚ್ಪ್ಯಾಡ್ ಅಪ್ಲಿಕೇಶನ್ ಮತ್ತು ಮನೆಯಲ್ಲಿ ಬೆಳೆದ ಬೆಂಚ್ಮಾರ್ಕ್ ಹಾರ್ನೆಸ್ ಅನ್ನು ಮರುಶೋಧಿಸದೆ ವಾಸಿಸುವ ನೀರಸ ಮೇಲ್ಮೈ. ಇದು SGL vs vLLM ಅನ್ನು ನಿಮಗಾಗಿ ಆಯ್ಕೆ ಮಾಡುವುದಿಲ್ಲ—ಅಥವಾ ಮಾಡಬಾರದು—ಆದರೆ ನೀವು ಎರಡನ್ನೂ ಪರೀಕ್ಷಿಸುವಾಗ ನಿಮ್ಮ ತಂಡವನ್ನು ಫಲಿತಾಂಶಗಳ ಮೇಲೆ ಕೇಂದ್ರೀಕರಿಸುತ್ತದೆ. ನೀವು ಸಿಲ್ವರ್ ಬುಲೆಟ್ ಅನ್ನು ಬಯಸಿದರೆ, ಬೇರೆಡೆ ನೋಡಿ. "ಕಲ್ಪನೆ," "ಪ್ರಾಂಪ್ಟ್," "ರನ್," ಮತ್ತು "ಸಾಗಿಸು" ನಡುವೆ ಕಡಿಮೆ ತೀಕ್ಷ್ಣವಾದ ಅಂಚುಗಳನ್ನು ನೀವು ಬಯಸಿದರೆ, ಅದು Sider.AI ತನ್ನ ಬೆಲೆಯನ್ನು ಗಳಿಸುವ ಸ್ಥಳವಾಗಿದೆ. ಸಾಮಾನ್ಯ ಆಕ್ಷೇಪಣೆಗಳು, ಸ್ಪಿನ್ ಇಲ್ಲದೆ ಉತ್ತರಿಸಲಾಗಿದೆ
- "ನಾವು SGL ನೊಂದಿಗೆ ಥ್ರೋಪುಟ್ ಅನ್ನು ಕಳೆದುಕೊಳ್ಳುತ್ತೇವೆ." ಬಹುಶಃ. ಏಕರೂಪದ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ, ಬಹುಶಃ. ಮಿಶ್ರ, ಸ್ಪೈಕಿ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ, ಬಹುಶಃ ಅಲ್ಲ—ಟೈಲ್ ಲೇಟೆನ್ಸಿ ಸುಧಾರಣೆಗಳು ಪರಿಣಾಮಕಾರಿ ಥ್ರೋಪುಟ್ ಅನ್ನು ಹೆಚ್ಚಿಸಬಹುದು.
- "ನಾವು vLLM ನೊಂದಿಗೆ ಲೇಟೆನ್ಸಿಯನ್ನು ಕಳೆದುಕೊಳ್ಳುತ್ತೇವೆ." ಸಹ ಬಹುಶಃ. ಒತ್ತಡದಲ್ಲಿ, ಮೊದಲ-ಟೋಕನ್ ಸಮಯವು ಡ್ರಿಫ್ಟ್ ಆದರೂ vLLM ಥ್ರೋಪುಟ್ ಅನ್ನು ಸಂರಕ್ಷಿಸುತ್ತದೆ. ನೀವು ಹೆಡ್ರೂಮ್ ಮತ್ತು ವಿವೇಕಯುತ ಮಿತಿಗಳೊಂದಿಗೆ ತಗ್ಗಿಸಬಹುದು.
- "ನಾವು vLLM ಅನ್ನು SGL ನಂತೆ ವರ್ತಿಸಲು ಟ್ಯೂನ್ ಮಾಡಬಹುದೇ?" ಭಾಗಶಃ. ನೀವು ಆದ್ಯತೆ ನೀಡಬಹುದು, ಗರಿಷ್ಠ ಟೋಕನ್ಗಳನ್ನು ಟ್ರಿಮ್ ಮಾಡಬಹುದು ಮತ್ತು ಕ್ಯೂಗಳನ್ನು ರೂಪಿಸಬಹುದು. ಆದರೆ ವೇಳಾಪಟ್ಟಿಯ DNA ವಿಭಿನ್ನವಾಗಿದೆ.
- "ನಾವು SGL ಅನ್ನು vLLM ನಂತೆ ವರ್ತಿಸಲು ಟ್ಯೂನ್ ಮಾಡಬಹುದೇ?" ಸಹ ಭಾಗಶಃ. ಆದರೆ ನೀವು SGL ಅನ್ನು vLLM ಆಗಿ ಪರಿವರ್ತಿಸಲು ವಾರಗಳನ್ನು ಕಳೆದರೆ, ನೀವು ತಪ್ಪಾಗಿ ಆಯ್ಕೆ ಮಾಡಿದ್ದೀರಿ.
ನೀವು ನಿರ್ಧರಿಸುವ ಮೊದಲು ಪ್ರಾಯೋಗಿಕ ಪರಿಶೀಲನಾಪಟ್ಟಿ
- ನಿಜವಾಗಿ ಮುಖ್ಯವಾದ ಮೆಟ್ರಿಕ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಿ: p95 ಸಮಯ-ಮೊದಲ-ಟೋಕನ್, p99 ಎಂಡ್-ಟು-ಎಂಡ್ ಲೇಟೆನ್ಸಿ, ಟೋಕನ್ಗಳು-ಪ್ರತಿ-ಡಾಲರ್ ಅಥವಾ ಬರ್ಸ್ಟ್ ಅಡಿಯಲ್ಲಿ ಕ್ರ್ಯಾಶ್ ದರ. ಒಂದು ಪ್ರಾಥಮಿಕ ಮೆಟ್ರಿಕ್ ಮತ್ತು ಒಂದು ಗಾರ್ಡ್ರೈಲ್ ಅನ್ನು ಆರಿಸಿ.
- ನಿಮ್ಮ ನೈಜ ಟ್ರಾಫಿಕ್ ವಿತರಣೆಯನ್ನು ಪುನರುತ್ಪಾದಿಸಿ. ಆಟಿಕೆ ಅಲ್ಲ. ನೈಜ ಪ್ರಾಂಪ್ಟ್/ಪ್ರತಿಕ್ರಿಯೆ ಗಾತ್ರದ ಹಿಸ್ಟೋಗ್ರಾಮ್ಗಳು, ನೈಜ ಬರ್ಸ್ಟಿನೆಸ್.
- ನಿರಂತರ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ ಕನಿಷ್ಠ ಒಂದು ಗಂಟೆ ಉತ್ಪಾದನಾ ತರಹದ ಹಾರ್ಡ್ವೇರ್ನಲ್ಲಿ ಪರೀಕ್ಷಿಸಿ. ಡ್ರಿಫ್ಟ್, ಸೋರಿಕೆಗಳು ಮತ್ತು ಅಪರೂಪದ ಸ್ಥಗಿತಗಳಿಗಾಗಿ ನೋಡಿ.
- ನಿಮ್ಮ ನಿಖರವಾದ ಮಾದರಿಗಾಗಿ ಕರ್ನಲ್ ಮತ್ತು ಕ್ವಾಂಟೈಸೇಶನ್ ಬೆಂಬಲವನ್ನು ಪರಿಶೀಲಿಸಿ. ನಂತರ ಡ್ರೈವರ್ಗಳನ್ನು ನವೀಕರಿಸಿದ ನಂತರ ಅದನ್ನು ಮತ್ತೆ ಮಾಡಿ.
- ಯಾರು ಆನ್ ಕಾಲ್ ಆಗಿದ್ದಾರೆಂದು ನಿರ್ಧರಿಸಿ ಮತ್ತು ನೀವು ಹೇಗೆ ಹಿಂತಿರುಗುತ್ತೀರಿ ಎಂಬುದನ್ನು ಬರೆಯಿರಿ.
ನೀವು ಇದನ್ನು ಮಾಡದಿದ್ದರೆ, vLLM ಅನ್ನು ಆರಿಸಿ ಮತ್ತು ಡೀಫಾಲ್ಟ್ಗಳನ್ನು ಸ್ವೀಕರಿಸಿ. ನೀವು ಮಾಡಿದರೆ, SGL ನಿಮಗೆ ಉತ್ತಮ ಬಳಕೆದಾರ ಅನುಭವ ಮತ್ತು ಕಡಿಮೆ ಟೈಲ್ಗಳನ್ನು ಖರೀದಿಸಬಹುದು, ಅಲ್ಲಿ ಆನಂದವು ಅಡಗಿದೆ.
ವಲಸೆ ಅಪಾಯದ ಬಗ್ಗೆ ಒಂದು ಸಣ್ಣ ಮಾತು
ಉತ್ಪಾದನೆಯಲ್ಲಿ ಸರ್ವಿಂಗ್ ಫ್ರೇಮ್ವರ್ಕ್ಗಳನ್ನು ಬದಲಾಯಿಸುವುದು ವಾರಾಂತ್ಯಗಳನ್ನು ಹಾಳುಮಾಡುವ ರೀತಿಯ ಕೆಲಸವಾಗಿದೆ. ನೀವು ಎರಡನ್ನೂ ಪ್ರಯತ್ನಿಸಲು ಬಯಸುತ್ತೀರಿ ಎಂದು ನೀವು ಅನುಮಾನಿಸಿದರೆ, ಅದಕ್ಕಾಗಿ ಯೋಜಿಸಿ: ವಿನಂತಿ/ಪ್ರತಿಕ್ರಿಯೆ ಸ್ಕೀಮಾಗಳನ್ನು ಪ್ರಮಾಣೀಕರಿಸಿ, ಟೋಕನೈಸರ್ ಮತ್ತು ಸ್ಯಾಂಪ್ಲಿಂಗ್ ಕಾನ್ಫಿಗ್ಗಳನ್ನು ಪೋರ್ಟಬಲ್ ಆಗಿ ಇರಿಸಿ ಮತ್ತು ಸ್ಥಿರವಾದ ಆಂತರಿಕ ಕ್ಲೈಂಟ್ನ ಹಿಂದೆ ಸರ್ವರ್ ಅನ್ನು ಮರೆಮಾಡಿ. ಡಿಕೌಪ್ಲಿಂಗ್ ನಿಮಗೆ ಐಚ್ಛಿಕತೆಯನ್ನು ಖರೀದಿಸುತ್ತದೆ, ಇದು "ಭವಿಷ್ಯದ ನೀವು ಹಿಂದಿನ ನಿಮ್ಮನ್ನು ದ್ವೇಷಿಸುವುದಿಲ್ಲ" ಎಂಬ ಫ್ಯಾನ್ಸಿಯಾದ ಪದವಾಗಿದೆ.
ನೀವು ಬರುತ್ತಿರುವುದನ್ನು ತಿಳಿದಿದ್ದ ಡಯಲೆಕ್ಟಿಕಲ್ ಎಂಡಿಂಗ್
ನೀವು ನೈಟ್ಹುಡ್ ಸಮಾರಂಭಕ್ಕಾಗಿ ಇಲ್ಲಿಗೆ ಬಂದಿದ್ದರೆ—ಏಳಿ, ಸರ್ SGL; ಅಥವಾ, vLLM ಚಿರಾಯುವಾಗಲಿ—ನೀವು ತಪ್ಪಾದ ಕಾಲ್ಪನಿಕ ಕಥೆಯನ್ನು ಆರಿಸಿದ್ದೀರಿ. ಸರಿಯಾದ ಉತ್ತರವೆಂದರೆ ಕೆಲಸದ ಹೊರೆಯಿಂದ ರೂಪುಗೊಂಡಿದೆ. vLLM ಬಹಳಷ್ಟು ಎಳೆಯುವ ಮತ್ತು ದೂರುವುದಿಲ್ಲದ ವಿಶ್ವಾಸಾರ್ಹ ಪಿಕಪ್ ಟ್ರಕ್ ಆಗಿದೆ. SGL ಎಂದರೆ ಕಾಫಿಯನ್ನು ಚೆಲ್ಲದೆ ಟ್ರಾಫಿಕ್ ಅನ್ನು ಥ್ರೆಡ್ ಮಾಡುವ ಸ್ಪೋರ್ಟ್ಸ್ ವ್ಯಾಗನ್. ನೀವು ಯಾವುದರಲ್ಲಿಯಾದರೂ ಪ್ರಯಾಣಿಸಬಹುದು; ನೀವು ಡ್ರೈವ್ ಅನ್ನು ವಿಭಿನ್ನವಾಗಿ ಆನಂದಿಸುವಿರಿ.
ನೆನಪಿಡಬೇಕಾದ ವಿಷಯ: ಬಳಕೆದಾರರು ಲೇಟೆನ್ಸಿಯನ್ನು (ವಿಳಂಬ) ಅನುಭವಿಸುತ್ತಾರೆ; ಹಣಕಾಸು ಥ್ರೂಪುಟ್ ಅನ್ನು ಅನುಭವಿಸುತ್ತದೆ. ನೀವು ಇವೆರಡಕ್ಕೂ ಸುಳ್ಳು ಹೇಳದೆ, ಎರಡನ್ನೂ ಸಮನ್ವಯಗೊಳಿಸುವುದು ನಿಮ್ಮ ಕೆಲಸ. SGL vs vLLM ಒಂದು ವೈಬ್ ಚೆಕ್ ಅಲ್ಲ. "ವೇಗ"ವು ಒಂದಕ್ಕಿಂತ ಹೆಚ್ಚು ಆಯಾಮಗಳನ್ನು ಹೊಂದಿದೆ ಎಂಬುದರ ಒಪ್ಪಿಗೆ ಇದು, ಮತ್ತು ಸೇವೆ ಒದಗಿಸುವ ಚೌಕಟ್ಟುಗಳು (ಫ್ರೇಮ್ವರ್ಕ್ಗಳು), ಜನರಂತೆ, ಒತ್ತಡದಲ್ಲಿ ತಮ್ಮ ಗುಣವನ್ನು ಬಹಿರಂಗಪಡಿಸುತ್ತವೆ.
ನೀವು ಅದೃಷ್ಟವಂತರಾಗಿದ್ದರೆ, ನೀವು ಎಂದಿಗೂ ತಲೆಕೆಡಿಸಿಕೊಳ್ಳಬೇಕಾಗಿಲ್ಲ. ನೀವು ಒಳ್ಳೆಯವರಾಗಿದ್ದರೆ, ಯಾವಾಗ ತಲೆಕೆಡಿಸಿಕೊಳ್ಳಬೇಕೆಂದು ನಿಮಗೆ ತಿಳಿಯುತ್ತದೆ.
H2: SGL vs vLLM ಕಾರ್ಯಕ್ಷಮತೆ: ಟೈಲ್ ಲೇಟೆನ್ಸಿ vs ಥ್ರೂಪುಟ್
- ಮಿಶ್ರ ಲೋಡ್ಗಳ ಅಡಿಯಲ್ಲಿ p95/p99 ಟೈಲ್ಗಳನ್ನು ಕತ್ತರಿಸಲು ಮತ್ತು ಮೊದಲ ಟೋಕನ್ಗೆ ಸಮಯವನ್ನು ಸುಧಾರಿಸಲು SGL ಡೈನಾಮಿಕ್ ಶೆಡ್ಯೂಲಿಂಗ್ಗೆ ಒಲವು ತೋರುತ್ತದೆ.
- vLLM ನ PagedAttention ಅದೇ VRAM ಗೆ ಹೆಚ್ಚಿನ ಏಕಕಾಲಿಕ ವಿನಂತಿಗಳನ್ನು ತಳ್ಳುತ್ತದೆ, ಪ್ರತಿ GPU ಗೆ ಟೋಕನ್ಗಳನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ.
- ಇಂಟರಾಕ್ಟಿವ್ UX ಮತ್ತು ಸ್ಪೈಕಿ ಟ್ರಾಫಿಕ್ಗಾಗಿ SGL ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ; ಸ್ಥಿರವಾದ ಹೆಚ್ಚಿನ ಪ್ರಮಾಣದ ಚಾಟ್ ಅಥವಾ ಬ್ಯಾಚ್ಗಾಗಿ vLLM ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ.
H2: ಉತ್ಪಾದನೆಯಲ್ಲಿ SGL vs vLLM ಗಾಗಿ ನಿಯೋಜನೆ ಆಯ್ಕೆಗಳು
- ನಿಮ್ಮ SLA ಅನ್ನು ಲೇಟೆನ್ಸಿ (SGL-ಸ್ನೇಹಿ) ಅಥವಾ ಥ್ರೂಪುಟ್ಗೆ (vLLM-ಸ್ನೇಹಿ) ಮ್ಯಾಪ್ ಮಾಡಿ.
- ನಿಮ್ಮ ನಿಖರವಾದ ಮಾದರಿ ಮತ್ತು GPU ಗಾಗಿ ಕ್ವಾಂಟೈಸೇಶನ್ ಮತ್ತು ಕರ್ನಲ್ ಬೆಂಬಲವನ್ನು ಮೌಲ್ಯೀಕರಿಸಿ.
- ಪೋರ್ಟಬಲ್ ಕ್ಲೈಂಟ್ ಲೇಯರ್ ಅನ್ನು ಇಟ್ಟುಕೊಳ್ಳಿ ಇದರಿಂದ ನೀವು SGL ಮತ್ತು vLLM ಗೆ ಎಂಡ್ಪಾಯಿಂಟ್ ಮೂಲಕ ರೂಟ್ ಮಾಡಬಹುದು.
H2: ಸರಿಯಾದ ರೀತಿಯಲ್ಲಿ SGL vs vLLM ಅನ್ನು ಬೆಂಚ್ಮಾರ್ಕಿಂಗ್ ಮಾಡುವುದು
- ನೈಜ ಟ್ರಾಫಿಕ್ ಆಕಾರಗಳ ಅಡಿಯಲ್ಲಿ ಮೊದಲ-ಟೋಕನ್ ಸಮಯ ಮತ್ತು ಎಂಡ್-ಟು-ಎಂಡ್ ಲೇಟೆನ್ಸಿಯನ್ನು ಅಳೆಯಿರಿ.
- ಮಲ್ಟಿ-ಗಂಟೆಗಳ ರನ್ನಲ್ಲಿ ಮೆಮೊರಿ ಹೆಡ್ರೂಮ್ ಮತ್ತು ಸ್ಥಿರತೆಯನ್ನು ಟ್ರ್ಯಾಕ್ ಮಾಡಿ.
- ಬ್ಯಾಚ್ ಗಾತ್ರ ಮತ್ತು ವಿನಂತಿ ವಿತರಣೆಯನ್ನು ಮರೆಮಾಡುವ ಏಕ-ಸಂಖ್ಯೆಯ ಟೋಕನ್ಗಳು/ಸೆಕೆಂಡಿನ ಟ್ರೋಫಿಗಳನ್ನು ತಪ್ಪಿಸಿ.
H3: ನೀವು ನಿಜವಾಗಿಯೂ ಕಾಳಜಿವಹಿಸುವ ದೀರ್ಘ-ಟೈಲ್ ಕೀವರ್ಡ್ಗಳು
- "SGL vs vLLM ಕೋಡ್ ಜನರೇಷನ್"
- "SGL vs vLLM ಉತ್ಪಾದನಾ ನಿಯೋಜನೆ"
- "SGL vs vLLM ಬೆಂಚ್ಮಾರ್ಕ್"
ತೀರ್ಮಾನ: ನೀವು ಬಳಸಬಹುದಾದ ಪ್ರಾಮಾಣಿಕ ಉತ್ತರ
ನೀವು ವಿಶ್ವಾಸಾರ್ಹ ಡೀಫಾಲ್ಟ್ ಅನ್ನು ಬಯಸಿದರೆ ಮತ್ತು ನಿಮ್ಮ ಮೆಟ್ರಿಕ್ ದೀರ್ಘಾವಧಿಯಲ್ಲಿ ಟೋಕನ್ಗಳು-ಪ್ರತಿ-ಡಾಲರ್ ಆಗಿದ್ದರೆ vLLM ಅನ್ನು ಆರಿಸಿ. ನಿಮ್ಮ ಬಳಕೆದಾರರು ಲೂಪ್ನಲ್ಲಿರುವ ಮಾನವರಾಗಿದ್ದರೆ ಮತ್ತು ಉತ್ಪನ್ನವು ಅಂಚಿನಲ್ಲಿ ಗ್ರಹಿಸಿದ ವೇಗದಿಂದ ಬದುಕುತ್ತದೆಯೋ ಅಥವಾ ಸಾಯುತ್ತದೆಯೋ ಆಗಿದ್ದರೆ SGL ಅನ್ನು ಆರಿಸಿ. ನೀವು ಯಾವ ಗುಂಪಿನಲ್ಲಿದ್ದೀರಿ ಎಂದು ನಿಮಗೆ ಹೇಳಲು ಸಾಧ್ಯವಾಗದಿದ್ದರೆ, ನೀವು ಡೀಫಾಲ್ಟ್ ಆಗಿ vLLM ಗುಂಪಿನಲ್ಲಿದ್ದೀರಿ - ಮತ್ತು ಅದು ಸರಿ. ಒಳ್ಳೆಯ ಸುದ್ದಿ ಏನೆಂದರೆ ನೀವು ಎರಡನ್ನೂ ರನ್ ಮಾಡಬಹುದು. ಉತ್ತಮ ಸುದ್ದಿ ಏನೆಂದರೆ, ಸಾರ್ವತ್ರಿಕ ಚಾಂಪಿಯನ್ ಇದ್ದಾರೆ ಎಂದು ನೀವು ನಟಿಸುವುದನ್ನು ನಿಲ್ಲಿಸಬಹುದು. SGL vs vLLM ಎಂಬುದು "ವೇಗ"ದ ಬಗ್ಗೆ ಎರಡು ಸ್ಮಾರ್ಟ್, ಅಭಿಪ್ರಾಯಪೂರಿತ ಟೇಕ್ಗಳ ನಡುವಿನ ಆಯ್ಕೆಯಾಗಿದೆ. ಉಳಿದವು ನಿಮ್ಮ ವರ್ಕ್ಲೋಡ್, ನಿಮ್ಮ ಬಜೆಟ್ ಮತ್ತು ನಾಬ್ಗಳಿಗಾಗಿ ನಿಮ್ಮ ಹಸಿವು.
FAQ
Q1: ಯಾವುದು ವೇಗವಾಗಿದೆ: SGL ಅಥವಾ vLLM?
ವೇಗದಿಂದ ನೀವು ಏನನ್ನು ಅರ್ಥೈಸುತ್ತೀರಿ ಎಂಬುದರ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿದೆ. ಸ್ಥಿರವಾದ, ಹೆಚ್ಚಿನ ಏಕಕಾಲಿಕ ಥ್ರೂಪುಟ್ಗೆ vLLM ವೇಗವಾಗಿರುತ್ತದೆ; SGL ಮೊದಲ ಟೋಕನ್ಗೆ ವೇಗವಾಗಿರುತ್ತದೆ ಮತ್ತು ಮಿಶ್ರ, ಸ್ಪೈಕಿ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ ಟೈಲ್ನಲ್ಲಿ ಹೆಚ್ಚು ಸ್ಥಿರವಾಗಿರುತ್ತದೆ. ನಿಮ್ಮ ಮೆಟ್ರಿಕ್ ಟೋಕನ್ಗಳು-ಪ್ರತಿ-ಡಾಲರ್ ಆಗಿದ್ದರೆ, vLLM; ಗ್ರಹಿಸಿದ ಲೇಟೆನ್ಸಿಯಾಗಿದ್ದರೆ, SGL.
Q2: RAG ವರ್ಕ್ಲೋಡ್ಗಳಿಗೆ SGL vLLM ಗಿಂತ ಉತ್ತಮವಾಗಿದೆಯೇ?
ದೊಡ್ಡ ಪ್ರಾಂಪ್ಟ್ಗಳು ಮತ್ತು ಸಣ್ಣ ಉತ್ತರಗಳೊಂದಿಗೆ RAG ಗಾಗಿ, SGL ನ ಶೆಡ್ಯೂಲಿಂಗ್ ಮೊದಲ-ಟೋಕನ್ ಸಮಯಗಳು ಹೆಚ್ಚಾಗದಂತೆ ತಡೆಯಬಹುದು. ದೊಡ್ಡ ಪ್ರಮಾಣದಲ್ಲಿ ಮಧ್ಯಮ ಪ್ರಾಂಪ್ಟ್ಗಳಿಗಾಗಿ, vLLM ನ ಮೆಮೊರಿ ಪ್ಯಾಕಿಂಗ್ ಗೆಲ್ಲುತ್ತದೆ. ನೀವು ಫಾರ್ಮ್ ಅನ್ನು ಬಾಜಿ ಕಟ್ಟುವ ಮೊದಲು ನಿಮ್ಮ ನಿಜವಾದ ಪ್ರಾಂಪ್ಟ್ ಗಾತ್ರಗಳನ್ನು ಬೆಂಚ್ಮಾರ್ಕ್ ಮಾಡಿ.
Q3: ನಾನು SGL vs vLLM ಅನ್ನು ಹೇಗೆ ನ್ಯಾಯಯುತವಾಗಿ ಬೆಂಚ್ಮಾರ್ಕ್ ಮಾಡಬೇಕು?
ನಿಮ್ಮ ನೈಜ ವಿನಂತಿ ವಿತರಣೆಯನ್ನು ಬಳಸಿ, ಆಟಿಕೆ ಅಲ್ಲ. p95/p99 ಮೊದಲ-ಟೋಕನ್ ಸಮಯ, ಒಟ್ಟಾರೆ ಥ್ರೂಪುಟ್ ಮತ್ತು ಗಂಟೆಗಳವರೆಗೆ ಸ್ಥಿರತೆಯನ್ನು ಅಳೆಯಿರಿ. ಮಾದರಿ, dtype, GPU, ಬ್ಯಾಚ್ ಗಾತ್ರ ಮತ್ತು ಏಕಕಾಲಿಕತೆಯನ್ನು ಬಹಿರಂಗಪಡಿಸಿ - ಅಥವಾ ನೀವು ಕೇವಲ ಗ್ರಾಫ್ಗಳನ್ನು ಸುಂದರಗೊಳಿಸುತ್ತಿದ್ದೀರಿ.
Q4: ನಾನು SGL ಮತ್ತು vLLM ಎರಡನ್ನೂ ಒಂದೇ ಸ್ಟಾಕ್ನಲ್ಲಿ ನಿಯೋಜಿಸಬಹುದೇ?
ಹೌದು, ಮತ್ತು ನಿಮ್ಮ ವರ್ಕ್ಲೋಡ್ಗಳು ಬದಲಾಗುತ್ತಿದ್ದರೆ ನೀವು ಬಹುಶಃ ಮಾಡಬೇಕು. ಇಂಟರಾಕ್ಟಿವ್ ಎಂಡ್ಪಾಯಿಂಟ್ಗಳನ್ನು SGL ಗೆ ಮತ್ತು ಬ್ಯಾಚ್ ಅಥವಾ ಹೆಚ್ಚಿನ ಪ್ರಮಾಣದ ಚಾಟ್ ಅನ್ನು vLLM ಗೆ ರೂಟ್ ಮಾಡಿ. ಸ್ವಾಪಿಂಗ್ ನಿಮ್ಮ ವಾರಾಂತ್ಯವನ್ನು ಹಾಳು ಮಾಡದಂತೆ ಪೋರ್ಟಬಲ್ ಕ್ಲೈಂಟ್ ಲೇಯರ್ ಅನ್ನು ಇಟ್ಟುಕೊಳ್ಳಿ.
Q5: SGL ಗೆ ಹೋಲಿಸಿದರೆ vLLM ಯಾವಾಗ ಕಳಪೆ ಪ್ರದರ್ಶನ ನೀಡುತ್ತದೆ?
ಮೊದಲ-ಟೋಕನ್ ಲೇಟೆನ್ಸಿ ಮುಖ್ಯವಾಗಿರುವ ಸ್ಪೈಕಿ, ಮಿಶ್ರ ವರ್ಕ್ಲೋಡ್ಗಳ ಅಡಿಯಲ್ಲಿ ಮತ್ತು ದೀರ್ಘ ಪ್ರಾಂಪ್ಟ್ಗಳು ಸಣ್ಣ ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು ನಿರ್ಬಂಧಿಸುತ್ತವೆ. SGL ನ ಪ್ರಿಎಂಪ್ಟ್ಷನ್ ಮತ್ತು ಶೆಡ್ಯೂಲಿಂಗ್ ಆ ಟೈಲ್ಗಳನ್ನು ಸುಗಮಗೊಳಿಸಬಹುದು. ನಿಮ್ಮ ಟ್ರಾಫಿಕ್ ಏಕರೂಪವಾಗಿದ್ದರೆ, vLLM ನ ಸ್ಥಿರ-ಸ್ಥಿತಿ ಹೆಚ್ಚಾಗಿ ಗೆಲ್ಲುತ್ತದೆ.