Set Client
Supply an explicit Ollama Python client to a local agent.
The standalone steps below install the required Agno and Ollama SDK packages. The preserved yfinance setup comment does not apply to this program. The explicitly supplied native client controls the connection.
"""Run `uv pip install yfinance` to install dependencies."""
from agno.agent import Agent, RunOutput # noqa
from agno.models.ollama import Ollama
from ollama import Client as OllamaClient
# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------
agent = Agent(
model=Ollama(id="llama3.1:8b", client=OllamaClient()),
markdown=True,
)
# Print the response in the terminal
agent.print_response("Share a 2 sentence horror story")
# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
passRun the Example
Set up your virtual environment
uv venv --python 3.12
source .venv/bin/activateInstall dependencies
uv pip install -U agno ollamaSelect the local Ollama server
In the shell used for the pull commands and Python example, clear a previous cloud key and point native clients and embeddings at your local server:
unset OLLAMA_API_KEY
export OLLAMA_HOST="http://localhost:11434"Without this reset, OLLAMA_API_KEY makes Agno's default Ollama model route to https://ollama.com even when OLLAMA_HOST points locally. Keep a local Ollama server running for the following steps.
Prepare Ollama
Install and start Ollama, then pull the model used by this example:
ollama pull llama3.1:8bRun the example
Save the code above as set_client.py, then run:
python set_client.pyFull source: cookbook/90_models/ollama/chat/set_client.py