Skip to content

Jay-sanjay/HuggingFaceApi.jl

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HuggingFaceApi

Stable Dev Build Status Coverage

Pure Julia Huggingface api

Example

Basic usage

julia> using HuggingFaceApi

julia> file = hf_hub_download("lysandre/arxiv-nlp", "config.json");

# or equivalent to
julia> url = HuggingFaceURL("lysandre/arxiv-nlp", "config.json")
HuggingFaceURL(https://huggingface.co/lysandre/arxiv-nlp/resolve/main/config.json)

julia> file = HuggingFaceApi.cached_download(url);

julia> readlines(file)
29-element Vector{String}:
 "{"
 "  \"_num_labels\": 1,"
 "  \"activation_function\": \"gelu_new\","
 "  \"attn_pdrop\": 0.1,"
 
 "  \"summary_type\": \"token_ids\","
 "  \"summary_use_proj\": true,"
 "  \"vocab_size\": 50257"
 "}"

# remove cached file if don't need it anymore
julia> HuggingFaceApi.remove_cache(url; now=true)
[ Info: 1 MyArtifact deleted (604.000 byte)

Download from private repo

julia> using HuggingFaceApi

julia> HuggingFaceApi.login("chengchingwen");
password: 

julia> private_file = HuggingFaceApi.hf_hub_download("chengchingwen/test_model_repo", "README.md");

julia> readlines(private_file)
1-element Vector{String}:
 "TEST THIS private repo"

julia> HuggingFaceApi.logout()

Search the hub

julia> HuggingFaceApi.list_models(; search = "japanese", filter = ("pytorch", "text-classification"), full=false, limit=5)

5-element JSON3.Array{JSON3.Object, Base.CodeUnits{UInt8, String}, Vector{UInt64}}:
 {
             "id": "daigo/bert-base-japanese-sentiment",
        "private": false,
   "pipeline_tag": "text-classification",
        "modelId": "daigo/bert-base-japanese-sentiment"
}
 {
             "id": "abhishek/autonlp-japanese-sentiment-59363",
        "private": false,
   "pipeline_tag": "text-classification",
        "modelId": "abhishek/autonlp-japanese-sentiment-59363"
}
 {
             "id": "laboro-ai/distilbert-base-japanese-finetuned-livedoor",
        "private": false,
   "pipeline_tag": "text-classification",
        "modelId": "laboro-ai/distilbert-base-japanese-finetuned-livedoor"
}
 {
             "id": "ptaszynski/yacis-electra-small-japanese-cyberbullying",
        "private": false,
   "pipeline_tag": "text-classification",
        "modelId": "ptaszynski/yacis-electra-small-japanese-cyberbullying"
}
 {
             "id": "lewtun/bert-base-japanese-char-v2-finetuned-amazon-jap",
        "private": false,
   "pipeline_tag": "text-classification",
        "modelId": "lewtun/bert-base-japanese-char-v2-finetuned-amazon-jap"
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Julia 100.0%