Skip to main content

ai-python-basics

Use for AI SDK for Python basics. Configure a model, make messages, stream, declare tools, build a basic agent.

Quellinformationen

Repository
vercel-labs/seal
Letzte Quellaktivität
15. Juli 2026 um 12:36
Erkannte Sprache von SKILL.md
Englisch
Sterne
8
Forks
3

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
ai-python-basics
description
Use for AI SDK for Python basics. Configure a model, make messages, stream, declare tools, build a basic agent.
metadata
{"sdk-version":"0.2.1"}
# ai-python-basics Requires Python 3.12 or later. Install with `uv add ai`. Use `import ai`. For gateway-routed model IDs, set `AI_GATEWAY_API_KEY`. Core pieces: - `Model` selects the provider and model. - Messages are typed Python objects. - `ai.stream` makes one model call and returns one assistant message. - `ai.Agent` wraps `ai.stream` in a loop that executes Python tools and manages history. Use gateway model IDs unless you need a direct provider: ```python model = ai.get_model("anthropic/claude-sonnet-4") ``` Direct providers need extras: ```bash uv add "ai[openai]" uv add "ai[anthropic]" ``` Messages are typed Python objects: ```python messages = [ ai.system_message("Be concise."), ai.user_message("Write a haiku about rain."), ] ``` Minimal agent happy path: ```python import asyncio import ai @ai.tool async def get_weather(city: str) -> str: """Get the weather for a city.""" return "Sunny" async def main() -> None: model = ai.get_model("anthropic/claude-sonnet-4") agent = ai.Agent(tools=[get_weather]) messages = [ ai.system_message("Use tools when useful."), ai.user_message("What is the weather in San Francisco?"), ] async with agent.run(model, messages) as run: async for event in run: if isinstance(event, ai.events.TextDelta): print(event.chunk, end="", flush=True) answer = run.output history = run.messages if __name__ == "__main__": asyncio.run(main()) ``` For one model call without Python tool execution, use `ai.stream`: ```python async with ai.stream(model, messages) as stream: async for event in stream: if isinstance(event, ai.events.TextDelta): print(event.chunk, end="", flush=True) answer = stream.output messages.append(stream.message) ``` Use `ai-python-custom-loop`, `ai-python-subagents`, `ai-python-streaming-tools`, `ai-python-serverless-execution`, `ai-python-durable-execution`, `ai-python-ui-adapter`, and `ai-python-custom-provider` for advanced patterns.
Auf GitHub ansehen