Detta projekt är en Spring Boot-baserad tjänst för AI-chatt som exponerar ett REST-API för att skicka användarmeddelanden till en integrerad AI-leverantör via OpenRouter. Applikationen kör lokalt på http://localhost:8080 och innehåller även Swagger UI för att testa och dokumentera API:et.
För att köra projektet behöver du ha följande installerat:
- Java 21
- Maven
- Docker
Applikationen använder en OpenRouter-nyckel för att kommunicera med AI-tjänsten.
$env:OPENROUTER_API_KEY="din-api-nyckel"set OPENROUTER_API_KEY=din-api-nyckelexport OPENROUTER_API_KEY="din-api-nyckel"Kör följande kommando från projektets rotmapp:
mvn spring-boot:runOm du vill använda Maven Wrapper i stället:
./mvnw spring-boot:runI Windows PowerShell kan du använda:
.\mvnw.cmd spring-boot:runNär applikationen har startat är den tillgänglig på:
http://localhost:8080
Bygg först projektets JAR-fil:
mvn clean packageBygg sedan Docker-imagen:
docker build -t ai-chat-service .Starta containern och skicka in API-nyckeln som miljövariabel:
docker run --rm -p 8080:8080 -e OPENROUTER_API_KEY="din-api-nyckel" ai-chat-serviceApplikationen blir då tillgänglig på:
http://localhost:8080
Swagger UI finns på:
http://localhost:8080/swagger-ui.html
Följande endpoint används för att skicka en chattförfrågan:
POST http://localhost:8080/api/v1/chat
curl -X POST "http://localhost:8080/api/v1/chat" \
-H "Content-Type: application/json" \
-d "{\"personality\":\"helper\",\"message\":\"Hej! Kan du hjälpa mig att sammanfatta den här tjänsten?\",\"sessionId\":\"session-123\"}"{
"personality": "helper",
"message": "Hej! Kan du hjälpa mig att sammanfatta den här tjänsten?",
"sessionId": "session-123"
}