๐Ÿค— Kernels: ์ฃผ์š” ์—…๋ฐ์ดํŠธ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ ๐Ÿค— Kernels: Major Updates๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.


๐Ÿค— Kernels: ์ฃผ์š” ์—…๋ฐ์ดํŠธ

์ด์ „ ๊ธ€(From Zero to GPU)์—์„œ๋Š” custom kernels๋ฅผ ํŒจํ‚ค์ง•ํ•˜๊ณ , ๋ฐฐํฌํ•˜๊ณ , ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์„ ํ‘œ์ค€ํ™”ํ•˜๊ธฐ ์œ„ํ•œ ๐Ÿค— Kernels ํ”„๋กœ์ ํŠธ๋ฅผ ์†Œ๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ์˜ ๋ชฉํ‘œ๋Š” Hub์™€ ์ตœ๋Œ€ํ•œ ์ž˜ ๋งž์œผ๋ฉด์„œ๋„ ์‚ฌ์šฉ ํ๋ฆ„์€ ๋งค๋„๋Ÿฝ๊ณ  ๋ณด์•ˆ์€ ๊ฒฌ๊ณ ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ง€๋‚œ ๋ช‡ ๋‹ฌ ๋™์•ˆ ์šฐ๋ฆฌ๋Š” ์ด ๋ชฉํ‘œ๋ฅผ ํ–ฅํ•ด ์ž‘์—…ํ•ด ์™”์Šต๋‹ˆ๋‹ค. ๊ทธ ๊ณผ์ •์—์„œ ํ”„๋กœ์ ํŠธ๋„ ๊ฑฐ์˜ ์ „๋ฉด์ ์œผ๋กœ ๋‹ค์‹œ ์„ค๊ณ„ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์—์„œ๋Š” ์ง€๊ธˆ๊นŒ์ง€ ๋ฐฐํฌํ•œ ์ฃผ์š” ์—…๋ฐ์ดํŠธ์™€ ์•ž์œผ๋กœ์˜ ๋ฐฉํ–ฅ์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๋ชฉ์ฐจ

Kernels โ€” ์ƒˆ๋กœ์šด ์ €์žฅ์†Œ ์œ ํ˜•

Hub์— โ€œkernelโ€์ด๋ผ๋Š” ์ƒˆ๋กœ์šด repository type์„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด compute ๊ด€๋ จ ์š”๊ตฌ๊ฐ€ ๊ตฌ์ฒด์ ์ธ ์‚ฌ์šฉ์ž๋“ค์„ ๋” ์ž˜ ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์‚ฌ์šฉ์ž๋Š” ํŠน์ • kernel์ด ์–ด๋–ค accelerator, operating system, backend version์„ ์ง€์›ํ•˜๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Flash Attention 3 Kernel Page
Kernel page: kernels-community/flash-attn3

Hub์—์„œ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ๋ชจ๋“  kernel์€ https://huggingface.co/kernels.์—์„œ ๋‘˜๋Ÿฌ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด kernel๋“ค์„ Hub์˜ first-class citizen์œผ๋กœ ๋งŒ๋“ค๋ฉด AI ์ƒํƒœ๊ณ„์—๋„ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ด์ œ ์‚ฌ์šฉ์ž๋Š” kernel, model, ๊ทธ๋ฆฌ๊ณ  ์ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” application ์ „๋ฐ˜์˜ ํ๋ฆ„์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ kernel์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ์‰ฝ๊ฒŒ ๋ฐœ๊ฒฌ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ณด์•ˆ ๊ฐœ์„ 

Kernel์€ ์ด๋ฅผ ๋ถˆ๋Ÿฌ์˜ค๋Š” Python process์™€ ๊ฐ™์€ ๊ถŒํ•œ์œผ๋กœ native code๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์•…์„ฑ kernel์€ ์‹ค์ œ ํ”ผํ•ด๋ฅผ ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ๋ณด์•ˆ์€ Kernels ํ”„๋กœ์ ํŠธ์—์„œ ํ•ญ์ƒ ๊ฐ€์žฅ ์ค‘์š”ํ•œ ์š”์†Œ์˜€์Šต๋‹ˆ๋‹ค.

์ด ๋•Œ๋ฌธ์— ์šฐ๋ฆฌ๋Š” ์ดˆ๊ธฐ๋ถ€ํ„ฐ reproducibility์— ์ง‘์ค‘ํ–ˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ kernel์„ ์ง์ ‘ ๋‹ค์‹œ compileํ•˜๊ณ , ๊ทธ ๊ฒฐ๊ณผ๊ฐ€ ๊ณต๊ฐœ๋œ source์™€ ์ผ์น˜ํ•˜๋Š”์ง€ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด Nix๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. Nix๋Š” build recipe๋ฅผ hermeticํ•˜๊ฒŒ ํ‰๊ฐ€ํ•˜๊ณ  ๊ฐ•ํ•˜๊ฒŒ ๊ฒฉ๋ฆฌ๋œ sandbox๋ฅผ ์‚ฌ์šฉํ•ด build๋ฅผ ์ˆœ์ˆ˜ํ•˜๊ฒŒ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ source Git SHA1์„ kernel ์ž์ฒด์— embeddingํ•ด provenance๋ฅผ ๋” ๊ฐ•ํ™”ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ตœ๊ทผ ๋ช‡ ๋‹ฌ ๋™์•ˆ trusted kernel publisher์™€ code signing์ด๋ผ๋Š” ์ถ”๊ฐ€ ๋ฐฉ์–ด ๊ณ„์ธต๋„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

Trusted kernel publisher

์ƒˆ๋กœ์šด repo type๊ณผ ํ•จ๊ป˜ โ€œtrusted publisherโ€๋„ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค. Kernel์€ ์‚ฌ์šฉ๋˜๋Š” machine์—์„œ Python process์™€ ๊ฐ™์€ ๊ถŒํ•œ์œผ๋กœ code๋ฅผ ์‹คํ–‰ํ•˜๋ฏ€๋กœ, ๊ณต๊ฒฉ์ž๋Š” ์•…์„ฑ kernel์„ ์—…๋กœ๋“œํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ๊ทธ kernel์„ ์“ฐ๋„๋ก ์œ ๋„ํ•ด machine์„ compromiseํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ์•…์„ฑ kernel์„ ํ”ผํ•  ์ˆ˜ ์žˆ๋„๋ก, ์ด์ œ kernels package๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ trusted publisher์˜ kernel๋งŒ loadํ•ฉ๋‹ˆ๋‹ค. trusted publisher๋Š” community๊ฐ€ ์„ ์˜๋กœ ํ–‰๋™ํ•œ๋‹ค๊ณ  ์‹ ๋ขฐํ•˜๋Š” organization์ž…๋‹ˆ๋‹ค.

๋ฌผ๋ก  trusted publisher๊ฐ€ ์•„๋‹Œ organization์ด๋‚˜ user์˜ kernel๋„ loadํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ Hub์—์„œ kernel์„ loadํ•  ๋•Œ trust_remote_code argument๋ฅผ ์‚ฌ์šฉํ•ด ๋ช…์‹œ์ ์œผ๋กœ opt inํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

from kernels import get_kernel

kernel_module = get_kernel(  
   โ€œAtlas-Inference/gdnโ€, version=1, trust_remote_code=True  
)  

๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ์ž๋Š” Hub์— kernel repository๋ฅผ publishํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. kernel publisher๊ฐ€ ๋˜๋ ค๋ฉด ์š”์ฒญํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. user์™€ organization์€ account settings์—์„œ access๋ฅผ ์š”์ฒญํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์ด๋ฅผ ํ†ตํ•ด ์šฐ๋ฆฌ๋Š” ์š”์ฒญ์„ case-by-case๋กœ ๊ฒ€ํ† ํ•  ์‹œ๊ฐ„์„ ํ™•๋ณดํ•ฉ๋‹ˆ๋‹ค.

Kernel signing

์ถ”๊ฐ€ํ•˜๊ณ  ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ๋ณด์•ˆ ๊ณ„์ธต์€ code signing์ž…๋‹ˆ๋‹ค. code signing์€ trusted publisher์˜ Hub credential์ด compromise๋˜์–ด ๊ณต๊ฒฉ์ž๊ฐ€ ํ•ด๋‹น publisher์˜ kernel repo์— ์•…์„ฑ kernel์„ ์—…๋กœ๋“œํ•˜๋Š” ์ƒํ™ฉ์„ ๋ฐฉ์–ดํ•ฉ๋‹ˆ๋‹ค. code signing์—์„œ๋Š” kernel developer๋งŒ ์•Œ๊ณ  ์žˆ๋Š” private key๋กœ kernel์— ์„œ๋ช…ํ•˜๊ณ , ์ผ๋ฐ˜์ ์œผ๋กœ ๊ณต๊ฐœ๋œ public key๋กœ ์ด๋ฅผ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค. Hub๊ฐ€ compromise๋œ ์ƒํ™ฉ์—์„œ๋„ ๊ณต๊ฒฉ์ž๋Š” signing์— ํ•„์š”ํ•œ private key๋ฅผ ๊ฐ–๊ณ  ์žˆ์ง€ ์•Š์œผ๋ฏ€๋กœ ์•…์„ฑ kernel์— ์„œ๋ช…ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋ณด์•ˆ์„ ๋” ๊ฐ•ํ™”ํ•˜๊ธฐ ์œ„ํ•ด Sigstore์˜ cosign์„ ์‚ฌ์šฉํ•ด ephemeral private key๋กœ ์„œ๋ช…ํ•ฉ๋‹ˆ๋‹ค. ์ด signing key๋Š” ์ œํ•œ๋œ ์‹œ๊ฐ„ ๋™์•ˆ๋งŒ ์œ ํšจํ•˜๋ฏ€๋กœ, ์œ ์ถœ๋˜๋”๋ผ๋„ ๊ณต๊ฒฉ์ž๊ฐ€ private key๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ kernel์ด trusted GitHub repository์˜ trusted GitHub workflow์—์„œ ์„œ๋ช…๋˜์—ˆ๋Š”์ง€๋„ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.

Kernel signing์€ ์ด๋ฏธ kernel-builder์—์„œ ์ง€์›๋˜๋ฉฐ, kernel์„ ๊ฒ€์ฆํ•  ์ˆ˜ ์žˆ๋„๋ก kernels verify-signature๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋งŒ Kernels๋Š” ์•„์ง kernel load ์‹œ์ ์— signature๋ฅผ ๊ฒ€์ฆํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์„ ์™„์ „ํžˆ rolloutํ•˜๊ธฐ ์ „์— ๋” ํ…Œ์ŠคํŠธํ•˜๊ณ  ์‹ถ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ž์ฒด kernel์— code signing์„ ์„ค์ •ํ•˜๋Š” ์˜ˆ๋น„ ์•ˆ๋‚ด๋Š” kernels 0.16.0 release note์—์„œ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. https://github.com/huggingface/kernels/releases/tag/v0.16.0.

CLI ๊ฐœํŽธ

์ด์ „์—๋Š” ์—ฌ๋Ÿฌ utility๊ฐ€ kernels์™€ kernel-builder ์‚ฌ์ด์— ๋’ค์„ž์—ฌ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ kernels CLI์™€ kernel-builder CLI ์‚ฌ์ด์˜ concern์„ ๋” ๋ช…ํ™•ํžˆ ๋ถ„๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ์˜ mental model์€ kernels๊ฐ€ kernel์„ loadํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ค€๋น„๋ฅผ ํ•˜๋Š” library๋ผ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ โ€œbuildingโ€ kernel๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ์€ ํฌํ•จํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๋‹ค.

๊ทธ ๊ฒฐ๊ณผ kernels์™€ kernel-builder๋Š” ๋ชจ๋‘ ํ›จ์”ฌ ๋” ๊ฐ€๋ณ๊ณ  ๋ชฉ์ ์ด ๋ถ„๋ช…ํ•ด์กŒ์Šต๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ documentation์„ ์ฐธ๊ณ ํ•˜์„ธ์š”.

๊ฐœ์„ ๋œ CLI ๊ฒฝํ—˜์€ agentic kernel development๊ฐ€ ๋ถ€์ƒํ•˜๋Š” ํ๋ฆ„์—๋„ ๋” ์ž˜ ๋Œ€์‘ํ•˜๊ฒŒ ํ•ด ์ค๋‹ˆ๋‹ค. ์ด์— ๋Œ€ํ•ด์„œ๋Š” ๋’ค์—์„œ ๋” ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋ ˆ์ž„์›Œํฌ์™€ ๋ฐฑ์—”๋“œ ์ง€์› ํ™•๋Œ€

framework ์ง€์›๋„ ํ™•์žฅํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๋ˆˆ์— ๋„๋Š” ๋ณ€ํ™”๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • kernels์™€ kernel-builder์— Torch Stable ABI ์ง€์›์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. Torch Stable ABI๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด kernel developer๊ฐ€ ํŠน์ • Torch version์ด๋‚˜ ๊ทธ ์ดํ›„ ์•ฝ 2๋…„ ๋™์•ˆ release๋˜๋Š” version์„ targetํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Torch 2.9 Stable ABI๋ฅผ targetํ•˜๋Š” kernel์€ Torch >= 2.9๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • Apache TVM FFI๋Š” Torch ์™ธ์— ์ฒ˜์Œ์œผ๋กœ ์ง€์›๋˜๋Š” framework์ž…๋‹ˆ๋‹ค. TVM FFI๋Š” PyTorch, JAX, CuPy ๊ฐ™์€ ๋‹ค๋ฅธ framework์™€ ์ƒํ˜ธ ์šด์šฉ๋˜๋Š” kernel์šฉ standardized ABI์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด kernel developer๋Š” ์—ฌ๋Ÿฌ framework์—์„œ ๋™์ž‘ํ•˜๋Š” kernel์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

agentic kernel ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ๊ธฐ๋ฐ˜

kernel-builder์™€ kernels๋Š” agent๊ฐ€ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ตœ์ ํ™”๋œ kernel์„ ๋งŒ๋“ค์–ด ๋‚ด๋Š” agentic kernel development์˜ ๋ถ€์ƒ์„ ๋ณด์™„ํ•ฉ๋‹ˆ๋‹ค. ๋‘ ๋„๊ตฌ๋ฅผ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋ฉด agent๊ฐ€ kernel์„ scaffoldํ•˜๊ณ , buildํ•˜๊ณ , benchmarkํ•˜๊ณ , ๋ฐ˜๋ณต์ ์œผ๋กœ optimizeํ•˜๋Š” workflow๋ฅผ ์ง€์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Agentic kernel development๋Š” ์•„์ง ์ดˆ๊ธฐ ๋‹จ๊ณ„์ด๋ฉฐ, ์ ์ ˆํ•œ development loop๋„ ๊ณ„์† ์ง„ํ™”ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋‹จ์ˆœํ•˜๊ณ  ๋ช…ํ™•ํ•œ ๊ธฐ๋ณธ๊ธฐ๊ฐ€ ํŠนํžˆ ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๋„๊ตฌ๋Š” ์‚ฌ๋žŒ๋“ค์ด ์„ ํƒํ•˜๋Š” ์–ด๋–ค agent workflow๋‚˜ framework์—๋„ ์‰ฝ๊ฒŒ ์กฐํ•ฉ๋  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

kernel-builder๋Š” kernel source code๋ฅผ ์–ด๋–ป๊ฒŒ scaffoldํ•˜๊ณ  reproducible build์— ์‚ฌ์šฉํ• ์ง€์— ๋Œ€ํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ•์ œํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด agent๋Š” ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ project layout๊ณผ ๋ฐ˜๋ณต ๊ฐ€๋Šฅํ•œ workflow ์•ˆ์—์„œ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. CLI ์—ญ์‹œ agent-optimized๋˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด non-interactive command์™€ agent๊ฐ€ programmaticํ•˜๊ฒŒ ํ•ด์„ํ•˜๊ธฐ ์‰ฌ์šด output์„ ์˜๋ฏธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ์œ„ํ•ด ์„œ๋กœ ๋‹ค๋ฅธ backend์˜ ํŠน์„ฑ์„ agent๊ฐ€ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋„๋ก backend-specific skills๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ skill์€ backend๋ณ„ toolchain, compilation path, performance consideration์„ ํฌ์ฐฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

kernel์„ ์„ฑ๊ณต์ ์œผ๋กœ buildํ•˜๋Š” ๊ฒƒ๋งŒ์ด ๋ชฉํ‘œ๋Š” ์•„๋‹™๋‹ˆ๋‹ค. target hardware์—์„œ baseline ๋Œ€๋น„ ์‹ค์ œ speedup์„ ์ œ๊ณตํ•˜๋Š”์ง€๋„ ํ™•์ธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์„ฑ๊ณต์ ์ธ build๋Š” ์ฒซ ๋ฒˆ์งธ validation step์ผ ๋ฟ์ž…๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ target hardware์—๋Š” ์—ฌ๋Ÿฌ accelerator๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ๊ณ , ๊ฐ™์€ accelerator์˜ ์„œ๋กœ ๋‹ค๋ฅธ family๊ฐ€ ํฌํ•จ๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๊ด€๋ จ์ด ์žˆ๋Š” ๊ฒฝ์šฐ hardware vendor์™€ generation ์ „๋ฐ˜์—์„œ ๊ฒฐ๊ณผ๋ฅผ ํ‰๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. HF Jobs์™€์˜ ๊ธด๋ฐ€ํ•œ integration์€ ์ด benchmarking ๊ณผ์ •์„ ์‰ฝ๊ฒŒ ๋งŒ๋“ค์–ด ์ค๋‹ˆ๋‹ค. Agent๋Š” ์ด integration์„ ์‚ฌ์šฉํ•ด benchmark suite๋ฅผ ์‹คํ–‰ํ•˜๊ณ , performance result๋ฅผ ์ˆ˜์ง‘ํ•˜๋ฉฐ, ์ •์˜๋œ baseline๊ณผ ๋น„๊ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฐฉ์‹์œผ๋กœ agent๋Š” ์„œ๋กœ ๋‹ค๋ฅธ hardware configuration ์ „๋ฐ˜์—์„œ test๋ฅผ ์‹คํ–‰ํ•ด ์ƒ์„ฑ๋œ kernel์˜ performance์— ๋Œ€ํ•œ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” feedback์„ ์–ป๊ณ , ๋ฌด์—‡์„ ํ•ด์•ผ ํ•˜๋Š”์ง€ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ feedback์€ ๋‹ค์Œ optimization iteration์— ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.

์•„๋ž˜๋Š” agent-augmented kernel์˜ ๋ช‡ ๊ฐ€์ง€ ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค. ์ด ์˜ˆ์‹œ๋“ค์€ ์ด workflow๋ฅผ ํ†ตํ•ด ์–ด๋–ค ์ข…๋ฅ˜์˜ kernel์„ ๊ฐœ๋ฐœํ•˜๊ณ  ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

๊ธฐํƒ€ ์—…๋ฐ์ดํŠธ

ํ™˜๊ฒฝ ์„ค์ •

kernel-builder๋กœ kernel์„ buildํ•˜๊ธฐ ์œ„ํ•œ ํ™˜๊ฒฝ ์„ค์ •์€ ๋ถ€๋‹ด์Šค๋Ÿฌ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž๊ฐ€ ๋” ์‰ฝ๊ฒŒ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋„๋ก, ์ด์ œ ํ•œ ๋ฒˆ์˜ click์œผ๋กœ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š” installation script๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ephemeral instance์—์„œ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•œ๋‹ค๋ฉด Terraform setup guide๋„ ์ฐธ๊ณ ํ•  ๋งŒํ•ฉ๋‹ˆ๋‹ค.

kernel์šฉ system card

kernel์ด build๋œ ๋’ค์—๋Š” ๊ฐ kernel์— ๋Œ€ํ•ด system card๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์‚ฌ์šฉ ๋ฐฉ๋ฒ•๊ณผ ๋…ธ์ถœ๋œ interface ๋“ฑ ์œ ์šฉํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. kernel์ด Hub์— push๋˜๋ฉด ์ด system card๊ฐ€ kernel์˜ front matter๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

System card for a kernel
System card for kernels-community/flash-attn3

๋‚ด system์—์„œ kernel์ด ํ˜ธํ™˜๋˜๋‚˜์š”?

์ด๋Š” ๋” ๋‚˜์€ ๊ณ„ํš์„ ์„ธ์šฐ๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ ๋ฒˆ ๋ฌป๊ฒŒ ๋˜๋Š” ์งˆ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด ๋ชฉ์ ์—๋Š” has_kernel() method๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

from kernels import has_kernel

print(has_kernel("kernels-community/activation", version=1))  

์ด method๋Š” bool์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ํŠน์ • kernel์ด ์™œ ์ง€์›๋˜์ง€ ์•Š๋Š”์ง€ ๋” ์ž์„ธํ•œ ์„ค๋ช…์ด ํ•„์š”ํ•˜๋‹ค๋ฉด get_kernel_variants()๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

 from kernels import get_kernel_variants, VariantAccepted

for decision in get_kernel_variants("kernels-community/activation", version=1):  
    name = decision.variant.variant_str  
    if isinstance(decision, VariantAccepted):  
        print(f"{name}: compatible")  
    else:  
        print(f"{name}: rejected ({decision.reason})")  

์‹คํ–‰ ์ค‘์ธ machine์— ๋”ฐ๋ผ ๋‹ค์Œ๊ณผ ๋น„์Šทํ•œ output์ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.

torch212-cxx11-cu130-aarch64-linux: compatible  
torch210-cu128-x86_64-windows: rejected (CPU (x86_64) does not match system CPU (aarch64))  
torch211-cu128-x86_64-windows: rejected (CPU (x86_64) does not match system CPU (aarch64))  
torch212-metal-aarch64-darwin: rejected (OS (darwin) does not match system OS (linux))  
torch211-metal-aarch64-darwin: rejected (OS (darwin) does not match system OS (linux))  
torch210-metal-aarch64-darwin: rejected (OS (darwin) does not match system OS (linux))  
torch29-metal-aarch64-darwin: rejected (OS (darwin) does not match system OS (linux))  
โ€ฆ  

๊ฐœ์„ ๋œ manylinux_2_28 ์ง€์›

Kernel-builder๋Š” ๊ฑฐ์˜ ์ดˆ๊ธฐ๋ถ€ํ„ฐ manylinux_2_28์„ targetํ•ด ์™”์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” glibc 2.28๋กœ compile๋œ ์ตœ์‹  gcc toolchain์„ ์‚ฌ์šฉํ•ด manylinux๋ฅผ targetํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋ž˜๋œ libstdc++ version๊ณผ์˜ compatibility issue๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด libstdc++๋ฅผ static linkํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ตœ๊ทผ ์ด ์ ‘๊ทผ ๋ฐฉ์‹์—์„œ ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€ libstdc++ ๊ธฐ๋Šฅ์€ global initialization์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. PyTorch๊ฐ€ dynamic linkํ•œ libstdc++์™€ kernel์ด static linkํ•œ libstdc++์ฒ˜๋Ÿผ ์—ฌ๋Ÿฌ libstdc++ version์ด ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋ฉด data corruption์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ถ€ ์ตœ์‹  kernel์€ C++ regex ๊ฐ™์€ global initialization์„ ์œ ๋ฐœํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜๋ฉฐ, ์ด๋กœ ์ธํ•ด data corruption, segfault, ๊ธฐํƒ€ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด kernel์€ ์ด์ œ libstdc++๋ฅผ dynamic linkํ•ฉ๋‹ˆ๋‹ค. ์˜ค๋ž˜๋œ libstdc++ version๊ณผ์˜ compatibility๋ฅผ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด, ์ด์ œ ๊ณต์‹ manylinux_2_28 toolchain์œผ๋กœ kernel์„ compileํ•ฉ๋‹ˆ๋‹ค.

๋งˆ๋ฌด๋ฆฌ

Kernels ํ”„๋กœ์ ํŠธ์˜ ๋ชฉํ‘œ๋Š” kernel developer์™€ custom kernel ์‚ฌ์šฉ์ž ๋ชจ๋‘๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์šฐ๋ฆฌ๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์„์ง€์— ๋Œ€ํ•œ community feedback์„ ํ•ญ์ƒ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์–ธ์ œ๋“  ๊ธฐ์—ฌํ•ด ์ฃผ์„ธ์š”!

๊ฐ์‚ฌ์˜ ๋ง: ๊ธ€์„ reviewํ•ด ์ค€ Aritra์—๊ฒŒ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.

Grabette: ๋กœ๋ด‡-์กฐ์ž‘ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋กํ•˜๊ธฐ ์œ„ํ•œ ์˜คํ”ˆ ์‹œ์Šคํ…œ. <br> *ํ•จ๊ป˜ ๊ณต์œ  ๋ฐ์ดํ„ฐ์…‹์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.*

Grabette: ๋กœ๋ด‡-์กฐ์ž‘ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋กํ•˜๊ธฐ ์œ„ํ•œ ์˜คํ”ˆ ์‹œ์Šคํ…œ.
*ํ•จ๊ป˜ ๊ณต์œ  ๋ฐ์ดํ„ฐ์…‹์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.*

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Grabette: an open system to record robot-manipulation data๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ...

By Hugging Face KREW Translation Bot, on
Thinking Machines์˜ Inkling์— ์˜ค์‹  ๊ฒƒ์„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค

Thinking Machines์˜ Inkling์— ์˜ค์‹  ๊ฒƒ์„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Welcome Inkling by Thinking Machines๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

By Hugging Face KREW Translation Bot, on
ํŒŒ์ดํ† ์น˜์˜ ํ”„๋กœํŒŒ์ผ๋ง(3๋ถ€): ์–ดํ…์…˜์ด ์ „๋ถ€๋‹ค

ํŒŒ์ดํ† ์น˜์˜ ํ”„๋กœํŒŒ์ผ๋ง(3๋ถ€): ์–ดํ…์…˜์ด ์ „๋ถ€๋‹ค

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Profiling in PyTorch (Part 3): Attention is all you profile๋ฅผ...

By Hugging Face KREW Translation Bot, on
๋„ค์ดํ‹ฐ๋ธŒ-์Šคํ”ผ๋“œ vLLM transformers ๋ชจ๋ธ๋ง ๋ฐฑ์—”๋“œ

๋„ค์ดํ‹ฐ๋ธŒ-์Šคํ”ผ๋“œ vLLM transformers ๋ชจ๋ธ๋ง ๋ฐฑ์—”๋“œ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Native-speed vLLM transformers modeling backend๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

By Hugging Face KREW Translation Bot, on
LeRobot v0.6.0: ์ƒ์ƒํ•˜๊ณ , ํ‰๊ฐ€ํ•˜๊ณ , ๊ฐœ์„ ํ•˜๊ธฐ

LeRobot v0.6.0: ์ƒ์ƒํ•˜๊ณ , ํ‰๊ฐ€ํ•˜๊ณ , ๊ฐœ์„ ํ•˜๊ธฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ LeRobot v0.6.0: Imagine, Evaluate, Improve๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

By Hugging Face KREW Translation Bot, on
Hugging Face์™€ Cerebras๊ฐ€ Gemma 4๋ฅผ ์‹ค์‹œ๊ฐ„ ์Œ์„ฑ AI๋กœ ์„ ๋ณด์ž…๋‹ˆ๋‹ค

Hugging Face์™€ Cerebras๊ฐ€ Gemma 4๋ฅผ ์‹ค์‹œ๊ฐ„ ์Œ์„ฑ AI๋กœ ์„ ๋ณด์ž…๋‹ˆ๋‹ค

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Hugging Face and Cerebras bring Gemma 4 to real-time voice...

By Hugging Face KREW Translation Bot, on
Hugging Face ๋ชจ๋ธ ํŽ˜์ด์ง€์—์„œ Every Eval Ever ๊ฒฐ๊ณผ ๋ณด๊ธฐ

Hugging Face ๋ชจ๋ธ ํŽ˜์ด์ง€์—์„œ Every Eval Ever ๊ฒฐ๊ณผ ๋ณด๊ธฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Featuring Every Eval Ever Results on Hugging Face Model Pages๋ฅผ...

By Hugging Face KREW Translation Bot, on
HF Jobs์—์„œ vLLM ์„œ๋ฒ„๋ฅผ ํ•œ ๋ช…๋ น์œผ๋กœ ์‹คํ–‰ํ•˜๊ธฐ

HF Jobs์—์„œ vLLM ์„œ๋ฒ„๋ฅผ ํ•œ ๋ช…๋ น์œผ๋กœ ์‹คํ–‰ํ•˜๊ธฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Run a vLLM Server on HF Jobs in One Command๋ฅผ...

By Hugging Face KREW Translation Bot, on
FFASR Leaderboard ์†Œ๊ฐœ: ํ˜„์‹ค ์„ธ๊ณ„์—์„œ์˜ ASR ๋ฒค์น˜๋งˆํฌ

FFASR Leaderboard ์†Œ๊ฐœ: ํ˜„์‹ค ์„ธ๊ณ„์—์„œ์˜ ASR ๋ฒค์น˜๋งˆํฌ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Introducing the FFASR Leaderboard: Benchmarking ASR in the Real World๋ฅผ...

By Hugging Face KREW Translation Bot, on
๋งค์ฃผ AI, ์˜คํ”ˆ ๋„๊ตฌ, ๊ทธ๋ฆฌ๊ณ  ํœด๋จผ ์ธ ๋” ๋ฃจํ”„๊ฐ€ ํฌํ•จ๋œ huggingface_hub ๋ฐฐํฌ

๋งค์ฃผ AI, ์˜คํ”ˆ ๋„๊ตฌ, ๊ทธ๋ฆฌ๊ณ  ํœด๋จผ ์ธ ๋” ๋ฃจํ”„๊ฐ€ ํฌํ•จ๋œ huggingface_hub ๋ฐฐํฌ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Shipping huggingface_hub every week with AI, open tools, and a...

By Hugging Face KREW Translation Bot, on
Transformers.js์—์„œ ์ œ์•ˆ๋œ Cross-Origin Storage API ์‹คํ—˜ํ•˜๊ธฐ

Transformers.js์—์„œ ์ œ์•ˆ๋œ Cross-Origin Storage API ์‹คํ—˜ํ•˜๊ธฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Experimenting with the proposed Cross-Origin Storage API in Transformers.js๋ฅผ ํ•œ๊ตญ์–ด๋กœ...

By Hugging Face KREW Translation Bot, on
Beyond LoRA: ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ๋ฏธ์„ธ์กฐ์ • ๊ธฐ๋ฒ•์„ ์ด๊ธธ ์ˆ˜ ์žˆ์„๊นŒ?

Beyond LoRA: ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ๋ฏธ์„ธ์กฐ์ • ๊ธฐ๋ฒ•์„ ์ด๊ธธ ์ˆ˜ ์žˆ์„๊นŒ?

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Beyond LoRA: Can you beat the most popular fine-tuning technique?๋ฅผ...

By Hugging Face KREW Translation Bot, on
์ถฉ๋ถ„ํžˆ ์—์ด์ „ํŠธ์ ์ธ๊ฐ€์š”? ์ž์ฒด ๋„๊ตฌ๋กœ ์˜คํ”ˆ ๋ชจ๋ธ ๋ฒค์น˜๋งˆํ‚นํ•˜๊ธฐ

์ถฉ๋ถ„ํžˆ ์—์ด์ „ํŠธ์ ์ธ๊ฐ€์š”? ์ž์ฒด ๋„๊ตฌ๋กœ ์˜คํ”ˆ ๋ชจ๋ธ ๋ฒค์น˜๋งˆํ‚นํ•˜๊ธฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Is it agentic enough? Benchmarking open models on your own...

By Hugging Face KREW Translation Bot, on
์—์ด์ „ํŠธ ๊ธฐ๋ฐ˜ ๋ฆฌ์†Œ์Šค ํƒ์ƒ‰: ์—์ด์ „ํŠธ์—๊ฒŒ ๋„๊ตฌยท์Šคํ‚ฌยท๋‹ค๋ฅธ ์—์ด์ „ํŠธ ๊ฒ€์ƒ‰์„ ๋งก๊ธฐ๋‹ค

์—์ด์ „ํŠธ ๊ธฐ๋ฐ˜ ๋ฆฌ์†Œ์Šค ํƒ์ƒ‰: ์—์ด์ „ํŠธ์—๊ฒŒ ๋„๊ตฌยท์Šคํ‚ฌยท๋‹ค๋ฅธ ์—์ด์ „ํŠธ ๊ฒ€์ƒ‰์„ ๋งก๊ธฐ๋‹ค

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Agentic Resource Discovery: Let agents search๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

By Hugging Face KREW Translation Bot, on
GitHub CI๋ฅผ Hugging Face Jobs๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

GitHub CI๋ฅผ Hugging Face Jobs๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Migrating Your GitHub CI to Hugging Face Jobs๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ...

By Hugging Face KREW Translation Bot, on
์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์—์ด์ „ํ‹ฑ RL์„ ์œ„ํ•œ OpenEnv์— ํž˜์„ ์‹ฃ๋‹ค

์˜คํ”ˆ ์†Œ์Šค ์ปค๋ฎค๋‹ˆํ‹ฐ๊ฐ€ ์—์ด์ „ํ‹ฑ RL์„ ์œ„ํ•œ OpenEnv์— ํž˜์„ ์‹ฃ๋‹ค

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ The Open Source Community is backing OpenEnv for Agentic RL๋ฅผ...

By Hugging Face KREW Translation Bot, on
PyTorch์—์„œ์˜ ํ”„๋กœํŒŒ์ผ๋ง(Part 1): torch.profiler์— ๋Œ€ํ•œ ์ดˆ๋ณด์ž ๊ฐ€์ด๋“œ

PyTorch์—์„œ์˜ ํ”„๋กœํŒŒ์ผ๋ง(Part 1): torch.profiler์— ๋Œ€ํ•œ ์ดˆ๋ณด์ž ๊ฐ€์ด๋“œ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Profiling in PyTorch (Part 1): A Beginnerโ€™s Guide to torch.profiler๋ฅผ...

By Hugging Face KREW Translation Bot, on
Reachy Mini๋ฅผ ๋กœ์ปฌ์—์„œ ์™„์ „ํžˆ ์‹คํ–‰ํ•˜๊ธฐ

Reachy Mini๋ฅผ ๋กœ์ปฌ์—์„œ ์™„์ „ํžˆ ์‹คํ–‰ํ•˜๊ธฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ Reachy Mini goes fully local๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

By Hugging Face KREW Translation Bot, on
OlmoEarth v1.1: ๋” ํšจ์œจ์ ์ธ ์ง€๊ตฌ๊ด€์ธก ๋ชจ๋ธ ์ œํ’ˆ๊ตฐ

OlmoEarth v1.1: ๋” ํšจ์œจ์ ์ธ ์ง€๊ตฌ๊ด€์ธก ๋ชจ๋ธ ์ œํ’ˆ๊ตฐ

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ OlmoEarth v1.1: A more efficient family of models๋ฅผ ํ•œ๊ตญ์–ด๋กœ ๋ฒˆ์—ญํ•œ...

By Hugging Face KREW Translation Bot, on
PaddleOCR 3.5: Transformers ๋ฐฑ์—”๋“œ๋ฅผ ํ™œ์šฉํ•œ OCR ๋ฐ ๋ฌธ์„œ ํŒŒ์‹ฑ ์ž‘์—… ์‹คํ–‰

PaddleOCR 3.5: Transformers ๋ฐฑ์—”๋“œ๋ฅผ ํ™œ์šฉํ•œ OCR ๋ฐ ๋ฌธ์„œ ํŒŒ์‹ฑ ์ž‘์—… ์‹คํ–‰

์ด ๊ธ€์€ Hugging Face ๋ธ”๋กœ๊ทธ์˜ PaddleOCR 3.5: Running OCR and Document Parsing Tasks with a...

By Hugging Face KREW Translation Bot, on
Hugging Face Transformers ํ•œ๊ธ€ํ™” - ์ดˆ๋ฒŒ ๋ฒˆ์—ญ๊ธฐ ์‚ฌ์šฉ๋ฒ•

Hugging Face Transformers ํ•œ๊ธ€ํ™” - ์ดˆ๋ฒŒ ๋ฒˆ์—ญ๊ธฐ ์‚ฌ์šฉ๋ฒ•

Hugging Face Transformers ๋ฌธ์„œ๋ฅผ ํ•œ๊ธ€๋กœ ๋ฒˆ์—ญํ•˜๋Š” ์ดˆ๋ฒŒ ๋ฒˆ์—ญ๊ธฐ ์‚ฌ์šฉ ๋ฐฉ๋ฒ•์„ ์•ˆ๋‚ดํ•˜๋Š” ๊ฐ€์ด๋“œ์ž…๋‹ˆ๋‹ค. ๐Ÿ˜Š

By minju, on
๐Ÿค— Hugging Face KREW์˜ ์ผ์›์œผ๋กœ
์ƒํƒœ๊ณ„์— ๊ธฐ์—ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.