No Hugging Face, você pode subir aplicações que usam GPU gratuitamente, usando um recurso chamado ZeroGPU (pra quem tem a conta PRO). Assim, você pode criar apps que tem acesso a GPU poderosas. Porém, isso é limitado a 10 spaces apenas. Recentemente, ao tentar criar um novo space com ZeroGPU, eu me deparei com o erro de limite. Porém, pela interface, eu vi que é bem trabalhoso achar os spaces que possuem ZeroGPU, então, lembrei que na API do Hugging Face há diversas informações, e, no PowershAI, é bem fácil usar a API.
Pela interface, a maneira mais próxima que eu achei para fazer isso é indo no menu Spaces , onde você tem acesso a tela de trending spaces, e então filtrando:

- Vá em Spaces, no meu superior
- Então, clique no ícone de filtrar
- Selecione ZeroGPU
- E no campo de pesquisa, digite o nome do seu usuário
Enquanto esse método pode funcionar bem para muitos casos, ele tem alguns contras:
- Note que, no exemplo acima, ele listou apenas 6 spaces. Eu precisava encontrar 10 (pois o Hugging Face não deixou eu criar um outro Space com ZeroGPU devido atingir o limite). Os spaces privados não foram listados, nem os que contém erros.
- O filtro que você coloca no campo não é exatamente de autor, portanto, se outro space tiver algo que tenha o mesmo nome do seu usuário, então, ele pode ser listado
E é aqui onde entra o PowershAI. Com o PowershAI, eu consigo listar todos os meus spaces que usam zero Gpu com alguns comandos simples.
Se você nunca instalou o powershai, siga os passos abaixo para instalar e configurá-lo para usar o Hugging Face. Você só precisa fazer isso 1x. Caso já tenha feito isso, pode pular as instruções abaixo
Instalando o Powershai e configurando o Hugging Face pela primeira vez
Para instalar o powershai, abra um powershell e execute o seguinte comando:
Install-Module -Scope CurrentUser powershai
Code language: PowerShell (powershell)
Agora, você precisa de um token do hugging face. Para gerar, é bem simples:
- Logue com sua conta em Hugging Face – The AI community building the future.
- No canto superior direito, clique no seu avatar (um círculo), vai abrir um menu, e depois vá em “Access Tokens”
- Então, procure um botão “+ Create Token”
- Em Token Type, escolha “Read”, dê um nome (ex.: powershai) e clique em criar
- Depois, clique no botão “Create token”
- Guarde o token gerado, que você irá usar no passo a seguir
Agora que você tem um token do hugging face, basta adicioná-lo ao powershai. O script abaixo faz isso. Ele irá solicitar o token para você:
# Importe o módulo
import-module powershai
# Ative o provider do Hugging Face
Set-AiProvider HuggingFace
# Insira o seu token do hugging face
Set-AiCredential
# Teste o token
Get-HfMe # este comando retorna informacoes do seu usuario
Code language: PowerShell (powershell)
Caso dê erros, então provavelmente é um problema com a permissão, passo incorreto ou até bug do powershai. Se você revisou e o erro persiste, me procure nos comentários que posso te ajudar (sem expor informações pessoais ou tokens)
Por fim, para que você não tenha que fazer todo esse processo novamente, você pode exportar as configurações e proteger com uma senha. Esta senha é usada para gerar chaves para criptografar os tokens e salvar no computador onde está executando. Use uma senha segura e fácil de lembrar:
# o powershai nunca transfere essa senha pela internet ou salva ela
Export-PowershaiSetttings
# Quando você quiser importar novamente, é só usar
Import-PowershaiSettings # e informe a senha usada
Code language: PowerShell (powershell)
Uma vez que você tem o seu powershai pronto para conversar com o Huging Face, vamos aos comandos:
Get-HfSpace -My | %{ Get-HfSpace $_.id -NoGradioSession } | ?{ $_.runtime.hardware.requested -like 'zero-*' } | select id,private
Code language: PowerShell (powershell)
Vamos explicar cada um dos comandos separadores pelo pipe, comecando da esquerda:
- Get-HfSpace -My
Este comando retorna todos os seus spaces. Porém, ele retorna apenas algumas informações básicas, como o id do space. - %{ Get-HfSpace $_.id -NoGradioSession }
No powershell, % é um alias para o comando foreach-object, que simplesmente repete o comando entre as chaves para cada resultado do comando anterior e permitindo acessa esse resultado com a variável $_. Ou seja, estamos executando o Get-HfSpace novamente, só que passando id de cada space. Com isso, o comando retorna muito mais detalhes.
Eu abri uma Issue para melhorar isso e trazer essas infos com uma única chamada apenas do Get-HfSpace -My
O parâmetro -NoGradioSession evita que o powershai tente abrir uma conexão com o Gradio, o que deixaria um pouco mais lento a execução. Isso não é necessário já que não queremos interagir com o Space, mas apenas obter metadados dele. - ?{ $_.runtime.hardware.requested -like ‘zero-*’ }
? é um alias para Where-Object, que é um comando que filtra o resultado.
No caso, estamos acessando a propriedade runtime.hardware de cada um dos spaces.
Nesse objeto teremos uma outra propriedade, chamada requested, que indica o hardware solicitado. Em observações, notei que ZeroGPU sempre começa com “zero-“ - select id,private
Por fim, usando o comando select (que é um alias de Select-Object) para trazer apenas as propriedades id e private, indicando se o space é privado ou não.
Rodando o comando acima com o meu usuário, ele retornou o seguinte:
Se você quiser, pode salvar o resultado completo em uma variável e explorar melhor depois:
$spaces = Get-HfSpace -My | %{ Get-HfSpace $_.id -NoGradioSession } | ?{ $_.runtime.hardware.requested -like 'zero-*' }
Code language: PowerShell (powershell)
O PowershAI é um módulo incrível e essa integração com o Hugging Face tem muitos recursos sensacionais para quem precisa obter informações e interagir com o Hugging Face! Neste link está uma doc básica de como usar o Hugging Face com o powershai.
Caso queira saber mais sobre o projeto, sugerir features, correções, etc., confira no git: rrg92/powershai: Powershell + AI
Apaixonado por tecnologia e veterano em bancos de dados SQL Server, este entusiasta agora se aventura no fascinante universo da Inteligência Artificial.
Atualmente é o Head de Inovação da Power Tuning, onde é o responsável por trazer novas ideias para produtos e serviços, que melhorem a produtividade do time ou a experiência do cliente! Com muita experiência em programação, hardware, sistemas operacionais, e mais, agora quer juntar tudo isso nesse novo mundo e trazer muitas ideias e conhecimento sobre Inteligência Artificial!
Neste blog, vai compartilhar sua jornada de aprendizado e uso da IA, focando em como transformar nossa maneira de resolver problemas e inovar.