Query Coverage 24 KO - teamswyg/laya-tools GitHub Wiki

๊ธฐ์กด ์ธ๋ฑ์Šค๋กœ ์งˆ์˜ ๋‹จ์–ด ์ผ์น˜์œจ ๊ณ„์‚ฐ 24

์ถ”๊ฐ€ ์ธ๋ฑ์Šค ์—†์ด ๋‚ฎ์€ ๋น„์šฉ์œผ๋กœ ์ƒˆ ํŠน์ง•์„ ๊ณ„์‚ฐํ–ˆ์ง€๋งŒ, ๋‹จ๋… ํŠน์ง•์˜ ์†ํ•ด/์ด๋“ ๊ตฌ๋ถ„์€ ๊ฐœ์„ ๋˜์ง€ ์•Š์•˜๋‹ค. ๋„ค ํŠน์ง•์˜ ์ €์žฅ์†Œ ํ‰๊ท  AUC๋Š” 0.4709โ€“0.4933์ด๋‹ค. ์ƒˆ ๋ชจ๋ธยท์ž„๊ณ„๊ฐ’ยท์ž๋™ ๋ผ์šฐํŒ…์€ ์ ์šฉํ•˜์ง€ ์•Š์•˜๋‹ค.

๊ตฌํ˜„ํ•œ ๊ธฐ๋Šฅ

hintsearch.Index.QueryCoverage(query, ids)๋Š” ๊ธฐ์กด BM25 ์ธ๋ฑ์Šค์—์„œ ์„ ํƒํ•œ ์ตœ๋Œ€ 20๊ฐœ ํ›„๋ณด๊ฐ€ ์งˆ์˜์˜ ๊ณ ์œ  ๋‹จ์–ด๋ฅผ ์–ผ๋งˆ๋‚˜ ํฌํ•จํ•˜๋Š”์ง€ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์›๋ณธ ์ฝ”๋“œ๋ฅผ ๋‹ค์‹œ ์ฝ์ง€ ์•Š๊ณ , ์ด๋ฏธ ์ •๋ ฌ๋œ ๋‹จ์–ด ๋ชฉ๋ก๊ณผ ๋ฌธ์„œ ๋ฒˆํ˜ธ posting ๋ฐฐ์—ด์—์„œ ์ด์ง„ ํƒ์ƒ‰ํ•œ๋‹ค. ๊ฒ€์ƒ‰ ๋ณด์กฐ ์ธ๋ฑ์Šค๋‚˜ ๋ชจ๋ธ์€ ํ•„์š” ์—†๋‹ค.

ํ† ํฐํ™”๋Š” ๊ธฐ์กด BM25์™€ ๊ฐ™๋‹ค. Unicode ๋ฌธ์žยท์ˆซ์ž๋ฅผ ๋‹จ์–ด๋กœ ๋ณด๊ณ  ์†Œ๋ฌธ์ž๋กœ ๋ฐ”๊พธ๋ฉฐ, ์ค‘๋ณต ์งˆ์˜ ๋‹จ์–ด๋Š” ํ•œ ๋ฒˆ๋งŒ ์„ผ๋‹ค. ๋ฌธ์žฅ๋ถ€ํ˜ธ๋งŒ ์žˆ๋Š” ์งˆ์˜๋Š” 0๊ฐœ ๋‹จ์–ด๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค. ์ž˜๋ชป๋œ ๋ฌธ์„œ ๋ฒˆํ˜ธยท์ค‘๋ณต ๋ฒˆํ˜ธยท20๊ฐœ ์ดˆ๊ณผ ํ›„๋ณดยท๋นˆ ์งˆ์˜ยท8,192๋ฐ”์ดํŠธ ์ดˆ๊ณผ ์งˆ์˜๋Š” ๊ฑฐ๋ถ€ํ•œ๋‹ค. ํ˜ธ์ถœ์ž๊ฐ€ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ๋ฌธ์„œ๋กœ ๋งŒ๋“  ์ธ๋ฑ์Šค์™€ ๊ทธ ์ธ๋ฑ์Šค์˜ ๋ฒˆํ˜ธ๋ฅผ ์ œ๊ณตํ•ด์•ผ ํ•œ๋‹ค.

์ธ๋ฑ์Šค ๊ตฌ์กฐ์— ํ•„๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜์ง€ ์•Š์•˜๋‹ค. ํ›„๋ณด ์นด์šดํ„ฐ์™€ ๊ฒฐ๊ณผ๋Š” ๊ณ ์ • ๋ฐฐ์—ด์ด๋ฉฐ, ์งˆ์˜ ํ† ํฐํ™”์—๋Š” ์ž„์‹œ ํ• ๋‹น์ด ์žˆ๋‹ค. ์ธ๋ฑ์Šค๋Š” ์ฝ๊ธฐ ์ „์šฉ์ด๋ฏ€๋กœ ์—ฌ๋Ÿฌ ํ˜ธ์ถœ์ด ์ž ๊ธˆ ์—†์ด ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ฒ€์ฆ๋œ ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น ์ˆ˜๋ฅผ โ€œ์™„์ „ ๋ฌดํ• ๋‹นโ€์œผ๋กœ ๋ฐ”๊พธ์–ด ํ‘œํ˜„ํ•˜์ง€ ์•Š๋Š”๋‹ค.

์—ฐ๊ตฌ์šฉ ํŠน์ง• ๋„ค ๊ฐœ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

  1. ์ฒซ ํ›„๋ณด๊ฐ€ ํฌํ•จํ•˜๋Š” ๊ณ ์œ  ์งˆ์˜ ๋‹จ์–ด ๋น„์œจ.
  2. ๊ธฐ๋ณธ ๊ฒ€์ƒ‰ ์ƒ์œ„ ์ตœ๋Œ€ 20๊ฐœ ํ›„๋ณด์—์„œ ์ด ๋น„์œจ์˜ ํ‰๊ท .
  3. ๊ฐ™์€ ๋น„์œจ์˜ ๋ชจ์ง‘๋‹จ ํ‘œ์ค€ํŽธ์ฐจ.
  4. ๊ธฐ๋ณธ ์ธ๋ฑ์Šค ์–ดํœ˜ ์ „์ฒด์— ์—†๋Š” ๊ณ ์œ  ์งˆ์˜ ๋‹จ์–ด ๋น„์œจ.

๊ธฐ์กด 12๊ฐœ ํŠน์ง•๊ณผ ์ ์ˆ˜ ๋ถ„ํฌ 4๊ฐœ๋Š” ๊ทธ๋Œ€๋กœ ๋ณด์กดํ–ˆ๋‹ค. ์ƒˆ ํŠน์ง•์„ ๋ณ„๋„ ๋ฐฐ์—ด์— ๋‹ด๊ณ , ๋ณด์กฐ ๊ฒ€์ƒ‰ยท์ •๋‹ต ์ˆœ์œ„ ๊ณ„์‚ฐ ์ „์— ์ถ”์ถœํ•œ๋‹ค. ํ›„๋ณด ๋‹จ์–ด ์ผ์น˜๋Š” ์˜๋ฏธ ์ดํ•ด๋‚˜ ์ •๋‹ต ํ™•๋ฅ ์ด ์•„๋‹ˆ๋‹ค.

2,948๊ฐœ ์งˆ๋ฌธ์—์„œ์˜ ์‹ ํ˜ธ

๊ณ„ํš์„ ์‹คํ–‰ ์ „์— ์ปค๋ฐ‹ํ–ˆ๋‹ค. ๊ธฐ์กด 23๊ณผ ๊ฐ™์ด ํ•™์Šต ์ €์žฅ์†Œ์—์„œ๋งŒ ํŠน์ง•์˜ ๋ฐฉํ–ฅ์„ ์ •ํ•˜๊ณ  ๋‹ค๋ฅธ ์ €์žฅ์†Œ์— ์ ์šฉํ–ˆ๋‹ค. ํ‘œ๋Š” ์„ธ ์ €์žฅ์†Œ์˜ ๋™์ผ ๊ฐ€์ค‘ ํ‰๊ท  AUC๋‹ค. 0.5๋Š” ์ˆœ์œ„ ๊ตฌ๋ณ„์ด ์—†๋Š” ์ˆ˜์ค€์ด๋ฉฐ ์ •ํ™•๋„๊ฐ€ ์•„๋‹ˆ๋‹ค.

์ƒˆ ํŠน์ง• ์†ํ•ด/๋‚˜๋จธ์ง€ ์ด๋“/๋‚˜๋จธ์ง€ ์†ํ•ด/์ด๋“
์ฒซ ํ›„๋ณด ์ผ์น˜์œจ 0.5157 0.5742 0.4933
์ƒ์œ„ 20๊ฐœ ํ‰๊ท  0.5675 0.5696 0.4709
์ƒ์œ„ 20๊ฐœ ํ‘œ์ค€ํŽธ์ฐจ 0.5210 0.5403 0.4745
์งˆ์˜ ๋‹จ์–ด ์–ดํœ˜ ๋ถ€์žฌ ๋น„์œจ 0.4909 0.4932 0.4756

์•ž์˜ ๋‘ ๊ตฌ๋ถ„์€ ๊ฐ๊ฐ ๊ณ ์œ  ์งˆ๋ฌธ 2,948๊ฐœ ์ „์ฒด๋ฅผ ํ•œ ๋ฒˆ์”ฉ ์„ผ๋‹ค. ๋งˆ์ง€๋ง‰์€ ํŽ˜์ด์ง€ ๋™๋ฅ ์„ ์ œ์™ธํ•œ 478๊ฐœ ๋ถ€๋ถ„์ง‘ํ•ฉ์ด๋ฉฐ ๋ณ„๋„์˜ 2,400๊ฐœ ์ตœ์ข… ํ‰๊ฐ€๊ฐ€ ์•„๋‹ˆ๋‹ค. ์†ํ•ด 146๊ฐœ, ์ด๋“ 332๊ฐœ, ๋™๋ฅ  2,470๊ฐœ๋ผ๋Š” ๊ตฌ์„ฑ์€ ์ด์ „๊ณผ ๊ฐ™๋‹ค. ๋™์ ์„ ๋ฌถ์€ APยท์–‘์„ฑ ๋น„์œจยท์ €์žฅ์†Œ๋ณ„ ๊ฒฐ๊ณผ๋„ ๋ชจ๋‘ ๊ณต๊ฐœํ–ˆ๋‹ค.

ํ‰๊ฐ€ ์ ์ˆ˜๊ฐ€ ๋‚ฎ๋‹ค๊ณ  ๊ทธ ๋ฐฉํ–ฅ์„ ๋’ค์ง‘์–ด ๋ณด๊ณ ํ•˜์ง€ ์•Š์•˜๋‹ค. ๋‹จ์ผ ํŠน์ง•์œผ๋กœ๋Š” ์œ ์šฉ์„ฑ์„ ๋ณด์ด์ง€ ๋ชปํ–ˆ์ง€๋งŒ, ๊ธฐ์กด ํŠน์ง•๊ณผ์˜ ์กฐํ•ฉ๊นŒ์ง€ ๋ฌด์˜๋ฏธํ•˜๋‹ค๊ณ  ์ž…์ฆํ•œ ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค. ์‚ฌ์ „ ๊ณ„ํš๋Œ€๋กœ ๋‹ค์Œ์—๋Š” ๋„ค ํŠน์ง•์„ ๋ชจ๋‘ ์ถ”๊ฐ€ํ•œ 16๊ฐœ ๋Œ€ 20๊ฐœ ํŠน์ง• ํ•™์Šต ๋น„๊ต๋ฅผ ๋ณ„๋„ ๊ณ ์ •ํ•ด ์ง„ํ–‰ํ•œ๋‹ค. ํ•™์Šต ๋ชฉํ‘œยท๋ถ„ํ• ยทํ›„๋ณด ์„ ํƒ์„ ํ•จ๊ป˜ ๋ฐ”๊พธ๊ฑฐ๋‚˜, ํ‰๊ฐ€์—์„œ ์ข‹์•„ ๋ณด์ธ ํŠน์ง•๋งŒ ๊ณจ๋ผ ๋„ฃ์ง€ ์•Š๋Š”๋‹ค. ์กฐํ•ฉ ๋น„๊ต๋„ ํšจ๊ณผ๊ฐ€ ์—†๋‹ค๋ฉด ์ด ํŠน์ง• ๊ฒฝ๋กœ๋ฅผ ๊ธฐ๋ณธ ๋ชจ๋ธ์— ๋„ฃ์„ ๊ทผ๊ฑฐ๊ฐ€ ์—†๋‹ค.

๊ณ„์‚ฐ ๋น„์šฉ๊ณผ ๊ฒ€์ฆ

Apple M4 Pro/macOS/Go 1.27.1 ํ•ฉ์„ฑ fixture: ๋ฌธ์„œ 3,009๊ฐœ, ํ›„๋ณด 20๊ฐœ, ์†Œ๋ฌธ์ž ์งˆ์˜ 4๋‹จ์–ด ์ค‘ ์–ดํœ˜์— ์žˆ๋Š” 2๋‹จ์–ด์™€ ์—†๋Š” 2๋‹จ์–ด. ์ธ๋ฑ์Šค ์ƒ์„ฑ์€ ์ธก์ • ๋ฐ–์ด๋‹ค.

์ž‘์—… 3ํšŒ ์ธก์ • ํ• ๋‹น
ํ›„๋ณด 20๊ฐœ ์ผ์น˜์œจ 681.6 / 650.1 / 640.3 ns 64 B/op, 1 alloc/op
๊ฐ™์€ fixture์˜ ๊ธฐ๋ณธ ์ˆœ์œ„ ๊ณ„์‚ฐ, ๋ฐฐ์—ด ์žฌ์‚ฌ์šฉ 11,883 / 11,825 / 11,867 ns 120 B/op, 3 allocs/op

๋‘ ์ž‘์—…์€ ๋Œ€์ฒด ๊ด€๊ณ„๊ฐ€ ์•„๋‹ˆ๋‹ค. ์ผ์น˜์œจ์€ ๊ธฐ๋ณธ ๊ฒ€์ƒ‰ ์ดํ›„ ์ถ”๊ฐ€๋˜๋Š” ๋น„์šฉ์ด๋‹ค. ์ด ์ง€์—ฐ์ด ์ค„์—ˆ๋‹ค๊ณ  ์ฃผ์žฅํ•˜์ง€ ์•Š๋Š”๋‹ค. ์งง์€ ๊ณ ์ • ์งˆ์˜ยท๋”ฐ๋œปํ•œ ์บ์‹œ์˜ ์ธก์ •์ด๋ฉฐ, ๊ธด ์งˆ์˜ยท๋Œ€๋ฌธ์ž ๋ณ€ํ™˜ยท๋” ๋งŽ์€ ์•Œ๋ ค์ง„ ๋‹จ์–ด์—์„œ๋Š” ๋น„์šฉ๊ณผ ํ• ๋‹น์ด ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ๋‹ค. ์—ฐ๊ตฌ ํŠน์ง•์˜ ํ‰๊ท ยทํ‘œ์ค€ํŽธ์ฐจ ๊ณ„์‚ฐ๊ณผ JSON/IPC๋Š” ์œ„ ์ผ์น˜์œจ ๋งˆ์ดํฌ๋กœ๋ฒค์น˜๋งˆํฌ์— ํฌํ•จํ•˜์ง€ ์•Š์•˜๋‹ค.

CPU ํ”„๋กœํŒŒ์ผ์—์„œ ์ผ์น˜์œจ ๋ฉ”์„œ๋“œ ๋ˆ„์  82.61%, ์ •์ˆ˜ posting ์ด์ง„ ํƒ์ƒ‰ ์ž์ฒด 36.65%์˜€๋‹ค. ํ•ด๋‹น ํ•ฉ์„ฑ ์‹คํ–‰ ๋ฒ”์œ„์˜ ์ƒ˜ํ”Œ์ด๋ฉฐ ์•ฑ ์ „์ฒด๋‚˜ GPU ๋ณ‘๋ชฉ์„ ๋œปํ•˜์ง€ ์•Š๋Š”๋‹ค. ์›์‹œ ํ”„๋กœํŒŒ์ผ์€ ๋กœ์ปฌ์—๋งŒ ๋ณด๊ด€ํ•œ๋‹ค.

๊ณ ์ • ์›์ฒœ ํ™•์ธยท๊ฒ€์ƒ‰ยทํŠน์ง• ์ค€๋น„ยท์ „์ฒด ๋ถ„์„ ํ•œ ๋ฒˆ์€ wall 1.85์ดˆ, user CPU 1.50์ดˆ, ์ตœ๋Œ€ RSS 91,717,632๋ฐ”์ดํŠธ(์•ฝ 87.5MiB). ์ด๋Š” ์ „์ฒด ๋ถ„์„ ํ”„๋กœ์„ธ์Šค์ด๋ฉฐ ๊ฐœ๋ณ„ ํ•จ์ˆ˜ ๋ฉ”๋ชจ๋ฆฌ๋‚˜ ์ด์ „ ์‹คํ—˜ ๋Œ€๋น„ RSS ๊ฐ์†Œ์˜ ์ฆ๊ฑฐ๊ฐ€ ์•„๋‹ˆ๋‹ค.

์ƒˆ ๊ฒฐ๊ณผ ์ „์ฒด JSON ์žฌ์‹คํ–‰์ด ๋ฐ”์ดํŠธ ์ผ์น˜ํ–ˆ๋‹ค. ๊ณตํ†ต ์ค€๋น„ ์ฝ”๋“œ ์ˆ˜์ • ํ›„ ๊ธฐ์กด ์‹คํ—˜ 23 ๊ฒฐ๊ณผ๋„ ๋ฐ”์ดํŠธ ์ผ์น˜ํ–ˆ๋‹ค. ๋‹จ์–ด ์ง์ ‘ ๊ฒ€์‚ฌ์™€ ์ธ๋ฑ์Šค ๊ณ„์‚ฐ์˜ ๋™๋“ฑ์„ฑ, ์ค‘๋ณตยท๋Œ€์†Œ๋ฌธ์žยทํ•œ๊ตญ์–ดยท๋ถ€์žฌ ๋‹จ์–ดยท์ž˜๋ชป๋œ ๋ฒˆํ˜ธยท๋™์‹œ ์ฝ๊ธฐ, ๊ธฐ์กด ์ˆœ์œ„ ๋ถˆ๋ณ€ ๋ฐ ํŠน์ง• ์ˆ˜์น˜๋ฅผ ๊ฒ€์‚ฌํ–ˆ๋‹ค. ๊ธฐ์กด 16๊ฐœ ํŠน์ง•์˜ ๋ถ„์„ ๊ฒฐ๊ณผ๋„ ๊ทธ๋Œ€๋กœ ์œ ์ง€๋๋‹ค.

go run ./cmd/riido-coverageaudit --out .cache/query-coverage-24
go test ./pkg/hintsearch -run '^$' -bench BenchmarkCoverageAndRanking -benchmem

์ „์ฒด ๊ฒฐ๊ณผ. ๊ฐ™์€ ์„ธ ์ €์žฅ์†Œ๋ฅผ ๋ฐ˜๋ณต ๊ด€์ฐฐํ•œ ๊ฐœ๋ฐœ ๋ถ„์„์ด๋‹ค. ์ƒˆ๋กœ์šด ์‹ค์ œ ์‚ฌ์šฉ์ž ์š”์ฒญ ์ตœ์†Œ 2,400๊ฐœยท์—์ด์ „ํŠธ ์™„๋ฃŒ์œจยทLLM ์ ˆ๊ฐ์€ ๋ฏธ๊ฒ€์ฆ์ด๋‹ค. CoSQA reserve๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š์•˜๊ณ  ์ƒˆ ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋„ ์—†์œผ๋ฏ€๋กœ HF ๋ชจ๋ธ ์ €์žฅ์†Œ๋ฅผ ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค.

Source / ์†Œ์Šค ยท PR #47 / CI

CI passed on macOS and Linux; PR #47 merged. macOSยทLinux CI ๋ฐ ๋ณ‘ํ•ฉ ์™„๋ฃŒ. Feature research only; no new model release / ํŠน์ง• ์—ฐ๊ตฌ์ด๋ฉฐ ์ƒˆ ๋ชจ๋ธ ๋ฐฐํฌ ์—†์Œ.

Follow-up / ํ›„์†: Joint training 25 / ์กฐํ•ฉ ํ•™์Šต. Both seeds worsen page cost; additions deferred. ๋‘ ์ดˆ๊ธฐ๊ฐ’ ๋ชจ๋‘ ํŽ˜์ด์ง€ ๋น„์šฉ์ด ์•…ํ™”๋˜์–ด ์ถ”๊ฐ€ ์ฑ„ํƒ ๋ณด๋ฅ˜.