Este é o segundo desafio do bluegame, cada vez o seu alienware está mais próximo. Leia atentamente as instruções abaixo e boa sorte!
-
Vocé precisará de uma conta na IBM Cloud. Caso ainda não tenha, corra e crie logo a sua clicando aqui.
-
Baixe e instale a ferramenta Cloud-foundry CLI, caso ainda não tenha feito.
-
Faça um fork deste projeto e clone (o fork que você acabou de criar) para sua máquina.
-
Crie o serviço Visual Recognition (Free) em sua conta clicando aqui. Permaneça na página para qual foi direcionado após a criação do serviço.
-
Clique em
Service credentials, agora clique em New Credential (o botão azul que fica do lado direito da página). Após aparecer a modal de criação (modal com título Add new credential), apenas clique emAdd. -
Uma vez criada a credencial, clique na action
View credentials. Copie o JSON gerado para um arquivo temporário, logo iremos usá-lo. -
Ainda na mesma página, volte para a sessão
Manage. -
Clique em
Visual Recognition Tool (Beta). Caso abra uma tela de login, clique emLog in with IBM ID. -
Lembra do arquivo temporário contendo o JSON que você acabou criar? Copie o valor da chave
api_key, clique no botão roxo onde está escrito "API Key" e cole. Pronto agora iremos criar nosso classificador. Detalhe muito importante, é pedido um tempo de aproximadamente 5 minutos para que sua nova api key seja ativada, deste modo apenas aguarde um momento para conseguir prosseguir. -
Para este desafio usaremos Star Wars como tema, para isso você irá precisar de pelo menos 10 imagens dos seguintes personagens:
Darth VaderLuke SkywalkerChewbaccaLeia OrganaYoda
-
Esse passo é opcional mas pode melhorar seu classificador. Pesquise por imagens que sejam parecidas com as dos personagens do
passo 10mas não sejam eles de fato. Por exemplo, um cachorro que pareça o Chewbacca. -
Agora que já tem as imagens crie um arquivo
zippara cada personagem, por exemploYoda.zip. Caso tenha efetuado o passo 11, crie umzipcontendo todas as imagens encontradas (imagens parecidas com as dos personagens, mas que não sejam eles de fato). -
Clique em
Create classifiere escolha um nome para seu classificador. -
Precisamos criar uma classe para cada personagem. Crie as seguintes classes (para adicionar mais boxes clique no botão
Add Classque está no cando inferior esquerdo):Darth VaderLuke SkywalkerChewbaccaLeia OrganaYoda
-
Agore iremos fazer o upload de cada arquivo zip criado no
passo 12para a IBM Cloud. Note que o nome da classe que criamos é idêntico ao nome dos personagens, desta forma faça o upload do arquivo zip de cada personagem para sua respectiva classe e clique emCreate. Caso tenha feito o passo11, faça o upload do arquivo zip contendo todas a imagens similares para a classeNegativeque é mostrada na tela e clique emCreate. -
Após criado seu classificador, será mostrado na tela que ele esta em processo de
training. Quando este mudar paraready, prossiga para o passo17. -
Precisamos agora copiar o identificador do seu classificador que é gerado a patir do nome que você escolheu. Por exemplo, se escolheu
Star Warscomo nome para seu clasificador, o id gerado será algo comoStarWars_1234567890. Ele é mostrado na box do seu classificador em cinza, logo abaixo do nome do classificador. Copie o valor do identificador para o arquivo temporário que criamos no passo6. -
Crie um arquivo chamado
.envno diretório root do repo clonado, usando o arquivoenv.samplecomo template, usando o comando:
cp env.sample .env
O arquivo .env deve conter, em um primeiro momento, o seguinte conteúdo:
VR_API_KEY=
VR_CLASSIFIER_ID=
- Lembra do arquivo temporário? Agora iremos usá-lo. Copie o valor de
api_key, e do identificador que adicionamos no arquivo no passo17para as respectivas variáveisVR_API_KEYeVR_CLASSIFIER_IDno arquivo.env. Agora o arquivo.envdeverá estar assim:
VR_API_KEY=<VALOR de api_key COPIADO SEM ÁSPAS>
VR_CLASSIFIER_ID=<IDENTIFICADOR DO CLASSIFICADOR>
- Estamos quase lá. Agora e dite o arquivo
manifest.ymle mude<sua-id>para que seja a mesma id que você recebeu em seu email de inscrição. Esse passo é muito importante para posterior validação de seu desafio.
---
applications:
- name: <sua-id>-visualrecognition
path: .
memory: 256M
instances: 1
buildpack: sdk-for-nodejs
route: mybluemix.net
command: npm start
disk_quota: 1024M-
A partir de agora você precisa instalar (caso ainda não tenha) o NodeJS e o geranciador de pacotes NPM. Siga as instruções disponíveis em https://docs.npmjs.com/getting-started/installing-node. Detalhe muito importante, você precisa pelo menos da versão 8.9.4 do node.
-
Com tudo instalado. Execute o seguinte comando para instalar as dependências do projeto:
npm install
- Para executar a aplicação localmente execute o comando:
npm run dev
-
Acesse o endereço http://localhost:8080.
-
Para testar sua applicação, envie uma das imagens que usou no classificador e verifique se a resposta está correta, caso não esteja, verifique se efetuou corretamente o passo
15. -
Precisamos agora logar na IBM Cloud, para isto execute o seguinte comando.
cf api https://api.ng.bluemix.net
cf login
- Após feito o login, execute o seguinte comando para fazer o deploy de sua aplicação.
npm run build && cf push- Veja que legal, você consiguiu terminar o desafio, agora acesse a página do bluegame no facebook e diga para o bot:
acabei.