メインコンテンツまでスキップ
バージョン: 26.x

Hugging Face データの分析

Hugging Face は、ユーザーが機械学習モデル、データセット、その他のリソースを保存、共有、協力して構築できる人気の集約プラットフォームです。

Hugging Face Dataset には、リポジトリタイプに応じて、CSV、Parquet、JSONL などのデータファイルが含まれている場合があります。

HTTP Table Value ファンクション 機能を通じて、Doris は SQL を介して Hugging Face データセット上のデータに直接アクセスできます。

注記

この機能はバージョン 4.0.2 以降でサポートされています

使用方法

Doris は HTTP プロトコルを通じて Hugging Face Dataset のデータにアクセスします。

自動型推論をサポートしています。データ処理のために CREATE TABLE AS SELECTINSERT INTO ... SELECT メソッドをサポートしています。

CSV、Json、Parquet、ORC などのファイル形式をサポートし、パラメータは File Table Valued ファンクション と同じです。

基本例

  1. fka/awesome-chatgpt-prompts リポジトリから CSV データにアクセス

    SELECT COUNT(*) FROM
    HTTP(
    "uri" = "hf://datasets/fka/awesome-chatgpt-prompts/blob/main/prompts.csv",
    "format" = "csv"
    );

対応するデータファイル: https://huggingface.co/datasets/fka/awesome-chatgpt-prompts/blob/main/prompts.csv

  1. Tableを作成し、scriptブランチが指定されたstanfordnlp/imdbリポジトリからJSONデータにアクセスします。その後、データをTableにインポートします。

    CREATE TABLE hf_table AS
    SELECT * FROM
    HTTP(
    "uri" = "hf://datasets/stanfordnlp/imdb@script/dataset_infos.json",
    "format" = "json"
    );

対応するデータファイル: https://huggingface.co/datasets/stanfordnlp/imdb/blob/script/dataset_infos.json

  1. mainブランチを指定してstanfordnlp/imdbリポジトリからParquetファイルにアクセスします。また、ワイルドカードを使用して複数のパスにマッチさせます。

    SELECT * FROM
    HTTP(
    "uri" = "hf://datasets/stanfordnlp/imdb@main/*/*.parquet",
    "format" = "parquet"
    ) ORDER BY text LIMIT 1;

対応するデータファイル: https://huggingface.co/datasets/stanfordnlp/imdb/blob/main/plain_text/test-00000-of-00001.parquet

  1. mainブランチを指定してstanfordnlp/imdbリポジトリからParquetファイルにアクセスします。また、ワイルドカードを使用して複数の再帰的ファイルにマッチさせます。その後、指定されたTableに挿入します。

    INSERT INTO hf_table
    SELECT * FROM
    HTTP(
    "uri" = "hf://datasets/stanfordnlp/imdb@main/**/test-00000-of-0000[1].parquet",
    "format" = "parquet"
    ) ORDER BY text LIMIT 1;

対応するデータファイル: https://huggingface.co/datasets/stanfordnlp/imdb/blob/main/plain_text/test-00000-of-00001.parquet

  1. 認証が必要なファイルを解析する

    Hugging Faceアカウントから(hf_で始まる)Tokenを取得し、http.header.Authorizationプロパティに追加してください。

    SELECT * FROM
    HTTP(
    "uri" = "hf://datasets/gaia-benchmark/GAIA/blob/main/2023/validation/metadata.level1.parquet",
    "format" = "parquet",
    "http.header.Authorization" = "Bearer hf_MWYzOJJoZEymb..."
    ) LIMIT 1\G
このページでは