Intégration avec l'API ChatGPT en TypeScript : guide étape par étape

Formateur Python en ligne pour débutants

Apprenez Python facilement sans surcharge théorique. Résolvez des tâches pratiques avec vérification automatique et écrivez du code directement dans le navigateur.

Start Course

Comment ChatGPT et TypeScript deviennent les meilleurs amis

Imaginez : vous écrivez du code en TypeScript, et soudain votre service acquiert un super-pouvoir — la capacité de comprendre et de générer du texte humain. L'API ChatGPT rend cela réalité. Dans cet article, nous ne nous contenterons pas de connecter l'API — nous construirons un module complet pour communiquer avec le réseau neuronal, qui sera robuste, typé et prêt pour la production.

Si vous pensez que l'intégration de l'IA relève de la science-fiction ou est réservée aux géants comme Google, je suis heureux de vous rassurer : OpenAI fournit une API REST simple, et TypeScript avec son typage strict rend le travail sûr et prévisible. Passons à la pratique.



Préparation de l'environnement : ce qu'il faut installer

Avant d'écrire du code, assurons-nous que vous avez tout le nécessaire. Pour travailler avec l'API ChatGPT en TypeScript, vous aurez besoin de :

  • Node.js version 18 ou supérieure (je recommande la 20 LTS)
  • npm ou yarn pour la gestion des paquets
  • Clé API OpenAI — obtenez-la sur platform.openai.com
  • Éditeur de code (VS Code, WebStorm — celui qui vous convient)

Créons un nouveau projet et installons les dépendances :

mkdir chatgpt-typescriptcd chatgpt-typescriptnpm init -ynpm install openai dotenvnpm install -D typescript @types/node ts-node

Remarque : nous utilisons le SDK officiel d'OpenAI, qui s'entend parfaitement avec TypeScript. Le paquet dotenv sera nécessaire pour stocker en toute sécurité la clé API.



Configuration de TypeScript et des variables d'environnement

Créons le fichier tsconfig.json avec les paramètres de base :

{  "compilerOptions": {    "target": "ES2020",    "module": "commonjs",    "lib": ["ES2020"],    "outDir": "./dist",    "rootDir": "./src",    "strict": true,    "esModuleInterop": true,    "skipLibCheck": true,    "forceConsistentCasingInFileNames": true  },  "include": ["src/**/*"]}

Créons maintenant le fichier .env à la racine du projet :

OPENAI_API_KEY=votre_clé_super_secrète

Important : ajoutez .env dans .gitignore pour ne pas commiter accidentellement la clé dans le dépôt !



Écrire la première requête à ChatGPT en TypeScript

Créons le dossier src et le fichier index.ts. Commençons simplement : envoyons un message et obtenons une réponse.

import OpenAI from 'openai';import dotenv from 'dotenv';

dotenv.config();

const openai = new OpenAI({ apiKey: process.env.OPENAI_API_KEY,});

async function chatWithGPT(prompt: string): Promise<string> { try { const response = await openai.chat.completions.create({ model: 'gpt-4', messages: [ { role: 'system', content: 'Tu es un assistant utile.' }, { role: 'user', content: prompt }, ], temperature: 0.7, max_tokens: 500, });

return response.choices[0]?.message?.content || 'Pas de réponse'; } catch (error) { console.error('Erreur lors de la requête à ChatGPT :', error); throw error; }}

// Utilisation(async () => { const answer = await chatWithGPT('Raconte une courte blague sur les programmeurs'); console.log('ChatGPT dit :', answer);})();

Exécutons le code avec la commande npx ts-node src/index.ts. Si tout est correctement configuré, vous verrez la réponse du réseau neuronal. Remarquez le typage : TypeScript suggère automatiquement la structure de l'objet response, ce qui rend le développement confortable.



Analyse des paramètres clés

  • model : gpt-4 — le modèle le plus intelligent à ce jour. Pour économiser, vous pouvez utiliser gpt-3.5-turbo.
  • messages

Blogs

Book Recommendations