Hub documentation
Usando modelos Unity Sentis do Hugging Face
Usando modelos Unity Sentis do Hugging Face
Unity 3D é um dos motores de jogos mais populares do mundo. Unity Sentis é o motor de inferência que roda no Unity 2023 ou superior. Trata-se de uma API que permite integrar e executar modelos de redes neurais em seu jogo ou aplicativo com facilidade, aproveitando a aceleração por hardware. Como o Unity pode exportar para muitos formatos diferentes, incluindo PC, mobile e consoles, isso significa que é uma maneira simples de executar modelos de redes neurais em muitos tipos diferentes de hardware.
Explorando Modelos Sentis no Hub
Você encontrará modelos unity-sentis filtrando à esquerda na página de modelos.
Todos os modelos Sentis no Hub vêm com código e instruções para facilitar o início do uso do modelo no Unity. Todos os modelos Sentis no namespace unity (por exemplo, unity/sentis-yolotinyv7) foram validados para funcionar, então você pode ter certeza de que eles serão executados no Unity.
Para obter mais detalhes sobre o uso do Sentis, você pode ler sua documentação. Para obter ajuda de outras pessoas que usam o Sentis, você pode perguntar em seu fórum de discussões
Tipos de arquivos
Cada repositório conterá vários tipos de arquivos:
- Arquivos
sentis: estes são os principais arquivos do modelo que contêm as redes neurais que rodam no Unity. ONNXfiles: Este é um formato alternativo que você pode incluir além dos arquivos Sentis, ou em vez deles. Pode ser útil para visualização com ferramentas de terceiros, como Netron.csarquivo: estes são arquivos C# que contêm o código para executar o modelo no Unity.info.json: Este arquivo contém informações sobre os arquivos no repositório.- Arquivos de dados. Estes são outros arquivos necessários para executar o modelo. Podem incluir arquivos de vocabulário, listas de nomes de classes, etc. Alguns arquivos típicos terão extensões
jsonoutxt. README.md. Este é o cartão do modelo. Ele contém instruções sobre como usar o modelo e outras informações relevantes.
Executando o modelo
Sempre consulte as instruções no cartão do modelo. É esperado que você tenha algum conhecimento de Unity e algum conhecimento básico de C#.
Abra o Unity 2023 ou superior e crie uma nova cena.
Instale o pacote
com.unity.sentisa partir do gerenciador de pacotes.Baixe os arquivos do seu modelo (
*.sentis) e os arquivos de dados e coloque-os na pasta StreamingAssets, que é uma subpasta dentro da pasta Assets. (Se essa pasta não existir, você pode criá-la).Coloque seu arquivo C# em um objeto na cena, como a Main Camera.
Consulte o cartão do modelo para verificar se há outros objetos que você precisa criar na cena.
Na maioria dos casos, fornecemos apenas a implementação básica para que você comece a trabalhar. Cabe a você encontrar usos criativos. Por exemplo, você pode querer combinar dois ou mais modelos para fazer coisas interessantes.
Compartilhando seus próprios modelos do Sentis
Incentivamos você a compartilhar seus próprios modelos Sentis no Hugging Face. Esses podem ser modelos que você treinou você mesmo ou modelos que você converteu para o formato Sentis e testou para executar no Unity.
Forneça os modelos no formato Sentis para cada repositório que você enviar. Isso fornece uma verificação extra de que eles serão executados no Unity e também é o formato preferido para modelos grandes. Você também pode incluir as versões originais ONNX dos arquivos de modelo.
Forneça um arquivo C# com uma implementação mínima. Por exemplo, um modelo de processamento de imagem deve ter código que mostre como preparar a imagem para a entrada e construir a imagem a partir da saída. Alternativamente, você pode linkar para algum código de exemplo externo. Isso facilitará para que outros baixem e usem o modelo no Unity.
Forneça os arquivos de dados necessários para executar o modelo. Por exemplo, arquivos de vocabulário.
Por fim, forneça um arquivo info.json, que lista os arquivos do seu projeto. Isso ajuda a contar os downloads. Alguns exemplos do conteúdo de info.json são:
{
"code": [ "mycode.cs"],
"models": [ "model1.sentis", "model2.sentis"],
"data": [ "vocab.txt" ]
}Ou se o exemplo de código for externo:
{
"sampleURL": [ "http://sampleunityproject"],
"models": [ "model1.sentis", "model2.sentis"]
}Informações adicionais
Também temos alguns projetos de exemplo completos para ajudar você a começar a usar o Sentis.
Update on GitHub