Skip to main content

Vex Python SDK

The reliability layer for AI agents in production. Trace executions, enforce guardrails, and monitor agent behavior — with zero changes to your agent's core logic.

Installation

pip install vex-sdk

Quick Start

from vex import Vex, VexConfig

guard = Vex(
    api_key="your-api-key",
    config=VexConfig(api_url="https://api.tryvex.dev"),
)

# 1. Decorator — auto-capture input/output/latency
@guard.watch(agent_id="my-agent")
def run_agent(prompt: str) -> str:
    return call_llm(prompt)

# 2. Context manager — fine-grained step tracing
with guard.trace(agent_id="my-agent", task="summarize") as ctx:
    result = call_llm(prompt)
    ctx.step("llm", "summarize", input=prompt, output=result)
    ctx.record(result)

Sync Verification

Run inline verification with pass/flag/block decisions. When the verification engine determines an output is unreliable, the SDK raises VexBlockError so your application can handle it gracefully.

from vex import Vex, VexConfig, VexBlockError

guard = Vex(
    api_key="your-api-key",
    config=VexConfig(
        mode="sync",
        api_url="https://api.tryvex.dev",
    ),
)

@guard.watch(agent_id="my-agent")
def run_agent(prompt: str) -> str:
    return call_llm(prompt)

try:
    result = run_agent("Summarize this document")
    # result is a VexResult with confidence score
    print(result.output, result.confidence, result.action)
except VexBlockError as e:
    print(f"Blocked: confidence={e.result.confidence}")

Correction Cascade

Automatically correct unreliable outputs instead of blocking. When enabled, the verification engine attempts to fix issues and returns the corrected output.

guard = Vex(
    api_key="your-api-key",
    config=VexConfig(
        mode="sync",
        correction="cascade",          # Enable correction
        transparency="transparent",    # Include correction details in result
    ),
)

result = run_agent("Summarize this document")
if result.corrected:
    print(f"Output was corrected: {result.output}")
    print(f"Original: {result.original_output}")

Session Tracking & Conversation History

Group related executions into sessions with automatic conversation history for multi-turn verification (hallucination, drift, coherence).

session = guard.session(agent_id="chat-bot")

# Turn 1
with session.trace(task="greeting", input_data="Hello") as ctx:
    response = call_llm("Hello")
    ctx.record(response)

# Turn 2 — conversation history from turn 1 is sent automatically
with session.trace(task="follow-up", input_data="Tell me more") as ctx:
    response = call_llm("Tell me more")
    ctx.record(response)

The session maintains a sliding window of conversation history (configurable via conversation_window_size), enabling cross-turn verification checks like self-contradiction detection and goal drift analysis.

Configuration

from vex import VexConfig
from vex.models import ThresholdConfig

VexConfig(
    mode="async",               # "async" (fire-and-forget) or "sync" (inline verification)
    correction="none",          # "none" or "cascade" (auto-correct unreliable outputs)
    transparency="opaque",      # "opaque" or "transparent" (include correction details)
    api_url="https://api.tryvex.dev",
    flush_interval_s=1.0,       # Batch flush interval (async mode)
    flush_batch_size=50,        # Max events per flush batch
    timeout_s=2.0,              # HTTP timeout for API calls
    conversation_window_size=10,  # Max conversation turns retained per session
    confidence_threshold=ThresholdConfig(
        pass_threshold=0.8,     # >= 0.8 → pass
        flag_threshold=0.5,     # >= 0.5 → flag (warning logged)
        block_threshold=0.3,    # < 0.3 → block (raises VexBlockError)
    ),
)

What's New in v0.3.0

  • Rebranded to Vex: pip install vex-sdk, from vex import Vex, VexConfig
  • Sync Verification: Inline pass/flag/block decisions via mode="sync" with configurable confidence thresholds
  • Correction Cascade: Auto-correct unreliable outputs with correction="cascade", dual-timeout transport (2s verify / 12s correction), and transparent/opaque modes
  • Conversation-Aware Verification: Multi-turn coherence, cross-turn hallucination detection, and goal drift analysis via automatic session history
  • VexResult Model: Structured verification results with confidence, action, corrected, original_output, and corrections fields
  • VexBlockError: Exception raised when verification blocks output, with the full VexResult attached
  • ConversationTurn Model: First-class conversation turn representation for multi-turn agents

Requirements

  • Python 3.9+
  • Dependencies: httpx, pydantic (v2)

Documentation

Full documentation: docs.tryvex.dev

License

Apache 2.0 — see LICENSE for details.

Release files for vex-sdk 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vex-sdk 0.3.0
File Size Uploaded
vex_sdk-0.3.0.tar.gz 25.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vex-sdk 0.3.0
File Interpreter ABI Platform
vex_sdk-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 48.5 kB

Release files / vex_sdk-0.3.0.tar.gz

Download URL vex_sdk-0.3.0.tar.gz
Size 25.6 kB
Tags Source
SHA-256 checksum
How to use checksums
3bbc6fa581b6c483e2aa907218339b27adf478cf509fd66e50cfb5ef421a33af
BLAKE2b-256 checksum
How to use checksums
d0a82bbdca727a34ea713fc0e44f01e1268d7eba139f203b266939465e0432be
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release files / vex_sdk-0.3.0-py3-none-any.whl

Download URL vex_sdk-0.3.0-py3-none-any.whl
Size 22.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5744ccbe8f3f2134492bf045f602dc180d14cc8486512dd01853a8df13f759ba
BLAKE2b-256 checksum
How to use checksums
06114ffdf9876f73e90f38b8d7f21c140bdca03faa66a3540eec316f97402c12
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page