File Catalogs 33 KO - teamswyg/laya-tools GitHub Wiki

์‹ค์ œ ์ˆ˜์ • ์ „ ํŒŒ์ผ ๋ชฉ๋ก 2,400๊ฐœ โ€” ์‹คํ—˜ 33

๊ณ ์ •ํ•œ 2,400๊ฐœ ์ž‘์—… ๋ชจ๋‘์˜ ์ˆ˜์ • ์ „ ํŒŒ์ผ ๋ชฉ๋ก์„ ํ™•๋ณดํ–ˆ๋‹ค. ํฐ ์ €์žฅ์†Œ๋ฅผ ๋นผ๊ฑฐ๋‚˜ ํŒŒ์ผ์„ ์ž˜๋ผ๋‚ด์ง€ ์•Š์•˜๋‹ค. ์ •๋‹ต ๊ฒฝ๋กœ์™€ ๊ฒ€์ƒ‰ ์‹คํ–‰๊ธฐ๋„ ๋ณ„๋„๋กœ ์ค€๋น„ํ–ˆ์ง€๋งŒ, ์ด ๋ฌธ์„œ์˜ ๊ฒฐ๊ณผ๋Š” ํ›„๋ณด ํ™•๋ณด์ด๋ฉฐ ๊ฒ€์ƒ‰ ํ’ˆ์งˆ์ด๋‚˜ LLM ์ ˆ๊ฐ ํšจ๊ณผ๊ฐ€ ์•„๋‹ˆ๋‹ค.

์ „์ฒด ๊ฒฐ๊ณผ

ํ•ญ๋ชฉ ๊ฒฐ๊ณผ
์ „์ฒด / ํ™•๋ณด / ๋ฏธํ™•๋ณด ๋ฒ„์ „ 2,400 / 2,400 / 0
์ผ๋ฐ˜ ํŒŒ์ผ ์ฐธ์กฐ / ์‹ฌ๋ณผ๋ฆญ ๋งํฌ ์ฐธ์กฐ 8,039,516 / 5,300
submodule ์ฐธ์กฐ 743
๋ฒ„์ „๋‹น ์ตœ๋Œ€ ํŒŒ์ผ ํ›„๋ณด 30,223
๋ฒ„์ „๋‹น ์ตœ๋Œ€ ํŒŒ์ผ ๊ฒฝ๋กœ ๋ฐ”์ดํŠธ ํ•ฉ๊ณ„ 2,838,643
๊ธฐ์กด 4,096๊ฐœ ํ›„๋ณด ํ•œ๋„ ์ดˆ๊ณผ ๋ฒ„์ „ 1,008
๊ธฐ์กด 2MiB ํ…์ŠคํŠธ ํ•œ๋„ ์ดˆ๊ณผ ๋ฒ„์ „ 5

ํŒŒ์ผ ์ฐธ์กฐ ํ•ฉ๊ณ„๋Š” ์—ฌ๋Ÿฌ ๊ณผ๊ฑฐ ๋ฒ„์ „์— ๋ฐ˜๋ณตํ•ด์„œ ๋“ฑ์žฅํ•˜๋Š” ํŒŒ์ผ์„ ํฌํ•จํ•œ๋‹ค. ๊ณ ์œ  ํŒŒ์ผ 800๋งŒ ๊ฐœ๋ฅผ ํ™•๋ณดํ–ˆ๋‹ค๋Š” ๋œป์ด ์•„๋‹ˆ๋‹ค. ์‹ฌ๋ณผ๋ฆญ ๋งํฌ๋Š” ๊ฒฝ๋กœ๋งŒ ์œ ์ง€ํ•˜๋ฉฐ submodule ๋Œ€์ƒ ์ €์žฅ์†Œ๋Š” ํƒ์ƒ‰ํ•˜์ง€ ์•Š๋Š”๋‹ค. AllSelectedCatalogsAvailable=true๋Š” ์„ ํƒํ•œ ์ €์žฅ์†Œ ๋‚ด๋ถ€์˜ ์™„์ „ํ•œ tree ๋ชฉ๋ก์ด๋ผ๋Š” ๋ฒ”์œ„๋‹ค. ์ €์žฅ์†Œ๋ณ„ ์ง‘๊ณ„.

์‹คํ–‰๊ณผ ๋ณต๊ตฌ

์›๋ž˜ ๊ณ„ํš์„ ๊ณ ์ •ํ•˜๊ณ  ๊ฐ™์€ 2,400๊ฐœ ์„ ํƒ ํ•ด์‹œ๋ฅผ ์žฌ๊ณ„์‚ฐํ–ˆ๋‹ค. ์ˆ˜์ • ์ „ root tree ID์— ๊ณ ์ •๋œ ๋ชฉ๋ก๋งŒ ์ฝ์œผ๋ฉฐ ์†Œ์Šค ๋ณธ๋ฌธ์„ ๋‚ด๋ ค๋ฐ›์ง€ ์•Š๋Š”๋‹ค. ์™„์ „์„ฑยทIDยท์ข…๋ฅ˜ยท๊ฒฝ๋กœยท์ค‘๋ณตยท๋ถ€๋ชจ ๊ด€๊ณ„๋ฅผ ๊ฒ€์ฆํ•œ ๋ชฉ๋ก๋งŒ ์••์ถ• ์บ์‹œ๋กœ ์›์ž์ ์œผ๋กœ ์ €์žฅํ•œ๋‹ค.

์ฒซ ์‹คํ–‰์€ 2,000ํšŒ ์š”์ฒญ ์˜ˆ์‚ฐ์—์„œ 1,995๊ฐœ ํ™•๋ณด๋กœ ์ข…๋ฃŒํ–ˆ๋‹ค. ์žฌ๊ฐœ ์‹คํ–‰์€ 405ํšŒ ์ƒˆ ์š”์ฒญ์œผ๋กœ 2,395๊ฐœ์— ๋„๋‹ฌํ–ˆ๋‹ค. ๋‚จ์€ Babel 5๊ฐœ๋Š” ๋‹จ์ผ ์‘๋‹ต์˜ ๋กœ์ปฌ 8MiB ์ƒํ•œ์„ ์ดˆ๊ณผํ–ˆ๋‹ค. 5ํšŒ ์ง„๋‹จ ์š”์ฒญ์œผ๋กœ ์›์ธ์„ ํ™•์ธํ•œ ๋’ค, ์‚ฌ์ „ ๊ณ ์ •ํ•œ ํ•˜์œ„ ํŠธ๋ฆฌ ๋ณต๊ตฌ ๊ณ„ํš์— ๋”ฐ๋ผ 763ํšŒ ์š”์ฒญ์œผ๋กœ ๋ชจ๋‘ ๋ณต๊ตฌํ–ˆ๋‹ค. ๋ณต๊ตฌ ๋ฐฉ์‹๊ณผ ์กฐ๊ฑด.

ํฐ ์‘๋‹ต์„ ์ผ๋ถ€๋งŒ ๋ฐ›์•„ ์„ฑ๊ณต์œผ๋กœ ํ‘œ์‹œํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋ชจ๋“  ์ž์‹์ด ๊ฒ€์ฆ๋œ ๊ฒฝ์šฐ์—๋งŒ ์™„์„ฑ๋œ root๋ฅผ ์ €์žฅํ•œ๋‹ค. ๋„คํŠธ์›Œํฌ 8MiB, ๋น„์žฌ๊ท€ ๊ฒ€์ฆ 2MiB, ์ „์ฒด 100,000ํ•ญ๋ชฉยท๊ฒฝ๋กœ ํ•ฉ๊ณ„ 16MiB๋ฅผ ์œ ์ง€ํ•˜๊ณ  ์กฐ๋ฆฝ๋œ ์บ์‹œ์˜ ํ•ด์ œ ํ›„ ์ƒํ•œ์€ 32MiB๋กœ ๊ตฌ๋ถ„ํ–ˆ๋‹ค. ์ผ๋ฐ˜ ์˜ค๋ฅ˜๋‚˜ ์†์ƒ๋œ ์บ์‹œ๋ฅผ ๋ณต๊ตฌ ๊ฒฝ๋กœ๋กœ ์ˆจ๊ธฐ์ง€ ์•Š๋Š”๋‹ค.

# ์›์ฒœ projection๊ณผ ๊ณ ์ • root ์บ์‹œ๋ฅผ ๋จผ์ € ์ค€๋น„ํ•œ๋‹ค.
go run ./cmd/riido-filecatalog --request-budget 2000 --out .cache/catalog-pass-1
# ์บ์‹œ๋ฅผ ์œ ์ง€ํ•˜๋ฉด์„œ ์ƒˆ ์ถœ๋ ฅ ๋””๋ ‰ํ„ฐ๋ฆฌ๋กœ ๋‚จ์€ ํ•ญ๋ชฉ์„ ์ด์–ด ๋ฐ›๋Š”๋‹ค.
go run ./cmd/riido-filecatalog --repair-subtrees --request-budget 1500 --out .cache/catalog-pass-2
# ๋„คํŠธ์›Œํฌ ์—†์ด ์™„์„ฑ๋œ ์บ์‹œ๋ฅผ ๊ฒ€์ฆํ•œ๋‹ค.
go run ./cmd/riido-filecatalog --offline --out .cache/catalog-replay

GitHub CLI ์ธ์ฆ๊ณผ API ์ž”์—ฌ๋Ÿ‰์„ ํ™•์ธํ•˜๊ณ  ์š”์ฒญ ์˜ˆ์‚ฐ์„ ์กฐ์ ˆํ•œ๋‹ค. ์ถœ๋ ฅ ๋””๋ ‰ํ„ฐ๋ฆฌ๋Š” ์ƒˆ๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค. ์›์ฒœ์€ ์‹คํ—˜ 28, ๊ณ ์ • ์„ ํƒ์€ ์‹คํ—˜ 29๋ฅผ ๋”ฐ๋ฅธ๋‹ค. failures.json๊ณผ ์บ์‹œ๋Š” ์›์ฒœ ์‹๋ณ„์žยท๋กœ์ปฌ ์˜ค๋ฅ˜ ๋“ฑ์„ ํฌํ•จํ•˜๋ฏ€๋กœ Git/HF์— ์˜ฌ๋ฆฌ์ง€ ์•Š๋Š”๋‹ค.

ํ•จ๊ป˜ ์ค€๋น„ํ•œ ํ‰๊ฐ€ ๊ฒฝ๋กœ

  • ์ „์ฒด ํ›„๋ณด์šฉ Go ๊ฒ€์ƒ‰๊ณผ ํ”„๋กœํŒŒ์ผ ๊ฐœ์„ : ์ตœ๋Œ€ 100,000๊ฐœ ํŒŒ์ผ, ์ „์ฒด BM25 ํ†ต๊ณ„, ํ›„๋ณด๋ฅผ ์žƒ์ง€ ์•Š๋Š” baseline-first ๋ณ‘ํ•ฉ. ์ž‘์€ API์˜ ํ•œ๋„๋Š” ์œ ์ง€ํ•œ๋‹ค.
  • ์ •๋‹ต ๋ถ„๋ฆฌ: 2,398๊ฐœ ์ž‘์—…์— ๊ธฐ์กด ํŒŒ์ผ ๊ฒฝ๋กœ๊ฐ€ ์žˆ๊ณ , 2๊ฐœ๋Š” ์ƒˆ ํŒŒ์ผ๋งŒ ์ถ”๊ฐ€ํ•œ๋‹ค. ์ •๋‹ต์€ ๊ฒ€์ƒ‰ ์ž…๋ ฅยทํ›„๋ณด ์ƒ์„ฑยทํ•™์Šต์— ์“ฐ์ง€ ์•Š๋Š”๋‹ค.

๊ณต๊ฐœ๋˜๋Š” ๊ฒƒ์€ ์ž์ฒด ์ฝ”๋“œยท๊ณ„ํšยท์ง‘๊ณ„๋ฟ์ด๋‹ค. ์ƒˆ ํ•™์Šต, ๋ชจ๋ธ ๋ฐฐํฌ, ๊ธฐ๋ณธ ํ™œ์„ฑํ™”๋Š” ์—†์œผ๋ฉฐ ๊ธฐ์กด ์ตœ์ข… ์˜ˆ๋น„ ์ž๋ฃŒ๋„ ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค. ๋‹ค์Œ ์‹คํ—˜์€ ์‹ค์ œ ํŒŒ์ผ ๋ชฉ๋ก์—์„œ ๊ณ ์ •๋œ ๊ฒ€์ƒ‰ ์ •์ฑ…์„ ๋น„๊ตํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

๊ฒ€์ฆ๊ณผ ์ž์›

์ˆ˜์ง‘ ๊ฒฐ๊ณผ์™€ ์ผ๋ฐ˜ ์˜คํ”„๋ผ์ธ ์žฌ์‹คํ–‰, ์‹ค์ œ 2,400๊ฐœ race ์‹คํ–‰์˜ ๊ณต๊ฐœ ์ง‘๊ณ„ยท๋น„๊ณต๊ฐœ ์‹คํŒจ ๋ชฉ๋ก์ด ๋ชจ๋‘ ๋ฐ”์ดํŠธ ์ผ์น˜ํ–ˆ๋‹ค. ์ „์ฒด 2,400๊ฐœ ๊ฐ€์šฉ์„ฑ๊ณผ ์ €์žฅ์†Œ๋ณ„ ํ•ฉ๊ณ„ ๋ณด์กด๋„ ํ™•์ธํ–ˆ๋‹ค. ์ „์ฒด Go race/vetยทํ˜•์‹ยทredacted ๊ฒ€์‚ฌ ๋ฐ Linux/macOS CI๋ฅผ ๊ฑฐ์ณ ๋ณ‘ํ•ฉํ•œ๋‹ค.

๋™์‹œ race ๊ฒ€์‚ฌ๊ฐ€ ๋๋‚œ ๋’ค ๋ณ„๋„๋กœ ์ธก์ •ํ•œ M4 Pro CPU ์บ์‹œ ๊ฒ€์ฆ 1ํšŒ๋Š” wall 12.16์ดˆ/user 12.62์ดˆ/sys 0.61์ดˆ, ์ตœ๋Œ€ RSS 46,333,952๋ฐ”์ดํŠธ(์•ฝ 44.2MiB)์˜€๋‹ค. ์ตœ์ดˆ ๋„คํŠธ์›Œํฌ ์ˆ˜์ง‘ยท๊ฒ€์ƒ‰ ์ธ๋ฑ์Šคยท๋ชจ๋ธยทGPU ๋น„์šฉ์„ ๋œปํ•˜์ง€ ์•Š๋Š”๋‹ค.

์••์ถ• recursive/์กฐ๋ฆฝ ์บ์‹œ๋Š” 3,143๊ฐœ ๊ฐ์ฒดยท320,112,467๋ฐ”์ดํŠธ, ๋น„์žฌ๊ท€ tree ์บ์‹œ๋Š” 10๊ฐœยท223,221๋ฐ”์ดํŠธ๋‹ค. ํ•ฉ๊ณ„ 320,335,688๋ฐ”์ดํŠธ(์•ฝ 305.5MiB)๋Š” ์ด ๋‘ ์บ์‹œ์˜ ๋…ผ๋ฆฌ์  ํŒŒ์ผ ํฌ๊ธฐ๋งŒ ํ•ฉํ•œ ๊ฐ’์ด๋ฉฐ, root ์บ์‹œยท์›์ฒœ Parquetยท๋ชจ๋ธ ๋“ฑ ์ „์ฒด ์ž‘์—… ๊ณต๊ฐ„ ์šฉ๋Ÿ‰์€ ์•„๋‹ˆ๋‹ค. ํ•˜์œ„ tree๊ฐ€ ๊ณต์œ ๋˜๋ฏ€๋กœ ์บ์‹œ ๊ฐ์ฒด ์ˆ˜์™€ ํ‰๊ฐ€ ์ž‘์—… ์ˆ˜๋Š” ๋‹ค๋ฅด๋‹ค.

Follow-up / ํ›„์†: Completed evaluation 34 / ์‹ค์ œ ํ‰๊ฐ€ ์™„๋ฃŒ.