ನಿಮ್ಮ ಸ್ವಂತ GPU ನಲ್ಲಿ ಒಂದು ದೊಡ್ಡ ಭಾಷಾ ಮಾದರಿಯನ್ನು ಹೋಸ್ಟ್ ಮಾಡಲು ಪ್ರಯತ್ನಿಸಿ, ಮತ್ತು ಒಂದು ಹಸಿದ ಟಮಾಗೋಟ್ಚಿಯನ್ನು ದತ್ತು ತೆಗೆದುಕೊಂಡಂತೆ ಅನಿಸಿದೆಯೇ? ನೀವು ಅದಕ್ಕೆ VRAM ಅನ್ನು ನೀಡುತ್ತೀರಿ, ಕರ್ನಲ್ಗಳನ್ನು ಮುದ್ದಾಡುತ್ತೀರಿ, ಮತ್ತು ಅಂತಿಮವಾಗಿ ಒಂದು ಉತ್ತರವನ್ನು ಕೇಳಿದಾಗ... ಅದು ಐದು ಸೆಕೆಂಡುಗಳ ಕಾಲ ನಿಮ್ಮನ್ನು ದಿಟ್ಟಿಸಿ ನೋಡುತ್ತದೆ ಮತ್ತು ಹೊರಟುಹೋಗುತ್ತದೆ. ನನ್ನ ವಾರಾಂತ್ಯವು ಒಂದು "ವ್ಯಾನಿಲಾ" LLM ಸರ್ವರ್ನೊಂದಿಗೆ ಹೀಗಿತ್ತು. ನಂತರ ನಾನು vLLM ಅನ್ನು ಸ್ಥಾಪಿಸಿದೆ.
ಸ್ಪಾಯ್ಲರ್: vLLM ಒಂದು ಓಪನ್-ಸೋರ್ಸ್ ಎಂಜಿನ್ ಆಗಿದ್ದು, LLM ಅನುಮಾನವು ನಿಮ್ಮ ಟ್ರೈಸಿಕಲ್ ಅನ್ನು ಟೆಸ್ಲಾಗೆ ಬದಲಾಯಿಸಿದಂತೆ ಭಾಸವಾಗುವಂತೆ ಮಾಡುತ್ತದೆ. ಈ vLLM ವಿಮರ್ಶೆಯು ಅದು ಏನು, ನಿಮ್ಮ ಹಾರ್ಡ್ವೇರ್ ಬಜೆಟ್ನಿಂದ ಅದು ಹೇಗೆ ಹೆಚ್ಚಿನ ಟೋಕನ್ಗಳನ್ನು ಹಿಂಡುತ್ತದೆ, ಅದು ಎಲ್ಲಿ ಪ್ರಕಾಶಿಸುತ್ತದೆ, ಎಲ್ಲಿ ಎಡವುತ್ತದೆ, ಮತ್ತು ಯಾರು ಅದನ್ನು ಕಾರ್ಟ್, ಕ್ಲಸ್ಟರ್, ಅಥವಾ "ಬಹುಶಃ ನಂತರ" ರಾಶಿಯಲ್ಲಿ ಹಾಕಬೇಕು ಎಂಬುದನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ.
vLLM ಎಂದರೇನು, ಸರಳ ಇಂಗ್ಲಿಷ್ನಲ್ಲಿ (ಮತ್ತು ಕಡಿಮೆ GPU ಕಣ್ಣೀರುಗಳೊಂದಿಗೆ)?
vLLM ಒಂದು ದೊಡ್ಡ ಭಾಷಾ ಮಾದರಿಗಳಿಗಾಗಿ ಓಪನ್-ಸೋರ್ಸ್ ಇನ್ಫರೆನ್ಸ್ ಮತ್ತು ಸರ್ವಿಂಗ್ ಎಂಜಿನ್ ಆಗಿದೆ. ಇದನ್ನು ಏರ್-ಟ್ರಾಫಿಕ್ ಕಂಟ್ರೋಲರ್, ಬ್ಯಾಗೇಜ್ ಹ್ಯಾಂಡ್ಲರ್ ಮತ್ತು ರಿಯಾಯಿತಿ ವಿಮಾನಯಾನ ಸಂಸ್ಥೆ ಎಲ್ಲವೂ ಒಂದರಲ್ಲಿರುವಂತೆ ಯೋಚಿಸಿ—ಇದು ವಿನಂತಿಗಳನ್ನು ನಿಗದಿಪಡಿಸುತ್ತದೆ, ಟೋಕನ್ಗಳನ್ನು GPU ಮೆಮೊರಿಗೆ ತುಂಬುತ್ತದೆ ಮತ್ತು ಸೀಟುಗಳನ್ನು (VRAM) ಖಾಲಿ ಬಿಡದೆ ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಟೇಕ್ ಆಫ್ ಆಗುತ್ತದೆ. ಇದು ನಿಮಗೆ ತಿಳಿದಿರುವ ಮಾದರಿಗಳನ್ನು (Llama, Mistral, Mixtral, Phi, Qwen, Gemma) ಪರಿಚಿತ API ಗಳ ಹಿಂದೆ ಸುತ್ತುತ್ತದೆ (OpenAI-ಶೈಲಿ, OpenAI-ಹೊಂದಾಣಿಕೆಯ), ನಂತರ ಬುದ್ಧಿವಂತ ಮೆಮೊರಿ ತಂತ್ರಗಳು ಮತ್ತು ವೇಳಾಪಟ್ಟಿಯೊಂದಿಗೆ ಅವುಗಳನ್ನು ಟರ್ಬೋಚಾರ್ಜ್ ಮಾಡುತ್ತದೆ.
ನೀವು LLM ಗಳನ್ನು ಮೊಂಡುತನದ ಲೂಪ್ಗಳೊಂದಿಗೆ ಅಥವಾ ಸಾಮಾನ್ಯ-ಉದ್ದೇಶದ ಸರ್ವಿಂಗ್ ಫ್ರೇಮ್ವರ್ಕ್ಗಳೊಂದಿಗೆ ಚಲಾಯಿಸಲು ಪ್ರಯತ್ನಿಸಿದರೆ, ನೀವು ಬಹುಶಃ ದೊಡ್ಡ ವೇಗ ಕೊಲೆಗಾರನನ್ನು ಭೇಟಿಯಾಗಿರಬಹುದು: ವ್ಯರ್ಥ ಮೆಮೊರಿ. vLLM ನ ಸಿಗ್ನೇಚರ್ ಮೂವ್ ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್, ಒಂದು ಡೈನಾಮಿಕ್ ಮೆಮೊರಿ ಮ್ಯಾನೇಜರ್, ಇದು ಕೀ/ವ್ಯಾಲ್ಯೂ ಅಟೆನ್ಶನ್ ಕ್ಯಾಷ್ಗಳನ್ನು ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್ನಲ್ಲಿನ ಪುಟಗಳಂತೆ ಪರಿಗಣಿಸುತ್ತದೆ. ಅನುವಾದ: ಪ್ರತಿ ಸಂಭಾಷಣೆಗೆ VRAM ನಲ್ಲಿ ಖಾಸಗಿ ಪೆಂಟ್ಹೌಸ್ ನೀಡುವ ಬದಲು, ಇದು ಪೆಂಟ್ಹೌಸ್ ಅನ್ನು ಸಹೋದ್ಯೋಗಿ ಸ್ಥಳವಾಗಿ ಪರಿವರ್ತಿಸುತ್ತದೆ. ಹೆಚ್ಚು ಜನರು (ವಿನಂತಿಗಳು) ಹೊಂದಿಕೊಳ್ಳಬಹುದು. ಪ್ರತಿಯೊಬ್ಬರೂ ವೇಗವಾಗಿ ಟೈಪ್ ಮಾಡುತ್ತಾರೆ.
ಈ vLLM ವಿಮರ್ಶೆ ಯಾರಿಗೆ?
- ಕಡಿಮೆ ಸುಪ್ತತೆಯ ಚಾಟ್ ಮತ್ತು ಹೆಚ್ಚಿನ ಥ್ರೋಪುಟ್ ಬ್ಯಾಚ್ ಉದ್ಯೋಗಗಳನ್ನು ಬಯಸುವ AI ಅಪ್ಲಿಕೇಶನ್ಗಳನ್ನು ನಿರ್ಮಿಸುವ ತಂಡಗಳು.
- ವಾಣಿಜ್ಯ LLM ಎಂಡ್ಪಾಯಿಂಟ್ಗಳಿಗೆ ಓಪನ್-ಸೋರ್ಸ್ ಪರ್ಯಾಯವನ್ನು ಬೇಟೆಯಾಡುವ ಮೂಲಸೌಕರ್ಯ ಜನರು.
- ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ತ್ಯಾಗ ಮಾಡದೆ ತ್ವರಿತ ಮಾದರಿ ಬದಲಾವಣೆಗಳನ್ನು ಬಯಸುವ ಸಂಶೋಧಕರು.
- ಸ್ವಯಂ-ಹೋಸ್ಟಿಂಗ್ ಮೂಲಕ ಟೋಕನ್ ವೆಚ್ಚವನ್ನು ಕಡಿತಗೊಳಿಸಲು ಪ್ರಯತ್ನಿಸುತ್ತಿರುವ ಸ್ಟಾರ್ಟಪ್ ಪ್ರಾಗ್ಮಾಟಿಸ್ಟ್ಗಳು.
ನೀವು "ನನಗೆ ಒಂದು ಪ್ರಾಂಪ್ಟ್ ಬಾಕ್ಸ್ ಮತ್ತು ವೈಬ್ಸ್ ಬೇಕು" ಎಂಬ ಸ್ಥಿತಿಯಲ್ಲಿದ್ದರೆ, ನೀವು ನಿರ್ವಹಿಸಿದ API ಗಳನ್ನು ಇಷ್ಟಪಡಬಹುದು. ನೀವು "10x ಬಜೆಟ್ ಇಲ್ಲದೆ 10x ಥ್ರೋಪುಟ್ ಬೇಕು" ಎಂಬ ಸ್ಥಿತಿಯಲ್ಲಿದ್ದರೆ, ಓದುವುದನ್ನು ಮುಂದುವರಿಸಿ.
vLLM ನ ಮುಖ್ಯಾಂಶದ ವೈಶಿಷ್ಟ್ಯಗಳು (ಮತ್ತು ನೀವು ಏಕೆ ಕಾಳಜಿ ವಹಿಸಬೇಕು)
- ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್: ಅಟೆನ್ಶನ್ KV ಕ್ಯಾಷ್ಗಳಿಗಾಗಿ ಮೆಮೊರಿ ಪೇಜಿಂಗ್. vLLM ಫ್ರೇಮ್ಗಳನ್ನು ಕೈಬಿಡದೆ ಬಹಳಷ್ಟು ವಿನಂತಿಗಳನ್ನು ನಿಭಾಯಿಸಲು ಇದು ಕಾರಣವಾಗಿದೆ.
- ನಿರಂತರ ಬ್ಯಾಚಿಂಗ್: ಹೊಸ ವಿನಂತಿಗಳು ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಬ್ಯಾಚ್ಗಳನ್ನು ಸೇರುತ್ತವೆ, ಆದ್ದರಿಂದ GPU ಗಳು ಕಾರ್ಯನಿರತವಾಗಿರುತ್ತವೆ ಮತ್ತು ಸುಪ್ತತೆಯು ಸಮಂಜಸವಾಗಿರುತ್ತದೆ.
- OpenAI-ಹೊಂದಾಣಿಕೆಯ API ಗಳು: ಕನಿಷ್ಠ ಕೋಡ್ ಬದಲಾವಣೆಗಳೊಂದಿಗೆ OpenAI ಗಾಗಿ ನಿರ್ಮಿಸಲಾದ ಪರಿಕರಗಳು ಮತ್ತು SDK ಗಳಿಗೆ ಇದನ್ನು ಪ್ಲಗ್ ಮಾಡಿ.
- ಟೆನ್ಸರ್/ಕ್ವಾಂಟೈಸೇಶನ್ ಬೆಂಬಲ: FP16, BF16, ಮತ್ತು ಜನಪ್ರಿಯ ಕ್ವಾಂಟೈಸ್ಡ್ ತೂಕಗಳು (AWQ, GPTQ ಅನ್ವಯವಾಗುವಲ್ಲಿ), ಆದ್ದರಿಂದ ನೀವು ದೊಡ್ಡ ಮೆದುಳುಗಳನ್ನು ಸಣ್ಣ GPU ಗಳಿಗೆ ಹೊಂದಿಸಬಹುದು.
- ಮಲ್ಟಿ-GPU & ವಿತರಣೆ ಸರ್ವಿಂಗ್: ನಿಮ್ಮ ಏಕೈಕ A100 ಬೆವರುವಾಗ ಸ್ಕೇಲ್-ಔಟ್ ಮಾಡಿ.
- ಸ್ಟ್ರೀಮಿಂಗ್ ಟೋಕನ್ಗಳು: ಹಾಲಿವುಡ್ ಹ್ಯಾಕಿಂಗ್ ದೃಶ್ಯದಂತೆ ಬಳಕೆದಾರರು ಪದಗಳನ್ನು ಟೈಪ್ ಮಾಡುವುದನ್ನು ನೋಡುತ್ತಾರೆ, ಇದು ಎಲ್ಲವನ್ನೂ ವೇಗವಾಗಿ ಅನುಭವಿಸುವಂತೆ ಮಾಡುತ್ತದೆ.
- LoRA/ಅಡಾಪ್ಟರ್ ಬೆಂಬಲ (ಮಾದರಿ-ಅವಲಂಬಿತ): ನೀವು ಒಂದೇ ಬೇಸ್ ಮಾದರಿಯಲ್ಲಿ ಉತ್ತಮ-ಟ್ಯೂನ್ಡ್ ರೂಪಾಂತರಗಳನ್ನು ಸರ್ವ್ ಮಾಡುತ್ತಿದ್ದರೆ ಉಪಯುಕ್ತವಾಗಿದೆ.
ತ್ವರಿತ ಸೆಟಪ್ ಕಥೆ (ಅಕಾ: ನಾನು ಮೊದಲ ಟೋಕನ್ಗೆ ಎಷ್ಟು ಬೇಗನೆ ತಲುಪಬಹುದು?)
- pip ಮೂಲಕ vLLM ಅನ್ನು ಸ್ಥಾಪಿಸಿ. ಯಾವುದೇ ಸಮನ್ಸ್ ವೃತ್ತದ ಅಗತ್ಯವಿಲ್ಲ:
pip install vllm
- ಹಗ್ಗಿಂಗ್ ಫೇಸ್ ಅಥವಾ ನಿಮ್ಮ ಸ್ಥಳೀಯ ತೂಕದಲ್ಲಿರುವ ಮಾದರಿಗೆ ಅದನ್ನು ಸೂಚಿಸಿ.
- OpenAI-ಹೊಂದಾಣಿಕೆಯ ಎಂಡ್ಪಾಯಿಂಟ್ನೊಂದಿಗೆ ಸರ್ವರ್ ಅನ್ನು ಫೈರ್ ಅಪ್ ಮಾಡಿ.
- ಕರ್ಲ್ ಮಾಡಿ ಅಥವಾ ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ OpenAI ಕ್ಲೈಂಟ್ಗೆ ಪ್ಲಗ್ ಮಾಡಿ.
ನಾನು ಗ್ರಾಹಕ GPU ಮತ್ತು ಡೇಟಾ-ಸೆಂಟರ್ ಕಾರ್ಡ್ನೊಂದಿಗೆ ಕೆಲಸ ಮಾಡುವ ವರ್ಕ್ಸ್ಟೇಷನ್ನಲ್ಲಿ ನಡೆಸಿದ ಪರೀಕ್ಷೆಗಳಲ್ಲಿ, ವಿಶೇಷವಾಗಿ ಲೋಡ್ ಅಡಿಯಲ್ಲಿ, ಸ್ಟಾಕ್ ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ ಸರ್ವರ್ ಸೆಟಪ್ಗಳಿಗಿಂತ ಮೊದಲ ಟೋಕನ್ಗೆ ಸಮಯವು ಗಮನಾರ್ಹವಾಗಿ ವೇಗವಾಗಿತ್ತು. ಅನೇಕ ಬಳಕೆದಾರರು (ಅಥವಾ ನಿಮ್ಮ ಸ್ವಂತ ಬ್ಯಾಚ್ ಉದ್ಯೋಗಗಳು) ಸರ್ವರ್ ಅನ್ನು ಹೊಡೆದಾಗ ಮ್ಯಾಜಿಕ್ ಕಾಣಿಸಿಕೊಳ್ಳುತ್ತದೆ—vLLM GPU ಅನ್ನು ತುಂಬಿರುತ್ತದೆ.
ಬೆಂಚ್ಮಾರ್ಕ್ಗಳು, ಸುಪ್ತತೆ ಮತ್ತು ನೈಜ-ಪ್ರಪಂಚದ ವೈಬ್
vLLM ವಿಮರ್ಶೆಯ ಸಮಯದಲ್ಲಿ ಎದ್ದು ಕಾಣುವುದು:
- ಥ್ರೋಪುಟ್: ನಿರಂತರ ಬ್ಯಾಚಿಂಗ್ನೊಂದಿಗೆ, vLLM ನಿಮ್ಮ GPU ಅನ್ನು ಎಲಿಪ್ಸೆಸ್ ಅನ್ನು ಮಾತ್ರ ಮುದ್ರಿಸುವ ಸ್ಪೇಸ್ ಹೀಟರ್ ಆಗಿ ಪರಿವರ್ತಿಸದೆ ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ ಅನೇಕ ವಿನಂತಿಗಳನ್ನು ಸರ್ವ್ ಮಾಡಬಹುದು. ನೀವು ಅದರ ಮೇಲೆ ಎಷ್ಟು ಏಕಕಾಲೀನ ವಿನಂತಿಗಳನ್ನು ಎಸೆದರೂ (ಕಾರಣದೊಳಗೆ), ಅದು ಅಷ್ಟು ಬಾಗುತ್ತದೆ.
- ಸುಪ್ತತೆ: ಮೊದಲ ಟೋಕನ್ಗೆ ಸಮಯವು ಸ್ಪರ್ಧಾತ್ಮಕವಾಗಿದೆ, ಮತ್ತು ಕೆಲವೊಮ್ಮೆ ನಾನು ಪ್ರಯತ್ನಿಸಿದ ಇತರ ಓಪನ್-ಸೋರ್ಸ್ ಸರ್ವರ್ಗಳಿಗಿಂತ ಉತ್ತಮವಾಗಿದೆ—ವಿಶೇಷವಾಗಿ ಸ್ಟ್ರೀಮಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿದಾಗ ಮತ್ತು ಪ್ರಾಂಪ್ಟ್ಗಳು ಚಿಕ್ಕದರಿಂದ ಮಧ್ಯಮವಾಗಿದ್ದಾಗ.
- ದೀರ್ಘ ಔಟ್ಪುಟ್ಗಳು: ನಿರಂತರ ಉತ್ಪಾದನೆಯು ಸ್ಥಿರವಾಗಿರುತ್ತದೆ. ಬಹಳ ದೀರ್ಘ ಉತ್ಪಾದನೆಗಳಿಗೆ, VRAM ಅನ್ನು ಆರಾಮವಾಗಿಡಲು ನೀವು max_tokens, ಕಿರಣ ಸೆಟ್ಟಿಂಗ್ಗಳು (ನೀವು ಹೊಂದಿರಲೇಬೇಕು ಎಂದಾದರೆ), ಮತ್ತು ತಾಪಮಾನವನ್ನು ಟ್ಯೂನ್ ಮಾಡಲು ಬಯಸುತ್ತೀರಿ.
- ಮಿಶ್ರ ವರ್ಕ್ಲೋಡ್ಗಳು: ಇದು ಚಾಟ್, ಟೂಲ್-ಯೂಸ್ ಪ್ರಾಂಪ್ಟ್ಗಳು ಮತ್ತು ಲೈಟ್ ಬ್ಯಾಚ್ ಸ್ಕೋರಿಂಗ್ ಅನ್ನು ಒಂದೇ ಸಮಯದಲ್ಲಿ ನಿರ್ವಹಿಸುವಲ್ಲಿ ವಿಚಿತ್ರವಾಗಿ ಉತ್ತಮವಾಗಿದೆ. ಯಾರನ್ನೂ ವಿಷಪೂರಿತಗೊಳಿಸದೆ ಪ್ಯಾನ್ಕೇಕ್ಗಳು ಮತ್ತು ಪ್ಯಾಡ್ ಥಾಯ್ ಅನ್ನು ನೀಡುವ ಡೈನರ್ನಂತೆ.
ನಿಮ್ಮ ಸಂಖ್ಯೆಗಳು GPU ವರ್ಗ, ಕ್ವಾಂಟೈಸೇಶನ್, ಸೀಕ್ವೆನ್ಸ್ ಉದ್ದಗಳು ಮತ್ತು ಮಾದರಿ ಆಯ್ಕೆಯ ಮೇಲೆ ಅವಲಂಬಿತವಾಗಿರುತ್ತದೆ. ಆದರೆ ಮಾದರಿಯು ಸ್ಥಿರವಾಗಿದೆ: ಏಕಕಾಲೀನತೆಯು ಹೆಚ್ಚಾದಂತೆ vLLM ಮುಂದಕ್ಕೆ ಸಾಗುತ್ತದೆ.
ಇತರ LLM ಸರ್ವರ್ಗಳಿಗೆ ಹೋಲಿಸಿದರೆ vLLM ಎಲ್ಲಿ ಪ್ರಕಾಶಿಸುತ್ತದೆ
- ಕನಿಷ್ಠ ಸುಪ್ತತೆಯೊಂದಿಗೆ ಬಹಳಷ್ಟು ಸಂವಾದಾತ್ಮಕ ಬಳಕೆದಾರರಿಗೆ ಸೇವೆ ಸಲ್ಲಿಸುವುದು ನಿಮ್ಮ ಆದ್ಯತೆಯಾಗಿದ್ದರೆ, vLLM ನ ಶೆಡ್ಯೂಲರ್ ಮತ್ತು ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ ಎದ್ದು ಕಾಣುತ್ತವೆ.
- ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಅಪ್ಲಿಕೇಶನ್ಗಳಿಗೆ ಸ್ಲಾಟ್ ಮಾಡಲು OpenAI-ಹೊಂದಾಣಿಕೆಯ ಎಂಡ್ಪಾಯಿಂಟ್ಗಳು ನಿಮಗೆ ಬೇಕಾದರೆ, ಅದು ಪ್ಲಗ್-ಅಂಡ್-ಪ್ಲೇ ಸ್ನೇಹಿಯಾಗಿದೆ.
- ನೀವು ವೆಚ್ಚವನ್ನು ಅತ್ಯುತ್ತಮವಾಗಿಸುತ್ತಿದ್ದರೆ, ನೀವು ಸಾಮಾನ್ಯವಾಗಿ ಸ್ವಲ್ಪ ಚಿಕ್ಕ GPU ವರ್ಗಕ್ಕೆ ಇಳಿಯಬಹುದು ಅಥವಾ ಅದೇ ಹಾರ್ಡ್ವೇರ್ನಿಂದ ಹೆಚ್ಚು req/sec ಅನ್ನು ಹಿಂಡಬಹುದು. CFO ಗಳು ಎಲ್ಲೆಡೆ ಎಚ್ಚೆತ್ತುಕೊಳ್ಳುತ್ತಾರೆ.
vLLM ನಿಮಗೆ ಎಲ್ಲಿ ನಿರಾಶೆಗೊಳಿಸಬಹುದು (ಇದು ಮ್ಯಾಜಿಕ್ ಪಿಕ್ಸಿ ಡಸ್ಟ್ ಅಲ್ಲ)
- ಮಾದರಿ ಹೊಂದಾಣಿಕೆಯು ಸಾರ್ವತ್ರಿಕವಾಗಿಲ್ಲ. ಅತ್ಯಂತ ಜನಪ್ರಿಯ ಓಪನ್ ತೂಕಗಳು ಉತ್ತಮವಾಗಿ ರನ್ ಆಗುತ್ತವೆ, ಆದರೆ ವಿಲಕ್ಷಣ ವಾಸ್ತುಶಿಲ್ಪಗಳು ಅಥವಾ ಅತ್ಯಾಧುನಿಕ ಕ್ವಾಂಟ್ ಫಾರ್ಮ್ಯಾಟ್ಗಳಿಗೆ ಟಿಂಕರಿಂಗ್ ಅಗತ್ಯವಿರಬಹುದು ಅಥವಾ ಇನ್ನೂ ಬೆಂಬಲಿಸದೇ ಇರಬಹುದು.
- ಮೆಮೊರಿಯು ಇನ್ನೂ ಭೌತಶಾಸ್ತ್ರವಾಗಿದೆ. ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ ಸಹಾಯ ಮಾಡುತ್ತದೆ, ಆದರೆ 100 ಏಕಕಾಲೀನ ಬಳಕೆದಾರರೊಂದಿಗೆ 6GB GPU ನಲ್ಲಿ 7B ಮಾದರಿಯು ಇನ್ನೂ ಸಿಟ್ಕಾಮ್ ಆಗಿದೆ, ಸರ್ವರ್ ಅಲ್ಲ.
- ಸುಧಾರಿತ ಮಲ್ಟಿಟೆನೆನ್ಸಿ ಮತ್ತು ಗಾರ್ಡ್ರೈಲ್ಗಳಿಗೆ ಇತರ ಪರಿಕರಗಳೊಂದಿಗೆ ಜೋಡಣೆ ಅಥವಾ ಗ್ಲೂ ಕೋಡ್ ಬರೆಯುವುದು ಅಗತ್ಯವಾಗಬಹುದು.
- ನವೀಕರಣಗಳು ವೇಗವಾಗಿ ಚಲಿಸುತ್ತವೆ. ಅದು ವೈಶಿಷ್ಟ್ಯಗಳಿಗೆ ಒಂದು ಪ್ಲಸ್, ಸ್ಥಗಿತಗೊಂಡ ಸ್ಥಿರತೆಯನ್ನು ನೀವು ಬಯಸಿದರೆ ಮೈನಸ್.
ಸಾಮಾನ್ಯ ಅನುಮಾನಿತರಿಗೆ ಹೋಲಿಸಿದರೆ vLLM (ಸ್ನೇಹಪರ ಮುಖಾಮುಖಿ)
- ಟೆಕ್ಸ್ಟ್ ಜನರೇಶನ್ ಇನ್ಫರೆನ್ಸ್ (TGI): TGI ನಯಗೊಳಿಸಿದ ಮತ್ತು ಉದ್ಯಮದಲ್ಲಿ ಜನಪ್ರಿಯವಾಗಿದೆ. vLLM ಡೈನಾಮಿಕ್ ಬ್ಯಾಚಿಂಗ್ ಮತ್ತು ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ನೊಂದಿಗೆ ಥ್ರೋಪುಟ್ನಲ್ಲಿ ಆಗಾಗ್ಗೆ ಅಂಚನ್ನು ಪಡೆಯುತ್ತದೆ, ವಿಶೇಷವಾಗಿ ಚಾಟಿ ವರ್ಕ್ಲೋಡ್ಗಳಿಗೆ. TGI ಬಲವಾದ ಹಗ್ಗಿಂಗ್ ಫೇಸ್ ಏಕೀಕರಣ ಮತ್ತು ಘನ ಉತ್ಪಾದನಾ ದಕ್ಷತಾಶಾಸ್ತ್ರವನ್ನು ಹೊಂದಿದೆ. ಕಚ್ಚಾ ಸರ್ವಿಂಗ್ ವೇಗ ಮತ್ತು OpenAI-ರೀತಿಯ API ಗಳಿಗಾಗಿ vLLM ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ; ನೀವು HF ಟೂಲಿಂಗ್ನಲ್ಲಿ ಆಳವಾಗಿದ್ದರೆ ಮತ್ತು ಅವರ ಓಪ್ಸ್ ಮಾದರಿಗಳನ್ನು ಬಯಸಿದರೆ TGI ಅನ್ನು ಆಯ್ಕೆಮಾಡಿ.
- OpenLLM/FastChat/ಇತರರು: ಹಲವು ಪ್ರಯೋಗಕ್ಕೆ ಉತ್ತಮವಾಗಿವೆ. vLLM ಸಾಮಾನ್ಯವಾಗಿ ಏಕಕಾಲೀನತೆ ಮತ್ತು ಮೆಮೊರಿ ದಕ್ಷತೆಯಲ್ಲಿ ಗೆಲ್ಲುತ್ತದೆ. ನೀವು ಸ್ಪೈಕಿ ಟ್ರಾಫಿಕ್ನೊಂದಿಗೆ ಗ್ರಾಹಕ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನಿರ್ಮಿಸುತ್ತಿದ್ದರೆ, vLLM ನ ವೇಳಾಪಟ್ಟಿ ಬಾಲಗಳನ್ನು ಚಿಕ್ಕದಾಗಿಡಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ.
- ಕಸ್ಟಮ್ ಟ್ರೈಟಾನ್/ಟ್ರಾನ್ಸ್ಫಾರ್ಮರ್ಸ್ ಸ್ಟ್ಯಾಕ್ಗಳು: ನೀವು ಒಂದು ಕೆಟ್ಟ ಸರ್ವರ್ ಅನ್ನು ಕೈಯಿಂದ ತಯಾರಿಸಬಹುದು, ಆದರೆ vLLM ನೀವು ಹೇಗಾದರೂ ನಿರ್ಮಿಸುವ ತಂತ್ರಗಳನ್ನು ಪ್ಯಾಕೇಜ್ ಮಾಡುತ್ತದೆ—ಮತ್ತು ನೀವು ಸಣ್ಣ ನಗರದ ಮೌಲ್ಯದ ಕರ್ನಲ್ಗಳನ್ನು ನಿರ್ವಹಿಸುವ ಅಗತ್ಯವಿಲ್ಲ.
ಆಳವಾದ ಡೈವ್: ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ ಏಕೆ ಮುಖ್ಯವಾಗಿದೆ
ನಿಮ್ಮ ಮಾದರಿಯ ಗಮನದ ಚಿಂತನಾ-ಸ್ಥಳವನ್ನು ದೈತ್ಯ ವೈಟ್ಬೋರ್ಡ್ ಎಂದು ಕಲ್ಪಿಸಿಕೊಳ್ಳಿ. ಪ್ರತಿಯೊಂದು ಸಂಭಾಷಣೆಯು ಅದರ ಮೇಲೆ ಸೆಳೆಯುತ್ತದೆ. ಹೆಚ್ಚಿನ ಸರ್ವರ್ಗಳು ಸಂಪೂರ್ಣ ವಿಭಾಗವನ್ನು ನಿಯೋಜಿಸುತ್ತವೆ—ಸಂಭಾಷಣೆಯು ಎರಡು ಡೂಡಲ್ಗಳು ಮತ್ತು ಸ್ಮೈಲಿಯಾಗಿದ್ದರೂ ಸಹ. ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ ಆ ವೈಟ್ಬೋರ್ಡ್ ಅನ್ನು ಸ್ಟಿಕ್ಕಿ ನೋಟ್ಗಳಾಗಿ ವಿಭಜಿಸುತ್ತದೆ ಮತ್ತು ಅವುಗಳನ್ನು ಒಳಗೆ ಮತ್ತು ಹೊರಗೆ ಬದಲಾಯಿಸುತ್ತದೆ. ಹೆಚ್ಚು ಜನರು ಒಮ್ಮೆಲೇ ಸೆಳೆಯಬಹುದು, ಕಡಿಮೆ ಅಂತರಗಳು, ಕಡಿಮೆ ವ್ಯರ್ಥ ಸ್ಥಳ. ಅದಕ್ಕಾಗಿಯೇ ನೈಜ ಜಗತ್ತು—ಅಂದರೆ ಅನೇಕ ಬಳಕೆದಾರರು ಯಾದೃಚ್ಛಿಕ ವಿಷಯಗಳನ್ನು ಕೇಳುವುದು—ತೋರಿದಾಗ vLLM ಕಾರ್ಯಕ್ಷಮತೆಯನ್ನು ಉಳಿಸಿಕೊಳ್ಳುತ್ತದೆ.
ಡೆವಲಪರ್ ಅನುಭವ: ಆರಾಮದಾಯಕ ಅಥವಾ ಗಡುಸಾದ?
- API ಆರಾಮ: ನೀವು OpenAI ಅನ್ನು ಅನುಕರಿಸುವ REST ಎಂಡ್ಪಾಯಿಂಟ್ಗಳನ್ನು ಪಡೆಯುತ್ತೀರಿ. ನಿಮ್ಮ ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಕ್ಲೈಂಟ್ಗಳು, ಪ್ರಾಂಪ್ಟ್ ಟೆಂಪ್ಲೇಟ್ಗಳು ಮತ್ತು ಲಾಗರ್ಗಳನ್ನು ತನ್ನಿ.
- ಸಂರಚನೆಗಳು: ಸಮಂಜಸವಾದ ಡೀಫಾಲ್ಟ್ಗಳು, ಬ್ಯಾಚ್ ಗಾತ್ರಗಳು, ಟೆನ್ಸರ್ ಪ್ಯಾರಲಲಿಸಮ್, ಕ್ವಾಂಟೈಸೇಶನ್ ಮತ್ತು ಶೆಡ್ಯೂಲರ್ ನಾಬ್ಗಳಿಗೆ ಸಾಕಷ್ಟು ಫ್ಲ್ಯಾಗ್ಗಳಿವೆ.
- ವೀಕ್ಷಣೆ: ಮೆಟ್ರಿಕ್ಸ್ ಎಂಡ್ಪಾಯಿಂಟ್ಗಳು, ಲಾಗ್ಗಳು ಮತ್ತು ಪ್ರೊಮಿಥಿಯಸ್ ಹುಕ್ಗಳು ಇವೆ, ಆದರೂ ನೀವು ಬಹುಶಃ ನಿಮ್ಮ ಸ್ವಂತ ಟ್ರೇಸಿಂಗ್ ಅನ್ನು ಸೇರಿಸುತ್ತೀರಿ.
- ವಿಸ್ತರಣೆ: ಟೋಕನೈಜರ್ಗಳು, ಅಡಾಪ್ಟರ್ಗಳು ಮತ್ತು ಬ್ಯಾಕೆಂಡ್ಗಳಿಗಾಗಿ ಪ್ಲಗಿನ್-ರೀತಿಯ ಬೆಂಬಲವು ಸುಧಾರಿಸುತ್ತಿದೆ. ನೀವು ಮಧ್ಯರಾತ್ರಿಯಲ್ಲಿ ಕೋಡ್ ಅನ್ನು ಓದಲು ಇಷ್ಟಪಟ್ಟರೆ, ರೆಪೊ ಸಕ್ರಿಯವಾಗಿದೆ ಮತ್ತು ಸಮೀಪಿಸಬಲ್ಲದು.
ವೆಚ್ಚದ ಗಣಿತ: vLLM GPU ಬಿಲ್ ಅನ್ನು ಹೇಗೆ ಬದಲಾಯಿಸುತ್ತದೆ
- ಉತ್ತಮ ಬಳಕೆ = ಕಡಿಮೆ ಐಡಲ್ ಸೈಕಲ್ಗಳು. ನೀವು ಗಂಟೆಗೆ (ಕ್ಲೌಡ್) ಪಾವತಿಸುತ್ತಿದ್ದರೆ ಅಥವಾ ಸವಕಳಿ (ಆನ್-ಪ್ರೆಮ್) ಮಾಡುತ್ತಿದ್ದರೆ, vLLM ನ ಥ್ರೋಪುಟ್ ಬಂಪ್ ಪ್ರತಿ ಡಾಲರ್ಗೆ ಹೆಚ್ಚಿನ ಟೋಕನ್ಗಳಿಗೆ ಅನುವಾದಿಸುತ್ತದೆ.
- ಕ್ವಾಂಟೈಸೇಶನ್ ಲಾಭಗಳು: ಬೆಂಬಲಿತ AWQ/GPTQ/INT8 ಅನ್ನು ಚಾಲನೆ ಮಾಡುವುದರಿಂದ VRAM ಹೆಜ್ಜೆಗುರುತುಗಳನ್ನು ಕುಗ್ಗಿಸಬಹುದು ಮತ್ತು ನೀವು GPU ಶ್ರೇಣಿಯನ್ನು ಕಡಿಮೆ ಮಾಡಲು ಅಥವಾ ಕಾರ್ಡ್ಗೆ ಹೆಚ್ಚು ಏಕಕಾಲೀನ ಉದ್ಯೋಗಗಳನ್ನು ಹೊಂದಿಸಲು ಅನುಮತಿಸುತ್ತದೆ.
- ಕ್ಷಿತಿಜೀಯ ಸ್ಕೇಲ್: ನಿಮಗೆ ಹೆಚ್ಚು ಬಲ ಬೇಕಾದಾಗ, vLLM ಅನೇಕ GPU ಗಳು ಮತ್ತು ನೋಡ್ಗಳಲ್ಲಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ. ನಿಮ್ಮ ವಾಸ್ತುಶಿಲ್ಪವನ್ನು ಬ್ಲೆಂಡರ್ಗೆ ಎಸೆಯದೆ ನೀವು ರೇಖೀಯವಾಗಿ ಬೆಳೆಯಬಹುದು.
ಹೆಬ್ಬೆರಳಿನ ನಿಯಮ: ನಿಮ್ಮ ಸೇವೆಯು ಬೆರಳೆಣಿಕೆಯಷ್ಟು ಏಕಕಾಲೀನ ಬಳಕೆದಾರರನ್ನು ಹೊಂದಿದ್ದರೆ ಅಥವಾ ನೀವು ಬ್ಯಾಚ್ ಉದ್ಯೋಗಗಳನ್ನು ಅಲೆಗಳಲ್ಲಿ ಚಲಾಯಿಸಿದರೆ, vLLM ನ ದಕ್ಷತೆಯು ಬೇಗನೆ ಲಾಭವನ್ನು ನೀಡುತ್ತದೆ. ನೀವು ಕೇವಲ ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು ಪರೀಕ್ಷಿಸುತ್ತಿದ್ದರೆ, ಅದು ಹೊಂದಲು ಒಳ್ಳೆಯದು.
ನೈಜ-ಪ್ರಪಂಚದ ಸನ್ನಿವೇಶಗಳು: vLLM ಎಲ್ಲಿ ತನ್ನ ಸ್ಥಾನವನ್ನು ಗಳಿಸುತ್ತದೆ
- ಬಹಳಷ್ಟು ಏಕಕಾಲೀನ ಬಳಕೆದಾರರನ್ನು ಹೊಂದಿರುವ ಚಾಟ್ ಸಹಾಯಕರು: ಗ್ರಾಹಕ ಬೆಂಬಲ, ಆಂತರಿಕ IT ಸಹಾಯ, ಅಥವಾ ವಿದ್ಯಾರ್ಥಿಗಳಿಗೆ ಮಧ್ಯರಾತ್ರಿಯ ಮೊದಲು ಐದು ನಿಮಿಷಗಳಲ್ಲಿ ಪ್ರಬಂಧಗಳನ್ನು ಬುದ್ದಿಮತ್ತೆ ಮಾಡಲು ಸಹಾಯ ಮಾಡುವ ಅಪ್ಲಿಕೇಶನ್.
- ವಿಷಯ ಉತ್ಪಾದನಾ ಪೈಪ್ಲೈನ್ಗಳು: ಬ್ಲಾಗ್ ರೂಪರೇಖೆಗಳು, ಇಮೇಲ್ ಡ್ರಾಫ್ಟ್ಗಳು, ಕೋಡ್ ಕಾಮೆಂಟ್ಗಳು—DMV ನಂತೆ ಕಾಣುವ ಸರತಿ ಸಾಲಿನಲ್ಲಿ ಇಲ್ಲದೆ ಸಮಾನಾಂತರವಾಗಿ ಉತ್ಪಾದಿಸಲಾಗುತ್ತದೆ.
- ಉಪಕರಣ-ಚಾಲಿತ ಏಜೆಂಟ್ಗಳು: ನಿಮ್ಮ ಮಾದರಿಯು ಉಪಕರಣ ಕರೆಗಳಿಗಾಗಿ ವಿರಾಮಗೊಳಿಸಿದಾಗ, vLLM ನ ಬ್ಯಾಚಿಂಗ್ GPU ಅನ್ನು ಇತರ ವಿನಂತಿಗಳೊಂದಿಗೆ ಕಾರ್ಯನಿರತವಾಗಿರಿಸುತ್ತದೆ.
- RAG ವ್ಯವಸ್ಥೆಗಳು: ನಿಮ್ಮ ರಿಟ್ರೈವರ್ ಬೇರೆಡೆ ಪುಸ್ತಕಹುಳು ಕೆಲಸವನ್ನು ಮಾಡುವಾಗ vLLM ಉತ್ಪಾದನಾ ಪದರವಾಗಿ ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತದೆ.
vLLM ಸೆಟಪ್ ಸಲಹೆಗಳು (ವಿನೋದಮಯವಾಗಿ ಕಲಿತವು)
- ನೀವು ನಿಜವಾಗಿ ಸರ್ವ್ ಮಾಡಲು ಯೋಜಿಸಿರುವ ಮಾದರಿಯೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸಿ. ನಂತರ ನಿಮ್ಮ GPU ಏಕೆ ಕಿರುಚುತ್ತದೆ ಎಂದು ಆಶ್ಚರ್ಯಪಟ್ಟುಕೊಳ್ಳುತ್ತಾ ಸಣ್ಣ 3B ಅನ್ನು ಬೆಂಚ್ಮಾರ್ಕ್ ಮಾಡಿ ಮತ್ತು 70B ಅನ್ನು ನಿಯೋಜಿಸಬೇಡಿ.
- ಗರಿಷ್ಠ ಸಂದರ್ಭ ಉದ್ದವನ್ನು ಟ್ಯೂನ್ ಮಾಡಿ. ಅತಿಯಾದ ಗಾತ್ರದ ಸಂದರ್ಭವು VRAM ಅನ್ನು ಸ್ಫೋಟಿಸುತ್ತದೆ; ಸರಿಯಾದ ಗಾತ್ರವು ಏಕಕಾಲೀನತೆಯನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆ.
- ಸ್ಟ್ರೀಮಿಂಗ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಿ. ಬಳಕೆದಾರರು ವೇಗವಾದ ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ಅನುಭವಿಸುತ್ತಾರೆ, ಮತ್ತು ನೀವು UI ಟೋಕನ್ಗಳನ್ನು ಮೊದಲೇ ಫ್ಲಶ್ ಮಾಡಬಹುದು.
- ನೈಜ ಟ್ರಾಫಿಕ್ ಮಾದರಿಗಳೊಂದಿಗೆ ಪರೀಕ್ಷಿಸಿ. ಸ್ಪೈಕಿಯಾ? ಸ್ಥಿರವಾ? ಮಿಶ್ರಿತವಾ? ಆಕಾರವನ್ನು ಅವಲಂಬಿಸಿ vLLM ನ ಶೆಡ್ಯೂಲರ್ ವಿಭಿನ್ನವಾಗಿ ಪ್ರಕಾಶಿಸುತ್ತದೆ.
- ಎಲ್ಲವನ್ನೂ ಲಾಗ್ ಮಾಡಿ. ಸುಪ್ತತೆ p50, p95, ಟೋಕನ್ ಥ್ರೋಪುಟ್ ಮತ್ತು OOM ಈವೆಂಟ್ಗಳು ಎಲ್ಲಿ ಹಿಂಡಬೇಕು ಎಂದು ನಿಮಗೆ ತಿಳಿಸುತ್ತವೆ.
ಭದ್ರತೆ ಮತ್ತು ಆಡಳಿತ: ನಿಮ್ಮ ಸ್ವಂತ ಪ್ರಬುದ್ಧ ಪ್ಯಾಂಟ್ ಅನ್ನು ತನ್ನಿ
vLLM ಒಂದು ಸರ್ವಿಂಗ್ ಎಂಜಿನ್, ನೈತಿಕ ದಿಕ್ಸೂಚಿಯಲ್ಲ. ನಿಮಗೆ ಮಾಡರೇಶನ್, PII ಸ್ಕ್ರಬ್ಬಿಂಗ್, ದರ ಮಿತಿಗಳು, ಬಾಡಿಗೆದಾರರ ಪ್ರತ್ಯೇಕತೆ ಅಥವಾ ಆಡಿಟ್ ಟ್ರೇಲ್ಗಳು ಅಗತ್ಯವಿದ್ದರೆ—ಗೇಟ್ವೇ ಅಥವಾ ಅಪ್ಲಿಕೇಶನ್ ಲೇಯರ್ನಲ್ಲಿ ಅವುಗಳನ್ನು ಬೋಲ್ಟ್ ಮಾಡಿ. ಒಳ್ಳೆಯ ಸುದ್ದಿ: OpenAI-ಹೊಂದಾಣಿಕೆಯ ಇಂಟರ್ಫೇಸ್ ನಿಮ್ಮ ನೆಚ್ಚಿನ ನೀತಿಗಳು ಮತ್ತು ಮಿಡಲ್ವೇರ್ ಅನ್ನು ವಿನಿಮಯ ಮಾಡಿಕೊಳ್ಳುವುದನ್ನು ಸುಲಭಗೊಳಿಸುತ್ತದೆ.
ಸೂಕ್ಷ್ಮ ಮುದ್ರಣ: ಈ vLLM ವಿಮರ್ಶೆಯಲ್ಲಿ ಹೊಂದಾಣಿಕೆ ಮತ್ತು ಎಚ್ಚರಿಕೆಗಳು
- ಪ್ರತಿ ಮಾದರಿ ಆರ್ಕಿಟೆಕ್ಚರ್ ಅಥವಾ ಕ್ವಾಂಟ್ ತೂಕವು ಪ್ಲಗ್-ಅಂಡ್-ಗೋ ಆಗಿರುವುದಿಲ್ಲ. ಡಾಕ್ಸ್ ಮತ್ತು ಸಮುದಾಯ ಸಮಸ್ಯೆಗಳನ್ನು ಪರಿಶೀಲಿಸಿ. ಬೆಂಬಲದ ವೇಗವು ವೇಗವಾಗಿದೆ, ಆದರೆ ನವೀನತೆಯು ಯಾವಾಗಲೂ ಸ್ಥಿರತೆಯನ್ನು ಮೀರಿಸುತ್ತದೆ.
- CPU ಫಾಲ್ಬ್ಯಾಕ್? vLLM GPU ಗಳಲ್ಲಿ ಸಂತೋಷವಾಗಿದೆ. ನೀವು CPU ನಲ್ಲಿ ಪ್ರಯೋಗಿಸಬಹುದು, ಆದರೆ ಅದು ಸ್ಕೀ ಬೂಟುಗಳಲ್ಲಿ ಮ್ಯಾರಥಾನ್ ಓಡಲು ಪ್ರಯತ್ನಿಸಿದಂತೆ.
- ಮಲ್ಟಿ-GPU ಶಾರ್ಡಿಂಗ್ ಶಕ್ತಿಯುತವಾಗಿದೆ, ಆದರೆ ಎಚ್ಚರಿಕೆಯ ಸಂರಚನೆಯ ಅಗತ್ಯವಿದೆ. ವಿಶೇಷವಾಗಿ ಉತ್ಪಾದನಾ SLA ಗಳಿಗಾಗಿ ಫೇಲ್ಓವರ್ ಮತ್ತು ವಾರ್ಮ್ ಸ್ಟಾರ್ಟ್ಗಳನ್ನು ಪರೀಕ್ಷಿಸಿ.
ತ್ವರಿತ-ಪ್ರಾರಂಭ: ಮಾನಸಿಕ ಪರಿಶೀಲನಾಪಟ್ಟಿ
- ಹಾರ್ಡ್ವೇರ್: ನಿಮ್ಮ ಗುರಿ ಮಾದರಿ + ಏಕಕಾಲೀನತೆಗಾಗಿ ಸಾಕಷ್ಟು ಹೆಡ್ರೂಮ್ಗಾಗಿ ಸಾಕಷ್ಟು VRAM ಹೊಂದಿರುವ GPU ಗಳು.
- ಮಾದರಿ: ಉತ್ತಮವಾಗಿ ಬೆಂಬಲಿತ ಕುಟುಂಬವನ್ನು (Llama, Mistral, Mixtral, Qwen, Gemma) ಆಯ್ಕೆಮಾಡಿ ಮತ್ತು ಟೋಕನೈಜರ್/ಕ್ವಾಂಟೈಸೇಶನ್ ಹೊಂದಾಣಿಕೆಯನ್ನು ಖಚಿತಪಡಿಸಿ.
- ಸರ್ವಿಂಗ್: OpenAI API ಅನ್ನು ಆನ್ ಮಾಡಿ, ಪ್ರತಿಕ್ರಿಯೆಗಳನ್ನು ಸ್ಟ್ರೀಮ್ ಮಾಡಿ, ಸಂದರ್ಭ ಮತ್ತು max_tokens ಅನ್ನು ಸಮಂಜಸವಾಗಿ ಹೊಂದಿಸಿ vLLM ಅನ್ನು ಚಲಾಯಿಸಿ.
- ಸ್ಕೇಲ್: GPU ಗಳು ಅಥವಾ ನೋಡ್ಗಳನ್ನು ಸೇರಿಸಿ. ರೂಟಿಂಗ್, ದರ ಮಿತಿಗಳು ಮತ್ತು ದೃಢೀಕರಣಕ್ಕಾಗಿ ಗೇಟ್ವೇ ಬಳಸಿ. ಕ್ಲೌಡ್ ಆಗಿದ್ದರೆ ಆಟೋಸ್ಕೇಲಿಂಗ್ ಅನ್ನು ಪರಿಗಣಿಸಿ.
- ವೆಚ್ಚಗಳು: ಪ್ರತಿ ಸೆಕೆಂಡಿಗೆ ಟೋಕನ್ಗಳು, ಏಕಕಾಲೀನತೆ ಮತ್ತು ಸರಾಸರಿ ಔಟ್ಪುಟ್ ಉದ್ದವನ್ನು ಅಳೆಯಿರಿ. ಪ್ರತಿ ಬದಲಾವಣೆಯ ನಂತರ ಮರು-ರನ್ ಮಾಡಿ.
ಗಮನಿಸಬೇಕಾದ ಸಂಗತಿ: ಈ ಚಿತ್ರದಲ್ಲಿ Sider.AI ಎಲ್ಲಿ ಹೊಂದಿಕೊಳ್ಳುತ್ತದೆ
ನಿರ್ಮಾಪಕರಿಗೆ ಗಮನಿಸಿ: ನೀವು ಮಾದರಿಗಳನ್ನು ಆಯ್ಕೆ ಮಾಡಲು, ಪ್ರಾಂಪ್ಟ್ಗಳಾದ್ಯಂತ ವೇಗವನ್ನು ಹೋಲಿಸಲು ಮತ್ತು ಸಾಮಾನ್ಯವಾಗಿ ಪುನರಾವರ್ತಿಸುವಾಗ ನಿಮ್ಮ ಮನಸ್ಸನ್ನು ಕಳೆದುಕೊಳ್ಳದಿರಲು ಪ್ರಯತ್ನಿಸುತ್ತಿದ್ದರೆ, Sider.AI ಅತ್ಯುತ್ತಮ ಆರೋಗ್ಯ ತಪಾಸಣೆಯಾಗಿರಬಹುದು. ನೀವು ವಿವಿಧ ಬ್ಯಾಕೆಂಡ್ಗಳಾದ್ಯಂತ ಪ್ರಾಂಪ್ಟ್ಗಳನ್ನು ಡ್ರಾಫ್ಟ್ ಮಾಡಬಹುದು, ಪರೀಕ್ಷಿಸಬಹುದು ಮತ್ತು ಪರಿಷ್ಕರಿಸಬಹುದು, ನಂತರ ವೆಚ್ಚ ಅಥವಾ ನಿಯಂತ್ರಣಕ್ಕಾಗಿ ಸ್ವಯಂ-ಹೋಸ್ಟ್ ಮಾಡಲು ಸಮಯ ಬಂದಾಗ vLLM ಗೆ ಸರಿಸಬಹುದು. Sider.AI ಅನ್ನು ನಿಮ್ಮ ಪಿಟ್ ಕ್ರ್ಯೂ ಎಂದು ಭಾವಿಸಿ—ನಂತರ ಟ್ರ್ಯಾಕ್ ತೆರೆದಾಗ ನೀವು ಓಡಿಸುವ ರೇಸ್ ಕಾರ್ ಆಗಿ vLLM. ಯಾರು ಈಗಲೇ vLLM ಅನ್ನು ಆಯ್ಕೆ ಮಾಡಬೇಕು?
- ಹೌದು: ಬೆಳೆಯುತ್ತಿರುವ ಬಳಕೆದಾರರ ನೆಲೆಗಳನ್ನು ಹೊಂದಿರುವ ಸ್ಟಾರ್ಟ್ಅಪ್ಗಳು, ಅನೇಕ ತಂಡಗಳಿಗೆ ಸೇವೆ ಸಲ್ಲಿಸುವ ಆಂತರಿಕ ಪ್ಲಾಟ್ಫಾರ್ಮ್ಗಳು, ಪಾವತಿಸಿದ API ನಿಂದ ಸ್ವಯಂ-ಹೋಸ್ಟಿಂಗ್ಗೆ ಚಲಿಸುವ ಉತ್ಪನ್ನ ತಂಡಗಳು.
- ಬಹುಶಃ: ಆಯ್ಕೆಗಳನ್ನು ಅನ್ವೇಷಿಸುತ್ತಿರುವ ಏಕವ್ಯಕ್ತಿ ಡೆವಲಪರ್ಗಳು. ನಿಮ್ಮ ಟ್ರಾಫಿಕ್ ಚಿಕ್ಕದಾಗಿದ್ದರೆ, ನಿರ್ವಹಿಸಿದ API ಗಳು ಇದೀಗ ಸರಳವಾಗಿರಬಹುದು (ಮತ್ತು ಅಗ್ಗವಾಗಿರಬಹುದು).
- ಇನ್ನೂ ಇಲ್ಲ: ಸರ್ವಿಂಗ್ ಲೇಯರ್ನಲ್ಲಿ ಟರ್ನ್ಕೀ ಅನುಸರಣೆ ಮತ್ತು ಪ್ರತ್ಯೇಕತೆಯ ಅಗತ್ಯವಿರುವ ಹೆಚ್ಚು ನಿಯಂತ್ರಿತ ಸಂಸ್ಥೆಗಳು. ನಿಮಗೆ ಮೊದಲು ಅದರ ಸುತ್ತಲೂ ಹೆಚ್ಚು ಗಾರ್ಡ್ರೈಲ್ಗಳು ಬೇಕಾಗುತ್ತವೆ.
vLLM ಸಾಧಕ-ಬಾಧಕಗಳು (ಸಕ್ಕರೆ ಲೇಪಿಸದೆ)
ಸಾಧಕ
- ಏಕಕಾಲೀನತೆಯ ಅಡಿಯಲ್ಲಿ ಅತ್ಯುತ್ತಮ ಥ್ರೋಪುಟ್
- OpenAI-ಹೊಂದಾಣಿಕೆಯ API ವಲಸೆಗಳನ್ನು ಸರಳಗೊಳಿಸುತ್ತದೆ
- ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ನೊಂದಿಗೆ ಬಲವಾದ ಮೆಮೊರಿ ದಕ್ಷತೆ
- ಜನಪ್ರಿಯ ಓಪನ್ ಮಾದರಿಗಳು ಮತ್ತು ಕ್ವಾಂಟೈಸೇಶನ್ಗೆ ಉತ್ತಮ ಬೆಂಬಲ
- ಸಕ್ರಿಯ ಸಮುದಾಯ ಮತ್ತು ತ್ವರಿತ ಅಭಿವೃದ್ಧಿ ಕ್ಯಾಡೆನ್ಸ್
ಬಾಧಕ
- ಸಾರ್ವತ್ರಿಕ ಮಾದರಿ/ಕ್ವಾಂಟ್ ಬೆಂಬಲವಿಲ್ಲ; ಕೆಲವು ಟಿಂಕರಿಂಗ್ ಅಗತ್ಯವಿದೆ
- GPU ಗಳಲ್ಲಿ ಉತ್ತಮ; CPU ಬಳಕೆಯು ಹೆಚ್ಚಾಗಿ ವಿಜ್ಞಾನ ಪ್ರಯೋಗಗಳಿಗೆ
- ಉತ್ಪಾದನಾ-ದರ್ಜೆಯ ಮಲ್ಟಿಟೆನೆನ್ಸಿ ಮತ್ತು ಆಡಳಿತಕ್ಕೆ ಹೆಚ್ಚುವರಿ ಅಗತ್ಯವಿದೆ
- ಕ್ಷಿಪ್ರ ಬದಲಾವಣೆಗಳು ಸಾಂದರ್ಭಿಕ ಅಪ್ಗ್ರೇಡ್ ಬಂಪ್ಗಳನ್ನು ಅರ್ಥೈಸಬಲ್ಲವು
ಈ vLLM ವಿಮರ್ಶೆಯ ತೀರ್ಪು
vLLM ಅಪರೂಪದ ಓಪನ್-ಸೋರ್ಸ್ ಯೋಜನೆಯಾಗಿದೆ, ಅದು ಶೈಕ್ಷಣಿಕ-ಸ್ಮಾರ್ಟ್ ಮತ್ತು ಉತ್ಪಾದನಾ-ಪ್ರಾಯೋಗಿಕ ಎರಡನ್ನೂ ಅನುಭವಿಸುತ್ತದೆ. ಸೌನಾದಂತೆ ದ್ವಿಗುಣಗೊಳ್ಳುವ GPU ಫಾರ್ಮ್ ಅನ್ನು ತಿರುಗಿಸದೆ ದೊಡ್ಡ ಪ್ರಮಾಣದಲ್ಲಿ LLM ಗಳನ್ನು ಚಲಾಯಿಸುವ ಬಗ್ಗೆ ನೀವು ಗಂಭೀರವಾಗಿದ್ದರೆ, ಅದು ನಿಮ್ಮ ಕಿರುಪಟ್ಟಿಯಲ್ಲಿರಬೇಕು—ಬಹುಶಃ ಮೇಲ್ಭಾಗದಲ್ಲಿ. ಮಾದರಿಗಳನ್ನು ಸರ್ವ್ ಮಾಡಲು ಇದು ಏಕೈಕ ಮಾರ್ಗವಲ್ಲ, ಆದರೆ ಈಗ, ಇದು ವೇಗವಾದ, ಹೆಚ್ಚು ಹೊಂದಿಕೊಳ್ಳುವ ಮತ್ತು ಹೆಚ್ಚು ಡೆವಲಪರ್-ಸ್ನೇಹಿಯಾಗಿದೆ.
ಬೇರೆ ರೀತಿಯಲ್ಲಿ ಹೇಳುವುದಾದರೆ: ನಿಮ್ಮ ಪ್ರಸ್ತುತ ಸೆಟಪ್ ಬಳಕೆದಾರರನ್ನು ತಮ್ಮ ಜೀವನ ಆಯ್ಕೆಗಳನ್ನು ಮರುಪರಿಶೀಲಿಸಲು ಸಾಕಷ್ಟು ಸಮಯ ಕಾಯುವಂತೆ ಮಾಡಿದರೆ, vLLM ಅವರು ಮಾಡುವುದಕ್ಕಿಂತ ಮೊದಲು ನೀವು ಉತ್ತರಗಳನ್ನು ರವಾನಿಸಲು ಸಹಾಯ ಮಾಡುತ್ತದೆ. ಮತ್ತು ಅದು ಇಡೀ ಅಂಶವಾಗಿದೆ, ಅಲ್ಲವೇ?
ಕ್ರಿಯಾ ಯೋಜನೆ: ಈ ವಾರ ನಿಮ್ಮ LLM ಅನ್ನು ವೇಗವಾಗಿ ಮಾಡಿ
- ದಿನ 1: ನಿಮ್ಮ ಗುರಿ ಮಾದರಿಯೊಂದಿಗೆ vLLM ಅನ್ನು ನಿಲ್ಲಿಸಿ. ಸ್ಟ್ರೀಮಿಂಗ್ ಅನ್ನು ಆನ್ ಮಾಡಿ. ನಿಮ್ಮ ನೈಜ ಪ್ರಾಂಪ್ಟ್ಗಳೊಂದಿಗೆ ಅದನ್ನು ಹಿಟ್ ಮಾಡಿ.
- ದಿನ 2: ಸಂದರ್ಭ ವಿಂಡೋ ಮತ್ತು ಬ್ಯಾಚ್ ಸೆಟ್ಟಿಂಗ್ಗಳನ್ನು ಟ್ಯೂನ್ ಮಾಡಿ. ಹೆಚ್ಚಿನ ವಿನಂತಿಗಳನ್ನು ಹೊಂದಿಸಲು ಬೆಂಬಲಿತ ಕ್ವಾಂಟೈಸೇಶನ್ ಅನ್ನು ಪ್ರಯತ್ನಿಸಿ.
- ದಿನ 3: ಗೇಟ್ವೇ ಮತ್ತು ಲಾಗ್ಗಳನ್ನು ಸೇರಿಸಿ. p95 ಸುಪ್ತತೆ ಮತ್ತು ಪ್ರತಿ ಡಾಲರ್ಗೆ ಟೋಕನ್ಗಳನ್ನು ಅಳೆಯಿರಿ.
- ದಿನ 4–5: ಕೆನರಿಯನ್ನು ನೈಜ ಬಳಕೆದಾರರಿಗೆ ತಳ್ಳಿರಿ. ಅಗತ್ಯವಿದ್ದರೆ ಸ್ಕೇಲ್ ಔಟ್ ಮಾಡಿ. ಗುಳ್ಳೆಗಳನ್ನು ಹೊಂದಿರುವ ಯಾವುದನ್ನಾದರೂ ಆಚರಿಸಿ (ಸೆಲ್ಟ್ಜರ್ ಎಣಿಕೆ ಮಾಡುತ್ತದೆ).
ಮತ್ತು ನಿಮ್ಮ ಬಾಸ್ ವೆಚ್ಚವನ್ನು ದ್ವಿಗುಣಗೊಳಿಸದೆ ನೀವು ಥ್ರೋಪುಟ್ ಅನ್ನು ಹೇಗೆ ದ್ವಿಗುಣಗೊಳಿಸಿದ್ದೀರಿ ಎಂದು ಕೇಳಿದಾಗ, ಕೇವಲ ಎರಡು ಪದಗಳನ್ನು ಹೇಳಿ: "ಪೇಜ್ಡ್ ಅಟೆನ್ಶನ್." ನಂತರ ಅವರಿಗೆ ಈ vLLM ವಿಮರ್ಶೆಯನ್ನು ಹಸ್ತಾಂತರಿಸಿ ಮತ್ತು ನೀವು ಎಲ್ಲವನ್ನೂ ಯೋಜಿಸಿದಂತೆ ತಲೆ ಅಲ್ಲಾಡಿಸುವುದನ್ನು ಆನಂದಿಸಿ.
FAQ
Q1: vLLM ಸಣ್ಣ ತಂಡಗಳಿಗೆ ಉತ್ತಮವಾಗಿದೆಯೇ ಅಥವಾ ದೊಡ್ಡ ಉದ್ಯಮಗಳಿಗೆ ಮಾತ್ರವೇ?
ಎರಡೂ. ವೆಚ್ಚವನ್ನು ಕಡಿತಗೊಳಿಸಲು ನೀವು ನಿರ್ವಹಿಸಿದ API ಗಳಿಂದ ಸ್ವಯಂ-ಹೋಸ್ಟಿಂಗ್ಗೆ ಚಲಿಸುತ್ತಿದ್ದರೆ, vLLM ನ OpenAI-ಹೊಂದಾಣಿಕೆಯ ಎಂಡ್ಪಾಯಿಂಟ್ಗಳು ಬದಲಾವಣೆಯನ್ನು ಸುಲಭಗೊಳಿಸುತ್ತವೆ. ದೊಡ್ಡ ತಂಡಗಳಿಗೆ, ಟ್ರಾಫಿಕ್ ಸ್ಪೈಕ್ಗಳಾದಾಗ ಥ್ರೋಪುಟ್ ಮತ್ತು ಏಕಕಾಲೀನತೆಯ ವಿಜಯಗಳು ಪ್ರಕಾಶಿಸುತ್ತವೆ.
Q2: vLLM ನಲ್ಲಿ ಯಾವ ಮಾದರಿಗಳು ಉತ್ತಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ?
Llama, Mistral, Mixtral, Qwen, Gemma, ಮತ್ತು Phi ನಂತಹ ಜನಪ್ರಿಯ ಓಪನ್ ಮಾದರಿಗಳು ಉತ್ತಮವಾಗಿ ಗುರುತಿಸಲ್ಪಟ್ಟ ಮಾರ್ಗಗಳಾಗಿವೆ. ಕ್ವಾಂಟೈಸ್ಡ್ ರೂಪಾಂತರಗಳಿಗಾಗಿ ಹೊಂದಾಣಿಕೆ ಟಿಪ್ಪಣಿಗಳನ್ನು ಪರಿಶೀಲಿಸಿ—ಅತ್ಯಂತ ಸಾಮಾನ್ಯವಾದ ಫಾರ್ಮ್ಯಾಟ್ಗಳು ಕಾರ್ಯನಿರ್ವಹಿಸುತ್ತವೆ, ಆದರೆ ವಿಲಕ್ಷಣ ಕಾಂಬೊಗಳಿಗೆ ಟಿಂಕರಿಂಗ್ ಅಗತ್ಯವಿರಬಹುದು.
Q3: vLLM ಅನ್ನು ಚಲಾಯಿಸಲು ನನಗೆ ಎಷ್ಟು GPU ಬೇಕು?
ನಿಮ್ಮ ಮಾದರಿ ಗಾತ್ರ ಮತ್ತು ಸಂದರ್ಭ ವಿಂಡೋಗೆ VRAM ಅನ್ನು ಹೊಂದಿಸಿ, ನಂತರ ಏಕಕಾಲೀನತೆಗಾಗಿ ಹೆಡ್ರೂಮ್ ಸೇರಿಸಿ. ಏಕೈಕ ಹೆಚ್ಚಿನ ಮೆಮೊರಿ GPU 7B–13B ಮಾದರಿಯನ್ನು ಉತ್ತಮವಾಗಿ ಸರ್ವ್ ಮಾಡಬಹುದು; ದೊಡ್ಡ ಮಾದರಿಗಳು ಅಥವಾ ಭಾರೀ ಟ್ರಾಫಿಕ್ ಮಲ್ಟಿ-GPU ಸೆಟಪ್ಗಳಿಂದ ಪ್ರಯೋಜನ ಪಡೆಯುತ್ತವೆ.
Q4: vLLM ಸುಪ್ತತೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುತ್ತದೆಯೇ ಅಥವಾ ಥ್ರೋಪುಟ್ ಅನ್ನು ಹೆಚ್ಚಿಸುತ್ತದೆಯೇ?
ವರ್ಕ್ಲೋಡ್ ಅನ್ನು ಅವಲಂಬಿಸಿ ಎರಡೂ. ನಿರಂತರ ಬ್ಯಾಚಿಂಗ್ ಉತ್ತಮ ಥ್ರೋಪುಟ್ಗಾಗಿ GPU ಬಳಕೆಯನ್ನು ಸುಧಾರಿಸುತ್ತದೆ, ಆದರೆ ಸ್ಟ್ರೀಮಿಂಗ್ ಮತ್ತು ದಕ್ಷ ವೇಳಾಪಟ್ಟಿ ಚಾಟಿ ಅಪ್ಲಿಕೇಶನ್ಗಳಲ್ಲಿ ಮೊದಲ ಟೋಕನ್ಗೆ ಸಮಯ ಮತ್ತು ಬಾಲದ ಸುಪ್ತತೆಗೆ ಸಹಾಯ ಮಾಡುತ್ತದೆ.
Q5: ಟೆಕ್ಸ್ಟ್ ಜನರೇಶನ್ ಇನ್ಫರೆನ್ಸ್ (TGI) ಗೆ ಹೋಲಿಸಿದರೆ vLLM ಹೇಗೆ ಹೋಲುತ್ತದೆ?
vLLM ಆಗಾಗ್ಗೆ ಪೇಜ್ಡ್ಅಟೆನ್ಶನ್ ಮತ್ತು ಡೈನಾಮಿಕ್ ಬ್ಯಾಚಿಂಗ್ನೊಂದಿಗೆ ಥ್ರೋಪುಟ್ನಲ್ಲಿ TGI ಅನ್ನು ಮೀರಿಸುತ್ತದೆ, ವಿಶೇಷವಾಗಿ ಸಂವಾದಾತ್ಮಕ ಚಾಟ್ಗಾಗಿ. TGI ಹಗ್ಗಿಂಗ್ ಫೇಸ್ ಏಕೀಕರಣಗಳು ಮತ್ತು ಉದ್ಯಮದ ಪಾಲಿಶ್ಗೆ ಒಲವು ತೋರುತ್ತದೆ—ನಿಮ್ಮ ಸ್ಟಾಕ್ ಮತ್ತು ಆದ್ಯತೆಗಳು ನಿರ್ಧರಿಸಬೇಕು.