๐ Open WebUI ํตํฉ
๊ฐ์โ
Open WebUI v0.6+๋ OpenAPI ์๋ฒ๋ฅผ ํตํด ์ธ๋ถ ๋๊ตฌ์์ ์ํํ ํตํฉ์ ์ง์ํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ปค๋ฎค๋ํฐ ๊ธฐ๋ฐ ๋๊ตฌ ์๋ฒ ๋๋ ๋ง์ถคํ ๋๊ตฌ ์๋ฒ๋ฅผ ์ฌ์ฉํ์ฌ LLM ์ํฌํ๋ก๋ฅผ ์ฝ๊ฒ ํ์ฅํ ์ ์์ต๋๋ค ๐งฐ.
์ด ๊ฐ์ด๋์์๋ OpenAPI ํธํ ๋๊ตฌ ์๋ฒ๋ฅผ ์์ํ๊ณ ์ง๊ด์ ์ธ ์ฌ์ฉ์ ์ธํฐํ์ด์ค๋ฅผ ํตํด Open WebUI์ ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ฒ ๋ ๊ฒ์ ๋๋ค. ์, ์์ํด๋ด ์๋ค! ๐
๋จ๊ณ 1: OpenAPI ๋๊ตฌ ์๋ฒ ์์โ
์์ํ๋ ค๋ฉด openapi-servers ์ ์ฅ์์ ์ ๊ณต๋ ์ฐธ์กฐ ๋๊ตฌ ์๋ฒ ์ค ํ๋๋ฅผ ์์ํด์ผ ํฉ๋๋ค. ๋น ๋ฅธ ํ ์คํธ๋ฅผ ์ํด ์๊ฐ ๋๊ตฌ ์๋ฒ๋ฅผ ์์ ๋ก ์ฌ์ฉํฉ๋๋ค.
๐ ๏ธ ์์ : ๋ก์ปฌ์์ time
์๋ฒ ์์ํ๊ธฐ
git clone https://github.com/open-webui/openapi-servers
cd openapi-servers
# ์๊ฐ ๋๊ตฌ ์๋ฒ๋ก ์ด๋
cd servers/time
# ํ์ํ ์ข
์์ฑ ์ค์น
pip install -r requirements.txt
# ์๋ฒ ์์
uvicorn main:app --host 0.0.0.0 --reload
์๋ฒ๊ฐ ์คํ๋๋ฉด ์ด ์๋ฒ๋ http://localhost:8000
์์ ๋ก์ปฌ OpenAPI ์๋ฒ๋ฅผ ํธ์คํ
ํฉ๋๋ค. ์ด๋ฅผ Open WebUI์ ์ฐ๊ฒฐํ ์ ์์ต๋๋ค.
๋จ๊ณ 2: Open WebUI์ ๋๊ตฌ ์๋ฒ ์ฐ๊ฒฐโ
๋ค์์ผ๋ก ์คํ ์ค์ธ ๋๊ตฌ ์๋ฒ๋ฅผ Open WebUI์ ์ฐ๊ฒฐํฉ๋๋ค:
- ๋ธ๋ผ์ฐ์ ์์ Open WebUI๋ฅผ ์ฝ๋๋ค.
- โ๏ธโฏ์ค์ ์ ์ฝ๋๋ค.
- โ ๋๊ตฌ๋ฅผ ํด๋ฆญํ์ฌ ์๋ก์ด ๋๊ตฌ ์๋ฒ๋ฅผ ์ถ๊ฐํฉ๋๋ค.
- OpenAPI ๋๊ตฌ ์๋ฒ๊ฐ ์ค ํ ์ค์ธ URL์ ์
๋ ฅํฉ๋๋ค(์:
http://localhost:8000
). - "์ ์ฅ"์ ํด๋ฆญํฉ๋๋ค.
๐งโ๐ป ์ฌ์ฉ์ ๋๊ตฌ ์๋ฒ vs. ๐ ๏ธ ์ ์ญ ๋๊ตฌ ์๋ฒโ
Open WebUI์์ ๋๊ตฌ ์๋ฒ๋ฅผ ๋ฑ๋กํ๋ ๋ ๊ฐ์ง ๋ฐฉ๋ฒ์ด ์์ต๋๋ค:
1. ์ฌ์ฉ์ ๋๊ตฌ ์๋ฒ(์ผ๋ฐ ์ค์ ์ ํตํด ์ถ๊ฐ๋จ)โ
- ๋๊ตฌ ์๋ฒ๋ฅผ ๋ฑ๋กํ ์ฌ์ฉ์๋ง ์ ๊ทผ ๊ฐ๋ฅํฉ๋๋ค.
- ์ฐ๊ฒฐ์ ๋ธ๋ผ์ฐ์ (ํด๋ผ์ด์ธํธ ์ธก)์์ ์ฌ์ฉ์๊ฐ ์ง์ ์ํํฉ๋๋ค.
- ๋ง์ถคํ ๋๋ ๋ก์ปฌ ๋๊ตฌ๋ฅผ ํ ์คํธํ๊ฑฐ๋ ๊ฐ์ธ ์ํฌํ๋ก์ ์ ํฉํฉ๋๋ค.
2. ์ ์ญ ๋๊ตฌ ์๋ฒ(๊ด๋ฆฌ์ ์ค์ ์ ํตํด ์ถ๊ฐ๋จ)โ
๊ด๋ฆฌ์๋ ๋ฐฐํฌ ์ ์ฒด ๋๋ ์ ํ๋ ์ฌ์ฉ์์๊ฒ ๊ณต์ ๋ ๋๊ตฌ ์๋ฒ๋ฅผ ๊ด๋ฆฌํ ์ ์์ต๋๋ค:
- ๐ ๏ธย ๊ด๋ฆฌ์ ์ค์ > ๋๊ตฌ๋ก ์ด๋ํฉ๋๋ค.
- ์ฌ์ฉ์ ์ค์ ์์ ๋๊ตฌ ์๋ฒ URL์ ์ถ๊ฐํ๋ ๊ฒ๊ณผ ๋์ผํ ๋ฐฉ์์ผ๋ก ์ถ๊ฐํฉ๋๋ค.
- ์ด๋ฌํ ๋๊ตฌ๋ Open WebUI์ ๋ด์ฅ ๋๊ตฌ์ ์ ์ฌํ๊ฒ ์ฒ๋ฆฌ๋ฉ๋๋ค.
๐ ์ ํ ์ฌํญ: mcpo์ ํจ๊ป ๊ตฌ์ฑ ํ์ผ ์ฌ์ฉํ๊ธฐโ
๊ตฌ์ฑ ํ์ผ์ ์ฌ์ฉํ์ฌ mcpo๋ฅผ ํตํด ์ฌ๋ฌ ๋๊ตฌ๋ฅผ ์คํํ๋ ๊ฒฝ์ฐ ์ฃผ์ํ ์ฌํญ:
๐งฉ ๊ฐ ๋๊ตฌ๋ ๊ณ ์ ๊ฒฝ๋ก์ ๋ง์ดํธ๋ฉ๋๋ค!
์๋ฅผ ๋ค์ด, mcpo๋ฅผ ์ฌ์ฉํ์ฌ memory ๋ฐ time ๋๊ตฌ๋ฅผ ๋์์ ์คํํ๋ ๊ฒฝ์ฐ ๊ฐ ๋๊ตฌ๋ ๊ณ ์ ๊ฒฝ๋ก์์ ์ ๊ทผ ๊ฐ๋ฅํฉ๋๋ค:
์ด ๋ง์:
- Open WebUI์์ ๋๊ตฌ๋ฅผ ์ฐ๊ฒฐํ๋ ค๋ฉด ํน์ ๋๊ตฌ์ ํด๋นํ๋ ์ ์ฒด ๊ฒฝ๋ก๋ฅผ ์
๋ ฅํด์ผ ํฉ๋๋ค โ ๋ฃจํธ URL(
http://localhost:8000
)์ ์ ๋ ฅํด์๋ ์ ๋ฉ๋๋ค. - Open WebUI ์ค์ ์์ ๊ฐ ๋๊ตฌ๋ฅผ ํด๋น ์๋ธ ๊ฒฝ๋ก URL์ ์ฌ์ฉํ์ฌ ๊ฐ๋ณ์ ์ผ๋ก ์ถ๊ฐํด์ผ ํฉ๋๋ค.
โ ์ฌ๋ฐ๋ฆ:
http://localhost:8000/time
http://localhost:8000/memory
๐ซ ์ ํจํ์ง ์์:
์ด๋ฅผ ํตํด Open WebUI๊ฐ ๊ฐ ๋๊ตฌ ์๋ฒ๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ์ธ์ํ๊ณ ํต์ ํ ์ ์์ต๋๋ค.
๋จ๊ณ 3: ๋๊ตฌ ์๋ฒ ์ฐ๊ฒฐ ํ์ธ โ โ
๋๊ตฌ ์๋ฒ ์ฐ๊ฒฐ์ด ์ฑ๊ณต์ ์ผ๋ก ์ด๋ฃจ์ด์ง๋ฉด Open WebUI ๋ฉ์์ง ์ ๋ ฅ ์์ญ์ ๋๊ตฌ ์๋ฒ ํ์๊ธฐ๊ฐ ์ง์ ํ์๋ฉ๋๋ค ๐:
๐ ์ด์ ์ ๋ ฅ ์์ ์๋์ ๋ค์ ์์ด์ฝ์ด ํ์๋ฉ๋๋ค:
์ด ์์ด์ฝ์ ํด๋ฆญํ๋ฉด ํ์ ์ด ์ด๋ฆฌ๋ฉฐ:
- ์ฐ๊ฒฐ๋ ๋๊ตฌ ์๋ฒ ์ ๋ณด๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
- ์ฌ์ฉ ๊ฐ๋ฅํ ๋๊ตฌ์ ํด๋น ๋๊ตฌ๋ฅผ ์ ๊ณตํ๋ ์๋ฒ๋ฅผ ํ์ธํ ์ ์์ต๋๋ค.
- ํ์ ์ ํน์ ๋๊ตฌ๋ฅผ ๋๋ฒ๊ทธํ๊ฑฐ๋ ์ฐ๊ฒฐ์ ๋์ ์ ์์ต๋๋ค.
๐ ๋ค์์ ๋๊ตฌ ์ ๋ณด ๋ชจ๋ฌ์ ํ์ฅ๋ ๋ชจ์ต์ ๋๋ค:
๐ ๏ธ ์ ์ญ ๋๊ตฌ ์๋ฒ๋ ๋ค๋ฅด๊ฒ ํ์๋ฉ๋๋ค โ ๊ธฐ๋ณธ์ ์ผ๋ก ์จ๊ฒจ์ ธ ์์ต๋๋ค!โ
์ ์ญ ๋๊ตฌ ์๋ฒ(๊ด๋ฆฌ์๊ฐ ๊ตฌ์ฑํ ๋๊ตฌ ์๋ฒ)๋ฅผ ์ฐ๊ฒฐํ๋ฉด ์ฌ์ฉ์ ๋๊ตฌ ์๋ฒ์ฒ๋ผ ์ ๋ ฅ ์์ญ์ ์๋์ผ๋ก ํ์๋์ง ์์ต๋๋ค.
๋์ :
- ์ ์ญ ๋๊ตฌ๋ ๊ธฐ๋ณธ์ ์ผ๋ก ์จ๊ฒจ์ ธ ์์ผ๋ฉฐ ์ฌ์ฉ์๊ฐ ๋ช ์์ ์ผ๋ก ํ์ฑํํด์ผ ํฉ๋๋ค.
- ํ์ฑํํ๋ ค๋ฉด ๋ฉ์์ง ์ ๋ ฅ ์์ญ(์ฑํ ์์ ์ผ์ชฝ ํ๋จ)์ โ ๋ฒํผ์ ํด๋ฆญํ ํ ์ฌ์ฉํ๋ ค๋ ํน์ ์ ์ญ ๋๊ตฌ๋ฅผ ์๋์ผ๋ก ์ผ์ผ ํฉ๋๋ค.
๋ค์์ ๊ทธ ์์ ๋๋ค:
โ ๏ธ ์ ์ญ ๋๊ตฌ ์๋ฒ์ ๋ํ ์ค์ ์ฌํญ:
- โ ๋ฉ๋ด์์ ํ์ฑํํ๊ธฐ ์ ๊น์ง ๋๊ตฌ ํ์ ํ์ ์ ํ์๋์ง ์์ต๋๋ค.
- ๊ฐ ์ ์ญ ๋๊ตฌ๋ ํ์ฑํํ๋ ค๋ฉด ๊ฐ๋ณ์ ์ผ๋ก ์ผ์ผ ํฉ๋๋ค.
- ํ์ฑํ๋๋ฉด ์ฌ์ฉ์ ๋๊ตฌ์ ๋์ผํ ๋ฐฉ์์ผ๋ก ์๋ํฉ๋๋ค.
- ๊ด๋ฆฌ์๋ ์ญํ ๊ธฐ๋ฐ ๊ถํ์ ํตํด ์ ์ญ ๋๊ตฌ์ ๋ํ ์ ๊ทผ์ ์ ์ดํ ์ ์์ต๋๋ค.
ํ ํ๊ฒฝ ์ค์ ๋๋ ๊ณต์ ํ๊ฒฝ์ ์ด์์ ์ผ๋ก ์ ํฉํ๋ฉฐ, ๋ฌธ์ ๊ฒ์, ๋ฉ๋ชจ๋ฆฌ ๋๋ ์น ์กฐํ์ ๊ฐ์ ์์ฃผ ์ฌ์ฉ๋๋ ๋๊ตฌ๊ฐ ์ฌ๋ฌ ์ฌ์ฉ์๊ฐ ์ค์์์ ์ ๊ทผํ ์ ์๊ฒ ํฉ๋๋ค.