Hugging Face Basic

Run a Hugging Face Mistral 7B agent in sync, async, and streaming modes.

basic.py
"""
Huggingface Basic
=================

Cookbook example for `huggingface/basic.py`.
"""

import asyncio

from agno.agent import Agent
from agno.models.huggingface import HuggingFace

# ---------------------------------------------------------------------------
# Create Agent
# ---------------------------------------------------------------------------

agent = Agent(
    model=HuggingFace(
        id="mistralai/Mistral-7B-Instruct-v0.2", max_tokens=4096, temperature=0
    ),
)

# ---------------------------------------------------------------------------
# Run Agent
# ---------------------------------------------------------------------------
if __name__ == "__main__":
    # --- Sync ---
    agent.print_response(
        "What is meaning of life and then recommend 5 best books to read about it"
    )

    # --- Sync + Streaming ---
    agent.print_response(
        "What is meaning of life and then recommend 5 best books to read about it",
        stream=True,
    )

    # --- Async ---
    asyncio.run(
        agent.aprint_response(
            "What is meaning of life and then recommend 5 best books to read about it"
        )
    )

    # --- Async + Streaming ---
    asyncio.run(
        agent.aprint_response(
            "What is meaning of life and then recommend 5 best books to read about it",
            stream=True,
        )
    )

Run the Example

Set up your virtual environment

uv venv --python 3.12
source .venv/bin/activate

Install dependencies

uv pip install -U agno huggingface-hub

Export environment variables

export HF_TOKEN="your_hf_token_here"

Run the example

Save the code above as basic.py, then run:

python basic.py

Full source: cookbook/90_models/huggingface/basic.py