Spring AI + Angular: aplicações de chat com IA generativa
Aprenda a criar chats com Spring AI e Angular, integrar Gemini e Azure OpenAI, persistir conversas no MySQL e desenvolver uma API REST.
Do primeiro ChatClient aos conceitos de IA
A trilha começa pelos fundamentos necessários para integrar modelos generativos a uma aplicação Java: modelos de IA, prompts, tokens e RAG. Em seguida, o primeiro projeto usa o Spring AI para criar um “Hello, World!” com um cliente de chat. A configuração de uma chave de API e os cuidados para gerenciar segredos no projeto também fazem parte dessa etapa. Java, Maven, IntelliJ e Spring Initializr aparecem no fluxo de preparação do ambiente.
Provedores de modelos e interface Angular
Com o ChatClient funcionando, as aulas adaptam a integração para o Google Gemini e o Azure OpenAI. No caso do Azure, o exemplo inclui a criação do serviço e o deploy de um modelo. Depois, a trilha monta um projeto Angular para servir de front-end à aplicação Spring AI.
A interface começa como um clone de chat: Angular Signals para guardar e ler valores no template, um formulário com envio pelo botão ou pela tecla Enter e uma resposta simulada em JavaScript. Na continuação, o front-end conversa com a API. O exemplo adiciona rolagem automática das mensagens, um service Angular com `inject()`, um proxy para comunicação com o back-end e Records como DTOs no Spring.
Memória e persistência das conversas
O segundo exemplo amplia o chat para manter contexto entre mensagens. A ChatMemory API trabalha com advisors, componentes que interceptam e enriquecem a interação com o modelo. A implementação em memória usa `InMemoryChatMemoryRepository` e um `HashMap` para guardar o histórico durante a execução.
A trilha avança então para persistência em banco relacional com MySQL e `JdbcChatMemoryRepository`. O trabalho inclui iniciar o banco com Docker Compose, integrar essa configuração ao Spring Boot, conectar um DataSource pelo IntelliJ e criar a tabela usada pelo ChatClient. Assim, o histórico deixa de depender apenas da memória em tempo de execução.
Logs, tokens e API REST
Os advisors também entram na observabilidade do chat: uma aula mostra como registrar mensagens e acompanhar o uso de tokens em tempo real. A personalização de `conversation_id` permite controlar e agrupar o histórico das interações.
No encerramento, o exemplo transforma o chat com memória em uma API REST para iniciar conversas, enviar mensagens a um chat existente, consultar seu histórico e listar os chats criados. A playlist reúne 11 vídeos, com duração total de 4 horas, 25 minutos e 41 segundos. O código-fonte dos exemplos está disponível no [repositório spring-ai-angular](https://github.com/loiane/spring-ai-angular).
Informações deste conteúdo
Categoria: Cursos
Tecnologias: APIs REST, Angular, Azure OpenAI, Docker, Google Gemini, IA Generativa, Java, MySQL, Spring Boot, Spring Framework
Carreiras: Desenvolvedor Angular, Desenvolvedor Back-end, Desenvolvedor Front-end, Desenvolvedor Java, Desenvolvedor de APIs, Desenvolvedor de Aplicações com IA
Idiomas: Português
Tags: angular, apisrest, azureopenai, chatgpt, cursosdejava, cursosdespring, docker, gemini, iagenerativa, inteligenciaartificial, java, mysql, restapi, spring, springboot, tokens