Tous les projets

IA & données

Chatbot API · Spring Boot + OpenAI

Une API REST Spring Boot qui relie GPT-4o-mini d’OpenAI à un backend Java, sans jamais exposer la clé d’API dans le navigateur.

  • Projet individuel
clé d’API exposée au navigateur
0
endpoints : chat et santé
2

01Le point de départ

Contexte & mission

Le problème

Appeler un LLM directement depuis le navigateur expose la clé d’API. Le bon endroit pour cette intégration, c’est le backend.

La mission

Exposer un endpoint de chat propre en Java, qui relaie le message au modèle et renvoie une réponse structurée.

Mon rôle

Projet conçu et développé seul.

02Réalisation

Ce que j’ai fait

  1. Endpoint de chat

    POST /api/chat reçoit un message et renvoie la réponse générée en JSON structuré.

  2. Intégration OpenAI

    Le service appelle GPT-4o-mini via RestTemplate ; la clé reste côté serveur.

  3. Code en couches

    Contrôleur, service, DTO de requête et de réponse, et configuration séparés.

  4. Prêt pour un front-end

    Endpoint de santé et configuration CORS pour brancher une interface web.

03Conception

Architecture

Le contrôleur reçoit la requête, le service appelle l’API OpenAI puis construit le DTO de réponse renvoyé au client.

Le trajet d’un message
  1. ClientPOST /api/chat
  2. ChatController
  3. ChatServiceRestTemplate
  4. OpenAIGPT-4o-mini
  5. ChatResponseDTO JSON

04Impact

Résultats

  • Un LLM intégré proprement dans un backend Java.
  • Une API prête à servir n’importe quel front-end.

05Bilan

Ce que j’en retiens

Ce que ce projet démontre

Que j’intègre un LLM au bon endroit : côté serveur, derrière un contrat REST clair.

06Technologies

Stack complète

  • Java 17
  • Spring Boot 3.4
  • Spring Web
  • RestTemplate
  • Maven
  • OpenAI API
  • GPT-4o-mini