Hub documentation

Polars

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Polars

Polars — это библиотека для работы с DataFrame в оперативной памяти, построенная на базе движка запросов OLAP. Она быстрая, удобная в использовании и с открытым исходным кодом.

Начиная с версии 1.2.0, Polars обеспечивает нативную поддержку файловой системы Hugging Face. Это означает, что применяются все преимущества оптимизатора запросов Polars (например, pushdown предикатов и проекций), и Polars загружает только те данные, которые необходимы для выполнения запроса. Это значительно ускоряет чтение, особенно для больших наборов данных (см. оптимизации)

Вы можете использовать пути Hugging Face (hf://) для доступа к данным на Hub:

Начало работы

Для начала просто выполните pip install для установки Polars в ваше окружение:

pip install polars

После установки Polars можно напрямую выполнять запросы к набору данных по URL Hugging Face. Для этого не требуются другие зависимости.

import polars as pl

pl.read_parquet("hf://datasets/roneneldan/TinyStories/data/train-00000-of-00004-2d5a1467fff1081b.parquet")

Polars предоставляет два API: ленивый API (scan_parquet) и немедленный API (read_parquet). Мы рекомендуем использовать немедленный API для интерактивных задач, а ленивый API — для производительности, поскольку он позволяет лучше оптимизировать запросы. Подробнее об этой теме можно узнать в пользовательском руководстве Polars.

Polars поддерживает globbing для загрузки нескольких файлов сразу в один DataFrame.

pl.read_parquet("hf://datasets/roneneldan/TinyStories/data/train-*.parquet")

URL-адреса Hugging Face

URL Hugging Face можно составить из имени пользователя username и имени набора данных dataset следующим образом:

  • hf://datasets/{username}/{dataset}/{path_to_file}

The path may include globbing patterns such as **/*.parquet to query all the files matching the pattern. Additionally, for any non-supported file formats you can use the auto-converted parquet files that Hugging Face provides using the @~parquet branch:

  • hf://datasets/{my-username}/{my-dataset}@~parquet/{path_to_file}
Update on GitHub