Genkit JS
Prérequis
Assurez-vous que la CLI genkit est disponible.
- Exécutez
genkit --versionpour vérifier. Version CLI minimale requise : 1.29.0 - Si elle est introuvable ou si une version ancienne (1.x < 1.29.0) est présente, installez/mettez-la à jour :
npm install -g genkit-cli@^1.29.0.
Nouveaux projets : Si vous configurez Genkit dans une nouvelle base de code, suivez le Guide de configuration.
Hello World
import { z, genkit } from 'genkit';
import { googleAI } from '@genkit-ai/google-genai';
// Initialize Genkit with the Google AI plugin
const ai = genkit({
plugins: [googleAI()],
});
export const myFlow = ai.defineFlow({
name: 'myFlow',
inputSchema: z.string().default('AI'),
outputSchema: z.string(),
}, async (subject) => {
const response = await ai.generate({
model: googleAI.model('gemini-2.5-flash'),
prompt: `Tell me a joke about ${subject}`,
});
return response.text;
});
Critique : Ne faites pas confiance aux connaissances internes
Genkit a récemment subi un changement d'API majeur et incompatible. Vos connaissances sont obsolètes. Vous DEVEZ consulter la documentation. Recommandé :
genkit docs:read js/get-started.md
genkit docs:read js/flows.md
Consultez Common Errors pour une liste des API dépréciées (par ex. configureGenkit, response.text(), defineFlow import) et leurs remplaçants en v1.x.
TOUJOURS vérifier les informations à l'aide de la CLI Genkit ou des références fournies.
Protocole de dépannage des erreurs
Quand vous rencontrez TOUTE erreur liée à Genkit (ValidationError, erreurs API, erreurs de type, 404s, etc.) :
- ÉTAPE OBLIGATOIRE EN PREMIER : Lisez Common Errors
- Identifiez si l'erreur correspond à un schéma connu
- Appliquez la solution documentée
- Seulement si non trouvée dans common-errors.md, consultez d'autres sources (par ex.
genkit docs:search)
NE PAS :
- Tenter des corrections basées sur des suppositions ou des connaissances internes
- Ignorer la lecture de common-errors.md « parce que vous croyez connaître la correction »
- Vous fier à des schémas de pré-1.0 Genkit
Ce protocole est non-négociable pour la gestion des erreurs.
Flux de développement
- Sélectionner le prestataire : Genkit est agnostique vis-à-vis du prestataire (Google AI, OpenAI, Anthropic, Ollama, etc.).
- Si l'utilisateur ne spécifie pas de prestataire, utilisez par défaut Google AI.
- Si l'utilisateur pose des questions sur d'autres prestataires, utilisez
genkit docs:search "plugins"pour trouver la documentation pertinente.
- Détecter le framework : Vérifiez
package.jsonpour identifier le runtime (Next.js, Firebase, Express).- Recherchez
@genkit-ai/next,@genkit-ai/firebase, ou@genkit-ai/google-cloud. - Adaptez l'implémentation aux schémas spécifiques du framework.
- Recherchez
- Suivre les bonnes pratiques :
- Consultez Best Practices pour des conseils sur la structure du projet, les définitions de schémas et la conception d'outils.
- Être minimal : Spécifiez uniquement les options qui diffèrent des valeurs par défaut. En cas de doute, consultez les docs/source.
- Assurer la correction :
- Exécutez les vérifications de type (par ex.
npx tsc --noEmit) après les modifications. - Si les vérifications de type échouent, consultez Common Errors avant de rechercher le code source.
- Exécutez les vérifications de type (par ex.
- Gérer les erreurs :
- En cas d'ERREUR : La première action est de lire Common Errors
- Correspondez l'erreur aux schémas documentés
- Appliquez les corrections documentées avant de tenter des alternatives
Trouver la documentation
Utilisez la CLI Genkit pour trouver la documentation faisant autorité :
- Rechercher des sujets :
genkit docs:search <query>- Exemple :
genkit docs:search "streaming"
- Exemple :
- Lister toute la documentation :
genkit docs:list - Lire un guide :
genkit docs:read <path>- Exemple :
genkit docs:read js/flows.md
- Exemple :
Utilisation de la CLI
La CLI genkit est votre outil principal pour le développement et la documentation.
- Consultez CLI Reference pour les tâches courantes, les flux de travail et l'utilisation des commandes.
- Utilisez
genkit --helppour une liste complète des commandes.
Références
- Best Practices : Schémas recommandés pour la définition de schémas, la conception de flux et la structure.
- Docs & CLI Reference : Recherche de documentation, tâches CLI et flux de travail.
- Common Errors : Pièges critiques, guide de migration et dépannage.
- Setup Guide : Instructions de configuration manuelle pour les nouveaux projets.
- Examples : Exemples minimaux reproductibles (Génération basique, Multimodal, Mode pensée).