LLM

๐Ÿ”ญLLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค ํ”Œ๋žซํผ Dify

์˜คํ”ˆ์†Œ์Šค LLMOps ํ”Œ๋žซํผ Dify์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

2024.08.12 | ์กฐํšŒ 463 |
2
|

DevOps ์—ฌํ–‰์„ ์œ„ํ•œ ์†Œ์‹์ง€

DevOps, ํด๋ผ์šฐ๋“œ, IT ๊ธฐ์ˆ  ๊ด€๋ จ ์ตœ์‹  ์†Œ์‹๊ณผ ์ •๋ณด๋ฅผ ์ •๋ฆฌํ•ด์„œ ์ฃผ 1ํšŒ ์ด๋ฉ”์ผ๋กœ ์ „ํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค๐Ÿ˜บ

์•ˆ๋…•ํ•˜์„ธ์š” ๊ตฌ๋…์ž๋‹˜, DevOps ์†Œ์‹๊ณผ ๊ธฐ์ˆ  ์ง€์‹์„ ์ •๋ฆฌํ•ด์„œ ๊ณต์œ ํ•ด๋“œ๋ฆฌ๋Š” DevOps ์—ฌํ–‰์„ ์œ„ํ•œ ์†Œ์‹์ง€์ž…๋‹ˆ๋‹ค.

์ด๋ฒˆ ์†Œ์‹์ง€์—์„  ์˜คํ”ˆ์†Œ์Šค LLMOps ํˆด Dify์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

๐Ÿ› ๏ธLLMOps์™€ ์˜คํ”ˆ์†Œ์Šค ํˆด Dify

LLMOps๋Š” ๋Œ€๊ทœ๋ชจ ์–ธ์–ด ๋ชจ๋ธ(LLM)์„ ํšจ์œจ์ ์œผ๋กœ ๊ฐœ๋ฐœํ•˜๊ณ  ์šด์˜ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•๋ก ๊ณผ ํ”„๋กœ์„ธ์Šค๋ฅผ ์˜๋ฏธํ•˜๋Š”๋ฐ์š”. ๋” ์ž์„ธํžˆ ์•Œ๊ณ ์‹ถ์œผ์‹œ๋‹ค๋ฉด ๊ด€๋ จ ๋ธ”๋กœ๊ทธ ๊ธ€์„ ํ™•์ธํ•ด๋ณด์„ธ์š”.โ˜บ๏ธ

์ด๋Ÿฐ LLMOps๋ฅผ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ํ”Œ๋žซํผ Dify์— ๋Œ€ํ•ด ์†Œ๊ฐœํ•ด๋“œ๋ฆฌ๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.

Dify๋Š” ํ˜„์žฌ ๊ฐœ๋ฐœ ์ค‘์ธ ์˜คํ”ˆ์†Œ์Šค LLMOps ํˆด ์ค‘ GitHub ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์žฅ ๋งŽ์€ ์ถ”์ฒœ์„ ๋ฐ›์€ ํˆด์ž…๋‹ˆ๋‹ค. 
Dify๋Š” ํ˜„์žฌ ๊ฐœ๋ฐœ ์ค‘์ธ ์˜คํ”ˆ์†Œ์Šค LLMOps ํˆด ์ค‘ GitHub ๊ธฐ์ค€์œผ๋กœ ๊ฐ€์žฅ ๋งŽ์€ ์ถ”์ฒœ์„ ๋ฐ›์€ ํˆด์ž…๋‹ˆ๋‹ค. 

Dify๋Š” AI ์›Œํฌํ”Œ๋กœ์šฐ, RAG ํŒŒ์ดํ”„๋ผ์ธ, LLM ๊ด€๋ฆฌ, ๋ชจ๋‹ˆํ„ฐ๋ง ๋“ฑ์ด ๊ฐ€๋Šฅํ•ด์„œ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋น ๋ฅด๊ฒŒ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์— ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค€๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

 

โœจDify์˜ ์žฅ์ ์€?

๊ทธ๋ ‡๋‹ค๋ฉด ๋‹ค์–‘ํ•œ LLM ๊ฐœ๋ฐœ ํ”Œ๋žซํผ ์ค‘ ์šฐ๋ฆฌ๊ฐ€ Dify๋ฅผ ๊ณ ๋ คํ•ด์•ผ ํ•  ์ด์œ ๋Š” ๋ฌด์—‡์ผ๊นŒ์š”?

์…€ํ”„ ํ˜ธ์ŠคํŒ…

Dify๋Š” ๋‹ค๋ฅธ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ LLM ๊ฐœ๋ฐœ ํ”Œ๋žซํผ๊ณผ๋Š” ๋‹ฌ๋ฆฌ ์˜คํ”ˆ์†Œ์Šค๋กœ ๊ฐœ๋ฐœ๋˜๊ณ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์…€ํ”„ ํ˜ธ์ŠคํŒ…์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ฆ‰, ์ง์ ‘ ์ œ์–ดํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋ฒ„์— ๋ฐฐํฌํ•˜์—ฌ ์›น์œผ๋กœ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ณด์•ˆ์— ๋ฏผ๊ฐํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ๋„ ๋”์šฑ ์•ˆ์ „ํ•œ ํ™˜๊ฒฝ์—์„œ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๊ณ  ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด์ฃ .

ํ™•์žฅ์„ฑ

๋˜ํ•œ Dify๋Š” ๋‹ค์–‘ํ•œ ๋ชจ๋ธ ์ œ๊ณต์ž๋ฅผ ์ง€์›ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋ฏธ ๋Œ€์ค‘์ ์ธ OpenAI๋ถ€ํ„ฐ Azure๋‚˜ Google Cloud๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, Ollama ๊ฐ™์€ ๋กœ์ปฌ LLM ์ œ๊ณต์ž๋„ ์ง€์›ํ•˜๊ณ  ์žˆ๋Š”๋ฐ์š”.

์ด์™ธ์—๋„ ์ˆ˜์‹ญ๊ฐ€์ง€์˜ ๋ชจ๋ธ ์ œ๊ณต์ž๋ฅผ ์ง€์›ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ, ์ž์„ธํ•œ ์ •๋ณด๋Š” ๊ณต์‹ ํŽ˜์ด์ง€์—์„œ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Web UI ๊ธฐ๋ฐ˜

Dify๋Š” ๋ณด๊ธฐ ์‰ฌ์šด Web UI๋กœ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ๊ณผ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ์žฅ์  ๋˜ํ•œ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์•„๋ž˜์—์„œ๋„ ์ง์ ‘ ํ™•์ธํ•ด๋ณด๊ฒ ์ง€๋งŒ, ์ด๋Ÿฐ ์ง๊ด€์ ์ธ UI ๋•๋ถ„์— LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ ๋ฐ ๊ด€๋ฆฌ๊ฐ€ ํ•œ ์ธต ๋” ์‰ฌ์›Œ์ง„๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

๐Ÿ’ปDify๋ฅผ ๋กœ์ปฌ์— ๋ฐฐํฌํ•˜๊ณ  ์ ‘์†ํ•ด๋ณด๊ธฐ

Dify์— ๋Œ€ํ•ด ์•Œ์•„๋ดค์œผ๋‹ˆ ์ด์ œ Dify๋ฅผ ์ง์ ‘ ์‚ฌ์šฉํ•ด๋ด์•ผ๊ฒ ์ฃ ?

๊ณต์‹ Github ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ์— ์—…๋กœ๋“œ๋œ Docker Compose ํŒŒ์ผ์„ ์ด์šฉํ•˜๋ฉด Dify ๊ตฌ๋™์— ํ•„์š”ํ•œ ๋ชจ๋“  ๊ตฌ์„ฑ์š”์†Œ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด ๋กœ์ปฌ ํ™˜๊ฒฝ์— ์‰ฝ๊ฒŒ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

Dify ์†Œ์Šค ์ฝ”๋“œ clone

๋จผ์ € ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ๋กœ์ปฌ์— Dify ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.

 

Dify ์‹คํ–‰

์•„๋ž˜ ๋ช…๋ น์–ด๋กœ Dify ๊ตฌ๋™์— ํ•„์š”ํ•œ ํ™˜๊ฒฝ๋ณ€์ˆ˜ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๊ณ  Docker compose๋กœ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

  • cd dify/docker
  • cp .env.example .env
  • docker compose up -d

 

Dify๋ฅผ Docker compose๋กœ ๋ฐฐํฌํ•œ ๊ฒฐ๊ณผ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Docker compose ๋ช…๋ น์–ด๋กœ Dify ๊ด€๋ จ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ™•์ธํ•ด๋ณด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์ฃ .

 

์ด๋ ‡๊ฒŒ ๋ฐฐํฌ๋œ Dify์˜ ๊ตฌ์„ฑ์š”์†Œ ์ค‘ nginx ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ๋ฐฐํฌ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์—, ์›น ๋ธŒ๋ผ์šฐ์ €์— localhost ๊ฒฝ๋กœ๋กœ Dify Web UI์— ์ ‘์†์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

๊ด€๋ฆฌ์ž ๊ณ„์ • ์„ค์ • ํ›„ ๋กœ๊ทธ์ธ์„ ์™„๋ฃŒํ•˜๋ฉด ์•„๋ž˜์ฒ˜๋Ÿผ ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ Dify ํ”Œ๋žซํผ์„ ์ด์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜๋Š” ๊ฑฐ์ฃ .

 

โœ…Dify๋กœ ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋“ค

๊ทธ๋ ‡๋‹ค๋ฉด Dify๋กœ ์–ด๋–ค ๊ฒƒ๋“ค์„ ํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”? ์•„๋ž˜์™€ ๊ฐ™์ด Dify์˜ ํ™œ์šฉ ๋ฐฉ๋ฒ•์„ ๊ฐ„๋žตํžˆ ์ •๋ฆฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค.

 

๋กœ์ปฌ LLM์„ ์—ฐ๋™ํ•˜์—ฌ ๋กœ์ปฌ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ

์•„๋ž˜์ฒ˜๋Ÿผ Dify๋Š” ๋‹ค์–‘ํ•œ ๋ชจ๋ธ ์ œ๊ณต์ž์™€ ์—ฐ๋™ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ทธ ์ค‘ Ollama๋ฅผ ์„ ํƒํ•˜๋ฉด ๋กœ์ปฌ์—์„œ ๊ตฌ๋™ ์ค‘์ธ LLM๊ณผ ์—ฐ๋™ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์กฐ์ง ํŠน์„ฑ์ƒ ๋ณด์•ˆ์— ๋ฏผ๊ฐํ•˜๊ฑฐ๋‚˜ ๊ทœ๋ชจ๊ฐ€ ํฌ์ง€ ์•Š์€ ํŒ€์—์„œ ํ™œ์šฉํ•˜๊ธฐ ์ ์ ˆํ•œ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค.

 

Dify์—์„œ ๊ธฐ๋ณธ ์ œ๊ณตํ•˜๋Š” ํ…œํ”Œ๋ฆฟ ํ™œ์šฉํ•˜์—ฌ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ

Dify๋Š” ์•„๋ž˜ ์‚ฌ์ง„์ฒ˜๋Ÿผ ๋‹ค์–‘ํ•œ LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์šฉ ํ…œํ”Œ๋ฆฟ์„ ์ œ๊ณตํ•˜๋Š”๋ฐ์š”.

์ด ์ค‘ ์›ํ•˜๋Š” ํ…œํ”Œ๋ฆฟ์„ ์„ ํƒํ•˜๋ฉด ์•„๋ž˜ ์ด๋ฏธ์ง€์™€ ๊ฐ™์ด ํ•ด๋‹น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์ŠคํŠœ๋””์˜ค ํ™”๋ฉด๊ณผ ํ…Œ์ŠคํŠธ ์ฐฝ์ด ํ‘œ์‹œ๋˜์–ด LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋น ๋ฅด๊ฒŒ ๊ฐœ๋ฐœ ๋ฐ ํ…Œ์ŠคํŠธ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

 

LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์ปจํ…์ŠคํŠธ ์ƒ์„ฑ

๊ฐœ๋ฐœํ•˜๋ ค๋Š” LLM ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ฃผ์ž…ํ•  ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ ๋“ฑ์˜ ์ปจํ…์ŠคํŠธ๋ฅผ ์•„๋ž˜์™€ ๊ฐ™์ด Web UI์—์„œ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ปจํ…์ŠคํŠธ๋กœ ์ €์žฅ ๊ฐ€๋Šฅํ•œ ํŒŒ์ผ ํฌ๋งท์œผ๋กœ๋Š” TXT, markdown, PDF, XLSX, CSV ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

 

๐Ÿ”ญ๋งˆ์น˜๋ฉฐ...

์ด๋ฒˆ ์†Œ์‹์ง€์—์„  LLMOps๋ฅผ ์œ„ํ•œ ์˜คํ”ˆ์†Œ์Šค ํˆด Dify์— ๋Œ€ํ•ด ์•Œ์•„๋ดค๋Š”๋ฐ์š”.

LLM ๊ฐœ๋ฐœ์ด๋‚˜ LLMOps๋ฅผ ์–ด๋–ป๊ฒŒ ์‹œ์ž‘ํ• ์ง€ ๊ณ ๋ฏผ์ด์‹  ๋ถ„๋“ค์—๊ฒŒ ์ฐธ๊ณ ๊ฐ€ ๋˜์—ˆ์œผ๋ฉด ํ•˜๋Š” ๋งˆ์Œ์—์„œ ๊ด€๋ จ ์˜คํ”ˆ์†Œ์Šค ํˆด์„ ์ •๋ฆฌํ•ด๋ดค์Šต๋‹ˆ๋‹ค.

ํ˜น์‹œ ์ด๋ฒˆ ๋‚ด์šฉ ๊ด€๋ จํ•ด์„œ ๋” ๊ถ๊ธˆํ•œ ์ ์ด ์žˆ์œผ์‹œ๋‹ค๋ฉด ์•„๋ž˜ ๋ฉ”์ผ๋ฆฌ ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์„ธ์š”.๐Ÿ˜€

๊ทธ๋Ÿผ, ๋‹ค์Œ ์†Œ์‹์ง€์—์„œ ๋ณด๋‹ค ์•Œ์ฐจ๊ณ  ํฅ๋ฏธ๋กœ์šด ๋‚ด์šฉ์œผ๋กœ ์ฐพ์•„๋ต™๊ฒ ์Šต๋‹ˆ๋‹ค.

์˜ค๋Š˜๋„ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค, ๊ตฌ๋…์ž๋‹˜ ๐Ÿ˜บ

 

๐Ÿ”—References

 

๋‹ค๊ฐ€์˜ฌ ๋‰ด์Šค๋ ˆํ„ฐ๊ฐ€ ๊ถ๊ธˆํ•˜์‹ ๊ฐ€์š”?

์ง€๊ธˆ ๊ตฌ๋…ํ•ด์„œ ์ƒˆ๋กœ์šด ๋ ˆํ„ฐ๋ฅผ ๋ฐ›์•„๋ณด์„ธ์š”

์ด๋ฒˆ ๋‰ด์Šค๋ ˆํ„ฐ ์–ด๋– ์…จ๋‚˜์š”?

DevOps ์—ฌํ–‰์„ ์œ„ํ•œ ์†Œ์‹์ง€ ๋‹˜์—๊ฒŒ โ˜•๏ธ ์ปคํ”ผ์™€ โœ‰๏ธ ์ชฝ์ง€๋ฅผ ๋ณด๋‚ด๋ณด์„ธ์š”!

๋Œ“๊ธ€ 2๊ฐœ

์˜๊ฒฌ์„ ๋‚จ๊ฒจ์ฃผ์„ธ์š”

ํ™•์ธ
  • jyje

    0
    3 months ์ „

    ๋งค์ผ ์•„์นจ ์ž˜ ์ฝ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ข‹์€ ๊ธ€ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋Š˜ ์ง‘์— ๊ฐ€์„œ ์„ค์น˜ํ•ด ๋ด์•ผ๊ฒ ์–ด์š”!!

    ใ„ด ๋‹ต๊ธ€ (1)
ยฉ 2024 DevOps ์—ฌํ–‰์„ ์œ„ํ•œ ์†Œ์‹์ง€

DevOps, ํด๋ผ์šฐ๋“œ, IT ๊ธฐ์ˆ  ๊ด€๋ จ ์ตœ์‹  ์†Œ์‹๊ณผ ์ •๋ณด๋ฅผ ์ •๋ฆฌํ•ด์„œ ์ฃผ 1ํšŒ ์ด๋ฉ”์ผ๋กœ ์ „ํ•ด๋“œ๋ฆฝ๋‹ˆ๋‹ค๐Ÿ˜บ

๋‰ด์Šค๋ ˆํ„ฐ ๋ฌธ์˜eduukulelekim@gmail.com

์ž์ฃผ ๋ฌป๋Š” ์งˆ๋ฌธ ์„œ๋น„์Šค ์†Œ๊ฐœ์„œ ์˜ค๋ฅ˜ ๋ฐ ๊ธฐ๋Šฅ ๊ด€๋ จ ์ œ๋ณด

์„œ๋น„์Šค ์ด์šฉ ๋ฌธ์˜admin@team.maily.so

๋ฉ”์ผ๋ฆฌ ์‚ฌ์—…์ž ์ •๋ณด

๋ฉ”์ผ๋ฆฌ (๋Œ€ํ‘œ์ž: ์ดํ•œ๊ฒฐ) | ์‚ฌ์—…์ž๋ฒˆํ˜ธ: 717-47-00705 | ์„œ์šธ ์„œ์ดˆ๊ตฌ ๊ฐ•๋‚จ๋Œ€๋กœ53๊ธธ 8, 8์ธต 11-7ํ˜ธ

์ด์šฉ์•ฝ๊ด€ | ๊ฐœ์ธ์ •๋ณด์ฒ˜๋ฆฌ๋ฐฉ์นจ | ์ •๊ธฐ๊ฒฐ์ œ ์ด์šฉ์•ฝ๊ด€