Classification
Mix.install(
  [
    {:image, "~> 0.54"},
    {:bumblebee, "~> 0.5"},
    {:exla, "~> 0.9"},
    {:kino, "~> 0.15"}
  ],
  config: [nx: [default_backend: EXLA.Backend]]
)
Prepare image
puppies_img = Image.open!("/home/livebook/vix/puppies.png")
Classify image
Image.Classification.labels(puppies_img)
puppies_img
|> Image.Classification.classify()
|> Map.get(:predictions)
|> Kino.DataTable.new()
{_, classifier} = Image.Classification.classifier()
serving = Keyword.get(classifier, :serving)
serving
|> Nx.Serving.run(Image.to_nx!(puppies_img))
|> Map.get(:predictions)
|> Kino.DataTable.new()
{_, classifier} = Image.Classification.classifier(
  model: {:hf, "google/vit-base-patch16-224"},
  featurizer:  {:hf, "google/vit-base-patch16-224"}
)
serving = Keyword.get(classifier, :serving)
serving
|> Nx.Serving.run(Image.to_nx!(puppies_img))
|> Map.get(:predictions)
|> Kino.DataTable.new()