Construction d’un service météorologique avec Genkit et l’IA

Aperçu

Ce projet montre comment construire un service météorologique amélioré par l’IA en utilisant Genkit, TypeScript, OpenWeatherAPI et les modèles GitHub. L’application met en avant des modèles Node.js modernes et des techniques d’intégration de l’IA.

Prérequis

Avant de commencer, assurez-vous de disposer des éléments suivants :

  1. Node.js installé sur votre machine
  2. Un compte GitHub et un jeton d’accès pour les API GitHub
  3. Une clé OpenWeatherAPI pour récupérer les données météorologiques
  4. Genkit CLI installé sur votre machine

Approfondissement technique

Configuration de l’IA

La configuration de base de l’IA est initialisée avec l’intégration de Genkit et du plugin GitHub. Dans ce cas, nous allons utiliser le modèle OpenAI GPT-3:

TypeScript

 

Implémentation de l’outil météorologique

L’application définit un outil météorologique personnalisé en utilisant la validation du schéma Zod :

TypeScript

 

Définition du flux de l’IA

Le service expose un flux d’IA qui traite les demandes météorologiques :

TypeScript

 

Configuration du serveur Express

L’application utilise le plugin Express de Genkit pour créer un serveur API :

TypeScript

 

Code complet

Le code complet du service météorologique est le suivant :

TypeScript

 

Configuration et développement

1. Installer les dépendances :

Shell

 

2. Configurer les variables d’environnement :

Shell

 

3. Démarrer le serveur de développement :

Shell

 

4. Pour exécuter le projet en mode débogage et définir des points d’arrêt, vous pouvez exécuter :

Shell

 

Ensuite, lancez le débogueur dans votre IDE. Consultez le fichier .vscode/launch.json pour la configuration.

5. Si vous souhaitez construire le projet, vous pouvez exécuter :

Shell

 

6. Exécutez le projet en mode production :

Shell

 

Dépendances

Dépendances Principales

  • genkit : ^1.0.5
  • @genkit-ai/express : ^1.0.5
  • openweather-api-node : ^3.1.5
  • genkitx-github : ^1.13.1
  • dotenv : ^16.4.7

Dépendances de Développement

  • tsx : ^4.19.2
  • typescript : ^5.7.2

Configuration du Projet

  • Utilise des Modules ES ("type": "module")
  • TypeScript avec résolution de module NodeNext
  • Répertoire de sortie : lib
  • Support complet de TypeScript avec des définitions de type

Licence

Apache 2.0

Ressources

Conclusion

Ce projet démontre comment construire un service météorologique en utilisant Genkit en Node.js avec une intégration AI. L’application met en avant des modèles Node.js modernes et des techniques d’intégration AI.

Vous pouvez trouver le code complet de cet exemple dans le dépôt GitHub.

Bon codage!

Source:
https://dzone.com/articles/building-weather-service-genkit-ai