Skip to content

A Spring Boot AI project to retrieve information about books and best-sellers based in a OpenAI assistant model.

Notifications You must be signed in to change notification settings

heliohdd/bookstore-assistant-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Projeto Java Web Spring Boot e Spring AI com OpenAI

O projeto Spring AI incorpora recursos e funcionalidade de Inteligência Artificial no desenvolvimento de aplicações Java de forma simples e rápida. O projeto Spring AI traz suporte para integração com os principais modelos de IA do mercado como o OpenAI ChatGPT, Azure OpenAI, Amazon Bedrock, GoogleAI Gemini, Ollama, MistralAI que icluem API's para chat, geração de imagem, incorporação, suporte para API síncrona e assíncrona, além de API Chat Completion que unifica a comunicação com modelos de IA disponíveis.

Sumário

Arquitetura básica da aplicação

Essa aplicação ilustra a criação de uma Bookstore Assistant AI utilizando Spring Boot e Spring AI fazendo a integração através da plataforma OpenAI conforme ilustrado abaixo. Bookstore Assistant AI

Pré-requisitos

  1. Ter uma conta na plataforma OpenAI.
  2. Criar uma "secret key" no campo API keys.
  3. Inserir a secret key no parâmetro spring.ai.openai.pai-key no arquivo aplication.properties pelo STS.

Configurar o projeto

  • Criar projeto Maven usando Spring Initializr e importar no STS.

  • Selecionar as dependências para Spring Web e OpenAI selecionando Java 21 e o Maven como gerenciador de dependências.

  • Sugestão: acrescentar no .gitignore:

.vscode
.metadata
.mvn

mvnw
mvnw.cmd

Desenvolvimento da aplicação

  • Criar os endpoints /informations, /reviews e /stream/informations na uri /bookstore no arquivo BookstoreAssistantController conforme disponível no repositório deste projeto em Bookstore Assistant AI.

Instalação

  • Clonar repositório [email protected]:heliohdd/bookstore-assistant-ai.git
  • Fazer o build do projeto ./mvnw clean package
  • Subir a aplicação java -jar /target/bookstore-assistant-ai-0.0.1-SNAPSHOT.jar
  • Conferir o resultado da API usando o Postman em http://localhost:8080 com os endpoints abaixo

Endpoints

HTTP Verb Endpoint Ação
GET /bookstore/informations Recebe informação geral sobre algum livro na forma de String
GET /bookstore/reviews Recebe resumo de um livro e biografia do autor na forma de Prompt Template
GET /bookstore/stream/informations Recebe informação geral sobre algum livro na forma assíncrona WebFlux

About

A Spring Boot AI project to retrieve information about books and best-sellers based in a OpenAI assistant model.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages