speedy, performant and small tool calling agents
Project description
Dria Agent
Dria Agent is a lightweight pip package to use fastest and most performant models for function calling on edge devices, tiny-agent-α.
Tiny-Agent-α is an extension of Dria-Agent-a, trained on top of the Qwen2.5-Coder series to be used in edge devices. These models are carefully fine-tuned with quantization aware training to minimize performance degradation after quantization. The smallest model is 0.5B with 4bit quantization (398MB on disk), and the largest model is 3B with 4bit quantization.
Installation
To install the package run: (Best for CPU inference)
pip install dria_agent
pip install 'dria_agent[mlx]' # To use MLX as backend for macOS.
pip install 'dria_agent[huggingface]' # For HuggingFace backend for GPU.
pip install 'dria_agent[mlx, tools]' # In order to use extra tooling select a backend
Quick Start
Write your functions in pure python, decorate them with @tool to expose them to the agent.
from dria_agent import tool
@tool
def check_availability(day: str, start_time: str, end_time: str) -> bool:
# Your implementation here
return True
Create an agent:
from dria_agent import ToolCallingAgentFactory
agent = ToolCallingAgentFactory(
tools=[check_availability], backend="ollama"
)
Use agent.run(query) to execute tasks with tools.
query = "Check if I'm available on Monday from 10:00 to 11:00"
execution = agent.run(query, print_results=True)
Models
| Model | Description | HF Download Link | Ollama Tag | Size |
|---|---|---|---|---|
| Tiny-Agent-a-3B (8bit) | High performance and reasoning | Download | driaforall/tiny-agent-a:3B-q8_0 | 3.3 GB |
| Tiny-Agent-a-3B (4bit) | Tradeoff 3B quality for memory | Download | driaforall/tiny-agent-a:3B-q4_K_M | 1.9 GB |
| Tiny-Agent-a-1.5B (8bit) | Balanced performance and speed | Download | driaforall/tiny-agent-a:1.5B-q8_0 | 1.6 GB |
| Tiny-Agent-a-1.5B (4bit) | Faster CPU inference, performance tradeoff | Download | driaforall/tiny-agent-a:1.5B-q4_K_M | 986 MB |
| Tiny-Agent-a-0.5B (8bit) | Ultra-light | Download | driaforall/tiny-agent-a:0.5B-q8_0 | 531 MB |
a fast and powerful tool calling model designed to run on edge devices.
3B 8bit high performance and quality download
3B 4bit balanced performance and speed download
1.5B 8bit fast CPU inference download
1.5B 4bit faster CPU inference download
0.5B 8bit ultra-light download
Evaluation & Performance
We evaluate the model on the Dria-Pythonic-Agent-Benchmark (DPAB): The benchmark we curated with a synthetic data generation +model-based validation + filtering and manual selection to evaluate LLMs on their Pythonic function calling ability, spanning multiple scenarios and tasks. See blog for more information.
Below are the DPAB results:
Current benchmark results for various models (strict):
| Model Name | Pythonic | JSON |
|---|---|---|
| Closed Models | ||
| Claude 3.5 Sonnet | 87 | 45 |
| gpt-4o-2024-11-20 | 60 | 30 |
| Open Models | ||
| > 100B Parameters | ||
| DeepSeek V3 (685B) | 63 | 33 |
| MiniMax-01 | 62 | 40 |
| Llama-3.1-405B-Instruct | 60 | 38 |
| > 30B Parameters | ||
| Qwen-2.5-Coder-32b-Instruct | 68 | 32 |
| Qwen-2.5-72b-instruct | 65 | 39 |
| Llama-3.3-70b-Instruct | 59 | 40 |
| QwQ-32b-Preview | 47 | 21 |
| < 20B Parameters | ||
| Phi-4 (14B) | 55 | 35 |
| Qwen2.5-Coder-7B-Instruct | 44 | 39 |
| Qwen-2.5-7B-Instruct | 47 | 34 |
| Tiny-Agent-a-3B | 72 | 34 |
| Qwen2.5-Coder-3B-Instruct | 26 | 37 |
| Tiny-Agent-a-1.5B | 73 | 30 |
Citation
@misc{Dria-Agent-a,
url={https://huggingface.co/blog/andthattoo/dria-agent-a},
title={Dria-Agent-a},
author={"andthattoo", "Atakan Tekparmak"}
}
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dria_agent-0.1.54.tar.gz.
File metadata
- Download URL: dria_agent-0.1.54.tar.gz
- Upload date:
- Size: 32.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
275af39c6d41d001f686c96d0caf35293673505979a50c78f8e1ab8d1b1d1903
|
|
| MD5 |
040fc9394a46a8d892de80fe46b63e53
|
|
| BLAKE2b-256 |
f7c7f4cb77c359317591f67c2be6aa400c85597e557a3b0765e2e567b0ca284b
|
File details
Details for the file dria_agent-0.1.54-py3-none-any.whl.
File metadata
- Download URL: dria_agent-0.1.54-py3-none-any.whl
- Upload date:
- Size: 41.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.5 Darwin/23.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e0fee49d3387341747c5e89aac370f258da07f68d21ac9be28dc99e4e0894632
|
|
| MD5 |
7de6eaa39bb628fd9dd90d42ed773d38
|
|
| BLAKE2b-256 |
9cffba214dd56444f082b6ac75e747245b95230e8b8fad25c7eb03c4c3c22072
|