Equipe - Marcelalovers

CHECKPOINT 1

Nossa proposta inicial é implementar uma nova funcionalidade para o Magalucloud, que irá integrar o Terraform com todas as funcionalidades oferecidas pela plataforma. O objetivo é incorporar as funcionalidades da API do Terraform diretamente no ambiente do Magalucloud, permitindo que os usuários criem projetos de forma mais fácil e intuitiva por meio de uma interface amigável.

Além disso, planejamos utilizar inteligência artificial para automatizar a geração de arquivos Terraform a partir das descrições fornecidas pelos usuários, garantindo a correção e a coerência em todos os processos.

2 curtidas

CHECKPOINT 2

Enfrentamos alguns desafios no treinamento da IA de texto. Inicialmente, planejamos utilizar os serviços da OpenAI, mas percebemos que as funcionalidades de que precisávamos estavam disponíveis apenas nas opções pagas. Com isso, optamos por usar o modelo Llama. Estruturamos prompts iniciais para contextualizar as conversas, desenvolvemos uma API para facilitar a interação com a IA e começamos a criar um exemplo de uso na web.

1 curtida

CHECKPOINT 3

Desenvolvemos uma POC implementando uma nova opção no site MagaluCloud que chamamos de “MagaluCloudForm”. A nova tela tem um exemplo funcional de chat com a Lu do Magalu, em que ela auxilia o usuário a utilizar um serviço da MagaluCloud utilizando o Terraform. A ideia é que o usuário escolha qual serviço deseja utilizar, converse com a IA enviando os dados necessários e a nossa API, integrada com a IA Llama, retorna o arquivo .tf pronto

RESULTADO:

No início do nosso projeto, tínhamos a ambiciosa visão de implementar uma IA altamente treinada, capaz de gerar arquivos do Terraform incluindo todos os tipos de serviços oferecidos pela MGC. Além disso, planejamos criar um caso de uso que simulasse a funcionalidade dessa IA diretamente no site da MGC. Contudo, ao refinarmos nosso plano e após conversas com profissionais da MGC, percebemos que o desafio era maior do que imaginávamos. Diante do tempo limitado e da complexidade envolvida, tornou-se claro que alcançar nossas metas iniciais seria uma tarefa extremamente complicada.

Dessa forma, decidimos ajustar nossas expectativas e simplificar nossos objetivos. Optamos por desenvolver uma IA que não precisaria ser tão robusta quanto a originalmente planejada. Também decidimos não implementar a interface do front-end, o que nos permitiria focar em um produto viável. Assim, nossa entrega final consistiria em uma API que pudesse se comunicar com a IA e retornar arquivos Terraform (TF) utilizáveis, gerados com base nas interações com o usuário.

Durante o processo de desenvolvimento, enfrentamos significativas dificuldades no treinamento da IA. Inicialmente, exploramos os serviços da OpenAI, mas a questão dos custos se tornou um grande obstáculo, então decidimos migrar para o modelo Llama, por este ser gratuito. Encontramos diversos desafios relacionados à implementação e à integração da IA com nossa API, mas, apesar desses contratempos, após um período de aprendizado e adaptação, conseguimos desenvolver uma API que se comunicava efetivamente com o Llama, permitindo que trocássemos informações de forma mais fluida.

Além disso, desenvolvemos uma prova de conceito (POC) que introduzimos no site MagaluCloud, denominada “MagaluCloudForm”. Esta nova tela apresenta um exemplo funcional de chat com a Lu do Magalu, que auxilia os usuários na utilização dos serviços da MagaluCloud por meio do Terraform. Reconhecemos que, para muitos usuários leigos, entender os consoles e a documentação técnica pode ser um desafio significativo. Com o nosso chat, buscamos eliminar essa barreira, permitindo que os usuários interajam de forma intuitiva e sem a necessidade de conhecer a documentação ou o formato do Terraform. No contexto da nossa implementação, focamos no serviço de Virtual Machine. O usuário pode escolher qual serviço deseja utilizar, interagir com a IA enviando os dados necessários, e nossa API, integrada à IA Llama, retorna o arquivo .tf pronto para uso. Essa abordagem torna a utilização dos serviços da MagaluCloud mais acessível e descomplicada, promovendo uma experiência mais fluida e amigável.

Durante o processo de desenvolvimento, ao realizar testes com a chave SSH pública no serviço da MGC, nos deparamos com um bug que impedia a aceitação da nossa chave. Buscamos alternativas, incluindo a possibilidade de utilizar uma chave de outra equipe, mas essa solução revelou-se ineficaz, pois também é necessário ter acesso à chave privada, o que não é desejável.

Enquanto metade da equipe se dedicava ao aprimoramento da IA, a outra metade focou na implementação do exemplo de uso prático. Ao longo do projeto, aprendemos muito sobre as limitações e possibilidades das tecnologias que utilizamos.

Cada desafio superado nos proporcionou insights valiosos e reforçou a importância da colaboração entre os integrantes da equipe.

Para além da nossa implementação, nossa ideia incluiria o treinamento da nossa IA de forma mais precisa, através de fine-tuning do modelo por meio de uma maior amostragem de casos de uso, ao invés de uma implementação por contexto. Acreditamos que, com um modelo suficientemente treinado, é possível gerar scripts terraform com alto grau de confiabilidade para os usuários finais.

Não tivemos tempo de finalizar nossa aplicação. Faltou formatarmos e posicionarmos melhor o arquivo .tf gerado pela IA e também faltou aprimorar o fluxo de chat, de forma que a IA pergunte as especificações da máquina desejada, uma de cada vez.

link do repositório: GitHub - digo-smithh/hackathon-terraform

Também fazia parte da nossa ideia que, através da API da MagaluCloud, fosse possível tanto fornecer detalhes da infraestrutura para o chatbot como implementar um botão de deploy automático, assim que o usuário concluir a verificação do script. Também foi pensada a solução de uma interface gráfica para tornar o processo mais intuitivo ao usuário, em relação à alocação de recursos computacionais e billing.

PLATAFORMA WEB E TESTANDO

No caso de teste, perceba que as mensagens são construídas em chunks, e separada em texto e resposta para o arquivo .tf.

Link para o vídeo : WhatsApp Video 2024-11-01 at 05.13.05.mp4 - Google Drive

1 curtida