Genkit Python
Prerequisites
- Runtime: Python 3.14+,
uvfor deps (install). - CLI:
genkit --version— install vianpm install -g genkit-cliif missing.
New projects: [Setup](references/setup.md) (bootstrap + env). Patterns and code samples: [Examples](references/examples.md).
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](references/common-errors.md) first.
Development Workflow
- Default provider: Google AI (
GoogleAI()),GEMINI_API_KEYin the environment. - Model IDs: always prefixed, e.g.
googleai/gemini-flash-latest(always-on-latest Flash alias; same pattern as other skills). - Entrypoint:
ai.run_main(main())for Genkit-driven apps (notasyncio.run()for long-lived servers started withgenkit start— see [Common Errors](references/common-errors.md)). - After generating code, follow [Dev Workflow](references/dev-workflow.md) for
genkit startand the Dev UI. - On errors: step 1 is always [Common Errors](references/common-errors.md).
References
- [Examples](references/examples.md): Structured output, streaming, flows, tools, embeddings.
- [Setup](references/setup.md): New project bootstrap and plugins.
- [Common Errors](references/common-errors.md): Read first when something breaks.
- [FastAPI](references/fastapi.md): HTTP,
genkit_fastapi_handler, parallel flows. - [Dotprompt](references/dotprompt.md):
.promptfiles and helpers. - [Evals](references/evals.md): Evaluators and datasets.
- [Dev Workflow](references/dev-workflow.md):
genkit start, Dev UI, checklist.