Metadata-Version: 2.4
Name: vaayu
Version: 1.0.4
Summary: Vaayu: 245M & 492M Small Language Model (SLM) for Machine-to-Machine Tool Calling with Native MCP
Author: Meet Mendapara
License-Expression: MIT
Project-URL: Homepage, https://github.com/Meetmendapara09/Vaayu-SLMM
Project-URL: Repository, https://github.com/Meetmendapara09/Vaayu-SLMM
Project-URL: Documentation, https://github.com/Meetmendapara09/Vaayu-SLMM/tree/main/@docs
Project-URL: Hugging Face (Vaayu-Base), https://huggingface.co/meetmendapara/Vaayu-Base
Project-URL: Hugging Face (Vaayu-Large), https://huggingface.co/meetmendapara/Vaayu-Large
Project-URL: Bug Tracker, https://github.com/Meetmendapara09/Vaayu-SLMM/issues
Keywords: slm,tlm,tool-language-model,mcp,tool-calling,agent,pytorch,transformers
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: torch>=2.1.0
Requires-Dist: transformers>=4.40.0
Requires-Dist: tokenizers>=0.19.0
Requires-Dist: huggingface_hub>=0.23.0
Requires-Dist: pydantic>=2.0.0
Requires-Dist: numpy>=1.24.0

# Vaayu: Small Language Model (SLM) for Machine-to-Machine Tool Calling

[![PyPI version](https://img.shields.io/pypi/v/vaayu.svg)](https://pypi.org/project/vaayu/)
[![Python](https://img.shields.io/pypi/pyversions/vaayu.svg)](https://pypi.org/project/vaayu/)
[![Hugging Face (Vaayu-Base)](https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Vaayu--Base-blue)](https://huggingface.co/meetmendapara/Vaayu-Base)
[![Hugging Face (Vaayu-Large)](https://img.shields.io/badge/%F0%9F%A4%97%20Hugging%20Face-Vaayu--Large-blue)](https://huggingface.co/meetmendapara/Vaayu-Large)

**Vaayu** is an ultra-lightweight, embeddable **Small Language Model (SLM)** family—also characterized as a **Tool Language Model (TLM)**—engineered specifically for local machine execution, application integration, and native **Model Context Protocol (MCP)** tool calling.

> *Note: Model Context Protocol (MCP) is an open specification designed by [Anthropic](https://modelcontextprotocol.io/).*

---

## Key Features

- **Embedded & Local**: Runs entirely locally on consumer CPUs and GPUs with low memory footprint (~245M to 492M parameters).
- **Native MCP Support**: Direct, first-class connection to Model Context Protocol servers over standard I/O (`stdio`) and Server-Sent Events (`SSE`).
- **Structured Tool Calling**: Emits precise tool calls in structured JSON formats with built-in schema compliance.
- **Low Latency**: Sub-50ms Time-To-First-Token (TTFT) on modern consumer CPUs with Grouped Query Attention (4:1 GQA).
- **Self-Contained**: Clean Python package on top of PyTorch—zero complex orchestration frameworks or proxy daemons required.

---

## Installation

```bash
pip install vaayu
```

---

## Quickstart

### 1. Load Pretrained Model from Hugging Face

You can load official weights directly from the Hugging Face Hub:

```python
from vaayu import Vaayu

# Load official Vaayu-Base directly from Hugging Face Hub
ai = Vaayu.from_pretrained("meetmendapara/Vaayu-Base")

# Generate response
response = ai.chat("Explain the purpose of Model Context Protocol (MCP) in one concise sentence.")
print(response)
```

### 2. Connect to Local MCP Tools

Vaayu natively discovers and invokes tools provided by MCP servers:

```python
from vaayu import Vaayu

ai = Vaayu.from_pretrained("meetmendapara/Vaayu-Base")

# Connect to any local MCP server (e.g. filesystem or custom service)
ai.attach_mcp_server(
    command="npx",
    args=["-y", "@modelcontextprotocol/server-filesystem", "./workspace"]
)

# Run an agentic prompt with tool execution
result = ai.agent_step("Read the file config.json and list all defined settings.")
print(result)
```

### 3. Load Local Checkpoints

If you have trained or downloaded local weights:

```python
from vaayu import Vaayu

ai = Vaayu.load_local("checkpoints/vaayu_base/vaayu_final.pt", variant="base")
print(ai.chat("Hello, Vaayu!"))
```

---

## Command Line Interface (CLI)

Vaayu comes with an interactive CLI for chatting, testing tools, and inspecting weights:

```bash
# Start an interactive chat session with Hugging Face weights
vaayu chat --repo meetmendapara/Vaayu-Base

# Or chat with a local checkpoint
vaayu chat --weights checkpoints/vaayu_base/vaayu_final.pt
```

---

## Empirical Benchmarks

Evaluated on the **Vaayu MCP Benchmark Suite** (200 curated scenarios across 4 core dimensions on an 8-core CPU):

| Metric | Vaayu-Base (245M) | Vaayu-Large (492M) |
| :--- | :---: | :---: |
| **JSON Schema Validity** | 92.5% | **96.8%** |
| **Tool Name Accuracy** | 87.0% | **93.5%** |
| **Exact Argument Match** | 83.5% | **91.8%** |
| **Time-To-First-Token (TTFT)** | **38.4 ms** | 52.1 ms |
| **Decode Throughput** | **46.2 tokens/sec** | 31.8 tokens/sec |

---

## Architecture Variants

| Model Variant | Parameters | Context Window | Target Use Case |
| :--- | :--- | :--- | :--- |
| **Vaayu-Base** | **245,924,864 (~245M)** | 2048 tokens | In-process local embedding, single-turn tool calling, edge runtimes |
| **Vaayu-Large** | **492,727,040 (~492M)** | 4096 tokens | Multi-step agentic workflows, multi-server MCP, self-correction |

---

## Limitations

- **Context Window**: Vaayu-Base has a 2,048-token context ceiling. For workloads requiring 3+ large MCP servers simultaneously, use Vaayu-Large (4,096 tokens) or schema pruning.
- **Domain Specialization**: Engineered specifically for tool calls, JSON-RPC, code actions, and structured agent loops. Not intended for creative prose or open-domain trivia.
- **Safety**: Emits structured action payloads; the host runtime is responsible for sandboxing filesystem, shell, and database executions.

---

## Resources & Links

- **Hugging Face Model**: [meetmendapara/Vaayu-Base](https://huggingface.co/meetmendapara/Vaayu-Base)
- **Source Code & Documentation**: [GitHub: Meetmendapara09/Vaayu-SLMM](https://github.com/Meetmendapara09/Vaayu-SLMM)
- **Model Context Protocol (MCP)**: [modelcontextprotocol.io](https://modelcontextprotocol.io/)

---

## License

MIT License. Free for academic research and commercial applications.
