Costruire un Servizio Meteo con Genkit e AI

Panoramica

Questo progetto dimostra come costruire un servizio meteorologico potenziato dall’IA utilizzando Genkit, TypeScript, OpenWeatherAPI e modelli GitHub. L’applicazione mostra modelli moderni di Node.js e tecniche di integrazione dell’IA.

Prerequisiti

Prima di iniziare, assicurati di avere quanto segue:

  1. Node.js installato sul tuo computer
  2. Account GitHub e token di accesso per le API di GitHub
  3. Una chiave OpenWeatherAPI per recuperare i dati meteorologici
  4. CLI Genkit installato sul tuo computer

Approfondimento tecnico

Configurazione dell’IA

La configurazione di base dell’IA è inizializzata con l’integrazione del plugin Genkit e GitHub. In questo caso, useremo il modello OpenAI GPT-3:

TypeScript

 

Implementazione dello Strumento Meteorologico

L’applicazione definisce uno strumento meteorologico personalizzato utilizzando la convalida dello schema Zod:

TypeScript

 

Definizione del Flusso dell’IA

Il servizio espone un flusso dell’IA che elabora le richieste meteorologiche:

TypeScript

 

Configurazione del Server Express

L’applicazione utilizza il plugin Genkit Express per creare un server API:

TypeScript

 

Codice Completo

Il codice completo per il servizio meteorologico è il seguente:

TypeScript

 

Configurazione e Sviluppo

1. Installa le dipendenze:

Shell

 

2. Configura le variabili d’ambiente:

Shell

 

3. Avvia il server di sviluppo:

Shell

 

4. Per eseguire il progetto in modalità debug e impostare i breakpoint, puoi eseguire:

Shell

 

Poi, avvia il debugger nel tuo IDE. Vedi il file .vscode/launch.json per la configurazione.

5. Se vuoi costruire il progetto, puoi eseguire:

Shell

 

6. Esegui il progetto in modalità produzione:

Shell

 

Dipendenze

Dipendenze principali

  • 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

Dipendenze di sviluppo

  • tsx: ^4.19.2
  • typescript: ^5.7.2

Configurazione del progetto

  • Usa i moduli ES ("type": "module")
  • TypeScript con risoluzione del modulo NodeNext
  • Directory di output: lib
  • Supporto completo per TypeScript con definizioni di tipo

Licenza

Apache 2.0

Risorse

Conclusione

Questo progetto dimostra come costruire un servizio meteorologico utilizzando Genkit in Node.js con integrazione AI. L’applicazione presenta modelli moderni di Node.js e tecniche di integrazione AI.

Puoi trovare il codice completo di questo esempio nel repository GitHub.

Buon coding!

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