๋ฐ์ดํ„ฐ ์—”์ง€๋‹ˆ์–ด๋ง

AI ์ž๋™ํ™” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ - 02. Dify ๊ธฐ๋ณธ ๊ธฐ๋Šฅ ์ฑ—๋ด‡ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•

Tempo 2025. 4. 23. 07:13

๐Ÿง  LLM ์•ฑ ๊ฐ€์žฅ ์‰ฝ๊ฒŒ ๋งŒ๋“ค๊ธฐ!

– Dify ๊ธฐ๋ณธ ๊ธฐ๋Šฅ 3๊ฐ€์ง€ ์™„์ „ ์ •๋ณต (์ฑ—๋ด‡, ์—์ด์ „ํŠธ, ํ…์ŠคํŠธ ์ƒ์„ฑ๊ธฐ)

LLM์„ ํ™œ์šฉํ•œ AI ์•ฑ์„ ์ง์ ‘ ๋งŒ๋“ค๊ณ  ์‹ถ์€๋ฐ,
“์ฝ”๋”ฉ๋„ ๋ณต์žกํ•˜๊ณ  ํ”„๋กฌํ”„ํŠธ ์„ค๊ณ„๋„ ์–ด๋ ค์›Œ์š”…”
์ด๋Ÿฐ ๊ณ ๋ฏผ, ํ•œ ๋ฒˆ์ฏค ํ•ด๋ณด์…จ์ฃ ? ๐Ÿ˜ฅ

Dify๋Š” (LLM)GPT ๊ธฐ๋ฐ˜์˜ ์•ฑ์„ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋กœ(2025.04.20 - [๋ฐ์ดํ„ฐ ์—”์ง€๋‹ˆ์–ด๋ง] - AI ์ž๋™ํ™” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ - 01. Dify ์„ค์น˜ ๋ฐฉ๋ฒ•) ๊ธฐ์ดˆ ๊ธฐ๋Šฅ 3๊ฐ€์ง€ ์ค‘ ์ฑ—๋ด‡์— ๋Œ€ํ•ด ์šฐ์„  ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค.


๐Ÿ”น 0. ์‚ฌ์ „ ์ค€๋น„ – Ollama ์„ค์น˜

๊ธฐ์กด์— ChatGPT(๋˜๋Š” Claude)๋ฅผ ์œ ๋ฃŒ๊ตฌ๋… ํ•œ๋‹ค๋ฉด ์ด ๊ณผ์ •์„ ์ƒ๋žตํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค!

Ollama ์‚ฌ์ดํŠธ์—์„œ(https://ollama.com/) ์šฐ์„  Ollama๋ฅผ ๋‹ค์šด๋กœ๋“œ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์šด๋กœ๋“œ ํ›„ ๋ชจ๋ธ(ChatGPT์˜ mini-o ์™€ ๊ฐ™์€ ๋ชจ๋ธ)์„ ๋‹ค์šด๋กœ๋“œ ๋ฐ›์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ๊ธ€์—์„œ๋Š” 25๋…„ 4์›” ๊ธฐ์ค€ ์ตœ์‹  ๋ชจ๋ธ ์ค‘ gemma3(https://ollama.com/library/gemma3)๋ฅผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.

ollama ์„ค์น˜

  • ollama ์„ค์น˜ ํ›„ gemma3 ๋ชจ๋ธ ๋‹ค์šด๋กœ๋“œ(ํ„ฐ๋ฏธ๋„ ๋˜๋Š” ๋ช…๋ น์–ด)
ollama run gemma3

 

๐ŸชŸ Windows (WSL ๊ธฐ๋ฐ˜)

Ollama๋Š” Windows์—์„œ๋Š” WSL2(์šฐ๋ถ„ํˆฌ ํ™˜๊ฒฝ)์—์„œ ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

  1. WSL2 ์„ค์น˜
  2. ์šฐ๋ถ„ํˆฌ ํ„ฐ๋ฏธ๋„ ์‹คํ–‰ ํ›„ ์•„๋ž˜ ๋ช…๋ น์–ด ์ž…๋ ฅ:
curl -fsSL https://ollama.com/install.sh | sh ollama run gemma3

๐Ÿง Linux (Ubuntu ๊ธฐ๋ฐ˜)

curl -fsSL https://ollama.com/install.sh | sh ollama run gemma3

 

Ollama - Dify ์—ฐ๊ฒฐ

ollama์™€ Dify ์—ฐ๊ฒฐ์„ ์œ„ํ•ด์„  ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

  • (Dify์—์„œ) ํ”Œ๋Ÿฌ๊ทธ์ธ > ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค์— ์ ‘์†, ollama๋ฅผ ๊ฒ€์ƒ‰ํ•ฉ๋‹ˆ๋‹ค.

  • (Dify์—์„œ) ํ”„๋กœํ•„ > ์„ค์ • > ๋ชจ๋ธ ๊ณต๊ธ‰์ž๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์–‘ํ•œ ๋ชจ๋ธ์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

 

ollama๋ฅผ ๊ฒ€์ƒ‰ํ•˜์—ฌ ์„ ํƒํ•œ ๋’ค ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ €๋Š” Mac ํ™˜๊ฒฝ์œผ๋กœ ๋‹ค๋ฅธ OS์—์„œ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด Dify์˜ ๊ฐ€์ด๋“œ(https://docs.dify.ai/development/models-integration/ollama)๋ฅผ ์ฐธ๊ณ ํ•˜์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค

  • Dify๊ฐ€ Docker ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ ์ค‘์ด๊ธฐ์— host.docker.internal๋กœ ๋„์ปค ์™ธ๋ถ€์˜ ollama์— ์ ‘์†ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • Vision support(์ด๋ฏธ์ง€ ๊ธฐ๋ฐ˜ ์งˆ๋ฌธ)์€ ์ง€์›ํ•˜์ง€ ์•Š์•„ No๋กœ ์„ ํƒ, Function call support ๋˜ํ•œ No๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”น 1. ์ฑ—๋ด‡ ๋งŒ๋“ค๊ธฐ – ๋‚˜๋งŒ์˜ ChatGPT๋ฅผ ์†์‰ฝ๊ฒŒ ๊ตฌ์ถ•

Dify์˜ ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ๊ธฐ๋Šฅ์€ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ฐ€๋Šฅํ•œ ์ฑ—๋ด‡ ์•ฑ์ž…๋‹ˆ๋‹ค.
๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€์—์„œ ํ”„๋กฌํ”„ํŠธ๋งŒ ์ž…๋ ฅํ•˜๋ฉด ๋ˆ„๊ตฌ๋‚˜ OpenAI, Claude, Mistral ๋“ฑ ๋‹ค์–‘ํ•œ ๋ชจ๋ธ๋กœ ์ฑ—๋ด‡์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์–ด์š”.

โœ… ์ฃผ์š” ๊ธฐ๋Šฅ

  • System Prompt + User Prompt ์กฐํ•ฉ ๊ตฌ์„ฑ
  • ํ† ํฐ ์ˆ˜, ๋ชจ๋ธ ์ข…๋ฅ˜, ์‘๋‹ต ํ˜•์‹๊นŒ์ง€ ์„ค์ • ๊ฐ€๋Šฅ
  • UI๊นŒ์ง€ ์ž๋™ ์ƒ์„ฑ (๋ณ„๋„ ์ฝ”๋”ฉ X)
  • ์‚ฌ์šฉ์ž ์ž…๋ ฅ๊ฐ’์„ ๋ณ€์ˆ˜๋กœ ๋ฐ›์•„ ๋™์  ์‘๋‹ต๋„ ๊ตฌํ˜„ ๊ฐ€๋Šฅ

๐Ÿ”จ ์ƒ์„ฑ ๋ฐ ์‚ฌ์šฉ ์˜ˆ์‹œ

  • ์ŠคํŠœ๋””์˜ค > ๋นˆ ์ƒํƒœ๋กœ ์‹œ์ž‘ ํด๋ฆญ > ํด๋ฆญ ํ›„ ์ฑ—๋ด‡ ์„ ํƒํ•˜์—ฌ ์•ฑ์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
  • ์ €๋Š” ์ฑ—๋ด‡-01 ์ด๋ผ๋Š” ์ด๋ฆ„์œผ๋กœ ์ƒ์„ฑํ–ˆ์Šต๋‹ˆ๋‹ค.

 

์ดํ›„ UI ์ƒ๋‹จ์—์„œ ๋ชจ๋ธ์„ ์„ ํƒํ•˜์—ฌ ์ฑ—๋ด‡ ์•ฑ์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•œ๊ธ€ ์œ„์ฃผ์˜ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด exaone ๋ชจ๋ธ๋„ ์ข‹์Šต๋‹ˆ๋‹ค.

๋ชจ๋ธ ์„ ํƒ ํ›„ ๋งค๊ฐœ๋ณ€์ˆ˜ ์„ค์ •์€ ์ƒ๋žตํ•ฉ๋‹ˆ๋‹ค. ์ถ”ํ›„ ๊ณ ๊ธ‰ ํŠœ๋‹์„ ์œ„ํ•ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๐ŸŽฏ ๋ณ€์ˆ˜ ์ถ”๊ฐ€ ๋ฐ ์ฑ—๋ด‡ ์‹คํ–‰

๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ๋‰ด์Šค๋ฅผ ์š”์•ฝํ•˜๋Š” ์ฑ—๋ด‡์„ ๋งŒ๋“ค์–ด๋ด…๋‹ˆ๋‹ค. ์•„๋ž˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

1. ๋ณ€์ˆ˜ - ๋ฌธ๋‹จ ์„ ํƒ ํ›„ ์ตœ๋Œ€๊ธธ์ด 10,000 ์„ค์ •

 

2. ๋””๋ฒ„๊ทธ ๋ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ

๋””๋ฒ„๊ทธ ๋ฐ ๋ฏธ๋ฆฌ๋ณด๊ธฐ๋ฅผ ํ†ตํ•ด LLM ์ฑ—๋ด‡์„ ๋ฏธ๋ฆฌ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ๊ธ€์— ๋Œ€ํ•œ ์š”์•ฝ์„ ๋ช…๋ น์–ด๋กœ ์ž…๋ ฅํ–ˆ์œผ๋ฉฐ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตญ์„ธ์ฒญ ๋ณด๋„์ž๋ฃŒ์— ๋Œ€ํ•œ ์š”์•ฝ์„ ์š”์ฒญํ–ˆ์Šต๋‹ˆ๋‹ค

3. ์ฑ—๋ด‡ ์‹คํ–‰

์ดํ›„ ์ฑ—๋ด‡ ์‹คํ–‰ ํ™”๋ฉด์—์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์ด input ์ฐฝ๊ณผ ์ฑ—๋ด‡ ์ฐฝ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • input ํ•„๋“œ์— ์ฑ—๋ด‡์œผ๋กœ ๋‹ค๋ฃจ๊ณ  ์‹ถ์€ ๋‚ด์šฉ(์˜ˆ: ๋‰ด์Šค๊ธฐ์‚ฌ ๋“ฑ)์„ ์ž…๋ ฅ ํ›„
์‚ฌ์šฉ ์—์‹œ 1) ํ•ด๋‹น ๊ธ€์„ ์š”์•ฝํ•ด์ค˜, 2) ๊ธ€์—์„œ ์ฃผ๋กœ ํ™•์ธํ•ด์•ผ ํ•  ์‚ฌํ•ญ์€ ๋ญ์•ผ? 3) 1๋ฌธ์žฅ์œผ๋กœ ์š”์•ฝํ•ด์ค˜ ๋“ฑ

์œ„์™€ ๊ฐ™์ด LLM ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ง์ ‘ ์ฑ—๋ด‡์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๐ŸŒŸ ์‚ฌ์šฉ ์˜ˆ์‹œ

“ํšŒ์‚ฌ ๋‚ด๋ถ€ ์ •์ฑ…์„ ์š”์•ฝํ•ด์ฃผ๋Š” GPT ์ฑ—๋ด‡ ๋งŒ๋“ค๊ธฐ”
→ ๋ฌธ์„œ ์—…๋กœ๋“œ + ํ”„๋กฌํ”„ํŠธ ์„ค์ •๋งŒ์œผ๋กœ ์ž๋™ ๊ตฌ์ถ•
→ ์™ธ๋ถ€ ๊ณ ๊ฐ ์ƒ๋‹ด๋ด‡, ๋‚ด๋ถ€ ํ—ฌํ”„๋ฐ์Šคํฌ, ์ทจ์—… ๋ฉด์ ‘ ์ฑ—๋ด‡ ๋“ฑ ๋‹ค์–‘ํ•˜๊ฒŒ ํ™œ์šฉ ๊ฐ€๋Šฅ

 

๐ŸŽฏ Next: ์—์ด์ „ํŠธ ๋ฐ ํ…์ŠคํŠธ ์ƒ์„ฑ๊ธฐ ์‚ฌ์šฉ

๋‹ค์Œ๊ธ€์—์„œ๋Š” ์—์ด์ „ํŠธ์™€ ํ…์ŠคํŠธ ์ƒ์„ฑ๊ธฐ์— ๋Œ€ํ•ด ์„ค๋ช…ํ•˜๊ณ  ์˜ˆ์‹œ ์•ฑ์„ ์ƒ์„ฑํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฐ˜์‘ํ˜•