Genkit Dart
Genkit Dart est un SDK IA pour Dart qui fournit une interface unifiée pour la génération de code, les sorties structurées, les outils, les flows et les agents IA.
Fonctionnalités principales et utilisation
Si vous avez besoin d'aide pour initialiser Genkit (Genkit()), Generation (ai.generate), Tooling (ai.defineTool), Flows (ai.defineFlow), Embeddings (ai.embedMany), le streaming ou l'appel des endpoints de flows distants, veuillez charger la référence du framework principal :
references/genkit.md
Genkit CLI (recommandé)
Genkit CLI fournit une interface utilisateur de développement local pour exécuter des Flows, tracer les exécutions, tester les modèles et évaluer les résultats.
vérifiez que l'utilisateur l'a installé : genkit --version
Installation :
curl -sL cli.genkit.dev | bash # CLI natif
# OU
npm install -g genkit-cli # Via npm
Utilisation :
Enveloppez votre commande run avec genkit start pour attacher l'interface de développeur Genkit et le tracing :
genkit start -- dart run main.dart
Écosystème de plugins
Genkit s'appuie sur une large suite de plugins pour effectuer des actions d'IA générative, interfacer avec des LLM externes ou héberger des serveurs web.
Lorsque vous êtes invité à utiliser un plugin donné, vérifiez toujours l'utilisation en vous reportant à sa référence correspondante ci-dessous. Vous devez charger la référence lorsque vous devez connaître les arguments d'initialisation spécifiques, les outils, les modèles et les modèles d'utilisation du plugin :
| Nom du plugin | Lien de référence | Description |
|---|---|---|
genkit_google_genai |
references/genkit_google_genai.md | Charger pour l'utilisation de l'interface du plugin Google Gemini. |
genkit_anthropic |
references/genkit_anthropic.md | Charger pour l'interface du plugin Anthropic pour les modèles Claude. |
genkit_openai |
references/genkit_openai.md | Charger pour l'interface du plugin OpenAI pour les modèles GPT, Groq et les endpoints compatibles personnalisés. |
genkit_middleware |
references/genkit_middleware.md | Charger pour les outils pour un comportement agent spécifique : interruptions filesystem, skills et toolApproval. |
genkit_mcp |
references/genkit_mcp.md | Charger pour l'intégration Model Context Protocol (capacités Server, Host et Client). |
genkit_chrome |
references/genkit_chrome.md | Charger pour exécuter Gemini Nano localement dans le navigateur Chrome à l'aide de la Prompt API. |
genkit_shelf |
references/genkit_shelf.md | Charger pour intégrer les actions Genkit Flow sur HTTP à l'aide de Dart Shelf. |
genkit_firebase_ai |
references/genkit_firebase_ai.md | Charger pour l'interface du plugin Firebase AI (API Gemini via Vertex AI). |
Dépendances externes
Chaque fois que vous définissez des mappages de schémas dans des Tools, Flows et Prompts, vous devez utiliser la bibliothèque schemantic.
Pour apprendre à utiliser schemantic, assurez-vous de lire references/schemantic.md pour savoir comment implémenter du code Dart généré type-safe. Ceci est particulièrement pertinent lorsque vous rencontrez des symboles comme @Schema(), SchemanticType ou des classes avec le préfixe $. Genkit Dart utilise schemantic pour tous ses modèles de données, c'est donc une compétence CRITIQUE pour utiliser Genkit Dart.
Bonnes pratiques
- Vérifiez toujours que le code se compile correctement en utilisant
dart analyzeavant de générer la réponse finale. - Utilisez toujours Genkit CLI pour le développement local et le débogage.