OpenViking์ ๋ฉ๋ชจ๋ฆฌ, ๋ฆฌ์์ค, ์คํฌ์ ํ๊บผ๋ฒ์ ๊ด๋ฆฌํ๋ ์์ด์ ํธ์ฉ ์ปจํ ์คํธ DB๋ค. ๋ฒกํฐDB ํ๋ ๋ ๋ถ์ด๋ ๋๋๋ณด๋ค, ์์ด์ ํธ๊ฐ ์ฝ๋ ์ฌ๋ฃ๋ฅผ ํ์ผ์์คํ ์ฒ๋ผ ๊ณ์ธต์ ์ผ๋ก ๊ด๋ฆฌํ์๋ ์ ์์ ๊ฐ๊น๋ค.
์ด ๋ ํฌ๋ 4์ ยท โญ +10.2K๋ก ํ์๋ ํ๋ก์ ํธ๋ค. ๋ณ ์ซ์๋ง ๋ณด๋ฉด ์ ํ์ฒ๋ผ ๋ณด์ผ ์ ์์ง๋ง, ์ค์ ๋ก๋ ๊ฐ๋ฐ์๋ค์ด ์ง๊ธ ์ด๋์ ์๊ฐ์ ์ฐ๊ณ ์๋์ง๋ฅผ ๊ฝค ์์งํ๊ฒ ๋๋ฌ๋ธ๋ค. ์์ด์ ํธ ํ๋ก์ ํธ๊ฐ ์ปค์ง์๋ก ์ ์ผ ๋จผ์ ํฐ์ง๋ ๋ฌธ์ ๊ฐ ์ปจํ ์คํธ๋ค. ๋ฉ๋ชจ๋ฆฌ๋ ํ์ชฝ, ๋ฌธ์๋ ํ์ชฝ, ์คํฌ์ ๋ ๋ค๋ฅธ ๊ณณ์ ํฉ์ด์ ธ ์์ผ๋ฉด ๋๋ฒ๊น ์ด ์ด๋ ต๋ค. OpenViking์ ์ด ํฉ์ด์ง ์ฌ๋ฃ๋ฅผ ํ์ผ์์คํ ํจ๋ฌ๋ค์์ผ๋ก ๋ฌถ์ด ๋ณด์ฌ์ฃผ๊ธฐ ๋๋ฌธ์, โ์์ด์ ํธ์ ๋๋ฅผ ๊ด๋ฆฌํ๋คโ๋ ๊ฐ๊ฐ์ ์ง๊ด์ ์ผ๋ก ์ค๋ค.
flowchart LR A[๋ฌธ์ ] --> B[openviking] B --> C[์ค์น] C --> D[์ต์ ์คํ] D --> E[์ ๋ฌด ์ ์ฉ ํ๋จ]
์น ํ ํ์ํ ์นํธ์ํธ
- ์ด ๋ ํฌ์ ํ ์ค ํค์๋๋
openviking๋ค.- ์ด๋ฒ ๋ณด๊ฐ์์๋ ์ค์น์ ์ฌ์ฉ ์์๋ฅผ ๊ณต์ README ๊ธฐ์ค์ผ๋ก ๋ ์ด์ดํ๊ฒ ์ ๋ฆฌํ๋ค.
- ์ฝ์ ๋๋
์ ์ ์กฐ๊ฑด โ ์ค์น โ ์ฒซ ์คํ โ ๊ฒ์ฆ์์๋ก ๋ณด๋ฉด ๋๋ค.- โ๋๋จํด ๋ณด์ธ๋คโ๋ณด๋ค โ๋ด ์ ๋ฌด์์ ๋ฐ๋ณต ๋น์ฉ์ ์ค์ด๋๊ฐโ๋ฅผ ๋จผ์ ๋ณธ๋ค.
์ด ๋ ํฌ๋ฅผ ํ ์ค๋ก ๋ณด๋ฉด
OpenViking์ ๋ฉ๋ชจ๋ฆฌ, ๋ฆฌ์์ค, ์คํฌ์ ํ๊บผ๋ฒ์ ๊ด๋ฆฌํ๋ ์์ด์ ํธ์ฉ ์ปจํ ์คํธ DB๋ค. ๋ฒกํฐDB ํ๋ ๋ ๋ถ์ด๋ ๋๋๋ณด๋ค, ์์ด์ ํธ๊ฐ ์ฝ๋ ์ฌ๋ฃ๋ฅผ ํ์ผ์์คํ ์ฒ๋ผ ๊ณ์ธต์ ์ผ๋ก ๊ด๋ฆฌํ์๋ ์ ์์ ๊ฐ๊น๋ค.
์ ์ง๊ธ ์ด ๋ ํฌ๊ฐ ๋จ๋๊ฐ
์์ด์ ํธ ํ๋ก์ ํธ๊ฐ ์ปค์ง์๋ก ์ ์ผ ๋จผ์ ํฐ์ง๋ ๋ฌธ์ ๊ฐ ์ปจํ ์คํธ๋ค. ๋ฉ๋ชจ๋ฆฌ๋ ํ์ชฝ, ๋ฌธ์๋ ํ์ชฝ, ์คํฌ์ ๋ ๋ค๋ฅธ ๊ณณ์ ํฉ์ด์ ธ ์์ผ๋ฉด ๋๋ฒ๊น ์ด ์ด๋ ต๋ค. OpenViking์ ์ด ํฉ์ด์ง ์ฌ๋ฃ๋ฅผ ํ์ผ์์คํ ํจ๋ฌ๋ค์์ผ๋ก ๋ฌถ์ด ๋ณด์ฌ์ฃผ๊ธฐ ๋๋ฌธ์, โ์์ด์ ํธ์ ๋๋ฅผ ๊ด๋ฆฌํ๋คโ๋ ๊ฐ๊ฐ์ ์ง๊ด์ ์ผ๋ก ์ค๋ค.
๋ ํฌ ์์์ ๋จผ์ ๋ณผ ๊ฒ
- L0/L1/L2 ๊ณ์ธต ๋ก๋ฉ ๊ตฌ์กฐ๋ก ํ์ํ ๋ฌธ๋งฅ๋ง ๋จ๊ณ์ ์ผ๋ก ๋ถ๋ฌ์ค๋ ๋ฐฉ์
- ๋ฉ๋ชจ๋ฆฌยท๋ฆฌ์์คยท์คํฌ์ ํตํฉ ๊ด๋ฆฌํ๋ ํ์ผ์์คํ ํ ์ธํฐํ์ด์ค
- ๊ฒ์ ๊ฒฝ๋ก๋ฅผ ์๊ฐํํด ์ ์ด ๋ฌธ๋งฅ์ด ์ ํ๋๋์ง ์ถ์ ํ๋ ๊ด์ฐฐ์ฑ ๊ธฐ๋ฅ
์ค์น ์ ์ ํ์ธํ ๊ฒ
- Python 3.10+
- Go 1.22+ (AGFS ๋น๋์ฉ)
- GCC 9+ ๋๋ Clang 11+
- Embedding ๋ชจ๋ธ๊ณผ VLM ๋ชจ๋ธ์ ์ธ API ํค
์ค์น ๋ฐฉ๋ฒ
๊ณต์ ํ์ธ ๋งํฌ
- GitHub README: https://github.com/volcengine/OpenViking
- ๊ณต์ ๋ฌธ์: https://www.openviking.ai/docs
- ์๋ฒ/๋ฐฐํฌ ๊ฐ์ด๋ ๋งํฌ๋ README์ quickstart server ์น์ ์ ์ฐ๊ฒฐ๋ผ ์๋ค.
ํจํค์ง์ CLI ์ค์น
์๋ฒ/๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ณธ์ฒด๋ Python ํจํค์ง๋ก ์ค์นํ๋ค.
pip install openviking --upgrade --force-reinstallCLI๋ Rust ๋ฒ์ ์ด ๋ณ๋๋ก ์๋ค.
curl -fsSL https://raw.githubusercontent.com/volcengine/OpenViking/main/crates/ov_cli/install.sh | bash๋๋ ์์ค์์ ์ง์ ์ค์นํ ์ ์๋ค.
cargo install --git https://github.com/volcengine/OpenViking ov_cli์ค์ ํ์ผ ๋ง๋ค๊ธฐ
OpenViking์ ์๋ฒ ์ค์ (ov.conf)๊ณผ CLI ์ค์ (ovcli.conf)์ ๋จผ์ ์ก์์ผ ํ๋ค.
์๋ฒ ์ค์ ํ์ผ ์์ ๊ฒฝ๋ก๋ ~/.openviking/ov.conf๋ค.
{
"storage": { "workspace": "/home/your-name/openviking_workspace" },
"embedding": {
"dense": {
"api_base": "<api-endpoint>",
"api_key": "<your-api-key>",
"provider": "<provider-type>",
"dimension": 1024,
"model": "<embedding-model>"
}
},
"vlm": {
"api_base": "<api-endpoint>",
"api_key": "<your-api-key>",
"provider": "<provider-type>",
"model": "<vlm-model>"
}
}๊ทธ๋ค์ ํ๊ฒฝ๋ณ์๋ฅผ ์ฐ๊ฒฐํ๋ค.
export OPENVIKING_CONFIG_FILE=~/.openviking/ov.confCLI๋ ๋ณดํต ์๋์ฒ๋ผ ~/.openviking/ovcli.conf๋ฅผ ์ด๋ค.
{
"url": "http://localhost:1933",
"timeout": 60.0,
"output": "table"
}export OPENVIKING_CLI_CONFIG_FILE=~/.openviking/ovcli.conf์ฒซ ์คํ
README์ ์ฒซ ์์ ๋ ์๋ ์์๋ค.
openviking-server๋ค๋ฅธ ํฐ๋ฏธ๋์์ CLI๋ฅผ ๋ถ์ธ๋ค.
ov status
ov add-resource https://github.com/volcengine/OpenViking
ov ls viking://resources/
ov tree viking://resources/volcengine -L 2
ov find "what is openviking"
ov grep "openviking" --uri viking://resources/volcengine/OpenViking/docs/zhBot ๊ธฐ๋ฅ๊น์ง ๋ณด๋ ค๋ฉด ์๋์ฒ๋ผ ํ์ฅ ์ค์น ํ ์คํํ ์ ์๋ค.
pip install "openviking[bot]"
openviking-server --with-bot
ov chat์ฌ์ฉ ๋ฐฉ๋ฒ
- ๋จผ์ workspace๋ฅผ ๋น์์ง ํ
์คํธ ํด๋๋ก ์ ํ๊ณ , ๋ฆฌ์์ค 1๊ฐ๋ง
ov add-resource๋ก ๋ฃ๋๋ค. - ๊ทธ๋ค์
ov ls,ov tree,ov find,ov grep์์ผ๋ก ํ์ผ์์คํ ํ ํ์ ํ๋ฆ์ ์ฒดํํ๋ค. - ์ฌ๊ธฐ์ ์ค์ํ ๊ฑด ๊ฒ์ ๊ฒฐ๊ณผ๋ง์ด ์๋๋ผ ๊ฒฝ๋ก ๊ตฌ์กฐ๊ฐ ์ดํด๋๋์ง๋ค. OpenViking์ ์ฅ์ ์ ์ด ํธ๋์ ๋์ ๋ณด์ด๊ฒ ๋ง๋ ๋ค๋ ์ ์ด๋ค.
- ๋ฆฌ์์ค ํ์์ด ์์ ๋๋ฉด ๊ทธ๋ค์์์ผ ์ค์ ์์ด์ ํธ๋ bot ๊ธฐ๋ฅ๊ณผ ์ฐ๊ฒฐํ๋ค.
README ๊ธฐ์ค ๊ฐ์ฅ ์์ ํ ์ฒซ ์คํ์ ์๋ฒ ํ ๋ + ๋ฆฌ์์ค ํ ๊ฐ + ๊ฒ์ 4์ข
์ด๋ค. ํ ๋ฒ์ ๋ฉ๋ชจ๋ฆฌ, bot, ๋๊ท๋ชจ ๋ฌธ์์
๊น์ง ์ฌ๋ฆฌ๊ธฐ๋ณด๋ค ov add-resource โ ov ls โ ov find โ ov grep๋ง ๋จผ์ ํด๋ณด๋ ํธ์ด ๊ตฌ์กฐ๋ฅผ ์ดํดํ๊ธฐ ์ฝ๋ค.
์ด๋์ ๋ฐ๋ก ์จ๋จน์ ์ ์๋
์ฌ๋ก A. ์ฅ๊ธฐ ์คํ ์์ด์ ํธ
ํ๋ฃจ ์ข ์ผ ๋ฌธ์๋ฅผ ์ฝ๊ณ ์์ ํ๋ ์์ด์ ํธ๋ ์ธ์ ์ด ๊ธธ์ด์ง์๋ก ๋ฌธ๋งฅ์ด ๋น๋ํด์ง๋ค. OpenViking ๊ฐ์ ๊ณ์ธตํ ์ปจํ ์คํธ ์ ์ฅ์๋ฅผ ์ฐ๋ฉด ํ์ ์๋ ์ ๋ณด๋ฅผ ๋ ์ฌ๋ฆฌ๊ณ , ์์ฃผ ์ฐ๋ ์ฌ๋ฃ๋ฅผ ๊ตฌ์กฐํํด ์ฌํ์ฉํ ์ ์๋ค.
์ฌ๋ก B. ํ ์ง์๋ฒ ์ด์ค ์ด์
ํ ๊ท์น, ์ ํ ์ค๋ช , ์ด์ ๊ธฐ๋ก, ์คํฌ ํ์ผ์ด ์ ๊ฐ๊ฐ ๋๊ณ ์๋ค๋ฉด ํ์ผ์์คํ ์ฒ๋ผ ๋ฌถ์ด๋๋ ๋ฐฉ์์ด ๋๋ฒ๊น ์ ์ ๋ฆฌํ๋ค. โ์ ์ด๋ฐ ๋ต์ ํ์ง?โ๋ฅผ ์ถ์ ํ ๋ ๊ฒฝ๋ก๋ฅผ ๋ณด๋ ๊ฒ์ด ํฐ ๋์์ด ๋๋ค.
์ฒ์ ํด๋ณผ ์ต์ ์คํ
- Python ํจํค์ง์ CLI๋ฅผ ์ค์นํ๋ค.
ov.conf์ovcli.conf๋ฅผ ์ต์ ์ค์ ์ผ๋ก ๋ง๋ ๋ค.openviking-server๋ฅผ ๋์ฐ๊ณov status๊ฐ ์๋ตํ๋์ง ๋ณธ๋ค.- GitHub ๋ ํฌ ํ๋๋ฅผ ๋ฆฌ์์ค๋ก ์ถ๊ฐํด ๊ฒ์/ํธ๋ฆฌ/grep ํ๋ฆ์ ๊ฒ์ฆํ๋ค.
๊ฒ์ฆ ํฌ์ธํธ๋ ๊ฐ๋จํ๋ค. ์ ์ฉ ์ ํ๋ฅผ ๋น๊ตํ ๋๋ ๋ชจ๋ธ ์ฒด๊ฐ๋ณด๋ค ๋ถํ์ํ ๋ฌธ๋งฅ ๋ก๋ ๊ฐ์, ๊ฒ์ ์คํจ ๊ฐ์, ๋๋ฒ๊น
์๋๋ฅผ ๋ด์ผ ํ๋ค.
๋ณผ ๋ ์ฃผ์ํ ์
- ์ค์ ํญ๋ชฉ์ด ์ ๋ฒ ๋ง์ ์ฒ์๋ถํฐ ํ์ธํ ํ๋ฉด ํผ๊ณคํ๋ค.
- ์ข์ ๊ตฌ์กฐ๊ฐ ์์ด๋ ๋ฃ๋ ๋ฌธ์ ํ์ง์ด ๋ฎ์ผ๋ฉด ๊ฒฐ๊ณผ๋ ๋๋น ์ง๋ค.
- ๋ชจ๋ธยท์๋ฒ ๋ฉยท์คํ ๋ฆฌ์ง ์ค์ ์ด ๋์์ ์ฝํ ์์ด PoC ๋ฒ์๋ฅผ ์๊ฒ ์ก๋ ํธ์ด ์ข๋ค.
๋ค์ ์ฝ๊ธฐ
์ด ๊ธ์ AI๋ฅผ ํ์ฉํด ์ด์์ ์ ๋ฆฌํ๊ณ , GitHub README์ ๊ณต์ ๋งํฌ๋ฅผ ๋ค์ ํ์ธํด ์ค๋ฌด ์ ์ฉ ๊ด์ ์ผ๋ก ํ์ด์ผ๋ค.