TKK_E32230176/Source-Code-Web/.agents/skills/developing-genkit-python/SKILL.md

2.4 KiB

name description metadata
developing-genkit-python Develop AI-powered applications using Genkit in Python. Use when the user asks about Genkit, AI agents, flows, or tools in Python, or when encountering Genkit errors, import issues, or API problems.
genkit-managed
true

Genkit Python

Prerequisites

  • Runtime: Python 3.14+, uv for deps (install).
  • CLI: genkit --version — install via npm install -g genkit-cli if missing.

New projects: Setup (bootstrap + env). Patterns and code samples: 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())

Critical: Do Not Trust Internal Knowledge

The Python SDK changes often — verify imports and APIs against the references here or upstream docs. On any error, read Common Errors first.

Development Workflow

  1. Default provider: Google AI (GoogleAI()), GEMINI_API_KEY in the environment.
  2. Model IDs: always prefixed, e.g. googleai/gemini-flash-latest (always-on-latest Flash alias; same pattern as other skills).
  3. Entrypoint: ai.run_main(main()) for Genkit-driven apps (not asyncio.run() for long-lived servers started with genkit start — see Common Errors).
  4. After generating code, follow Dev Workflow for genkit start and the Dev UI.
  5. On errors: step 1 is always Common Errors.

References

  • Examples: Structured output, streaming, flows, tools, embeddings.
  • Setup: New project bootstrap and plugins.
  • Common Errors: Read first when something breaks.
  • FastAPI: HTTP, genkit_fastapi_handler, parallel flows.
  • Dotprompt: .prompt files and helpers.
  • Evals: Evaluators and datasets.
  • Dev Workflow: genkit start, Dev UI, checklist.