The AI-based service to make recommendations based on user documents
The application is designed as a service with no user interface.
Once the application is started, it will automatically load documents from the classpath
(see application.yml
) into
the Milvus
vector database. Then you can make POST
requests to /ask/open-ai
.
API documentation will be available once the application is started
MinIO (Multi-Cloud Object Store) will be available once the application is started.
Login
: minioadmin, Password
: minioadmin
Java
- version21
Maven
- for building the applicationSpring Boot
- version3.4.3
Spring AI
- version1.0.0-M6
, modelgpt-4-turbo
Spring AI Tika
- for extract metadata and text from documentsSpring Boot Maven Plugin
- for create Docker-ImageDocker-Compose
- infrastructureMilvus
- vector database
spring-ai-with-openai-and-milvus-in-action/
├── src/main/
| ├── java/com/dudko/example/
| | ├── bootstrap/
| | ├── config/
| | ├── controller/ # controllers
| | ├── model/ # service level of the domain, used in business logic and controllers
| | ├── service/ # business logic
| ├── resources/
| | ├── templates/ # prompt and system message
| | ├── application.yml # configs
├── compose.yml # docker-compose file
├── pom.xml # artifact of Maven
├── postman_collection.json # collection of requests for Postman
❗Don't forget to set the OPENAI_API_KEY
environment variable before running the application.
docker-compose -f compose.yml up
Anatoly Dudko