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.2.tar.gz (22.2 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.2-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: wzrd_client-0.5.2.tar.gz
  • Upload date:
  • Size: 22.2 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.2.tar.gz
Algorithm Hash digest
SHA256 6a7a57c9fdbabd38a22404b36ab898b43af2ad31f91118ed4512ecba6ecbe72d
MD5 1c594fc77cdca9d5ba4ba1863828c544
BLAKE2b-256 c9ff5b83a8c9f3d9c79ccb762073bef122b292449a2d7747f28a4837011d3cde

See more details on using hashes here.

File details

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

File metadata

  • Download URL: wzrd_client-0.5.2-py3-none-any.whl
  • Upload date:
  • Size: 18.4 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 3d88e7eb0e1083195ede300956afb4cf5d93c462f29cd75cc220447c972e21b6
MD5 15cb9633aeea1b66a9effe6307966f3d
BLAKE2b-256 21465a41756a4449aa24e0e387ad55fef3bc3a0d806f8c2ad2677d7325357506

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