Navegação por modelos no Hugging Face

Modelos multimodais com Hugging Face

James Chapman

Curriculum Manager, DataCamp

Conheça seu instrutor...

 

Sean Benson
  • Ex-físico de partículas no Large Hadron Collider (LHC) no CERN, Suíça
  • Hoje, pesquisador de IA aplicada no Amsterdam University Medical Center

Foto de Sean Benson.

Modelos multimodais com Hugging Face

Modalidades abordadas

Exemplos de aplicações de texto, imagem, áudio e vídeo.

1 Créditos da imagem: gerada pelo OpenAI
Modelos multimodais com Hugging Face

Hugging Face

Captura de tela de uma página de modelo no Hugging Face mostrando informações da model card

  • 1M+ modelos
  • 250k+ conjuntos de dados
Modelos multimodais com Hugging Face

A API do Hub

  • Acesse modelos e conjuntos de dados via código
pip install huggingface_hub[cli]

Faça login para acessar os modelos da sua conta:

>>> huggingface-cli login
  • Todas as bibliotecas, modelos e conjuntos de dados estarão pré-instalados
Modelos multimodais com Hugging Face

Buscando modelos

  • Hugging Face API: acesso programático a modelos e conjuntos de dados
from huggingface_hub import HfApi
api = HfApi()

models = api.list_models()
  • task: "image-classification", "text-to-image", etc.
  • sort: por ex., "likes" ou "downloads"
  • limit: número máximo de entradas
  • tags: informações extras associadas ao modelo
Modelos multimodais com Hugging Face

Buscando modelos

models = api.list_models(

task="text-to-image",
author="CompVis",
tags="diffusers:StableDiffusionPipeline",
sort="downloads"
)
top_model = list(models)[0]
print(top_model)
ModelInfo(id='CompVis/stable-diffusion-v1-4', private=False, downloads=1097285, 
          likes=6718, library_name='diffusers', ...
Modelos multimodais com Hugging Face

Usando modelos via API

top_model_id = top_model.id
print(top_model_id)
CompVis/stable-diffusion-v1-4
from diffusers import StableDiffusionPipeline
pipe = StableDiffusionPipeline.from_pretrained(top_model_id)
Modelos multimodais com Hugging Face

Tarefas disponíveis

  • Documentado em uma página

  • Também disponível via JSON: https://huggingface.co/api/tasks

import json
from urllib.request import urlopen
url = "https://huggingface.co/api/tasks"

with urlopen(url) as url:
    tasks = json.load(url)
print(tasks.keys())
dict_keys(['any-to-any',
'audio-classification',
'audio-to-audio', ...'])
1 https://huggingface.co/tasks 2 https://huggingface.co/api/tasks
Modelos multimodais com Hugging Face

Vamos praticar!

Modelos multimodais com Hugging Face

Preparing Video For Download...