Concerto for Java and AI
January 29, 2026 ยท View on GitHub
Stack
- Java 25 (with GraalVM)
- Spring Boot 4.0 (with Spring AI)
- Vaadin
- Arconia
Mousike
Mistral AI
The application consumes chat and embedding models from the Mistral AI platform.
Create an account
Visit console.mistral.ai and sign up for a new account. You can choose the "Experiment" plan, which gives you access to the Mistral APIs for free.
Configure API Key
In the Mistral AI console, navigate to API Keys and generate a new API key. Copy and securely store your API key on your machine as an environment variable. The application will use it to access the Mistral AI API.
export SPRING_AI_MISTRAL_AI_API_KEY=<YOUR-API-KEY>
OpenAI
The application consumes models from the OpenAI platform.
Create an account
Visit platform.openai.com and sign up for a new account.
Configure API Key
In the OpenAI console, navigate to Dashboard > API Keys and generate a new API key. Copy and securely store your API key on your machine as an environment variable. The application will use it to access the OpenAI API.
export SPRING_AI_ OPENAI_API_KEY=<YOUR-API-KEY>
Running the application
Run the application.
./gradlew bootRun
Alternatively, you can use the Arconia CLI:
arconia dev
Under the hood, the Arconia framework will automatically spin up the needed backing services using Arconia Dev Services and Testcontainers:
- Docling document processor
- Phoenix AI observability platform
- PostgreSQL database.
The application will be accessible at http://localhost:8080.
Accessing Phoenix
The application logs will show you the URL where you can access the Phoenix AI observability platform.
...Phoenix UI: http://localhost:<port>
By default, traces are exported via OTLP using the HTTP/Protobuf format.