Agent with Async Tool Usage

Code

1import asyncio
2
3from kern.agent import Agent
4from kern.models.ibm import WatsonX
5from kern.tools.hackernews import HackerNewsTools
6
7agent = Agent(
8 model=WatsonX(id="meta-llama/llama-3-3-70b-instruct"),
9 tools=[HackerNewsTools()],
10 markdown=True,
11)
12
13asyncio.run(agent.aprint_response("Whats happening in France?", stream=True))

Usage

Set up your virtual environment

1uv venv --python 3.12
2source .venv/bin/activate
1uv venv --python 3.12
2.venv\Scripts\activate

Set your API key

1export IBM_WATSONX_API_KEY=xxx
2export IBM_WATSONX_PROJECT_ID=xxx

Install dependencies

1uv pip install -U ibm-watsonx-ai kern-ai

Run Agent

1python cookbook/11_models/ibm/watsonx/async_tool_use.py