Skip to main content

Which AI model should I use? WZRD picks the fastest-growing model in real time. Velocity signals from 4 platforms, on-chain oracle on Solana, earn CCM by reporting.

Project description

wzrd-client

Which AI model should I use? WZRD tells you — in real time.

pip install wzrd-client
import wzrd

model = wzrd.pick("code")  # → "Qwen/Qwen3.5-9B" (right now)

WZRD tracks adoption velocity of 100+ open-source AI models across HuggingFace, GitHub, OpenRouter, and ArtificialAnalysis. It measures which models developers are actually moving to — not benchmarks, not vibes, real momentum.

Automatic earn loop

import wzrd

wzrd.run_loop()  # picks, reports, earns CCM, claims — runs forever

One function turns any Python script into an earning agent on Solana. No SOL required for claims (gasless relay). CCM tokens accumulate in your wallet automatically.

Use as a routing prior

model = wzrd.pick("code")      # best model for code tasks
models = wzrd.shortlist("chat") # top 5 models for chat
details = wzrd.pick_details("reasoning")  # full signal with trend, confidence, score

Works with any inference provider. Pass the result to OpenRouter, OpenAI, Anthropic, HuggingFace — wherever you route your LLM calls.

On-chain oracle

15 Switchboard feeds on Solana mainnet. Any program can read model velocity data. 2 price feeds (CCM/USD, vLOFI/USD) for DeFi composability.

Earn CCM While Routing

The full self-serve loop is:

import wzrd

choice = wzrd.pick_details("code")

agent = wzrd.WZRDAgent.from_env()
agent.authenticate()
agent.report_pick(choice, quality_score=0.9)

print(agent.earned()["signup_bonus_ccm"])

No manual onboarding. No founder approval. An agent can discover the package, authenticate with its own Solana keypair, report real routing decisions, and enter the CCM reward loop on its own.

Router wrapper

If you want a thin client wrapper, use WZRDRouter from wzrd.router. It only wraps clients that expose client.chat.completions.create(...). Explicit model names pass through unchanged. To trigger WZRD routing, pass model=None or a task sentinel like model="code" or model="chat".

Install

pip install wzrd-client

Quick start

import wzrd

model = wzrd.pick("code")
print(model)

Agent auth and CCM loop

If you want an agent to authenticate, report routing decisions, and enter the CCM reward loop:

import wzrd

choice = wzrd.pick_details("code")

agent = wzrd.WZRDAgent.from_env()
session = agent.authenticate()  # uses ~/.config/solana/id.json by default
status = agent.status()
receipt = agent.report_pick(choice, quality_score=0.9, latency_ms=1200)

print(session.pubkey)
print(status["next_step"])
print(receipt["contribution_id"])

WZRDAgent.authenticate() signs the exact server challenge message and sends the signature in the Solana base58 format the API expects. Keypair loading supports:

  • ~/.config/solana/id.json
  • WZRD_AGENT_KEYPAIR_PATH or SOLANA_KEYPAIR_PATH
  • WZRD_AGENT_KEYPAIR or SOLANA_KEYPAIR as a base58 secret or JSON byte array

Authenticated helpers:

  • agent.challenge() returns the nonce + message format
  • agent.authenticate() stores the Bearer token on the client
  • agent.status() reads /v1/agent/status
  • agent.earned() reads /v1/agent/earned and surfaces both signup bonus + signal rewards
  • agent.report(...) posts a manual contribution
  • agent.report_pick(choice, ...) reports a pick_details() result with WZRD metadata attached

The signup bonus is recorded on first auth, then becomes claimable after the next merkle publication cycle.

Candidate-aware routing:

import wzrd

model = wzrd.pick(
    "code",
    candidates=[
        "openrouter/qwen/qwen3.5-9b",
        "openrouter/qwen/qwen3.5-35b-a3b",
        "anthropic/claude-sonnet-4.6",
    ],
)

If you want the metadata for logging or telemetry, use:

choice = wzrd.pick_details("code")
print(choice.model, choice.score, choice.trend, choice.confidence)

Environment variables

  • WZRD_API_URL: signal endpoint override
  • WZRD_API_BASE_URL: API root for agent auth/report calls
  • WZRD_AGENT_TOKEN: existing Bearer token for WZRDAgent
  • WZRD_AGENT_KEYPAIR_PATH: path to Solana JSON keypair
  • WZRD_AGENT_KEYPAIR: Solana base58 secret or JSON byte array
  • WZRD_TIMEOUT_SECONDS: request timeout
  • WZRD_CACHE_TTL_SECONDS: cache TTL for fetched signals
  • WZRD_FEED_LIMIT: number of feed rows to request

What it returns

  • pick() returns a model name string
  • pick_details() returns a structured record
  • shortlist() returns ranked records
  • compare() explains the relative signal strength between two models
  • WZRDAgent authenticates an agent wallet and reports contributions into the CCM loop

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

wzrd_client-0.5.1.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

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

wzrd_client-0.5.1-py3-none-any.whl (18.1 kB view details)

Uploaded Python 3

File details

Details for the file wzrd_client-0.5.1.tar.gz.

File metadata

  • Download URL: wzrd_client-0.5.1.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for wzrd_client-0.5.1.tar.gz
Algorithm Hash digest
SHA256 cbb46192a36456996d8ce8fe5100f9a7bbf1e89bbe0bc6d0eef6ee96c3202a64
MD5 56c2188fe8e01abbb8ce4cd9f71197d7
BLAKE2b-256 cd4179512144ae88e165660d2481fa54574301c88133fcee518be0d8b0676719

See more details on using hashes here.

File details

Details for the file wzrd_client-0.5.1-py3-none-any.whl.

File metadata

  • Download URL: wzrd_client-0.5.1-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.12

File hashes

Hashes for wzrd_client-0.5.1-py3-none-any.whl
Algorithm Hash digest
SHA256 23425af4e75920d014a95cc396a888b8ea23fc3603977f78e4047bc5a6330785
MD5 40ebba9ecb7bb76a8f52641102ae0b73
BLAKE2b-256 df509e7898bf2679caabbbe9803e584699a4f4978e487d48cfa41a46fbf3258a

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