Explorando Padrões de Comunicação para Servir Sistemas Inteligentes
Washington Luiz Meireles de Lima (luiz.meireles@usp.br)
Ygor Tavela Alves (ygor_tavela@usp.br)
Orientadores:
Prof. Dr. Alfredo Goldman
Ms. Renato Cordeiro Ferreira
Resumo:
Sistemas Inteligentes fazem a ponte entre usuários e o Aprendizado de Máquina (ML) para atingir objetivos significativos. Em particular, a inteligência do ML evolui e melhora com o tempo, analisando como os usuários interagem com o sistema. Tais sistemas possuem três eixos de mudança: código, dados e modelo. Isso amplia a complexidade de desenvolvimento se comparado a sistemas tradicionais, o que traz à tona novos desafios. Dentre eles, está a escalabilidade, que engloba as etapas de coleta de dados, engenharia de características (features), reinamento do modelo de ML, e o serviço do modelo de ML em produção. Nessa última etapa, uma decisão arquitetural importante é a escolha do padrão de comunicação utilizado para servir o modelo, que pode ser classificado de acordo com o tipo de responsividade: síncrono ou assíncrono. No contexto de sistemas inteligentes, a escolha de um padrão de comunicação pode não se basear apenas em premissas já conhecidas do desenvolvimento de sistemas tradicionais. Por isso, o objetivo desta pesquisa é de explorar trade-offs de diferentes padrões, em particular, a API RPC (síncrona) e a Mensageria (assíncrona).