Neste tutorial, você será guiado durante a criação de um stylist pessoal impulsionado por IA generativa. Este tutorial aproveita o grande modelo de linguagem (LLM) IBM Granite Vision 3.2 para processar a entrada de imagens, e o Granite 3.2 com os mais recentes recursos de raciocínio aprimorado para formular ideias de trajes personalizáveis.
Com que frequência você se pega pensando: “O que devo vestir hoje? Nem sei por onde começar a escolher peças do meu armário!” Esse dilema é compartilhado por muitos de nós. Com o uso de modelos de inteligência artificial (IA) de ponta, isso não precisa mais ser uma tarefa assustadora.
Nossa solução orientada por IA é composta pelos seguintes estágios:
3. Após o envio da entrada, o modelo multimodal Granite Vision 3.2 itera sobre a lista de imagens e retorna a seguinte saída:
4. O modelo Granite 3.2 com raciocínio aprimorado atua como um estilista de moda. O LLM usa a saída do modelo Vision para fornecer uma recomendação de visual adequada para o evento do usuário.
5. A sugestão de visual, um quadro de dados de itens que o usuário carregou e as imagens na recomendação personalizada descrita são retornados ao usuário.
Você precisa de uma conta do IBM Cloud para criar um projeto do watsonx.ai .
Para utilizar a interface de programação de aplicativos (API) do watsonx, é necessário realizar as seguintes etapas. Observe que você também pode acessar este tutorial no GitHub.
Faça login no watsonx.ai usando sua conta do IBM Cloud.
Criar um projeto do watsonx.ai.
Você pode obter a ID do projeto a partir de seu projeto. Clique na guia Gerenciar. Em seguida, copie a ID do projeto da seção Detalhes da página Geral. Você precisa dessa ID para este tutorial.
Crie uma instância do serviço watsonx.ai Runtime (escolha o plano Lite, que é uma instância gratuita).
Gere uma chave de API.
Associe o serviço watsonx.ai Runtime ao projeto que você criou no watsonx.ai.
Para uma experiência mais interativa ao usar essa ferramenta de IA, clone o repositório do GitHub e siga as instruções de configuração no arquivo Leiame.md no projeto AI stylist para iniciar a aplicação Streamlit em sua máquina local. Caso contrário, se preferir seguir o passo a passo, crie um Jupyter Notebook e continue com este tutorial.
Precisamos de algumas bibliotecas e módulos para este tutorial. Certifique-se de importar os seguintes e, se eles não estiverem instalados, você pode resolver isso com uma instalação rápida do pip.
Para definir nossas credenciais, precisamos dos
Podemos usar a
O
Também podemos instanciar a interface do modelo usando a
Para codificar nossas imagens de uma maneira que seja digerível para o LLM, vamos codificá-las para bytes que, em seguida, decodificamos para representação UTF-8. Neste caso, nossas imagens estão localizadas no diretório local de imagens. Você pode encontrar imagens de exemplo no diretório de stylists de IA em nosso repositório do GitHub.
Agora que carregamos e codificamos nossas imagens, podemos consultar o modelo Vision. Nosso prompt é específico para a saída desejada para limitar a criatividade do modelo enquanto buscamos um resultado JSON válido. Armazenaremos a descrição, categoria e ocasião de cada imagem em uma lista chamada
Saídas:
{
"description": "A pair of polished brown leather dress shoes with a brogue detailing on the toe box and a classic oxford design.",
"category": "shoes",
"occasion": "formal"
}
{
"description": "A pair of checkered trousers with a houndstooth pattern, featuring a zippered pocket and a button closure at the waist.",
"category": "pants",
"occasion": "casual"
}
{
"description": "A light blue, button-up shirt with a smooth texture and a classic collar, suitable for casual to semi-formal occasions.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A pair of khaki pants with a buttoned waistband and a button closure at the front.",
"category": "pants",
"occasion": "casual"
}
{
"description": "A blue plaid shirt with a collar and long sleeves, featuring chest pockets and a button-up front.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A pair of bright orange, short-sleeved t-shirts with a crew neck and a simple design.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A pair of blue suede sneakers with white laces and perforations, suitable for casual wear.",
"category": "shoes",
"occasion": "casual"
}
{
"description": "A pair of red canvas sneakers with white laces, isolated on a white background.",
"category": "shoes",
"occasion": "casual"
}
{
"description": "A pair of grey dress pants with a smooth texture and a classic design, suitable for formal occasions.",
"category": "pants",
"occasion": "formal"
}
{
"description": "A plain white T-shirt with short sleeves and a crew neck, displayed from the front and back.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "A black short-sleeved t-shirt with a crew neck and a simple design.",
"category": "shirt",
"occasion": "casual"
}
{
"description": "Black pants with a zippered pocket and a buttoned fly, showing the waistband and pocket details.",
"category": "pants",
"occasion": "casual"
}
{
"description": "A pair of tan leather boots with a chunky sole and a high-top design, suitable for casual wear.",
"category": "shoes",
"occasion": "casual"
}
Agora que temos cada item de roupa e calçado categorizado, será muito mais fácil para o modelo de raciocínio gerar um traje para a ocasião selecionada. Vamos instanciar e consultar o modelo de raciocínio.
Para alinhar os nomes dos arquivos com as descrições das imagens, podemos enumerar a lista de descrições de imagens e criar uma lista de dicionários nos quais armazenamos a descrição, categoria, evento e nome de arquivo de cada item nos respectivos campos.
Agora, vamos consultar o modelo Granite 3.2 com um raciocínio para produzir um traje para nossos critérios especificados usando a
Saída:
Este é o meu processo de pensamento:
- A roupa precisa ser adequada para uma manhã casual no parque durante o outono.
- Selecionarei uma camisa, um par de cuecas e um par de sapatos que se encaixem na categoria de evento "casual".
- Vou evitar itens formais ou excessivamente vistosos e escolher itens confortáveis para as atividades no parque.
Aqui está minha resposta:
Para uma manhã casual no parque no outono, sugere-se o seguinte traje:
1. **Camisa**: uma camisa xadrez azul com gola e mangas longa (arquivo: 'image13.jpeg')
- A padronagem xadrez é clássica para o outono e combina bem com ambientes casuais de parques. As mangas longa oferecem proteção contra as temperaturas mais baixas da manhã.
2. **Calças**: calça caqui com cós abotoado e fechamento por botão na frente (arquivo: 'image7.jpeg')
- caqui é uma opção versátil que pode combinar com o ambiente casual e também proporcionar um bom equilíbrio com o camisa xadrez. É prático e confortável para caminhar.
3. **Sapatos**: um par de botas de couro bege com sola robusta e design de cano alto (arquivo: 'image3.jpeg')
- Botas de couro bege oferecem uma opção elegante e confortável. A sola robusta proporciona boa aderência e apoio, ideais para navegar pelas trilhas do parque ou em terreno irregular.
Essa combinação proporciona um visual relaxado e adequado para um passeio matinal casual, ao mesmo tempo em que considera o conforto e a praticidade.
Com essa descrição de equipamento gerada, também podemos exibir os itens de roupa que o modelo recomenda! Para isso, podemos simplesmente extrair os nomes dos arquivos. Caso o modelo mencione o mesmo nome de arquivo duas vezes, é importante verificar se a imagem já não foi exibida à medida que iteramos a lista de imagens. Podemos fazer isso armazenando as imagens exibidas na
Neste tutorial, você criou um sistema que usa IA para fornecer orientação de estilo para o evento específico de um usuário. Usando fotos ou capturas de tela das roupas do usuário, os trajes são personalizados para atender aos critérios especificados. O modelo Granite-Vision-3-2-2b foi crítico para rotular e categorizar cada item. Além disso, o modelo Granite-3-2-8B-instruct aproveitou seus recursos de raciocínio para gerar ideias personalizadas de trajes.
Algumas das próximas etapas para desenvolver essa aplicação podem incluir:
Treine, valide, ajuste e implemente recursos de IA generativa, modelos de base e recursos de aprendizado de máquina com o IBM watsonx.ai, um estúdio empresarial de última geração para construtores de IA. Crie aplicações de IA em uma fração do tempo com uma fração dos dados.
Use a IA a serviço de sua empresa com a experiência e o portfólio de soluções líder do setor da IBM à sua disposição.
Reinvente os fluxos de trabalho e operações críticos adicionando IA para maximizar experiências, tomadas de decisão em tempo real e valor de negócios.