Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.openclaas.com/llms.txt

Use this file to discover all available pages before exploring further.

Configuration Reference

Exhaustive reference for every Hydra config field and environment variable across all CLaaS backends and the eval harness. For getting-started guides, see the individual backend pages.

Local Backend

See Local GPU Backend for setup instructions.

Hydra Config (claas/core/configs/local.yaml)

defaults:
  - _core_local_schema
  - _self_

mode: local
feedback_log_dir: ./data/feedback
lora_root: /loras
storage_backend: local_fs
allowed_init_base_models:
  - Qwen/Qwen3-8B
vllm_base_url: http://127.0.0.1:8000
feedback_lock_timeout_s: 120.0
feedback_wake_on_failure: true
feedback_min_free_vram_gb: 20.0
feedback_sleep_verify_timeout_s: 30.0
feedback_drain_timeout_s: 30.0
base_model_id: Qwen/Qwen3-8B
attn_implementation: flash_attention_2
completion_cache_size: 100

Environment Variables

These correspond to the LocalConfig dataclass fields and Docker Compose .env variables.
VariableDefaultDescription
TELEGRAM_BOT_TOKEN(required)Bot token from @BotFather
HF_TOKENHuggingFace token for gated models
MODELQwen/Qwen3-8BBase model ID
MAX_MODEL_LEN32768Max sequence length for vLLM
GPU_MEMORY_UTILIZATION0.70GPU VRAM fraction for vLLM
LORA_NAMEopenclaw/assistantLoRA adapter identity
CLAAS_API_PORT8080Host port for CLaaS API
OPENCLAW_PORT18789Host port for OpenClaw gateway
CLAAS_DISTILL_EXECUTION_MODElocalTraining engine
CLAAS_BASE_MODEL_IDQwen/Qwen3-8BBase model for LoRA training
CLAAS_LORA_ROOT/lorasRoot directory for LoRA adapter storage
CLAAS_STORAGE_BACKENDlocal_fsStorage backend: local_fs, modal_volume, or tinker_json
CLAAS_ALLOWED_INIT_BASE_MODELSQwen/Qwen3-8BComma-separated allowlist for /v1/lora/init
CLAAS_COMPLETION_CACHE_SIZE100Completion cache entries to retain
FEEDBACK_LOG_DIR./data/feedbackDirectory for structured feedback JSON logs
VLLM_BASE_URLhttp://127.0.0.1:8000vLLM server URL
VLLM_API_KEYsk-localAPI key for vLLM authentication
CLAAS_ATTN_IMPLEMENTATIONflash_attention_2Attention backend (sdpa, flash_attention_2)
FEEDBACK_LOCK_TIMEOUT_S120Per-LoRA lock timeout in seconds
FEEDBACK_WAKE_ON_FAILUREtrueWake vLLM if the distill step fails
FEEDBACK_MIN_FREE_VRAM_GB20Minimum free VRAM (GB) before training starts
FEEDBACK_SLEEP_VERIFY_TIMEOUT_S30Timeout (s) waiting for vLLM to sleep
FEEDBACK_DRAIN_TIMEOUT_S30Timeout (s) draining vLLM queue before sleep

Tinker Backend

See Tinker SDK Backend for setup instructions.

Hydra Config (claas/core/configs/tinker.yaml)

defaults:
  - _core_tinker_schema
  - _self_

mode: tinker
feedback_log_dir: ./data/feedback
lora_root: /loras
storage_backend: local_fs
allowed_init_base_models:
  - Qwen/Qwen3-8B
vllm_base_url: http://127.0.0.1:8000
tinker_base_model: Qwen/Qwen3-30B-A3B
tinker_state_path: /data/tinker_state.json
completion_cache_size: 100

Environment Variables

These correspond to the TinkerConfig dataclass fields and Docker Compose .env.tinker variables.
VariableDefaultDescription
TELEGRAM_BOT_TOKEN(required)Bot token from @BotFather
TINKER_API_KEY(required)API key for Tinker SDK
MODELQwen/Qwen3-30B-A3BBase model ID (Tinker name)
LORA_NAMEopenclaw/assistantLoRA adapter identity
CLAAS_API_PORT8080Host port for CLaaS API
OPENCLAW_PORT18789Host port for OpenClaw gateway
TINKER_PROXY_PORT8000Host port for Tinker inference proxy
FEEDBACK_BATCH_SIZE4Samples per feedback batch before triggering distill
CLAAS_DISTILL_EXECUTION_MODEtinkerTraining engine
CLAAS_LORA_ROOT/lorasRoot directory for LoRA adapter storage
CLAAS_STORAGE_BACKENDlocal_fsStorage backend (use tinker_json for Tinker)
CLAAS_ALLOWED_INIT_BASE_MODELSQwen/Qwen3-8BComma-separated allowlist for /v1/lora/init
CLAAS_COMPLETION_CACHE_SIZE100Completion cache entries to retain
FEEDBACK_LOG_DIR./data/feedbackDirectory for structured feedback JSON logs
CLAAS_TINKER_API_KEY(required)Tinker SDK API key
CLAAS_TINKER_BASE_MODELQwen/Qwen3-30B-A3BHosted model for distillation
CLAAS_TINKER_STATE_PATH~/.claas/tinker_state.jsonLocal path for Tinker LoRA state file
VLLM_BASE_URLhttp://127.0.0.1:8000URL of the Tinker inference proxy
VLLM_API_KEYsk-localAPI key for inference proxy

See Modal Cloud Backend for setup instructions.

Hydra Config (claas/core/configs/modal.yaml)

defaults:
  - _core_modal_schema
  - _self_

mode: modal
feedback_log_dir: ./data/feedback
lora_root: /loras
storage_backend: modal_volume
allowed_init_base_models:
  - Qwen/Qwen3-8B
vllm_base_url: http://127.0.0.1:8000
feedback_lock_timeout_s: 120.0
feedback_wake_on_failure: true
feedback_min_free_vram_gb: 20.0
feedback_sleep_verify_timeout_s: 30.0
feedback_drain_timeout_s: 30.0
completion_cache_size: 100

Environment Variables

These correspond to the ModalConfig dataclass fields.
VariableDefaultDescription
HF_TOKENHuggingFace token for gated models
CLAAS_DISTILL_EXECUTION_MODEmodalTraining engine
CLAAS_BASE_MODEL_IDQwen/Qwen3-8BBase model for LoRA training
CLAAS_LORA_ROOT/lorasRoot directory for LoRA adapter storage
CLAAS_STORAGE_BACKENDmodal_volumeStorage backend (use modal_volume)
CLAAS_ALLOWED_INIT_BASE_MODELSQwen/Qwen3-8BComma-separated allowlist for /v1/lora/init
CLAAS_COMPLETION_CACHE_SIZE100Completion cache entries to retain
FEEDBACK_LOG_DIR./data/feedbackDirectory for structured feedback JSON logs
VLLM_BASE_URLhttp://127.0.0.1:8000vLLM server URL (within Modal)
VLLM_API_KEYsk-localAPI key for vLLM authentication
FEEDBACK_LOCK_TIMEOUT_S120Per-LoRA lock timeout in seconds
FEEDBACK_WAKE_ON_FAILUREtrueWake vLLM if the distill step fails
FEEDBACK_MIN_FREE_VRAM_GB20Minimum free VRAM (GB) before training starts
FEEDBACK_SLEEP_VERIFY_TIMEOUT_S30Timeout (s) waiting for vLLM to sleep
FEEDBACK_DRAIN_TIMEOUT_S30Timeout (s) draining vLLM queue before sleep
CLAAS_HF_SECRET_NAMEName of Modal Secret containing HF credentials

Eval Harness

See Configuration & Running for setup instructions.

Hydra Config (claas/eval/configs/base.yaml)

mode: tinker
claas_url: http://localhost:8080
base_model: Qwen/Qwen3-30B-A3B

preferences:
  - no_emoji
  - concise
  - identity

metrics:
  - logprob
  - compliance
  - general
  - collapse

collapse_steps: [0, 5, 10, 15, 19]
plots: true

num_steps: 20
batch_size: 4
steps_per_batch: 1
feedback_repetitions: 1
seed: 42
lora_id_prefix: eval
output_dir: ./data/evals

openclaw_url: http://localhost:18789

Config Fields

FieldTypeDefaultDescription
modestrtinkerExecution backend: local, tinker, or modal
claas_urlstrhttp://localhost:8080CLaaS API endpoint
base_modelstrQwen/Qwen3-30B-A3BBase model for LoRA init (use Tinker name in Tinker mode)
preferenceslist[str][no_emoji, concise, identity]Preferences to train and evaluate
metricslist[str][logprob, compliance, general, collapse]Metrics to evaluate per step
num_stepsint20Number of feedback steps per preference
batch_sizeint4Samples per feedback batch
steps_per_batchint1Gradient updates per batch
feedback_repetitionsint1Times to repeat feedback string per sample
collapse_stepslist[int][0, 5, 10, 15, 19]Steps where collapse metric runs
plotsbooltrueGenerate matplotlib plots
seedint42Random seed for reproducibility
lora_id_prefixstrevalPrefix for eval LoRA adapter IDs
output_dirstr./data/evalsDirectory for eval output
openclaw_urlstr | nullhttp://localhost:18789OpenClaw gateway URL (null = use CLaaS proxy directly)

Environment Variables (Secrets)

Secrets are resolved from environment variables at runtime, not stored in config files.
VariableRequired forPurpose
CLAAS_TINKER_API_KEYTinker modeTinker SDK authentication
CLAAS_TINKER_BASE_MODELTinker modeMust match base_model in config
CLAAS_DISTILL_EXECUTION_MODEAPI servertinker, local, or modal
CLAAS_ALLOWED_INIT_BASE_MODELSAPI serverComma-separated allowed models for LoRA init
VLLM_API_KEYLocal modevLLM server auth token
OPENCLAW_GATEWAY_TOKENOpenClaw modeAuth token for OpenClaw gateway
GEMINI_API_KEYgeneral metricGemini-based capability evaluation