developing-genkit-python

Développez des applications alimentées par l'IA avec Genkit en Python. À utiliser lorsque l'utilisateur pose des questions sur Genkit, les agents IA, les flows, ou les tools en Python, ou en cas d'erreurs Genkit, de problèmes d'import ou de problèmes d'API.

npx skills add https://github.com/firebase/agent-skills --skill developing-genkit-python

Genkit Python

Prérequis

  • Runtime: Python 3.14+, uv pour les dépendances (installation).
  • CLI: genkit --version — installer via npm install -g genkit-cli si absent.

Nouveaux projets: Setup (bootstrap + env). Patterns et exemples de code: Examples.

Hello World

from genkit import Genkit
from genkit.plugins.google_genai import GoogleAI

ai = Genkit(
    plugins=[GoogleAI()],
    model='googleai/gemini-flash-latest',
)

async def main():
    response = await ai.generate(prompt='Tell me a joke about Python.')
    print(response.text)

if __name__ == '__main__':
    ai.run_main(main())

Critique: Ne pas se fier aux connaissances internes

Le SDK Python change souvent — vérifiez les imports et les APIs contre les références ici ou la documentation upstream. En cas d'erreur, consultez d'abord Common Errors.

Workflow de développement

  1. Provider par défaut: Google AI (GoogleAI()), GEMINI_API_KEY dans l'environnement.
  2. IDs de modèles: toujours préfixés, par exemple googleai/gemini-flash-latest (alias Flash toujours à jour; même pattern que les autres skills).
  3. Entrypoint: ai.run_main(main()) pour les apps pilotées par Genkit (pas asyncio.run() pour les serveurs de longue durée démarrés avec genkit start — voir Common Errors).
  4. Après génération de code, suivez Dev Workflow pour genkit start et la Dev UI.
  5. En cas d'erreur: l'étape 1 est toujours Common Errors.

Références

  • Examples: Structured output, streaming, flows, tools, embeddings.
  • Setup: Bootstrap de nouveau projet et plugins.
  • Common Errors: À lire en premier quand quelque chose casse.
  • FastAPI: HTTP, genkit_fastapi_handler, flows parallèles.
  • Dotprompt: Fichiers .prompt et helpers.
  • Evals: Evaluators et datasets.
  • Dev Workflow: genkit start, Dev UI, checklist.

Skills similaires