LLM Chain
LLM Chain ๋ ธ๋๋ ์ง์ ๋ ํ๋กฌํํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก LLM์ด ์๋ต์ ์์ฑํ๋๋ก ๊ตฌ์ฑํ๋ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ์ฒด์ธ ๋ ธ๋์ ๋๋ค. ํ๋กฌํํธ์ ๋ชจ๋ธ๋ง ์ค์ ํ๋ฉด ๋ชจ๋ ์ ํ์ ๋จ์ผ ์ง๋ฌธ ์๋ต, ๋ฌธ์ฅ ์์ฑ, ์์ฝ, ๋ณํ ๋ฑ ์์ ์ ํ์ฉํ ์ ์๋ ๋ฒ์ฉ ํ ์คํธ ์์ฑ ๋ ธ๋์ ๋๋ค.
์ฃผ์ ๊ธฐ๋ฅ
์ฌ์ฉ์ ์ ์ ํ๋กฌํํธ ๊ธฐ๋ฐ LLM ์๋ต ์์ฑ
๋ค์ํ ์์ฐ์ด ์ฒ๋ฆฌ ํ์คํฌ์ ์ ์ฐํ๊ฒ ํ์ฉ ๊ฐ๋ฅ
Output Parser๋ฅผ ํตํด ๊ตฌ์กฐํ๋ ์ถ๋ ฅ ์ฒ๋ฆฌ ๊ฐ๋ฅ
Prompt Chain์ ๊ตฌ์ฑ ๋จ์๋ก ์ฌ์ฉ ๊ฐ๋ฅ

์
๋ ฅ๊ฐ (Inputs)
Language Model
๋ฌธ์ฅ ์์ฑ์ ์ํํ LLM
ํ์
Prompt
์ถ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์์ฑํ๊ธฐ ์ํ ๋ช ๋ น ๋๋ ํ๋กฌํํธ ํ ์คํธ
ํ์
Output Parser
๊ฒฐ๊ณผ๋ฅผ ๊ตฌ์กฐํ๋ ํฌ๋งท(JSON ๋ฑ)์ผ๋ก ๋ณํํ๋ ์ต์
์ ํ
Input Moderation
์ ํด/๋ถ์ ์ ํ ์ ๋ ฅ ์ฐจ๋จ ๊ธฐ๋ฅ
์ ํ
Chain Name
์ฒด์ธ์ ์ด๋ฆ์ ์ง์ ํ ์ ์๋ ์ต์
์ ํ (์ฒด์ธ ๊ด๋ฆฌ ๋ชฉ์ )
์ถ๋ ฅ๊ฐ (Outputs)
LLM Chain
๊ธฐ๋ณธ LLM ์๋ต ํ ์คํธ (๊ธฐ๋ณธ ์ถ๋ ฅ)
Output Prediction
Output Parser ์ ์ฉ ๊ฒฐ๊ณผ๋ ์์ธก๊ฐ ๋ฑ ๊ตฌ์กฐํ๋ ์ถ๋ ฅ (์ต์ ์ ํ ์ ์ฌ์ฉ)
ํ์ฉ ์์
ํ ์คํธ ์์ฑ
ํ๋กฌํํธ: โ{name}์ ๋ํ ์๊ฐ ๊ธ์ ์์ฑํด์คโ
์ ๋ ฅ๊ฐ:
name = 'WindyFlo'โ LLM์ด ํ์ฌ ์๊ฐ ๋ฌธ์ฅ ์์ฑ
ํ์ ๋ณํ
์ด๋ฉ์ผ โ ํ์๋ก ์์ฝ, ํ ์คํธ โ JSON ๋ณํ ๋ฑ ๋ค์ํ ๋ณํ ์์ ์ ํ์ฉ
๊ฐ๋จํ ์ถ๋ก ์์
โ๋ค์ ๋ฌธ์ฅ์ด ๊ธ์ ์ธ์ง ๋ถ์ ์ธ์ง ํ๋จํด์ค: {๋ฌธ์ฅ}โ โ Output Parser๋ก yes/no ์ถ์ถ ๊ฐ๋ฅ
์ฌ์ฉ ํ
Prompt๋ ์ฌ์ฉ์ ์ ๋ ฅ๊ฐ๊ณผ ๋งคํ๋ ์ ์๋๋ก
{}๋ณ์๋ฅผ ํ์ฉํด ๋์ ์ผ๋ก ๊ตฌ์ฑํ ์ ์์ต๋๋ค.Output Parser๋ JSONSchema ๊ธฐ๋ฐ ๊ตฌ์กฐ๋ฅผ ์ค๊ณํ๊ฑฐ๋, ์ปค์คํ ํ์ ๋ ธ๋์ ์ฐ๊ฒฐํ์ฌ ๋ ์ ๊ตํ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ์ ์ ์์ต๋๋ค.
Prompt ์ค๊ณ ์ System ์ญํ ํฌํจ ๊ฐ๋ฅ (์: โYou are a helpful assistant.โ)
์ฃผ์์ฌํญ
Prompt ๋ด
{input}๊ฐ์ ๋ณ์๋ช ์ ์ค์ ์ฐ๊ฒฐ๋๋ ๊ฐ๊ณผ ์ผ์นํด์ผ ํฉ๋๋ค.Output Parser๋ฅผ ์ค์ ํ์ง ์์ผ๋ฉด LLM์ ์ถ๋ ฅ ๊ฒฐ๊ณผ๋ ์์ ํ ์คํธ ํํ๋ก ๋ฐํ๋ฉ๋๋ค.
์ถ๋ ฅ ์ต์ ์์ Output Prediction์ ์ ํํ์ง ์์ผ๋ฉด ์์ธก๊ฐ์ ์ถ๋ ฅ๋์ง ์์ผ๋ฉฐ, ํ์ ๋ก์ง๋ ๋ฌด์๋ฉ๋๋ค.
LLM Chain์ WindyFlo์์ ๊ฐ์ฅ ๋ฒ์ฉ์ ์ด๊ณ ์ ์ฐํ๊ฒ ์ฌ์ฉ ๊ฐ๋ฅํ ํ ์คํธ ์์ฑ ๋ ธ๋์ ๋๋ค. ์ง๋ฌธ ์๋ต, ๋ฌธ์ฅ ์์ฑ, ํฌ๋งท ๋ณํ, ๊ฐ์ ๋ถ์ ๋ฑ ๋ชจ๋ LLM ๊ธฐ๋ฐ ์์ ์ ์์์ ์ผ๋ก ํ์ฉ๋ฉ๋๋ค.
Last updated