Hub documentation
Início rápido
Início rápido
Execute seu código Python em CPUs e GPUs da Hugging Face. Neste guia, você executará um comando simples em uma CPU e, em seguida, gerará texto com um pequeno modelo de linguagem em uma GPU.
Você precisará de uma conta do Hugging Face com créditos pré-pagos. Consulte Pricing and Billing para os custos de computação.
1. Configure o CLI
Instale o Hugging Face CLI e, em seguida, faça login na sua conta:
>>> hf auth login2. Execute Hello World
Execute este comando no seu terminal:
>>> hf jobs uv run python -c 'print("Hello from the cloud!")'hf jobs uv run executa o comando em um ambiente Python na infraestrutura do Hugging Face. Ele usa uma CPU por padrão e transmite os logs do Job para o seu terminal. Após a inicialização, você verá:
Hello from the cloud!
A CLI também exibe o ID do seu Job e um link para a página dele. Abra o link para visualizar seu status e logs no navegador. Você pode encontrar seus Jobs novamente na sua página de Jobs ou usar o ID com os comandos de CLI abaixo.
Os jobs também podem executar um comando em qualquer imagem Docker:
>>> hf jobs run ubuntu echo 'Hello from the cloud!'O restante deste guia usa hf jobs uv run. Consulte Usando imagens Docker para saber quando e como usar uma imagem.
3. Executar um modelo em uma GPU
Execute este script preparado para gerar um nome de robô. Você pode visualizá-lo no GitHub ou ler o código abaixo.
hf jobs uv run \
--flavor t4-small \
--timeout 5m \
https://raw.githubusercontent.com/huggingface/hub-docs/main/examples/jobs/hello_gpu.py--flavor t4-smallseleciona uma máquina com uma GPU NVIDIA T4.--timeout 5mdefine um limite de cinco minutos para o Job.
O Job baixa o modelo e imprime sua resposta nos logs. Por exemplo:
RoboLearnbot
Aqui está o script completo:
# /// script
# dependencies = ["torch", "transformers"]
# ///
from transformers import pipeline
generator = pipeline(
"text-generation",
model="HuggingFaceTB/SmolLM2-360M-Instruct",
dtype="float16",
)
messages = [{
"role": "user",
"content": "Suggest a name for a robot that helps people learn Python. Answer with only the name.",
}]
outputs = generator(messages, max_new_tokens=48, do_sample=False, return_full_text=False)
print(outputs[0]["generated_text"])O cabeçalho de dependências informa ao uv para instalar torch e transformers no Job. Você também pode especificar dependências com --with. Você só precisa do CLI hf localmente.
O script executa o SmolLM2-360M-Instruct na GPU do Job. max_new_tokens limita o comprimento da resposta.
O tempo de inicialização varia conforme a disponibilidade de hardware, a instalação de dependências e os downloads de modelos.
Pressionar Ctrl+C interrompe o streaming de logs; o Job continua em execução. Para parar o Job, use
hf jobs cancel JOB_ID, substituindoJOB_IDpelo ID exibido pelo CLI.
Você também pode iniciar o mesmo Job a partir do Python com o cliente huggingface_hub:
from huggingface_hub import run_uv_job
job = run_uv_job(
"https://raw.githubusercontent.com/huggingface/hub-docs/main/examples/jobs/hello_gpu.py",
flavor="t4-small",
timeout="5m",
)
print(job.url)4. Verifique seu resultado
Use o ID do Job de GPU para verificar seu status e ler seus logs novamente:
>>> hf jobs inspect JOB_ID
>>> hf jobs logs JOB_IDUma execução bem-sucedida tem o status COMPLETED e seus logs contêm a resposta gerada.
A resposta continua disponível nos logs do Job após a conclusão. Ao adaptar o script para gerar arquivos, salve esses resultados em um bucket ou repositório do Hub para que eles persistam após o Job.
Tente o seu próprio script (opcional)
Copie o código acima para hello_gpu.py, edite o prompt em messages e execute seu arquivo local:
hf jobs uv run --flavor t4-small --timeout 5m hello_gpu.pyO CLI faz o upload do seu script editado automaticamente. Substitua hello_gpu.py pelo seu caminho, caso você o tenha salvo em outro local.
Próximas etapas
Construa sobre este exemplo com uma carga de trabalho maior:
- Anote um conjunto de dados com OCR, classificação ou inferência em lote.
- Treinar ou ajustar finamente um modelo e salvá-lo no Hub.
- Leia conjuntos de dados ou buckets e salve os resultados processados.
- Execute comandos em imagens Docker.
- Use Jobs a partir de um agente de codificação.