Hub documentation
Polars
Polars
Polars๋ OLAP ์ฟผ๋ฆฌ ์์ง ์์ ๊ตฌ์ถ๋ ์ธ๋ฉ๋ชจ๋ฆฌ DataFrame ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค. ๋น ๋ฅด๊ณ ์ฌ์ฉํ๊ธฐ ์ฌ์ฐ๋ฉฐ ์คํ ์์ค์ ๋๋ค.
1.2.0 ๋ฒ์ ๋ถํฐ Polars๋ Hugging Face ํ์ผ ์์คํ
์ ๋ํ ๋ค์ดํฐ๋ธ ์ง์์ ์ ๊ณตํฉ๋๋ค. ์ด๋ Polars ์ฟผ๋ฆฌ ์ต์ ํ๊ธฐ์ ๋ชจ๋ ์ด์ (์: ์กฐ๊ฑด ๋ฐ ํฌ์ฌ ํธ์๋ค์ด)์ด ์ ์ฉ๋๊ณ , ์ฟผ๋ฆฌ๋ฅผ ์๋ฃํ๋ ๋ฐ ํ์ํ ๋ฐ์ดํฐ๋ง ๋ก๋ํ๋ค๋ ๊ฒ์ ์๋ฏธํฉ๋๋ค. ์ด๋ฅผ ํตํด ํนํ ๋๊ท๋ชจ ๋ฐ์ดํฐ์
์ ์ฝ๊ธฐ ์๋๊ฐ ํฌ๊ฒ ํฅ์๋ฉ๋๋ค(์์ธํ ๋ด์ฉ์ ์ต์ ํ๋ฅผ ์ฐธ์กฐ).
Hugging Face ๊ฒฝ๋ก(hf://)๋ฅผ ์ฌ์ฉํ์ฌ Hub์ ๋ฐ์ดํฐ์ ์ก์ธ์คํ ์ ์์ต๋๋ค:

์์ํ๊ธฐ
์์ํ๋ ค๋ฉด pip install์ ์ฌ์ฉํ์ฌ Polars๋ฅผ ํ๊ฒฝ์ ์ค์นํ๋ฉด ๋ฉ๋๋ค:
pip install polars
Polars๋ฅผ ์ค์นํ ํ์๋ Hugging Face URL์ ๊ธฐ๋ฐ์ผ๋ก ๋ฐ์ดํฐ์ ์ ์ง์ ์ฟผ๋ฆฌํ ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด ๋ค๋ฅธ ์์กด์ฑ์ ํ์ํ์ง ์์ต๋๋ค.
import polars as pl
pl.read_parquet("hf://datasets/roneneldan/TinyStories/data/train-00000-of-00004-2d5a1467fff1081b.parquet")Polars๋ ๋ ๊ฐ์ง API๋ฅผ ์ ๊ณตํฉ๋๋ค: lazy API(
scan_parquet)์ eager API(read_parquet). ์ธํฐ๋ํฐ๋ธ ์ํฌ๋ก๋์๋ eager API๋ฅผ, ๋ ๋์ ์ฟผ๋ฆฌ ์ต์ ํ๋ฅผ ํตํด ์ฑ๋ฅ์ ๋์ผ ์ ์์ผ๋ฏ๋ก ์ฑ๋ฅ ์ต์ ํ์๋ lazy API ์ฌ์ฉ์ ๊ถ์ฅํฉ๋๋ค. ์ด ์ฃผ์ ์ ๋ํ ์์ธํ ๋ด์ฉ์ Polars ์ฌ์ฉ์ ๊ฐ์ด๋๋ฅผ ์ฐธ๊ณ ํ์ธ์.
Polars๋ globbing์ ์ง์ํ์ฌ ์ฌ๋ฌ ํ์ผ์ ํ ๋ฒ์ ๋ค์ด๋ก๋ํ์ฌ ๋จ์ผ DataFrame์ผ๋ก ๊ฐ์ ธ์ฌ ์ ์์ต๋๋ค.
pl.read_parquet("hf://datasets/roneneldan/TinyStories/data/train-*.parquet")Hugging Face URL
Hugging Face URL์ username๊ณผ dataset ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ๋ค์๊ณผ ๊ฐ์ด ๊ตฌ์ฑํ ์ ์์ต๋๋ค:
hf://datasets/{username}/{dataset}/{path_to_file}
๊ฒฝ๋ก์๋ **/*.parquet์ ๊ฐ์ globbing ํจํด์ ํฌํจํ์ฌ ํด๋น ํจํด์ ์ผ์นํ๋ ๋ชจ๋ ํ์ผ์ ์กฐํํ ์ ์์ต๋๋ค. ๋ํ, ์ง์๋์ง ์๋ ํ์ผ ํ์์ ๊ฒฝ์ฐ Hugging Face๊ฐ ์ ๊ณตํ๋ @~parquet branch๋ฅผ ์ฌ์ฉํ์ฌ ์๋ ๋ณํ๋ parquet ํ์ผ์ ์ฌ์ฉํ ์ ์์ต๋๋ค:
hf://datasets/{my-username}/{my-dataset}@~parquet/{path_to_file}