āđ‚āļĄāđ€āļ”āļĨāđāļĨāļ°āđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ AI

SGLang: āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡

mm
āđ€āļžāļīāđˆāļĄ Unite.AI āļĨāļ‡āđƒāļ™āđāļŦāļĨāđˆāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļ„āļļāļ“āļ•āđ‰āļ­āļ‡āļāļēāļĢāļšāļ™ Google

āđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆ (LLMs) āļ–āļđāļāđƒāļŠāđ‰āļĄāļēāļāļ‚āļķāđ‰āļ™āļŠāļģāļŦāļĢāļąāļšāļ‡āļēāļ™āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āļ‹āļķāđˆāļ‡āļ•āđ‰āļ­āļ‡āļāļēāļĢāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡ āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™ āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļāļēāļĢāđ„āļŦāļĨ āđāļĨāļ°āļāļēāļĢāđ€āļ‚āđ‰āļē/āļ­āļ­āļāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡ āļ­āļĒāđˆāļēāļ‡āđ„āļĢāļāđ‡āļ•āļēāļĄ āļĢāļ°āļšāļšāļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāđāļĨāļ°āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļĒāļąāļ‡āļ‚āļēāļ”āđ„āļ› SGLang āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļ—āļĩāđˆāđāļ™āļ°āļ™āļģāđƒāļŦāļĄāđˆ āļĄāļĩāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļ—āļĩāđˆāļˆāļ°āđāļāđ‰āđ„āļ‚āļ›āļąāļāļŦāļēāļ™āļĩāđ‰āđ‚āļ”āļĒāļāļēāļĢāđƒāļŦāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™ SGLang āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļ āļēāļĐāļēāļŦāļ™āđ‰āļēāļˆāļ­āđāļĨāļ°āļĢāļąāļ™āđ„āļ—āļĄāđŒ āļ āļēāļĐāļēāļŦāļ™āđ‰āļēāļˆāļ­āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™āļ”āđ‰āļ§āļĒāļ•āļąāļ§āļŠāđˆāļ§āļĒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđāļĨāļ°āļ„āļ§āļšāļ„āļļāļĄāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™ āļĢāļąāļ™āđ„āļ—āļĄāđŒāđ€āļĢāđˆāļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļœāđˆāļēāļ™āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāļ—āļĩāđˆāđƒāļŦāļĄāđˆ āđ€āļŠāđˆāļ™ RadixAttention āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ‹āđ‰āļģ KV cache āđāļĨāļ°āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļˆāļąāļāļĢāļŠāļ–āļēāļ™āļ°āļˆāļģāļāļąāļ”āļ—āļĩāđˆāļšāļĩāļšāļ­āļąāļ”āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠāļāļēāļĢāļ­āļ­āļāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļ—āļĩāđˆāđ€āļĢāđ‡āļ§āļ‚āļķāđ‰āļ™ āļāļēāļĢāļ—āļ”āļĨāļ­āļ‡āđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ§āđˆāļē SGLang āļŠāļēāļĄāļēāļĢāļ–āļšāļĢāļĢāļĨāļļāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡āļ–āļķāļ‡ 6.4 āđ€āļ—āđˆāļēāđ€āļĄāļ·āđˆāļ­āđ€āļ—āļĩāļĒāļšāļāļąāļšāļĢāļ°āļšāļšāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļĢāļąāļāļ‚āļ­āļ‡āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļšāļ™āđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆāđāļĨāļ°āļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒ āđ‚āļ”āļĒāļˆāļąāļ”āļāļēāļĢāļāļąāļšāļ‡āļēāļ™āļ”āļąāļ‡āļāļĨāđˆāļēāļ§ āđ€āļŠāđˆāļ™ āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāđ€āļ­āđ€āļĒāđˆāļ™āļ•āđŒ āļāļēāļĢāđƒāļŦāđ‰āđ€āļŦāļ•āļļāļœāļĨāđ€āļŠāļīāļ‡āļ•āļĢāļĢāļāļ° āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđāļšāļšāđ„āļĄāđˆāļĄāļēāļāļ™āļąāļ JSON āļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠ āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļ—āļĩāđˆāđ€āļžāļīāđˆāļĄāļ‚āļķāđ‰āļ™āđ‚āļ”āļĒāļāļēāļĢāļ„āđ‰āļ™āļŦāļē āđāļĨāļ°āļāļēāļĢāđāļŠāļ—āđāļšāļšāļŦāļĨāļēāļĒāļĢāļ­āļš

āļ„āļ§āļēāļĄāļāđ‰āļēāļ§āļŦāļ™āđ‰āļēāļĨāđˆāļēāļŠāļļāļ”āđƒāļ™āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļ­āļ‡ LLMs āđ„āļ”āđ‰āļ‚āļĒāļēāļĒāļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āļ‚āļ­āļ‡āļžāļ§āļāļĄāļąāļ™ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļˆāļąāļ”āļāļēāļĢāļāļąāļšāļ‡āļēāļ™āļ—āļąāđˆāļ§āđ„āļ›āđ„āļ”āđ‰āļŦāļĨāļēāļāļŦāļĨāļēāļĒāļ‚āļķāđ‰āļ™ āđāļĨāļ°āļ—āļģāļ‡āļēāļ™āđ€āļ›āđ‡āļ™āļ•āļąāļ§āđāļ—āļ™āļ­āļīāļŠāļĢāļ°āđ„āļ”āđ‰ āđƒāļ™āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ LLMs āļĄāļĩāļŠāđˆāļ§āļ™āļĢāđˆāļ§āļĄāđƒāļ™āļāļēāļĢāļ§āļēāļ‡āđāļœāļ™āļŦāļĨāļēāļĒāļĢāļ­āļš āļāļēāļĢāđƒāļŦāđ‰āđ€āļŦāļ•āļļāļœāļĨ āđāļĨāļ°āļāļēāļĢāđ‚āļ•āđ‰āļ•āļ­āļšāļāļąāļšāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļ āļēāļĒāļ™āļ­āļ āļŠāļīāđˆāļ‡āļ™āļĩāđ‰āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ­āļģāļ™āļ§āļĒāļ„āļ§āļēāļĄāļŠāļ°āļ”āļ§āļāļœāđˆāļēāļ™āļāļēāļĢāđƒāļŠāđ‰āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­ āļāļēāļĢāļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš āđāļĨāļ°āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒ āđ€āļŠāđˆāļ™ āļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđāļšāļšāđ„āļĄāđˆāļĄāļēāļāļ™āļąāļ āļ„āļ§āļēāļĄāļŠāļ­āļ”āļ„āļĨāđ‰āļ­āļ‡āļ āļēāļĒāđƒāļ™āļ•āļąāļ§āđ€āļ­āļ‡ āđ‚āļ„āļĢāļ‡āļĢāđˆāļēāļ‡āļ„āļ§āļēāļĄāļ„āļīāļ” āđāļĨāļ°āļ•āđ‰āļ™āđ„āļĄāđ‰āļ„āļ§āļēāļĄāļ„āļīāļ” āļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđƒāļŦāļĄāđˆāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ•āđ‰āļ­āļ‡āļāļēāļĢāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ LLMs āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡ āļ‹āļķāđˆāļ‡āļĄāļąāļāļˆāļ°āļ‚āļķāđ‰āļ™āļ­āļĒāļđāđˆāļāļąāļ™āđāļĨāļ°āļāļąāļ™ āđ‚āļ”āļĒāļšāđˆāļ‡āļšāļ­āļāļ–āļķāļ‡āđāļ™āļ§āđ‚āļ™āđ‰āļĄāđƒāļ™āļāļēāļĢāđƒāļŠāđ‰āđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡āđƒāļ™āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™

āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āļ™āļĩāđ‰āđāļŠāļ”āļ‡āļ–āļķāļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āļˆāļēāļāļāļēāļĢāđāļŠāļ—āđāļšāļšāļ‡āđˆāļēāļĒāđ† āđ„āļ›āļŠāļđāđˆāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āđāļšāļšāđ‚āļ›āļĢāđāļāļĢāļĄāļĄāļēāļ•āļīāļāļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āļ‚āļ­āļ‡ LLMs āđ‚āļ”āļĒāļ—āļĩāđˆāđ‚āļ›āļĢāđāļāļĢāļĄāļˆāļąāļ”āļ•āļēāļĢāļēāļ‡āđāļĨāļ°āļ„āļ§āļšāļ„āļļāļĄāļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļ‚āļ­āļ‡ LLMs āđ‚āļ›āļĢāđāļāļĢāļĄāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āđ€āļĢāļĩāļĒāļāļ§āđˆāļē “āđ‚āļ›āļĢāđāļāļĢāļĄāđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļē” (LM Programs) āđ€āļ—āļ„āļ™āļīāļ„āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđāļĨāļ°ãƒŊマã‚Ŋフāđ‚āļĨāļ§āđŒāļ‚āļ­āļ‡āđ€āļ­āđ€āļĒāđˆāļ™āļ•āđŒāļ­āļĒāļđāđˆāļ āļēāļĒāđƒāļ•āđ‰āļ‚āļ­āļšāđ€āļ‚āļ•āļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļĄāļĩāļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļ—āļąāđˆāļ§āđ„āļ›āļŠāļ­āļ‡āļ›āļĢāļ°āļāļēāļĢāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄ LM: (1) āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļĄāļąāļāļˆāļ°āđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ LLMs āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡āļ‹āļķāđˆāļ‡āđāļ—āļĢāļāļ­āļĒāļđāđˆāļāļąāļšāļāļēāļĢāđ„āļŦāļĨāļ‚āļ­āļ‡āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāđ€āļžāļ·āđˆāļ­āļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđāļĨāļ°āđ€āļžāļīāđˆāļĄāļ„āļļāļ“āļ āļēāļžāđ‚āļ”āļĒāļĢāļ§āļĄ (2) āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ‚āđ‰āļēāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđāļĨāļ°āļœāļĨāļīāļ•āļ‚āđ‰āļ­āļĄāļđāļĨāļ­āļ­āļāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ›āļĢāļ°āļāļ­āļšāđ‚āļ›āļĢāđāļāļĢāļĄ LM āđāļĨāļ°āļĢāļ§āļĄāđ€āļ‚āđ‰āļēāļāļąāļšāļĢāļ°āļšāļšāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ

āđƒāļ™āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰ āđ€āļĢāļēāļˆāļ°āļĄāļēāļ”āļđāļāļĢāļ­āļšāļ‡āļēāļ™ SGLang āļ­āļĒāđˆāļēāļ‡āļĨāļķāļāļ‹āļķāđ‰āļ‡ āđ‚āļ”āļĒāļŠāļģāļĢāļ§āļˆāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡ āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āđāļĨāļ°āđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļšāļāļąāļšāļāļĢāļ­āļšāļ‡āļēāļ™āļĢāļąāļāļ‚āļ­āļ‡āļāļēāļĢāļ—āļģāļ‡āļēāļ™ āđ€āļĢāļēāļĄāļēāđ€āļĢāļīāđˆāļĄāļāļąāļ™āđ€āļĨāļĒ

āļāļēāļĢāđāļ™āļ°āļ™āļģ SGLang

å°―įŪĄāļāļēāļĢāđƒāļŠāđ‰āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļ­āļĒāđˆāļēāļ‡āđāļžāļĢāđˆāļŦāļĨāļēāļĒ āļĢāļ°āļšāļšāļ›āļąāļˆāļˆāļļāļšāļąāļ™āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđāļŠāļ”āļ‡āļ­āļ­āļāđāļĨāļ°āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļĒāļąāļ‡āļ„āļ‡āđ„āļĄāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž SGLang āļĢāļ°āļšāļļāļ„āļ§āļēāļĄāļ—āđ‰āļēāļ—āļēāļĒāļŦāļĨāļąāļāļŠāļ­āļ‡āļ›āļĢāļ°āļāļēāļĢāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāđƒāļŠāđ‰āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž:

  • āļ„āļ§āļēāļĄāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āļ‚āļ­āļ‡āļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄ: āļāļēāļĢāļžāļąāļ’āļ™āļēāđ‚āļ›āļĢāđāļāļĢāļĄ LM āļ™āļąāđ‰āļ™āļĒāļēāļāđāļĨāļ°āļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļ˜āļĢāļĢāļĄāļŠāļēāļ•āļīāļ—āļĩāđˆāđ„āļĄāđˆāđāļ™āđˆāļ™āļ­āļ™āļ‚āļ­āļ‡ LLMs āļ‹āļķāđˆāļ‡āļĢāļ§āļĄāļ–āļķāļ‡āļāļēāļĢāļ”āļąāļ”āđāļ›āļĨāļ‡āļŠāļ•āļĢāļīāļ‡āļ­āļĒāđˆāļēāļ‡āļāļ§āđ‰āļēāļ‡āļ‚āļ§āļēāļ‡ āļāļēāļĢāļ›āļĢāļąāļšāđāļ•āđˆāļ‡āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ­āļĒāđˆāļēāļ‡āļ—āļ”āļĨāļ­āļ‡ āļāļēāļĢāļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļœāļĨāļĨāļąāļžāļ˜āđŒāļ—āļĩāđˆāđ„āļĄāđˆāđāļ™āđˆāļ™āļ­āļ™ āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ‚āđ‰āļēāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš āđāļĨāļ°āļāļēāļĢāļ™āļģāļāļēāļĢāļ‚āļ™āļēāļ™āļĄāļēāđƒāļŠāđ‰ āļ„āļ§āļēāļĄāļ‹āļąāļšāļ‹āđ‰āļ­āļ™ nàyāļĨāļ”āļ„āļ§āļēāļĄāļ­āđˆāļēāļ™āļ‡āđˆāļēāļĒāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāđāļĄāđ‰āđāļ•āđˆāđ‚āļ›āļĢāđāļāļĢāļĄāļ—āļĩāđˆāļ‡āđˆāļēāļĒāļ—āļĩāđˆāļŠāļļāļ”
  • āļ„āļ§āļēāļĄāđ„āļĄāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđƒāļ™āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ: āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđ‚āļ›āļĢāđāļāļĢāļĄ LM āļ™āļąāđ‰āļ™āđ„āļĄāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļĢāļ„āļģāļ™āļ§āļ“āļ‹āđ‰āļģāđāļĨāļ°āļāļēāļĢāđƒāļŠāđ‰āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģ āļĢāļ°āļšāļšāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļĢāļąāļāļ‚āļ­āļ‡āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāđ€āļžāļ·āđˆāļ­āļĨāļ”āļ„āļ§āļēāļĄāļĨāđˆāļēāļŠāđ‰āļēāđāļĨāļ°āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļēāļ”āļ„āļ§āļēāļĄāļĢāļđāđ‰āđ‚āļ”āļĒāļ•āļĢāļ‡āđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļ‡āļēāļ™ āļ—āļģāđƒāļŦāđ‰āđ€āļāļīāļ”āļ„āļ§āļēāļĄāđ„āļĄāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ™āļąāļĒāļŠāļģāļ„āļąāļ āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆāđ€āļŦāđ‡āļ™āđ„āļ”āđ‰āļŠāļąāļ”āļ„āļ·āļ­āļāļēāļĢāļ™āļģ KV cache āļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģ āļ‹āļķāđˆāļ‡āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāđ€āļ—āļ™āđ€āļ‹āļ­āļĢāđŒāļāļĨāļēāļ‡āļ—āļĩāđˆāļŠāļēāļĄāļēāļĢāļ–āļ™āļģāļāļĨāļąāļšāļĄāļēāđƒāļŠāđ‰āđƒāļŦāļĄāđˆāđ„āļ”āđ‰āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļ—āļĩāđˆāļŠāļĢāđ‰āļēāļ‡āļ‚āļķāđ‰āļ™ āļĢāļ°āļšāļšāļ›āļąāļˆāļˆāļļāļšāļąāļ™āļ‚āļēāļ”āļāļĨāđ„āļāļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāđƒāļ™āļāļēāļĢāļ­āļģāļ™āļ§āļĒāļ„āļ§āļēāļĄāļŠāļ°āļ”āļ§āļāđƒāļ™āļāļēāļĢāļ™āļģ KV cache āļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ LLMs āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡āļ—āļĩāđˆāļĄāļĩāļ„āļģāļ™āļģāļĢāđˆāļ§āļĄāļāļąāļ™ āļ—āļģāđƒāļŦāđ‰āđ€āļāļīāļ”āļāļēāļĢāļ„āļģāļ™āļ§āļ“āļ—āļĩāđˆāđ„āļĄāđˆāļˆāļģāđ€āļ›āđ‡āļ™āđāļĨāļ°āļŦāļ™āđˆāļ§āļĒāļ„āļ§āļēāļĄāļˆāļģāļ—āļĩāđˆāļŠāļđāļāđ€āļ›āļĨāđˆāļē āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰ āļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠāļ—āļĩāđˆāļˆāļģāļāļąāļ”āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ­āļ­āļāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡ āđ€āļŠāđˆāļ™ āđ‚āļŦāļĄāļ” JSON āļĒāļąāļ‡āđ„āļĄāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļĢāļ°āļšāļšāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆāļŠāļēāļĄāļēāļĢāļ–āļ–āļ­āļ”āļĢāļŦāļąāļŠāđ‚āļ—āđ€āļ„āđ‡āļ™āđ€āļžāļĩāļĒāļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™āđ€āļ”āļĩāļĒāļ§āđƒāļ™āđāļ•āđˆāļĨāļ°āļ„āļĢāļąāđ‰āļ‡

āđ€āļžāļ·āđˆāļ­āđāļāđ‰āđ„āļ‚āļ„āļ§āļēāļĄāļ—āđ‰āļēāļ—āļēāļĒāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ SGLang āļ™āļģāđ€āļŠāļ™āļ­āļ āļēāļĐāļē Structured Generation āļŠāļģāļŦāļĢāļąāļš LLMs āļ„āļ§āļēāļĄāļ„āļīāļ”āļŦāļĨāļąāļāļ„āļ·āļ­āļāļēāļĢāđ€āļ­āļēāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡āđƒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļĄāļēāđƒāļŠāđ‰āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļāļēāļĢāļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļ•āļēāļĄāļ—āļĩāđˆāđāļŠāļ”āļ‡āđƒāļ™āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰ SGLang āļĄāļĩāļŠāđˆāļ§āļ™āļ›āļĢāļ°āļāļ­āļšāļŠāļ­āļ‡āļŠāđˆāļ§āļ™: āļ āļēāļĐāļēāļŦāļ™āđ‰āļēāļˆāļ­āđāļĨāļ°āļĢāļąāļ™āđ„āļ—āļĄāđŒ

āļ āļēāļĐāļēāļŦāļ™āđ‰āļēāļˆāļ­āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄ LM āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™ āđāļĨāļ°āļĢāļąāļ™āđ„āļ—āļĄāđŒāđ€āļĢāđˆāļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ āļŠāđˆāļ§āļ™āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ—āļģāļ‡āļēāļ™āļĢāđˆāļ§āļĄāļāļąāļ™āđ€āļžāļ·āđˆāļ­āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ—āļĩāđˆāļ”āļĩāļ‚āļķāđ‰āļ™āļŦāļĢāļ·āļ­āļ—āļģāļ‡āļēāļ™āļ­āļīāļŠāļĢāļ° SGLang āđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ€āļ‰āļžāļēāļ°āđ‚āļ”āđ€āļĄāļ™āļ—āļĩāđˆāļāļąāļ‡āļ­āļĒāļđāđˆāđƒāļ™ Python āđ‚āļ”āļĒāđƒāļŦāđ‰āļ•āļąāļ§āļŠāđˆāļ§āļĒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļŠāļĢāđ‰āļēāļ‡ (āđ€āļŠāđˆāļ™ extend, gen, select) āđāļĨāļ°āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™ (āđ€āļŠāđˆāļ™ fork, join) āļĄāļąāļ™āđ€āļ‚āđ‰āļēāļāļąāļ™āđ„āļ”āđ‰āļāļąāļšāļāļēāļĢāđ„āļŦāļĨāļ‚āļ­āļ‡āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāđāļĨāļ°āđ„āļĨāļšāļĢāļēāļĢāļĩāļ‚āļ­āļ‡ Python āļ—āļģāđƒāļŦāđ‰āļœāļđāđ‰āđƒāļŠāđ‰āļŠāļēāļĄāļēāļĢāļ–āļžāļąāļ’āļ™āļēāļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļ‡āđˆāļēāļĒāļ”āļēāļĒāļ”āđ‰āļ§āļĒāļ§āļēāļāļĒāļŠāļąāđˆāļ‡ Python āļ—āļĩāđˆāđ€āļ›āđ‡āļ™āđ€āļ™āļ—āļĩāļŸ SGLang āļĄāļĩāļ•āļąāļ§āļ•āļĩāļ„āļ§āļēāļĄāđāļĨāļ°āļ•āļąāļ§āļ„āļ­āļĄāđ„āļžāļĨāđŒ āļ•āļąāļ§āļ•āļĩāļ„āļ§āļēāļĄāļˆāļąāļ”āļāļēāļĢāļŠāļ–āļēāļ™āļ°āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āđ€āļ›āđ‡āļ™āļĨāļģāļ”āļąāļšāđāļĨāļ°āļĒāļ·āđˆāļ™āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļ•āđˆāļēāļ‡āđ† āđƒāļŦāđ‰āļāļąāļšāļĨāļģāļ”āļąāļšāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāđ„āļĄāđˆāļšāļĨāđ‡āļ­āļ āļ—āļģāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļĄāļĩāļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄāđ€āļāļĩāđˆāļĒāļ§āļāļąāļšāļāļēāļĢāļŠynchronisation āđāļĨāļ°āļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™āļ āļēāļĒāđƒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄ āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰ āđ‚āļ›āļĢāđāļāļĢāļĄ SGLang āļŠāļēāļĄāļēāļĢāļ–āļ–āļđāļāļ•āļīāļ”āļ•āļēāļĄāđāļĨāļ°āļ„āļ­āļĄāđ„āļžāļĨāđŒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāđ€āļžāļīāđˆāļĄāđ€āļ•āļīāļĄ āļĢāļąāļ™āđ„āļ—āļĄāđŒāļ‚āļ­āļ‡ SGLang āđ€āļŠāļ™āļ­āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāđƒāļŦāļĄāđˆāđ† āđ€āļžāļ·āđˆāļ­āđ€āļĢāđˆāļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄ LM:

  • RadixAttention: āđ€āļ—āļ„āļ™āļīāļ„āļ™āļĩāđ‰āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ™āļģ KV cache āļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ LLMs āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡āđ„āļ”āđ‰ āđƒāļ™āļĢāļ°āļšāļšāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļĢāļąāļāļ‚āļ­āļ‡āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ KV cache āļ‚āļ­āļ‡āļ„āļģāļ‚āļ­āļˆāļ°āļ–āļđāļāļ—āļīāđ‰āļ‡āļŦāļĨāļąāļ‡āļˆāļēāļāļĢāļ°āļšāļļāļœāļĨ āļ—āļģāđƒāļŦāđ‰āđ„āļĄāđˆāļŠāļēāļĄāļēāļĢāļ–āļ™āļģāļāļĨāļąāļšāļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ LLMs āļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡āļ—āļĩāđˆāļĄāļĩāļ„āļģāļ™āļģāļĢāđˆāļ§āļĄāļāļąāļ™ āđāļĨāļ°āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļŠāđ‰āļēāļĨāļ‡ SGLang āļĢāļąāļāļĐāļē LRU cache āļ‚āļ­āļ‡ KV cache āļ āļēāļĒāđƒāļ™āļ•āđ‰āļ™āđ„āļĄāđ‰āļĢāļēāļ”āļīāļāļ‹āđŒ āđ‚āļ”āļĒāļˆāļąāļ”āļāļēāļĢ KV cache āđ€āļŠāđˆāļ™āđ€āļ”āļĩāļĒāļ§āļāļąāļšāđāļ„āļŠāđāļšāļšāļ”āļąāđ‰āļ‡āđ€āļ”āļīāļĄ āđāļĨāļ°āđƒāļŠāđ‰āļ•āđ‰āļ™āđ„āļĄāđ‰āļĢāļēāļ”āļīāļāļ‹āđŒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļˆāļąāļšāļ„āļđāđˆ āļāļēāļĢāđāļ—āļĢāļ āđāļĨāļ°āļāļēāļĢāļ‚āļąāļšāļ­āļ­āļāļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āļ—āļģāđƒāļŦāđ‰āļĢāļąāļ™āđ„āļ—āļĄāđŒāļŠāļēāļĄāļēāļĢāļ–āļˆāļąāļ”āļāļēāļĢāļĢāļđāļ›āđāļšāļšāļāļēāļĢāļ™āļģāļāļĨāļąāļšāļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģāļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒāđ„āļ”āđ‰āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž
  • Compressed Finite State Machine: āđ€āļ—āļ„āļ™āļīāļ„āļ™āļĩāđ‰āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠāļ—āļĩāđˆāļˆāļģāļāļąāļ”āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ­āļ­āļāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āđ€āļĢāđ‡āļ§āļ‚āļķāđ‰āļ™ āļĢāļ°āļšāļšāļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆāļ•āļīāļ”āļ•āļēāļĄāļ‚āđ‰āļ­āļˆāļģāļāļąāļ”āđ€āļžāļĩāļĒāļ‡āļŠāļģāļŦāļĢāļąāļšāđ‚āļ—āđ€āļ„āđ‡āļ™āļ–āļąāļ”āđ„āļ› āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ–āļ­āļ”āļĢāļŦāļąāļŠāđ„āļ”āđ‰āđ€āļžāļĩāļĒāļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™āđ€āļ”āļĩāļĒāļ§āđƒāļ™āđāļ•āđˆāļĨāļ°āļ„āļĢāļąāđ‰āļ‡ SGLang āļ§āļīāđ€āļ„āļĢāļēāļ°āļŦāđŒāļ‚āđ‰āļ­āļˆāļģāļāļąāļ”āđāļĨāļ°āļŠāļĢāđ‰āļēāļ‡āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļˆāļąāļāļĢāļŠāļ–āļēāļ™āļ°āļˆāļģāļāļąāļ”āļ—āļĩāđˆāļšāļĩāļšāļ­āļąāļ”āđ€āļžāļ·āđˆāļ­āđāļŠāļ”āļ‡āļ‚āđ‰āļ­āļˆāļģāļāļąāļ” āđ‚āļ”āļĒāļšāļĩāļšāļ­āļąāļ”āđ€āļŠāđ‰āļ™āļ—āļēāļ‡āļŦāļĨāļēāļĒāđ‚āļ—āđ€āļ„āđ‡āļ™āđƒāļŦāđ‰āđ€āļ›āđ‡āļ™āđ€āļŠāđ‰āļ™āļ—āļēāļ‡āđ€āļ”āļĩāļĒāļ§āđ€āļĄāļ·āđˆāļ­āđ€āļ›āđ‡āļ™āđ„āļ›āđ„āļ”āđ‰ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ–āļ­āļ”āļĢāļŦāļąāļŠāļŦāļĨāļēāļĒāđ‚āļ—āđ€āļ„āđ‡āļ™āđ„āļ”āđ‰āđƒāļ™āļ„āļĢāļēāļ§āđ€āļ”āļĩāļĒāļ§āļŠāļģāļŦāļĢāļąāļšāļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āļ—āļĩāđˆāđ€āļĢāđ‡āļ§āļ‚āļķāđ‰āļ™
  • API Speculative Execution: āļŠāļģāļŦāļĢāļąāļšāđ‚āļĄāđ€āļ”āļĨ API āđ€āļŠāđˆāļ™ OpenAI’s GPT-4 SGLang āļ™āļģāđ€āļŠāļ™āļ­āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāļ„āļēāļ”āđ€āļ”āļē API āđ€āļžāļ·āđˆāļ­āļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāļŠāļģāļŦāļĢāļąāļšāđ‚āļ›āļĢāđāļāļĢāļĄāļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡

āđ‚āļ”āļĒāđƒāļŠāđ‰ SGLang āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™ LLMs āļŦāļĨāļēāļāļŦāļĨāļēāļĒāļ–āļđāļāļ™āļģāđ„āļ›āđƒāļŠāđ‰ āļĢāļ§āļĄāļ–āļķāļ‡āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāđ€āļ­āđ€āļĒāđˆāļ™āļ•āđŒ āļāļēāļĢāđƒāļŦāđ‰āđ€āļŦāļ•āļļāļœāļĨāđ€āļŠāļīāļ‡āļ•āļĢāļĢāļāļ° āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđāļšāļšāđ„āļĄāđˆāļĄāļēāļāļ™āļąāļ āļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠ JSON āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļ—āļĩāđˆāđ€āļžāļīāđˆāļĄāļ‚āļķāđ‰āļ™āđ‚āļ”āļĒāļāļēāļĢāļ„āđ‰āļ™āļŦāļē āļāļēāļĢāđāļŠāļ—āđāļšāļšāļŦāļĨāļēāļĒāļĢāļ­āļš āđāļĨāļ°āļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāđāļšāļšāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ–āļđāļāļ—āļ”āļŠāļ­āļšāļšāļ™āđ‚āļĄāđ€āļ”āļĨ āļĢāļ§āļĄāļ–āļķāļ‡ Llama-7B/70B, Mistral-8x7B, LLaVA-v1.5-7B (āļĢāļđāļ›āļ āļēāļž) āđāļĨāļ° LLaVA-NeXT-34B (āļ§āļīāļ”āļĩāđ‚āļ­) āļšāļ™ GPU NVIDIA (NVDA ) A10G āđāļĨāļ° A100 āļœāļĨāļāļēāļĢāļ—āļ”āļĨāļ­āļ‡āđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ§āđˆāļē SGLang āļŠāļēāļĄāļēāļĢāļ–āļšāļĢāļĢāļĨāļļāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡āļ–āļķāļ‡ 6.4 āđ€āļ—āđˆāļēāđ€āļĄāļ·āđˆāļ­āđ€āļ—āļĩāļĒāļšāļāļąāļšāļĢāļ°āļšāļšāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāđāļĨāļ°āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆ āļĢāļ§āļĄāļ–āļķāļ‡ Guidance, vLLM āđāļĨāļ° LMQL

SGLang: āđ‚āļĄāđ€āļ”āļĨāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāđāļĨāļ°āļ§āļīāļ˜āļĩāļāļēāļĢ

āđ‚āļĄāđ€āļ”āļĨāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄ SGLang āļ–āļđāļāļ™āļģāđ€āļŠāļ™āļ­āļœāđˆāļēāļ™āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆāļ—āļģāļ‡āļēāļ™ āđ‚āļ”āļĒāļ­āļ˜āļīāļšāļēāļĒāļ āļēāļĐāļēāđāļĨāļ°āđ‚āļŦāļĄāļ”āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āđ‚āļĄāđ€āļ”āļĨāļ™āļĩāđ‰āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđƒāļ™ãƒŊマã‚ŊフロマāļŦāļĨāļēāļĒāļ„āļĢāļąāđ‰āļ‡ (āđ€āļŠāđˆāļ™ āļāļēāļĢāļ”āļąāļ”āđāļ›āļĨāļ‡āļŠāļ•āļĢāļīāļ‡ āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰ API āļāļēāļĢāļāļģāļŦāļ™āļ”āļ‚āđ‰āļ­āļˆāļģāļāļąāļ” āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™) āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™āđ‚āļ”āļĒāļāļēāļĢāđƒāļŦāđ‰āļ•āļąāļ§āļŠāđˆāļ§āļĒāļ—āļĩāđˆāļĒāļ·āļ”āļŦāļĒāļļāđˆāļ™āđāļĨāļ°āļ›āļĢāļ°āļāļ­āļšāđ„āļ”āđ‰ SGLang āđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ€āļ‰āļžāļēāļ°āđ‚āļ”āđ€āļĄāļ™āļ—āļĩāđˆāļāļąāļ‡āļ­āļĒāļđāđˆāđƒāļ™ Python

āļŸāļąāļ‡āļāđŒāļŠāļąāļ™ multi_dimensional_judge āļĢāļąāļšāļŠāļēāļĄāļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ: `s`, `path` āđāļĨāļ° `essay` s āļˆāļąāļ”āļāļēāļĢāļŠāļ–āļēāļ™āļ°āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™ path āļ„āļ·āļ­āđ€āļŠāđ‰āļ™āļ—āļēāļ‡āđ„āļŸāļĨāđŒāļĢāļđāļ›āļ āļēāļž āđāļĨāļ° essay āļ„āļ·āļ­āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāđ€āļĢāļĩāļĒāļ‡āļ„āļ§āļēāļĄ āđƒāļŦāļĄāđˆāļŠāļ•āļĢāļīāļ‡āđāļĨāļ°āļ•āļąāļ§āļŠāđˆāļ§āļĒ SGLang āļŠāļēāļĄāļēāļĢāļ–āļ–āļđāļāđ€āļžāļīāđˆāļĄāđ€āļ‚āđ‰āļēāļāļąāļšāļŠāļ–āļēāļ™āļ° s āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāđ„āļĄāđˆāļšāļĨāđ‡āļ­āļāđ‚āļ”āļĒāđƒāļŠāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ += āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđāļšāļšāđ„āļĄāđˆāļšāļĨāđ‡āļ­āļāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ—āļģāđƒāļŦāđ‰āđ‚āļ„āđ‰āļ” Python āļŠāļēāļĄāļēāļĢāļ–āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ•āđˆāļ­āđ„āļ”āđ‰āđ‚āļ”āļĒāđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļĢāļ­āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđƒāļŦāđ‰āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™

SGLang āđƒāļŦāđ‰āļ•āļąāļ§āļŠāđˆāļ§āļĒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļŠāļ–āļēāļ™āļ°āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™ āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡ āđāļĨāļ°āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™ āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰āļ„āļ·āļ­āļ•āļąāļ§āļŠāđˆāļ§āļĒ:

gen: āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđ‚āļĄāđ€āļ”āļĨāđ€āļžāļ·āđˆāļ­āļŠāļĢāđ‰āļēāļ‡āđāļĨāļ°āļˆāļąāļ”āđ€āļāđ‡āļšāļœāļĨāļĨāļąāļžāļ˜āđŒāđƒāļ™āļ•āļąāļ§āđāļ›āļĢāļ—āļĩāđˆāļĄāļĩāļŠāļ·āđˆāļ­āļ•āļēāļĄāļ—āļĩāđˆāļĢāļ°āļšāļļāđƒāļ™āļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒāđāļĢāļ āļĄāļąāļ™āļĢāļ­āļ‡āļĢāļąāļšāļ­āļēāļĢāđŒāļāļīāļ§āđ€āļĄāļ™āļ•āđŒ regex āđ€āļžāļ·āđˆāļ­āļˆāļģāļāļąāļ”āļœāļĨāļĨāļąāļžāļ˜āđŒāđƒāļŦāđ‰āļ›āļāļīāļšāļąāļ•āļīāļ•āļēāļĄāđ„āļ§āļĒāļēāļāļĢāļ“āđŒāļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ‚āļ”āļĒāļ™āļīāļžāļˆāļ™āđŒāļ›āļāļ•āļī (āđ€āļŠāđˆāļ™ āļŠāļāļĩāļĄāđˆāļē JSON)

  • select: āđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđ‚āļĄāđ€āļ”āļĨāđ€āļžāļ·āđˆāļ­āđ€āļĨāļ·āļ­āļāļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļ—āļĩāđˆāļĄāļĩāļ„āļ§āļēāļĄāļ™āđˆāļēāļˆāļ°āđ€āļ›āđ‡āļ™āļŠāļđāļ‡āļŠāļļāļ”āļˆāļēāļāļĢāļēāļĒāļāļēāļĢ
  • += āļŦāļĢāļ·āļ­ extend: āđ€āļžāļīāđˆāļĄāļŠāļ•āļĢāļīāļ‡āđ€āļ‚āđ‰āļēāļāļąāļšāļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™
  • [variable_name]: āļ”āļķāļ‡āļœāļĨāļĨāļąāļžāļ˜āđŒāļ‚āļ­āļ‡āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡
  • fork: āļŠāļĢāđ‰āļēāļ‡āļāļēāļĢāļ‚āļ™āļēāļ™āļ‚āļ­āļ‡āļŠāļ–āļēāļ™āļ°āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™
  • join: āļĢāļ§āļĄāļŠāļ–āļēāļ™āļ°āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™
  • image āđāļĨāļ° video: āļĢāļąāļšāļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ‚āđ‰āļēāļĢāļđāļ›āļ āļēāļžāđāļĨāļ°āļ§āļīāļ”āļĩāđ‚āļ­

āļ§āļīāļ˜āļĩāļ—āļĩāđˆāļ‡āđˆāļēāļĒāļ—āļĩāđˆāļŠāļļāļ”āđƒāļ™āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđ‚āļ›āļĢāđāļāļĢāļĄ SGLang āļ„āļ·āļ­āļœāđˆāļēāļ™āļ•āļąāļ§āļ•āļĩāļ„āļ§āļēāļĄ āđ‚āļ”āļĒāļ—āļĩāđˆāļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ–āļđāļāļĄāļ­āļ‡āļ§āđˆāļēāđ€āļ›āđ‡āļ™āļĨāļģāļ”āļąāļšāļ—āļĩāđˆāđ„āļĄāđˆāļšāļĨāđ‡āļ­āļ āļ•āļąāļ§āļŠāđˆāļ§āļĒāđ€āļŠāđˆāļ™ extend, gen āđāļĨāļ° select āļ–āļđāļāļŠāđˆāļ‡āđ„āļ›āļĒāļąāļ‡āļĨāļģāļ”āļąāļšāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāđ„āļĄāđˆāļšāļĨāđ‡āļ­āļ āļāļēāļĢāđ€āļĢāļĩāļĒāļāđƒāļŠāđ‰āđāļšāļšāđ„āļĄāđˆāļšāļĨāđ‡āļ­āļāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ—āļģāđƒāļŦāđ‰āđ‚āļ„āđ‰āļ” Python āļŠāļēāļĄāļēāļĢāļ–āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ•āđˆāļ­āđ„āļ”āđ‰āđ‚āļ”āļĒāđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļĢāļ­āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđƒāļŦāđ‰āđ€āļŠāļĢāđ‡āļˆāļŠāļīāđ‰āļ™

āļĢāļ°āļšāļšāļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļŠāļģāļŦāļĢāļąāļš LLMs āļŠāļēāļĄāļēāļĢāļ–āđāļšāđˆāļ‡āļ­āļ­āļāđ€āļ›āđ‡āļ™āļŠāļ­āļ‡āļ›āļĢāļ°āđ€āļ āļ—: āļĢāļ°āļ”āļąāļšāļŠāļđāļ‡ (āđ€āļŠāđˆāļ™ LangChain, DSPy) āđāļĨāļ°āļĢāļ°āļ”āļąāļšāļ•āđˆāļģ (āđ€āļŠāđˆāļ™ LMQL, Guidance, SGLang) āļĢāļ°āļšāļšāļĢāļ°āļ”āļąāļšāļŠāļđāļ‡āđƒāļŦāđ‰āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ—āļĩāđˆāļāļģāļŦāļ™āļ”āđ„āļ§āđ‰āļĨāđˆāļ§āļ‡āļŦāļ™āđ‰āļēāļŦāļĢāļ·āļ­āļ—āļĩāđˆāļŠāļĢāđ‰āļēāļ‡āđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī āļĢāļ°āļšāļšāļĢāļ°āļ”āļąāļšāļ•āđˆāļģāđ„āļĄāđˆāđ€āļ›āļĨāļĩāđˆāļĒāļ™āļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™ āđāļ•āđˆāļ­āļ™āļļāļāļēāļ•āđƒāļŦāđ‰āļ„āļ§āļšāļ„āļļāļĄāļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āđāļĨāļ°āļ•āļąāļ§āļŠāđˆāļ§āļĒāđ‚āļ”āļĒāļ•āļĢāļ‡ SGLang āđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļĢāļ°āļ”āļąāļšāļ•āđˆāļģāļ—āļĩāđˆāļ„āļĨāđ‰āļēāļĒāļāļąāļš LMQL āđāļĨāļ° Guidance

SGLang āļĄāļļāđˆāļ‡āđ€āļ™āđ‰āļ™āđ„āļ›āļ—āļĩāđˆāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļĢāļąāļ™āđ„āļ—āļĄāđŒāļĄāļēāļāļ‚āļķāđ‰āļ™ āđāļĨāļ°āļĄāļĩāļĢāļąāļ™āđ„āļ—āļĄāđŒāļ—āļĩāđˆāļ­āļ­āļāđāļšāļšāļĄāļēāđ€āļžāļ·āđˆāļ­āļ—āļģāļ‡āļēāļ™āļĢāđˆāļ§āļĄāļāļąāļ™ āļ‹āļķāđˆāļ‡āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāđƒāļŦāļĄāđˆāđ† āđ„āļ”āđ‰ āļĢāļ°āļšāļšāļĢāļ°āļ”āļąāļšāļŠāļđāļ‡āļŠāļēāļĄāļēāļĢāļ–āļ–āļđāļāļ„āļ­āļĄāđ„āļžāļĨāđŒāđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļĢāļ°āļ”āļąāļšāļ•āđˆāļģ (āđ€āļŠāđˆāļ™ SGLang) āđ„āļ”āđ‰ āļāļēāļĢāļœāļŠāļĄāļœāļŠāļēāļ™ SGLang āđ€āļ›āđ‡āļ™āđāļšāđ‡āļ„āđ€āļ­āļ™āļ”āđŒāđƒāļ™ DSPy āļŠāļģāļŦāļĢāļąāļšāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļĢāļąāļ™āđ„āļ—āļĄāđŒāļ—āļĩāđˆāļ”āļĩāļ‚āļķāđ‰āļ™āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđāļŠāļ”āļ‡

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ”āđ‰āļēāļ™āļšāļ™āđāļŠāļ”āļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢ RadixAttention āđ‚āļ”āļĒāļĄāļĩāļ™āđ‚āļĒāļšāļēāļĒāļāļēāļĢāļ‚āļąāļšāļ­āļ­āļ LRU āđƒāļ™āđ€āļāđ‰āļēāļˆāļļāļ”āđ€āļ§āļĨāļē āđ‚āļ”āļĒāđāļŠāļ”āļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āļ‚āļ­āļ‡āļ•āđ‰āļ™āđ„āļĄāđ‰āļĢāļēāļ”āļīāļāļ‹āđŒāđƒāļ™āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡āļ•āđˆāļ­āļ„āļģāļ‚āļ­āļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒ āļ‹āļķāđˆāļ‡āļĢāļ§āļĄāļ–āļķāļ‡āđ€āļ‹āļŠāļŠāļąāļ™āđāļŠāļ—āļŠāļ­āļ‡āđ€āļ‹āļŠāļŠāļąāļ™ āļŠāļļāļ”āļ„āļģāļ–āļēāļĄāļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđāļšāļšāđ„āļĄāđˆāļĄāļēāļāļ™āļąāļ āđāļĨāļ°āļāļēāļĢāļ§āļēāļ”āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļāļĢāļ°āļ•āļļāđ‰āļ™āļ—āļĩāđˆāļŠāļ­āļ”āļ„āļĨāđ‰āļ­āļ‡āļāļąāļ™āđ€āļ­āļ‡

SGLang: āļāļēāļĢāļ›āļĢāļ°āđ€āļĄāļīāļ™āđāļĨāļ°āļāļēāļĢāļ—āļ”āļŠāļ­āļš

āļœāļĨāļĨāļąāļžāļ˜āđŒāļšāļ™āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđ€āļ›āļīāļ”āđ€āļœāļĒ

āļœāļĨāļĨāļąāļžāļ˜āđŒāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļĨāđˆāļēāļŠāđ‰āļēāđāļĨāļ°āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ–āļđāļāđāļŠāļ”āļ‡āđƒāļ™āļ•āļēāļĢāļēāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰ SGLang āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡āļ–āļķāļ‡ 6.4 āđ€āļ—āđˆāļēāđāļĨāļ°āļĨāļ”āļ„āļ§āļēāļĄāļĨāđˆāļēāļŠāđ‰āļēāļĨāļ‡āļŠāļđāļ‡āļŠāļļāļ” 3.7 āđ€āļ—āđˆāļē āļāļēāļĢāļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āđ€āļ›āđ‡āļ™āļœāļĨāļĄāļēāļˆāļēāļāļāļēāļĢāļ™āļģ KV cache āļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģ āļāļēāļĢāđƒāļŠāđ‰āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļˆāļēāļāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™āļ āļēāļĒāđƒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāđ€āļ”āļĩāļĒāļ§ āđāļĨāļ°āļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠāļ—āļĩāđˆāļˆāļģāļāļąāļ”āļ—āļĩāđˆāđ€āļĢāđ‡āļ§āļ‚āļķāđ‰āļ™

āđƒāļ™āļ‡āļēāļ™āļ—āļ”āļŠāļ­āļšāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ āļ­āļąāļ•āļĢāļēāļāļēāļĢāļ–āļđāļāļ‚āļ­āļ‡āđāļ„āļŠāļ­āļĒāļđāđˆāđƒāļ™āļŠāđˆāļ§āļ‡āļ•āļąāđ‰āļ‡āđāļ•āđˆ 50% āļ–āļķāļ‡ 99% āļ•āļēāļĢāļēāļ‡ 13 (āđƒāļ™āļ āļēāļ„āļœāļ™āļ§āļ) āđāļŠāļ”āļ‡āļ­āļąāļ•āļĢāļēāļāļēāļĢāļ–āļđāļāļ‚āļ­āļ‡āđāļ„āļŠāļ—āļĩāđˆāđ„āļ”āđ‰āļĢāļąāļšāđāļĨāļ°āļ­āļąāļ•āļĢāļēāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄāļ—āļĩāđˆāļŠāļļāļ”āļŠāļģāļŦāļĢāļąāļšāļ‡āļēāļ™āļ—āļ”āļŠāļ­āļšāļ—āļąāđ‰āļ‡āļŦāļĄāļ” āđ‚āļ”āļĒāđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ§āđˆāļēāļāļēāļĢāļāļģāļŦāļ™āļ”āļ•āļēāļĢāļēāļ‡āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļ—āļĩāđˆāļ•āļĢāļ°āļŦāļ™āļąāļāļ–āļķāļ‡āđāļ„āļŠāļ‚āļ­āļ‡ SGLang āđ€āļ‚āđ‰āļēāđƒāļāļĨāđ‰āļ­āļąāļ•āļĢāļēāļāļēāļĢāļ–āļđāļāļ‚āļ­āļ‡āđāļ„āļŠāļ—āļĩāđˆāđ€āļŦāļĄāļēāļ°āļŠāļĄāļ—āļĩāđˆāļŠāļļāļ” 96% āđ‚āļ”āļĒāđ€āļ‰āļĨāļĩāđˆāļĒ

āļœāļĨāļĨāļąāļžāļ˜āđŒāļšāļ™āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđƒāļŦāļāđˆāļ‚āļķāđ‰āļ™āļ”āđ‰āļ§āļĒāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™āļ‚āļ­āļ‡āđ€āļ—āļ™āđ€āļ‹āļ­āļĢāđŒ

āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđƒāļŦāļāđˆāļāļ§āđˆāļē āđ€āļŠāđˆāļ™ Mixtral-8x7B āđāļĨāļ° Llama-70B āļ–āļđāļāļ—āļ”āļŠāļ­āļšāļ”āđ‰āļ§āļĒāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™āļ‚āļ­āļ‡āđ€āļ—āļ™āđ€āļ‹āļ­āļĢāđŒāļšāļ™āļŠāļļāļ”āļ‡āļēāļ™āļ—āļ”āļŠāļ­āļšāđ€āļ”āļĩāļĒāļ§āļāļąāļ™ āđāļĨāļ°āļœāļĨāļĨāļąāļžāļ˜āđŒāļ–āļđāļāļĢāļēāļĒāļ‡āļēāļ™āđƒāļ™āļ•āļēāļĢāļēāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰ āļāļēāļĢāđ€āļžāļīāđˆāļĄāļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āļšāļ™āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđƒāļŦāļāđˆāļāļ§āđˆāļēāđāļŠāļ”āļ‡āđāļ™āļ§āđ‚āļ™āđ‰āļĄāļ—āļĩāđˆāļ„āļĨāđ‰āļēāļĒāļāļąāļšāļ—āļĩāđˆāļŠāļąāļ‡āđ€āļāļ•āđ€āļŦāđ‡āļ™āđƒāļ™āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđ€āļĨāđ‡āļāļāļ§āđˆāļē āđ‚āļ”āļĒāļšāđˆāļ‡āļŠāļĩāđ‰āļ§āđˆāļēāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāļ‚āļ­āļ‡ SGLang āļ‚āļĒāļēāļĒāđ„āļ”āđ‰āļ”āļĩāđ„āļ›āļĒāļąāļ‡āđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđƒāļŦāļāđˆāļāļ§āđˆāļē Guidance āđāļĨāļ° LMQL āļ–āļđāļįœį•Ĩāđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļĢāļ‚āļēāļ”āļāļēāļĢāļ™āļģāđ„āļ›āđƒāļŠāđ‰āļ—āļĩāđˆāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™āļ‚āļ­āļ‡āđ€āļ—āļ™āđ€āļ‹āļ­āļĢāđŒ

āļœāļĨāļĨāļąāļžāļ˜āđŒāļšāļ™āđ‚āļĄāđ€āļ”āļĨāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš

SGLang āļĄāļĩāļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āđ‚āļĄāđ€āļ”āļĨāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāđ‚āļ”āļĒāļ•āļĢāļ‡āļ”āđ‰āļ§āļĒāļ•āļąāļ§āļŠāđˆāļ§āļĒāļĢāļđāļ›āļ āļēāļžāđāļĨāļ°āļ§āļīāļ”āļĩāđ‚āļ­ āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāđƒāļ™āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰āđ€āļ‚āđ‰āļēāļāļąāļ™āđ„āļ”āđ‰āļāļąāļšāđ‚āļĄāđ€āļ”āļĨāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļš āļŠāļģāļŦāļĢāļąāļš RadixAttention āđ€āļŪāļŠāļ‚āļ­āļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™āļĢāļđāļ›āļ āļēāļžāļ–āļđāļāļ„āļģāļ™āļ§āļ“āđāļĨāļ°āđƒāļŠāđ‰āđ€āļ›āđ‡āļ™āļ„āļĩāļĒāđŒāđƒāļ™āļ•āđ‰āļ™āđ„āļĄāđ‰āļĢāļēāļ”āļīāļāļ‹āđŒ āļ—āļģāđƒāļŦāđ‰āļŠāļēāļĄāļēāļĢāļ–āļ™āļģ KV cache āļ‚āļ­āļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™āļĢāļđāļ›āļ āļēāļžāļ—āļĩāđˆāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™āļĄāļēāđƒāļŠāđ‰āļ‹āđ‰āļģāđ„āļ”āđ‰ LLaVA-v1.5-7B (āļĢāļđāļ›āļ āļēāļž) āļ–āļđāļāļ—āļ”āļŠāļ­āļšāļšāļ™ llava-bench-in-the-wild āđāļĨāļ° LLaVA-NeXT-34B (āļ§āļīāļ”āļĩāđ‚āļ­) āļšāļ™ ActivityNet āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāđ‚āļĄāđ€āļ”āļĨāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āđ„āļĄāđˆāđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļ­āļĒāđˆāļēāļ‡āļ”āļĩāļˆāļēāļāļĢāļ°āļšāļšāļ—āļĩāđˆāđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļš āđ€āļĢāļēāļˆāļķāļ‡āđƒāļŠāđ‰āļāļēāļĢāļ™āļģāđ„āļ›āđƒāļŠāđ‰āļ‚āļ­āļ‡ Hugging Face Transformers āļ‚āļ­āļ‡āļœāļđāđ‰āļŠāļĢāđ‰āļēāļ‡āđ‚āļĄāđ€āļ”āļĨāđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļ—āļĩāđˆāđ€āļ›āļĢāļĩāļĒāļšāđ€āļ—āļĩāļĒāļš āļ•āļēāļĄāļ—āļĩāđˆāđāļŠāļ”āļ‡āđƒāļ™āļ•āļēāļĢāļēāļ‡āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰ SGLang āđƒāļŦāđ‰āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡āļ–āļķāļ‡ 6 āđ€āļ—āđˆāļēāļšāļ™āļ‡āļēāļ™āļ—āļ”āļŠāļ­āļšāđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰

āļāļēāļĢāļ™āļģāđ„āļ›āđƒāļŠāđ‰āđƒāļ™āļāļēāļĢāļœāļĨāļīāļ•

SGLang āļ–āļđāļāļ™āļģāđ„āļ›āđƒāļŠāđ‰āđƒāļ™ Chatbot Arena āđ€āļžāļ·āđˆāļ­āđ€āļŠāļīāļĢāđŒāļŸāđ‚āļĄāđ€āļ”āļĨāļ—āļĩāđˆāđ€āļ›āļīāļ”āđ€āļœāļĒ āđ€āļ™āļ·āđˆāļ­āļ‡āļˆāļēāļāļāļēāļĢāļˆāļĢāļēāļˆāļĢāļ•āđˆāļģāļŠāļģāļŦāļĢāļąāļšāļšāļēāļ‡āđ‚āļĄāđ€āļ”āļĨ āļˆāļķāļ‡āļĄāļĩāđ€āļžāļĩāļĒāļ‡ SGLang āļŦāļ™āļķāđˆāļ‡āļ­āļąāļ™āđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™āļ—āļĩāđˆāđ€āļŠāļīāļĢāđŒāļŸāđāļ•āđˆāļĨāļ°āđ‚āļĄāđ€āļ”āļĨ āļŦāļĨāļąāļ‡āļˆāļēāļāļŦāļ™āļķāđˆāļ‡āđ€āļ”āļ·āļ­āļ™ āļ­āļąāļ•āļĢāļēāļāļēāļĢāļ–āļđāļāļ‚āļ­āļ‡āđāļ„āļŠ RadixAttention 52.4% āļŠāļģāļŦāļĢāļąāļš LLaVA-Next-34B āđāļĨāļ° 74.1% āļŠāļģāļŦāļĢāļąāļš Vicuna-33B āļ–āļđāļāļŠāļąāļ‡āđ€āļāļ•āđ€āļŦāđ‡āļ™ āļāļēāļĢāļ–āļđāļāļ‚āļ­āļ‡āđāļ„āļŠāļĄāļēāļˆāļēāļāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļĢāļ°āļšāļšāļ—āļąāđˆāļ§āđ„āļ› āļĢāļđāļ›āļ āļēāļžāļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āļ—āļĩāđˆāđƒāļŠāđ‰āļ‹āđ‰āļģāļšāđˆāļ­āļĒāđ† āđāļĨāļ°āļ›āļĢāļ°āļ§āļąāļ•āļīāļāļēāļĢāđāļŠāļ—āļŦāļĨāļēāļĒāļĢāļ­āļš āļ—āļģāđƒāļŦāđ‰āļĨāļ”āļ„āļ§āļēāļĄāļĨāđˆāļēāļŠāđ‰āļēāđƒāļ™āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđ‚āļ—āđ€āļ„āđ‡āļ™āđāļĢāļāđ‚āļ”āļĒāđ€āļ‰āļĨāļĩāđˆāļĒ 1.7 āđ€āļ—āđˆāļēāļŠāļģāļŦāļĢāļąāļš Vicuna-33B

āļ„āļ§āļēāļĄāļ„āļīāļ”āļŠāļļāļ”āļ—āđ‰āļēāļĒ

āđƒāļ™āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰ āđ€āļĢāļēāđ„āļ”āđ‰āļžāļđāļ”āļ–āļķāļ‡ SGLang āļ‹āļķāđˆāļ‡āđ€āļ›āđ‡āļ™āļĢāļ°āļšāļšāļ—āļĩāđˆāđāļ™āļ°āļ™āļģāđƒāļŦāļĄāđˆ āļĄāļĩāđ€āļ›āđ‰āļēāļŦāļĄāļēāļĒāļ—āļĩāđˆāļˆāļ°āđāļāđ‰āđ„āļ‚āļ›āļąāļāļŦāļēāļ™āļĩāđ‰āđ‚āļ”āļĒāļāļēāļĢāđƒāļŦāđ‰āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāđāļšāļšāļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļ‚āļ­āļ‡āđ‚āļ›āļĢāđāļāļĢāļĄāđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™ SGLang āļ›āļĢāļ°āļāļ­āļšāļ”āđ‰āļ§āļĒāļ āļēāļĐāļēāļŦāļ™āđ‰āļēāļˆāļ­āđāļĨāļ°āļĢāļąāļ™āđ„āļ—āļĄāđŒ āļ āļēāļĐāļēāļŦāļ™āđ‰āļēāļˆāļ­āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāđ€āļ‚āļĩāļĒāļ™āđ‚āļ›āļĢāđāļāļĢāļĄāļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™āļ”āđ‰āļ§āļĒāļ•āļąāļ§āļŠāđˆāļ§āļĒāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āđāļĨāļ°āļ„āļ§āļšāļ„āļļāļĄāļ„āļ§āļēāļĄāļ‚āļ™āļēāļ™ āļĢāļąāļ™āđ„āļ—āļĄāđŒāđ€āļĢāđˆāļ‡āļāļēāļĢāļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļœāđˆāļēāļ™āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŦāđ‰āđ€āļŦāļĄāļēāļ°āļŠāļĄāļ—āļĩāđˆāđƒāļŦāļĄāđˆ āđ€āļŠāđˆāļ™ RadixAttention āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāđƒāļŠāđ‰āļ‹āđ‰āļģ KV cache āđāļĨāļ°āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļˆāļąāļāļĢāļŠāļ–āļēāļ™āļ°āļˆāļģāļāļąāļ”āļ—āļĩāđˆāļšāļĩāļšāļ­āļąāļ”āļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠāļāļēāļĢāļ­āļ­āļāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡āļ—āļĩāđˆāđ€āļĢāđ‡āļ§āļ‚āļķāđ‰āļ™ āļāļēāļĢāļ—āļ”āļĨāļ­āļ‡āđāļŠāļ”āļ‡āđƒāļŦāđ‰āđ€āļŦāđ‡āļ™āļ§āđˆāļē SGLang āļŠāļēāļĄāļēāļĢāļ–āļšāļĢāļĢāļĨāļļāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŠāļđāļ‡āļ–āļķāļ‡ 6.4 āđ€āļ—āđˆāļēāđ€āļĄāļ·āđˆāļ­āđ€āļ—āļĩāļĒāļšāļāļąāļšāļĢāļ°āļšāļšāļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āļĢāļąāļāļ‚āļ­āļ‡āļāļēāļĢāļ—āļģāļ‡āļēāļ™āļšāļ™āđ‚āļĄāđ€āļ”āļĨāļ āļēāļĐāļēāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆāđāļĨāļ°āļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāļŦāļĨāļēāļāļŦāļĨāļēāļĒ āđ‚āļ”āļĒāļˆāļąāļ”āļāļēāļĢāļāļąāļšāļ‡āļēāļ™āļ”āļąāļ‡āļāļĨāđˆāļēāļ§ āđ€āļŠāđˆāļ™ āļāļēāļĢāļ„āļ§āļšāļ„āļļāļĄāđ€āļ­āđ€āļĒāđˆāļ™āļ•āđŒ āļāļēāļĢāđƒāļŦāđ‰āđ€āļŦāļ•āļļāļœāļĨāđ€āļŠāļīāļ‡āļ•āļĢāļĢāļāļ° āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļāļēāļĢāđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āđāļšāļšāđ„āļĄāđˆāļĄāļēāļāļ™āļąāļ JSON āļāļēāļĢāļ–āļ­āļ”āļĢāļŦāļąāļŠ āļāļēāļĢāļŠāļĢāđ‰āļēāļ‡āļ—āļĩāđˆāđ€āļžāļīāđˆāļĄāļ‚āļķāđ‰āļ™āđ‚āļ”āļĒāļāļēāļĢāļ„āđ‰āļ™āļŦāļē āđāļĨāļ°āļāļēāļĢāđāļŠāļ—āđāļšāļšāļŦāļĨāļēāļĒāļĢāļ­āļš

āļ§āļīāļĻāļ§āļāļĢāđ‚āļ”āļĒāļ­āļēāļŠāļĩāļž āļ™āļąāļāđ€āļ‚āļĩāļĒāļ™āđ‚āļ”āļĒāļŦāļąāļ§āđƒāļˆ āļ„āļļāļ“ Kunal āđ€āļ›āđ‡āļ™āļ™āļąāļāđ€āļ‚āļĩāļĒāļ™āđ€āļ—āļ„āļ™āļīāļ„āļ—āļĩāđˆāļĄāļĩāļ„āļ§āļēāļĄāļĢāļąāļāđāļĨāļ°āđ€āļ‚āđ‰āļēāđƒāļˆāļ­āļĒāđˆāļēāļ‡āļĨāļķāļāļ‹āļķāđ‰āļ‡āđ€āļāļĩāđˆāļĒāļ§āļāļąāļš AI āđāļĨāļ° ML āļĄāļļāđˆāļ‡āļĄāļąāđˆāļ™āļ—āļĩāđˆāļˆāļ°āļ—āļģāđƒāļŦāđ‰āđāļ™āļ§āļ„āļīāļ”āļ—āļĩāđˆāļ‹āļąāļšāļ‹āđ‰āļ­āļ™āđƒāļ™āļ”āđ‰āļēāļ™āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™āļœāđˆāļēāļ™āđ€āļ­āļāļŠāļēāļĢāļ—āļĩāđˆāļ™āđˆāļēāļŠāļ™āđƒāļˆāđāļĨāļ°āđƒāļŦāđ‰āļ‚āđ‰āļ­āļĄāļđāļĨ