๋ณธ๋ฌธ์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ
Sponsored by Open WebUI
Open WebUI
The top banner spot is reserved for Emerald+ Enterprise sponsors

๐ŸŒŸ OpenAPI Tool Servers

์ด ๋ฆฌํฌ์ง€ํ† ๋ฆฌ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์™ธ๋ถ€ ๋„๊ตฌ ๋ฐ ๋ฐ์ดํ„ฐ ์†Œ์Šค๋ฅผ LLM ์—์ด์ „ํŠธ์™€ ์›Œํฌํ”Œ๋กœ์šฐ์— ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์ฐธ์กฐ์šฉ OpenAPI Tool Server ๊ตฌํ˜„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ตœ๋Œ€ ์‚ฌ์šฉ ํŽธ์˜์„ฑ๊ณผ ํ•™์Šต ๊ณก์„  ์ตœ์†Œํ™”๋ฅผ ๋ชฉํ‘œ๋กœ ์„ค๊ณ„๋œ ์ด ๊ตฌํ˜„์€ ๋„๋ฆฌ ์ฑ„ํƒ๋˜๊ณ  ๊ฒ€์ฆ๋œ OpenAPI ์‚ฌ์–‘์„ ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

OpenAPI๋ฅผ ํ™œ์šฉํ•จ์œผ๋กœ์จ ๊ณ ์œ ํ•˜๊ฑฐ๋‚˜ ์ต์ˆ™ํ•˜์ง€ ์•Š์€ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ์˜ ํ•„์š”์„ฑ์„ ์ œ๊ฑฐํ•˜๊ณ , ์‹ ๋ขฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ์„œ๋ฒ„๋ฅผ ๋น ๋ฅด๊ฒŒ ๊ตฌ์ถ•ํ•˜๊ฑฐ๋‚˜ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋งž์ถคํ˜• ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํŒŒ์•…ํ•˜๋Š” ๋ฐ ์†Œ์š”๋˜๋Š” ์‹œ๊ฐ„์„ ์ค„์ด๊ณ  AI ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐ•ํ™”ํ•˜๋Š” ๊ฐ•๋ ฅํ•œ ๋„๊ตฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ๋” ๋งŽ์€ ์‹œ๊ฐ„์„ ํˆฌ์žํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.

โ˜๏ธ OpenAPI์˜ ์žฅ์ โ€‹

  • ํ™•๋ฆฝ๋œ ํ‘œ์ค€: OpenAPI๋Š” ์ˆ˜์ฒœ ๊ฐœ์˜ ๋„๊ตฌ, ํšŒ์‚ฌ ๋ฐ ์ปค๋ฎค๋‹ˆํ‹ฐ์˜ ์ง€์›์„ ๋ฐ›๋Š” ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ๊ฒ€์ฆ๋œ API ํ‘œ์ค€์ž…๋‹ˆ๋‹ค.

  • ์žฌ๋ฐœ๋ช… ํ•„์š” ์—†์Œ: ์ถ”๊ฐ€ ๋ฌธ์„œ๋‚˜ ๊ณ ์œ  ์‚ฌ์–‘์œผ๋กœ ์ธํ•œ ํ˜ผ๋ž€์ด ์—†์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ REST API๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ OpenAPI๋ฅผ ์‚ฌ์šฉ ์ค‘์ธ ๊ฒฝ์šฐ ๋ณ„๋„์˜ ์„ค์ •์ด ํ•„์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

  • ์‰ฌ์šด ํ†ตํ•ฉ ๋ฐ ํ˜ธ์ŠคํŒ…: ๊ณต๊ธ‰์—…์ฒด ์ข…์†์„ฑ์ด๋‚˜ ๋ณต์žกํ•œ ๊ตฌ์„ฑ ์—†์ด ์™ธ๋ถ€ ๋˜๋Š” ๋กœ์ปฌ์— ๋„๊ตฌ ์„œ๋ฒ„๋ฅผ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ๊ฐ•๋ ฅํ•œ ๋ณด์•ˆ ์ดˆ์ : HTTP/REST API๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ๊ตฌ์ถ•๋œ OpenAPI๋Š” HTTPS ๋ฐ ๊ฒ€์ฆ๋œ ์ธ์ฆ ํ‘œ์ค€(OAuth, JWT, API ํ‚ค ๋“ฑ)์„ ํฌํ•จํ•œ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๊ณ  ์•ˆ์ „ํ•œ ํ†ต์‹  ๋ฐฉ๋ฒ•์„ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

  • ๋ฏธ๋ž˜์ง€ํ–ฅ์ ์ด๊ณ  ์•ˆ์ •์ ์ž„: ์„ฑ์ˆ™๋„๊ฐ€ ๋‚ฎ๊ฑฐ๋‚˜ ์‹คํ—˜์ ์ธ ํ”„๋กœํ† ์ฝœ๊ณผ ๋‹ฌ๋ฆฌ, OpenAPI๋Š” ์‹ ๋ขฐ์„ฑ, ์•ˆ์ •์„ฑ ๋ฐ ์žฅ๊ธฐ์ ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ์ง€์›์„ ์•ฝ์†ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿš€ ๋น ๋ฅธ ์‹œ์ž‘โ€‹

servers/ ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ์ œ๊ณต๋˜๋Š” ์ฐธ์กฐ FastAPI ๊ธฐ๋ฐ˜ ๊ตฌํ˜„์œผ๋กœ ๋น ๋ฅด๊ฒŒ ์‹œ์ž‘ํ•˜์„ธ์š”. (์ด ์˜ˆ์ œ๋ฅผ ํ•„์š”์— ๋”ฐ๋ผ ์„ ํ˜ธํ•˜๋Š” ์Šคํƒ์œผ๋กœ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ: ์‚ฌ์šฉ FastAPI, FastOpenAPI ๋˜๋Š” ๊ธฐํƒ€ OpenAPI ํ˜ธํ™˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ):

git clone https://github.com/open-webui/openapi-servers
cd openapi-servers

# ์˜ˆ: ํŠน์ • ์„œ๋ฒ„ filesystem์˜ ์ข…์†์„ฑ ์„ค์น˜
cd servers/filesystem
pip install -r requirements.txt
uvicorn main:app --host 0.0.0.0 --reload

์ด์ œ OpenAPI ํ˜ธํ™˜ ํด๋ผ์ด์–ธํŠธ๋‚˜ AI ์—์ด์ „ํŠธ๋ฅผ ๋กœ์ปฌ ๋˜๋Š” ๊ณต๊ฐœ์ ์œผ๋กœ ๋ฐฐํฌ๋œ URL์— ๊ฐ„๋‹จํžˆ ์—ฐ๊ฒฐํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ตฌ์„ฑ ๋ฌธ์ œ๋‚˜ ๋ณต์žกํ•œ ์ „์†ก์€ ํ•„์š” ์—†์Šต๋‹ˆ๋‹ค.

๐ŸŒฑ Open WebUI ์ปค๋ฎค๋‹ˆํ‹ฐโ€‹

  • ์ผ๋ฐ˜ ํ† ๋ก , ๊ธฐ์ˆ  ๊ต๋ฅ˜ ๋ฐ ๊ณต์ง€ ์‚ฌํ•ญ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ ํ† ๋ก  ํŽ˜์ด์ง€๋ฅผ ๋ฐฉ๋ฌธํ•˜์„ธ์š”.
  • ์•„์ด๋””์–ด๋‚˜ ํ”ผ๋“œ๋ฐฑ์ด ์žˆ๋‚˜์š”? ๋ฌธ์ œ๋ฅผ ์—ด์–ด์ฃผ์„ธ์š”!