> ## Documentation Index
> Fetch the complete documentation index at: https://phidatainc.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Basic Agent

> Run a Portkey agent in sync, async, and streaming modes.

## Code

```python basic.py theme={null}
import asyncio
import os

from agno.agent import Agent, RunOutput  # noqa
from agno.models.portkey import Portkey

# Create model using Portkey
model = Portkey(
    id="@first-integrati-707071/gpt-5-nano",
    portkey_api_key=os.getenv("PORTKEY_API_KEY"),
)

agent = Agent(model=model, markdown=True)

# Get the response in a variable
# run: RunOutput = agent.run("What is Portkey and why would I use it as an AI gateway?")
# print(run.content)

if __name__ == "__main__":
    # --- Sync ---
    agent.print_response("What is Portkey and why would I use it as an AI gateway?")

    # --- Sync + Streaming ---
    agent.print_response(
        "What is Portkey and why would I use it as an AI gateway?", stream=True
    )

    # --- Async ---
    asyncio.run(
        agent.aprint_response(
            "What is Portkey and why would I use it as an AI gateway?"
        )
    )

    # --- Async + Streaming ---
    asyncio.run(
        agent.aprint_response("Share a breakfast recipe.", markdown=True, stream=True)
    )
```

## Usage

<Steps>
  <Snippet file="create-venv-step.mdx" />

  <Step title="Set your API keys">
    ```bash theme={null}
    export PORTKEY_API_KEY=***
    export PORTKEY_VIRTUAL_KEY=***
    ```
  </Step>

  <Step title="Install dependencies">
    ```bash theme={null}
    uv pip install -U portkey-ai openai agno
    ```
  </Step>

  <Step title="Run Agent">
    Save the code above as `basic.py`, then run:

    ```bash theme={null}
    python basic.py
    ```
  </Step>
</Steps>
