Which AI model should I use? WZRD picks from live velocity signals across 4 platforms, with optional agent rewards on Solana.
Project description
wzrd-client
Which AI model should I use? WZRD answers with live adoption velocity.
pip install wzrd-client
import wzrd
model = wzrd.pick("code")
print(model)
WZRD tracks 100+ open-source AI models across HuggingFace, GitHub, OpenRouter, and ArtificialAnalysis. The default client uses the public momentum feed:
GET https://api.twzrd.xyz/v1/signals/momentum
If you have premium access, pass api_url="https://api.twzrd.xyz/v1/signals/momentum/premium" or set WZRD_API_URL.
Routing prior
Use WZRD before you call an inference provider:
model = wzrd.pick("code")
models = wzrd.shortlist("chat")
details = wzrd.pick_details("reasoning")
Works with any provider. Pass the result to OpenRouter, OpenAI, Anthropic, HuggingFace, or your own router.
Candidate-aware routing
model = wzrd.pick(
"code",
candidates=[
"openrouter/qwen/qwen3.5-9b",
"openrouter/qwen/qwen3.5-35b-a3b",
"anthropic/claude-sonnet-4.6",
],
)
Optional rewards while reporting
If you want an agent to authenticate, report routing decisions, and participate in WZRD rewards:
import wzrd
choice = wzrd.pick_details("code")
agent = wzrd.WZRDAgent.from_env()
session = agent.authenticate()
receipt = agent.report_pick(choice, quality_score=0.9, latency_ms=1200)
reward_status = agent.earned()
print(session.pubkey)
print(receipt["contribution_id"])
print(reward_status["signup_bonus_ccm"])
No manual onboarding is required. Agents can authenticate with their own Solana keypair, report real routing decisions, and claim rewards through the gasless relay when available.
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".
Automatic reward loop
import wzrd
wzrd.run_loop() # picks, reports, checks rewards, claims when available
run_loop() is the batteries-included path for unattended reporting. It uses the public momentum feed by default and can be pointed at premium explicitly via WZRD_API_URL.
Agent auth
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.jsonWZRD_AGENT_KEYPAIR_PATHorSOLANA_KEYPAIR_PATHWZRD_AGENT_KEYPAIRorSOLANA_KEYPAIRas a base58 secret or JSON byte array
Authenticated helpers:
agent.challenge()returns the nonce + message formatagent.authenticate()stores the Bearer token on the clientagent.status()reads/v1/agent/statusagent.earned()reads/v1/agent/earnedand surfaces signup bonus + reward statusagent.report(...)posts a manual contributionagent.report_pick(choice, ...)reports apick_details()result with WZRD metadata attached
The signup bonus is recorded on first auth, then becomes claimable after the next merkle publication cycle.
Environment variables
WZRD_API_URL: signal endpoint override. Defaults to the public momentum feed.WZRD_API_BASE_URL: API root for agent auth/report callsWZRD_AGENT_TOKEN: existing Bearer token forWZRDAgentWZRD_AGENT_KEYPAIR_PATH: path to Solana JSON keypairWZRD_AGENT_KEYPAIR: Solana base58 secret or JSON byte arrayWZRD_TIMEOUT_SECONDS: request timeoutWZRD_CACHE_TTL_SECONDS: cache TTL for fetched signalsWZRD_FEED_LIMIT: number of feed rows to request
What it returns
pick()returns a model name stringpick_details()returns a structured recordshortlist()returns ranked recordscompare()explains the relative signal strength between two modelsWZRDAgentauthenticates an agent wallet and reports contributions for rewards
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file wzrd_client-0.5.5.tar.gz.
File metadata
- Download URL: wzrd_client-0.5.5.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8359039c3cc111f9ac251dfacd2add6da096139ec832693230a75cad07cae7bc
|
|
| MD5 |
96ff1ab7c4c2e19845660272cd742af0
|
|
| BLAKE2b-256 |
4fd8c1a4c8551d1cfcd0ecd8f803bb3919ae9d3562ea3ccb8573d698e52f84d2
|
File details
Details for the file wzrd_client-0.5.5-py3-none-any.whl.
File metadata
- Download URL: wzrd_client-0.5.5-py3-none-any.whl
- Upload date:
- Size: 18.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f82f987fb5ef3a559779230399b10cc123b61a8f42218985e1b55c7526f187c7
|
|
| MD5 |
5c10a3ce9628bb1ec4471fc05bcddf34
|
|
| BLAKE2b-256 |
95b5d2bbda9230d30dcc4eb224a658efe68fe3c5eecb26c7b5bd6d8d59473aef
|