Teaching LLMs to Speak Spotify โ Yves Raimond & Jacqueline Wood, Spotify
ํ ์ค ํต์ฌ
Spotify๋ ์ถ์ฒ์ ๋จ์ํ ๋ญํน ๋ฌธ์ ๊ฐ ์๋๋ผ ์์ฐ์ด๋ก ์ดํดํ๊ณ ์กฐ์ข ํ ์ ์๋ ์์ฑํ ๊ฐ์ธํ๋ก ๋ฐ๊พธ๊ธฐ ์ํด, Spotify ์นดํ๋ก๊ทธ์ ๋ง์ถ semantic ID์ ๋ค๋จ๊ณ ํ์ตยทํ๊ฐ ์ฒด๊ณ๋ฅผ ๊ฐ์ถ LLM ์์คํ ์ ์ค์ ์๋น์ค์ ์ ์ฉํ๊ณ ์๋ค.
์๊ฐ๋ณ ์์ฝ
-
0:00
Spotify๋ฅผ ๋งํ๊ฒ ๋ง๋ค๊ธฐ Spotify์ ์ถ์ฒ ์์คํ ์ LLM ๋ค์ดํฐ๋ธํ๊ฒ ๋ค์ ์ค๊ณํ ๋ฐฐ๊ฒฝ๊ณผ ๋ชฉํ๋ฅผ ์๊ฐํ๋ค. ํต์ฌ์ ์์ ยทํ์บ์คํธยท์ค๋์ค๋ถ์ ์์ฐ์ด๋ก ๋ค๋ฃจ๋ ๊ฐ์ธํ ๊ฒฝํ์ ๋ง๋๋ ๊ฒ์ด๋ค.
-
0:47
Spotify์ ๊ท๋ชจ ์๊ฐ ํ์ฑ ์ฌ์ฉ์ 760 million๋ช , 184๊ฐ ์์ฅ, 100 million+ tracks์ ๋ํด ์์ยทํ์บ์คํธยท์ค๋์ค๋ถ๊น์ง ๋ค๋ค์ผ ํด์ ๋งค์นญ ๋ฌธ์ ๊ฐ ๋งค์ฐ ๋ณต์กํ๋ค. ์ด ๊ท๋ชจ ๋๋ฌธ์ ๋จ์ ์ถ์ฒ๋ณด๋ค ๋ ์ ๊ตํ ๊ฐ์ธํ๊ฐ ํ์ํ๋ค.
-
1:52
ํ๋ ์ด์ ์์ ์ถ์ฒ์ผ๋ก ์ด๊ธฐ์๋ ์ฌ๋์ด ์ง์ ํ๋ ์ด๋ฆฌ์คํธ๋ฅผ ๋ง๋๋ ํ๋ ์ด์ ์ด ์ค์ฌ์ด์๊ณ , ์ดํ ์์ฑยท์ ๋ ฌ ์ ํธ๋ฅผ ํ์ฉํ ์ถ์ฒ์ผ๋ก ๋ฐ์ ํ๋ค. Discover Weekly ๊ฐ์ ๊ธฐ๋ฅ์ด ์ด ์ ํ์ ๋ํํ๋ค.
-
2:37
์์ฑํ ๊ฐ์ธํ ์ฌ์ฉ์์ ์ฝํ ์ธ ๋ฅผ ๋งค์นญํ๋ ๊ฒ์ ๋์ด, ๊ฐ ์ฌ์ฉ์์ ๋ง๊ฒ ๊ฒฝํ ์์ฒด๋ฅผ ๋์ ์ผ๋ก ์์ฑํ๋ ๋จ๊ณ๋ก ์ด๋ํ๋ค. ์ถ์ฒ ์์คํ ์ด ๊ฒฐ๊ณผ๋ฅผ ๋ด๋ ๋ฐ์ ๋๋์ง ์๊ณ ์ํธ์์ฉ์ ์ผ๋ก ๊ฒฝํ์ ๊ตฌ์ฑํด์ผ ํ๋ค.
-
3:02
์ถ์ธก์์ ์ถ๋ก ์ผ๋ก, ๋ธ๋๋ฐ์ค์์ ์กฐ์ข ๊ฐ๋ฅํ๊ฒ ๊ฐ์ธํ๋ฅผ ๋จ์ํ ๋ญํน ์ถ์ธก์ด ์๋๋ผ ๋ฌธ๋งฅ์ ๋ฐ์ ธ๋ณด๋ ์ถ๋ก ์ผ๋ก ๋ฐ๊พธ๊ณ , ๋ด๋ถ๊ฐ ๋ณด์ด์ง ์๋ ๋ธ๋๋ฐ์ค์์ ์ฌ์ฉ์๊ฐ ์ง์ ๋ฐฉํฅ์ ๋ฐ๊ฟ ์ ์๋ ์์คํ ์ผ๋ก ๋ฐ๊พผ๋ค. ์ถ์ฒ๋ฟ ์๋๋ผ ์ค๋ช ๊ณผ ์์ฑ๊น์ง ๊ฐ๋ฅํด์ผ ํ๋ค.
-
4:07
์กฐ์ข ํ ์ ์๋ Spotify DJ Spotify DJ๋ ๊ฐ์ธํ๋ ์์ ์ธ์ ์ ์ฆ์ ์์ํ ์ ์๊ณ , ์ดํ ์ฌ์ฉ์๊ฐ ๋ฒํผ์ ๋๋ฌ ์ํ๋ ๋ฐฉํฅ์ผ๋ก ํ๋ฆ์ ๋ฐ๊ฟ ์ ์๋ค. ์ถ์ฒ ๊ฒฐ๊ณผ๋ฅผ ์๋์ ์ผ๋ก ๋ฐ๋ ๊ฒ์ด ์๋๋ผ ๋ํํ๋ฏ ์กฐ์ ํ๋ ๊ฒฝํ์ ๋ณด์ฌ์ค๋ค.
-
4:37
ํ๋กฌํํธ๋ก ๋ง๋๋ ํ๋ ์ด๋ฆฌ์คํธ ๊ณ ์์ค ๋๋ ์ธ๋ถ ํ๋กฌํํธ๋ก ํ๋ ์ด๋ฆฌ์คํธ๋ฅผ ์์ฑํ ์ ์์ผ๋ฉฐ, ์๋ฅผ ๋ค์ด ์ค๋ ๋ฐค ์ํ๋์์ค์ฝ์์ ๊ณต์ฐํ๋ ๋ฐด๋๋ ๋ฌ๋์ ์ํ ์์ ์ ์์ฒญํ ์ ์๋ค. ์์ฒญ์ ๋ฐ๋ผ ์ฌ์ ๊ฒฝํ ์์ฒด๋ ๋์ ์ผ๋ก ๋ฐ๋๋ค.
-
5:32
์ทจํฅ ํ๋กํ ์์ฐ์ด๋ก Spotify๊ฐ ์ดํดํ ์ทจํฅ์ ํ์ธํ๊ณ ์์ ยท๋ณด์ํ ์ ์๋ค. ์์ด๋ค์ด ํจ๊ป ๋ฃ๋ Disney ์์ ์ฒ๋ผ ์๋ชป ํ์ต๋ ์ ํธ๋ฅผ ๋ฐ๋ก์ก๊ฑฐ๋, ์๋ก์ด ์ฅ๋ฅดยท์ธ์ด ๊ฐ์ ์งํฅ์ ์ ์ถ๊ฐํ ์ ์๋ค.
-
6:22
๊ฐ์ธ ํ์บ์คํธ ์ถ์ฒ์ ๋์ด ์ฝํ ์ธ ์์ฒด๋ฅผ ์์ฑํ๋ ๊ธฐ๋ฅ์ผ๋ก ํ์ฅ๋๋ค. ๋งค์ผ ์์ฑ๋๋ ๊ฐ์ธ ๋ง์ถค ๋ธ๋ฆฌํ์ฒ๋ผ, ์ฌ์ฉ์์ ๊ด์ฌ์ฌ์ ๋ง์ถ ์ค๋์ค ์ฝํ ์ธ ๋ฅผ ์ ๊ธฐ์ ์ผ๋ก ๋ง๋ค์ด๋ผ ์ ์๋ค.
-
6:52
๋ํ ์ทจํฅ ๋ชจ๋ธ ์ด ๋ชจ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฌถ์ด ์ ์ดํ๋ ๋ด๋ถ ์์คํ ์ Large Taste Model์ด๋ผ ๋ถ๋ฅธ๋ค. ์ด ์์คํ ์ Spotify์ ๊ณผ๊ฑฐ ์ํธ์์ฉ๊ณผ ์ฝํ ์ธ ๋ฅผ ์ดํดํ๊ณ , ์์ธก๊ณผ ์ถ๋ก ์ ๊ฒฐํฉํด ์ค์๊ฐ์ผ๋ก ๊ฒฝํ์ ์์ฑยท์กฐ์ ํ๋ค.
-
7:27
๋ฏธ๊ตญ ํ๋ฆฌ๋ฏธ์ ๊ฐ์ ์ 4๋ช ์ค 1๋ช ์ด ๋งค์ผ ์ฌ์ฉ ์ด ์์คํ ์ ๋ฏธ๊ตญ ํ๋ฆฌ๋ฏธ์ ๊ฐ์ ์ ์ค ์ฝ 4๋ถ์ 1์ด ๋งค์ผ ์ํธ์์ฉํ ์ ๋๋ก ์ฌ์ฉ๋์ด ๋๋ค. ๊ธฐ์กด ์ถ์ฒ ํ๋ฉด์ ๋ฐฐํฌํด๋ autoplay, podcast discovery, DJ ๋ฉ์์ง ๋ฐ์ ๋ฑ์์ ๊ฐ์ ํจ๊ณผ๊ฐ ์์๋ค.
-
8:03
๋ชจ๋ธ ํ์ต ๋ฐฉ์ ์ด์ ๋ถํฐ๋ ๋ชจ๋ธ์ด ์ด๋ป๊ฒ ํ์ต๋๋์ง ์ค๋ช ํ๋ค. ํต์ฌ์ Spotify ์นดํ๋ก๊ทธ๋ฅผ ์์ฐ์ด LLM์ด ์ดํดํ๋๋ก ๋ง๋๋ semantic ID์ ๋ค๋จ๊ณ ํ์ต ์ ์ฐจ๋ค.
-
8:18
Spotify ์นดํ๋ก๊ทธ์ฉ semantic ID ํ์บ์คํธ ์ํผ์๋ ๊ฐ์ ์ฝํ ์ธ ์๋ฒ ๋ฉ์ ์์ํํด ์ด์ฐ ํ ํฐ์ผ๋ก ๋ฐ๊พธ๊ณ , openweight LLM์ ์ดํ์ ์ ํน์ ํ ํฐ์ ์ถ๊ฐํ๋ค. ์ดํ ์์ฐ์ด์ semantic ID๋ฅผ ํจ๊ป ์ดํดํ๋๋ก ๋ฏธ์ธ์กฐ์ ํ๋ค.
-
9:03
์์ฐ์ด ํ์บ์คํธ ์ถ์ฒ ์ฌ์ฉ์๊ฐ ๋๋์ฑ์ ๊ดํ ํ์บ์คํธ๋ฅผ ์์ฐ์ด๋ก ์์ฒญํ๋ฉด, ์ฒญ์ทจ ๊ธฐ๋ก์ semantic ID๋ก ํํํด ํจ๊ป ๋ฃ๊ณ ๋ชจ๋ธ์ด ์๋ตํ๋ค. ๊ฒฐ๊ณผ๋ ๊ด๋ จ ์ํผ์๋์ semantic ID์ ํจ๊ป ์ ์ถ์ฒํ๋์ง์ ๋ํ ์์ฐ์ด ์ค๋ช ๊น์ง ํฌํจํ๋ค.
-
9:33
NEO: ๋ค ๋จ๊ณ ํ์ต ๋ ์ํผ NEO๋ semantic foundation, domain grounding, capability induction, ์ ํ์ post-training์ ๋ค ๋จ๊ณ๋ก ๊ตฌ์ฑ๋๋ค. semantic ID๋ฅผ ๋ง๋ค๊ณ , ์ธ์ด ๊ณต๊ฐ์ ์ ๋ ฌํ๊ณ , Spotify ๊ณผ์ ๋ฅผ ๋ฉํฐํ์คํฌ๋ก ํ์ตํ ๋ค ํ์ํ๋ฉด RL fine-tuning ๋ฑ์ ์ถ๊ฐํ๋ค.
-
10:02
๊ณ ์ ๋ฐฑ๋ณธ์ผ๋ก ๋๋ฉ์ธ ์ ๋ ฌ ๋๋ฉ์ธ ์ ๋ ฌ ๋จ๊ณ์์๋ semantic ID์ ํ ์คํธ ์ฌ์ด์ ์๋ฐฉํฅ ๋งคํ์ ํ์ตํ๋ LLM backbone์ ๊ณ ์ ํ๋ค. ์ด๋ ๊ฒ ํ๋ฉด ์ ํ ํฐ๋ง ํ์ตํ๋ฉด์๋ ์ฌ์ ํ์ต๋ ์ธ์ด ๋ฅ๋ ฅ์ด ํฌ๊ฒ ๋ง๊ฐ์ง๋ ๊ฒ์ ๋ง์ ์ ์๋ค.
-
10:52
๊ธฐ๋ฅ ์ฃผ์ : ๋ฉํฐํ์คํฌ ํ๋ Spotify๊ฐ ์ค์ํ๊ฒ ์ฌ๊ธฐ๋ next item recommendation, retrieval ๊ฐ์ ๊ณผ์ ๋ค๋ก ๋ฉํฐํ์คํฌ instruction tuning์ ์ํํ๋ค. ์ ์ฒด ๊ฐ์ค์น๋ฅผ ํ๊ฑฐ๋ LoRA fine-tuning์ ์จ์ ์ฌ๋ฌ ๊ณผ์ ๋ฅผ ํจ๊ป ํ์ตํ๋ค.
-
11:32
๋ฉํฐํ์คํฌ ํจ๊ณผ์ cold-start ์ค๋์ค๋ถ ๋ฉํฐํ์คํฌ ๋ชจ๋ธ์ ๋จ์ผ ๊ณผ์ ๋ชจ๋ธ๊ณผ ๋น์ทํ๊ฑฐ๋ ๋ ์ข์ ์ฑ๋ฅ์ ๋ณด์ด๋ฉฐ ๊ณผ์ ๊ฐ ์ํธ ํ์ต์ด ์ผ์ด๋๋ค. ํนํ ์ ์ฝํ ์ธ ์ ํ์ธ ์ค๋์ค๋ถ ์ถ์ฒ์ฒ๋ผ cold-start ๋ฌธ์ ์์ ๋ค๋ฅธ ์นดํ๋ก๊ทธ ์ ํธ๋ฅผ ํ์ฉํด ๋์์ด ๋๋ค.
-
12:32
์ ๊ณ์ ์ฌ์ ํ์ต๋ณด๋ค ๊ณ ์ ์ ๋ ฌ์ด ๋ ๋์๊ฐ ๋๋ฉ์ธ ์ ๋ ฌ์ ๋นผ๊ฑฐ๋ ์ฐ์ ์ฌ์ ํ์ต์ผ๋ก ๋์ฒดํ๋ฉด ์ฑ๋ฅ์ด ๋จ์ด์ง๋ค. ํนํ ์ฐ์ ์ฌ์ ํ์ต์ task ์ฑ๋ฅ๋ณด๋ค๋ ์๋ LLM์ ์์ฐ์ดยท์ธ๊ณ์ง์ ๋ฅ๋ ฅ์ ํฌ๊ฒ ํผ์ํ๋ฏ๋ก, backbone์ ๊ณ ์ ํ ์ ๋ ฌ ๋ฐฉ์์ด ๋ ์ ๋ฆฌํ๋ค.
-
14:02
Beam search์ ์ ์ฝ ๋์ฝ๋ฉ ์ถ๋ก ๋จ๊ณ์์๋ ์ ํ๋์ ์ง์ฐ์๊ฐ์ ๊ท ํ์ ๋น๊ตํ๋ค. Beam search๋ ์ฝ๊ฐ ๋๋ฆฌ์ง๋ง ์ ํ๋๊ฐ ๋๊ณ , constrained decoding์ ํน์ ์ฝํ ์ธ ์ ํ๋ง ๊ณ ๋ฅด๊ณ ์ถ์ ๋ ์ ์ฉํ๋ฉฐ, top P sampling์ ์ ํ๋๋ฅผ ํฌ๊ฒ ๋จ์ด๋จ๋ฆฐ๋ค.
-
15:02
์ด์ ์ค์ธ ํ๋์ ์์คํ NEO๋ grounded catalog ์ดํด, ์์ฐ์ด ์กฐ์ข ๊ฐ๋ฅ์ฑ, ๊ฒ์ยท์ถ์ฒยท์ค๋ช , ๋ฎ์ ์ง์ฐ์ tool-free ์ถ๋ก ์ ํ๋๋ก ๋ฌถ์ ์ฒซ ์ฌ๋ก๋ก ์ ์๋๋ค. ์ด๋ฏธ ํ๋ก๋์ ์์ ์ฌ์ฉ ์ค์ด๋ฉฐ ์ฐ์ ๊ท๋ชจ์์ ๋์ํ๋ค.
-
15:47
ํ์บ์คํธ ๋ฐ๊ฒฌ์์ ์ต๊ด์ ์ฒญ์ทจ ๊นจ๊ธฐ ์ด ๋ชจ๋ธ์ ์ฐ๋ฉด ์ฌ์ฉ์๊ฐ ์ต์ํ ํจํด์์ ๋ฒ์ด๋ ๋ ๋ฏ์ ์ฝํ ์ธ ๋ฅผ ๋ฃ๋๋ก ์ ๋ํ ์ ์๋ค. ํ์บ์คํธ discovery์์ ์จ๋ผ์ธ ์ฑ๊ณผ๊ฐ ํฌ๊ฒ ๊ฐ์ ๋์๋ค.
-
16:11
grounded LLM ํ์ ๊ธฐ ์ถ์ฒ์ด ์์ฑํยท์ค๋ช ํ์ผ๋ก ๋ฐ๋๋ฉด ๊ธฐ์กด ์คํ๋ผ์ธ ์งํ๋ง์ผ๋ก๋ ์ถฉ๋ถํ์ง ์๋ค. ์ฌ์ฉ์ ํ๋กํ์ด๋ ํ๋ ์ ํธ ๊ฐ์ ์ค์ ๋ฐ์ดํฐ์ ๊ธฐ๋ฐํด LLM judge๋ฅผ ์ ๋ ฌํด์ผ ์ฌ๋์ ์ ํธ์ ๋ ์ ๋ง๋ ํ๊ฐ๊ฐ ๊ฐ๋ฅํ๋ค.
-
18:16
LLM ํ์ ๊ธฐ๋ก ํ๊ฐ ์ธํธ ํ์ฅ Cranfield ์คํ์ผ ํ๊ฐ ์งํฉ์ ๋ง๋ค ๋ ์ฌ๋์ ๋ญํน ์์ ์ ๋น์ธ๋ฏ๋ก, grounding๋ LLM judge๋ก ์ด๋ฅผ ๋์ฒดยทํ์ฅํ๋ค. ์ด๋ ๊ฒ ๋ง๋ judge๋ human system ranking๊ณผ 0.87 ์์ค์ ์ผ์น๋ฅผ ๋ณด์ธ๋ค.
-
18:56
์ ๋ฆฌ ๊ฐ์ธํ๋ ์ด์ ์์ฑํ ๊ฐ์ธํ์ ์๋๋ก ๋ค์ด๊ฐ๊ณ , ์ธ์ด๋ก ์กฐ์ข ๊ฐ๋ฅํ ์ถ์ฒ ๊ฒฝํ์ด ํต์ฌ์ด ๋๋ค. Spotify๋ openweight LLM์ ํตํด ์ด๋ฅผ ์ค์ ์๋น์ค ์์ค์ผ๋ก ๊ตฌํํ๋ค.
์ค๋ฌด ์ธ์ฌ์ดํธ
- ์ถ์ฒ ์์คํ ์ ๊ณ ๋ํํ ๋๋ ๋ญํน ์ ํ๋๋ง ๋ณด์ง ๋ง๊ณ , ์ฌ์ฉ์๊ฐ ์์ฐ์ด๋ก ์๋๋ฅผ ๋ฐ๊พธ๊ฑฐ๋ ์์ ํ ์ ์๋ ์กฐ์ข ๊ฐ๋ฅ์ฑ์ ์ ํ ์๊ตฌ์ฌํญ์ผ๋ก ํฌํจํ๋ ๊ฒ์ด ํจ๊ณผ์ ์ด๋ค.
- ๋๋ฉ์ธ ํนํ LLM์ ๋ง๋ค ๋๋ backbone์ ๊ณ ์ ํ ์ฑ ์ ํ ํฐ๊ณผ ๋๋ฉ์ธ ์ง์์ ์ ๋ ฌํ๋ ๋ฐฉ์์ด, ์ฐ์ ์ฌ์ ํ์ต๋ณด๋ค ์๋ ์ธ์ด ๋ฅ๋ ฅ์ ๋ ํผ์ํ๋ฉด์ ์ค๋ฌด ์ฑ๋ฅ์ ์งํค๋ ๋ฐ ์ ๋ฆฌํ๋ค.
- ์์ฑํ ์ถ์ฒ์ ํ๊ฐ๋ ํด๋ฆญ๋ฅ ๋ง์ผ๋ก ๋ถ์กฑํ๋ฏ๋ก, ์ฌ์ฉ์ ํ๋กํยทํ๋ ๋ก๊ทธ์ ๊ธฐ๋ฐํ grounded LLM judge๋ฅผ ํจ๊ป ์ค๊ณํด์ผ ์ค์ ํ์ง๊ณผ ์ฌ๋ ์ ํธ๋ฅผ ๋ ์ ๋ฐ์ํ ์ ์๋ค.