---
id: gh-developing-genkit-python
name: "developing-genkit-python"
url: https://skills.yangsir.net/skill/gh-developing-genkit-python
author: firebase
domain: ai-app-building-integration
tags: ["genkit", "python", "ai-agents", "development", "frameworks"]
install_count: 28500
rating: 4.60 (120 reviews)
github: https://github.com/firebase/agent-skills/tree/main/skills/developing-genkit-python
---

# developing-genkit-python

> 这个技能指南帮助开发者使用 Python 中的 Genkit 框架构建 AI 驱动的应用。它涵盖了项目设置、代码示例、开发工作流以及常见错误排查，加速 AI 应用开发。

**Stats**: 28,500 installs · 4.6/5 (120 reviews)

## Before / After 对比

### Genkit Python 应用开发提速

**Before**:

面对 Genkit Python 项目，开发者常因配置复杂、API 频繁变动及难以诊断的错误而耗费大量时间，导致开发效率低下，项目进展缓慢。

**After**:

借助本技能指南，开发者能迅速完成 Genkit 项目设置，掌握最佳实践，并高效解决常见问题，大幅缩短开发周期，加速 AI 应用上线。

| Metric | Before | After | Change |
|---|---|---|---|
| 项目启动时间 | 120分钟 | 30分钟 | -75% |

## Readme

# Genkit Python

## Prerequisites

- **Runtime**: Python **3.14+**, **`uv`** for deps ([install](https://docs.astral.sh/uv/getting-started/installation/)).
- **CLI**: `genkit --version` — install via `npm install -g genkit-cli` if missing.

**New projects:** [Setup](references/setup.md) (bootstrap + env). **Patterns and code samples:** [Examples](references/examples.md).

## Hello World

```python
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

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](references/common-errors.md)).
4. After generating code, follow [Dev Workflow](references/dev-workflow.md) for `genkit start` and the Dev UI.
5. 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): `.prompt` files and helpers.
- [Evals](references/evals.md): Evaluators and datasets.
- [Dev Workflow](references/dev-workflow.md): `genkit start`, Dev UI, checklist.


---
*Source: https://skills.yangsir.net/skill/gh-developing-genkit-python*
*Markdown mirror: https://skills.yangsir.net/api/skill/gh-developing-genkit-python/markdown*