Skip to main content

Weights & Biases Agent Library - A minimal framework for building LLM agents

Project description

WBAL

Weights & Biases Agent Library - A minimal framework for building LLM agents.

Overview

WBAL provides three core primitives:

  • Agent - Orchestrates the perceive-invoke-do loop
  • Environment - Provides tools and context
  • LM - Language model interface

All components inherit from WBALObject (Pydantic BaseModel + observe() method).

Quick Start

import weave
from wbal import Agent, Environment, weaveTool, GPT5MiniTester

weave.init('my-project')

class MyEnv(Environment):
    system_prompt = "You are a helpful assistant."

    @weaveTool
    def greet(self, name: str) -> str:
        """Greet someone by name."""
        return f"Hello, {name}!"

agent = Agent(lm=GPT5MiniTester, env=MyEnv())
result = agent.run("Say hello to Alice")

Installation

From PyPI:

pip install wbal

From source (for local development):

git clone https://github.com/wandb/CodeCurious.git
cd CodeCurious
uv sync

Documentation

Document Description
USER.md Usage guide, API reference, examples
DEVELOPER.md Architecture, contributing, testing
GRIFFIN_AGENT_INSTRUCTIONS.md Detailed framework guide

API

from wbal import (
    # Core
    Agent, Environment, StatefulEnvironment, LM,

    # Models
    GPT5Large, GPT5MiniTester,

    # Decorators
    weaveTool, tool,

    # Mixins
    ExitableAgent,

    # Helpers
    tool_timeout, format_openai_tool_response,
)

Examples

See examples/ for complete implementations.

Structure

wbal/
├── wbal/
│   ├── agent.py        # Agent class
│   ├── environment.py  # Environment, StatefulEnvironment
│   ├── lm.py           # LM, GPT5Large, GPT5MiniTester
│   ├── helper.py       # Tool decorators and utilities
│   └── mixins.py       # ExitableAgent
├── tests/
└── examples/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

wbal-0.2.0.tar.gz (64.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

wbal-0.2.0-py3-none-any.whl (25.1 kB view details)

Uploaded Python 3

File details

Details for the file wbal-0.2.0.tar.gz.

File metadata

  • Download URL: wbal-0.2.0.tar.gz
  • Upload date:
  • Size: 64.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wbal-0.2.0.tar.gz
Algorithm Hash digest
SHA256 8e97f5400118b2ceea560f07ec04baf42f9e6d8435f756a1b180a7cc92597be5
MD5 d80d86aa3e40aa72dc7bd809e995664b
BLAKE2b-256 ce3313325ac2cb7f7259f0ec09934a877fd9b5f13989ba72d2398458e8d4a76c

See more details on using hashes here.

File details

Details for the file wbal-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: wbal-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 25.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.18 {"installer":{"name":"uv","version":"0.9.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wbal-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 179039aa369ffc75ca8700b328c8b7968c5e69c3aa2fe4befc203327cbbd9bc8
MD5 676c839d6e5153cd621073772072dd2b
BLAKE2b-256 09336d6014cdef4f2b72cc7e8c925e4328a27b7a36814b152613fe4f8b8a2c00

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page