ChronoAgent-3B-Effective
Model Description
ChronoAgent-3B-Effective is a custom multi-domain time-series forecasting agent.
It is designed to forecast not only weather, but also electricity, traffic, finance, news-driven events, and Polymarket-style probability series.
The model uses a custom architecture inspired by modern time-series foundation models such as Google TimesFM and PatchTST-style patching, combined with a Universal Transformer recursive block.
Architecture
- Patch-based time-series encoder
- Event/news text conditioner
- Domain embedding
- Universal Transformer recursive block
- Multi-Head Latent Attention, MLA
- DeepSeek-style Mixture of Experts, MoE
- SwiGLU feed-forward layers
- RMSNorm
- Gradient checkpointing for memory efficiency
Parameter Scale
- Physical parameters: ~113.7M
- Universal passes: 18
- Effective reasoning depth: ~2.05B
This is not a physical 3B model. It is a memory-efficient recursive transformer with approximately 3B-equivalent effective compute depth when configured with enough passes.
Forecasting Modes
The model can be conditioned on different domains:
- weather
- electricity
- traffic
- exchange rate / finance
- news/event-driven series
- Polymarket-style probability series
- world-model / chain-of-thought event context
Input Format
The model receives:
- Multivariate numeric history
- Optional event/news text
- Domain ID
It outputs the next horizon values for the target channel.
Training Data
The model was trained using streamed data from:
thuml/Time-Series-Library, especially theweatherconfiguration- event/news text from public web corpora
- synthetic world-model/event-conditioned series
- optional local Polymarket-style CSV files when available
Example Forecast
How to Use
Because this is a custom architecture, you must define the model classes before loading the weights.
1. Download files
from huggingface_hub import hf_hub_download
repo_id = "antontuzovAI/ChronoAgent-3B-Effective"
config_path = hf_hub_download(repo_id=repo_id, filename="config.json")
weights_path = hf_hub_download(repo_id=repo_id, filename="model_weights.pth")
2. Load config
import json
with open(config_path, "r") as f:
CONFIG = json.load(f)
3. Define architecture
Copy the architecture classes from the training script:
RMSNormSwiGLUMultiHeadLatentAttentionDeepSeekMoEUniversalBlockPatchTimeEncoderEventTextEncoderChronoAgent3BEffective
4. Load model
import torch
model = ChronoAgent3BEffective(CONFIG)
model.load_state_dict(torch.load(weights_path, map_location="cpu", weights_only=True))
model.eval()
5. Forecast
import numpy as np
lookback = CONFIG["lookback"]
max_features = CONFIG["max_features"]
# history shape: (lookback, max_features)
history = np.random.randn(lookback, max_features).astype(np.float32)
mu = history.mean(axis=0)
sigma = history.std(axis=0) + 1e-5
x_norm = (history - mu) / sigma
x = torch.tensor(x_norm, dtype=torch.float32).unsqueeze(0)
# event text must be hashed into IDs using the same hash_text_to_ids function
# domain_id example: tslib = 1
domain_id = torch.tensor([1], dtype=torch.long)
with torch.no_grad():
pred_norm = model(x, event_ids, event_mask, domain_id)
pred_real = pred_norm.numpy()[0] * sigma[0] + mu[0]
print(pred_real)
Limitations
- This is an experimental research/demo model.
- It is not a production financial forecasting system.
- Polymarket-style forecasting requires clean historical probability series.
- The event text encoder is lightweight and hashed, not a full language tokenizer.
Intended Use
This model is intended for:
- educational experiments
- time-series research
- agent-style forecasting prototypes
- weather/electricity/traffic/news-conditioned prediction demos
- Downloads last month
- 12
