> ## Documentation Index
> Fetch the complete documentation index at: https://docs.monostate.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 配置模板

> 即用配置模板

# 配置模板

复制这些模板并根据您的用例进行自定义。

## LLM 训练模板

### 快速 SFT（小模型）

最适合测试和小数据集：

```yaml theme={null}
task: llm-sft
backend: local
base_model: google/gemma-3-270m
project_name: quick-sft

data:
  path: ./data.jsonl
  train_split: train
  valid_split: null
  chat_template: tokenizer
  column_mapping:
    text_column: text

log: wandb

params:
  epochs: 3
  batch_size: 4
  lr: 3e-5
```

### 生产 SFT（7B 模型）

用于使用 LoRA 进行全量微调：

```yaml theme={null}
task: llm-sft
backend: local
base_model: meta-llama/Llama-3.2-8B
project_name: production-sft

data:
  path: ./conversations.jsonl
  train_split: train
  valid_split: validation
  chat_template: tokenizer
  column_mapping:
    text_column: text

log: wandb

hub:
  push_to_hub: false

params:
  epochs: 3
  batch_size: 2
  gradient_accumulation: 8
  lr: 3e-5
  warmup_ratio: 0.1
  mixed_precision: bf16

  peft: true
  lora_r: 32
  lora_alpha: 64
  lora_dropout: 0.05

  use_flash_attention_2: true
  packing: true

  save_strategy: steps
  save_steps: 500
  save_total_limit: 1
```

### DPO 偏好训练

用于偏好对齐：

```yaml theme={null}
task: llm-dpo
backend: local
base_model: meta-llama/Llama-3.2-1B
project_name: dpo-aligned

data:
  path: ./preferences.jsonl
  train_split: train
  valid_split: null
  chat_template: tokenizer
  column_mapping:
    prompt_text_column: prompt
    text_column: chosen
    rejected_text_column: rejected

log: wandb

params:
  dpo_beta: 0.1
  max_prompt_length: 128
  max_completion_length: null

  epochs: 1
  batch_size: 2
  gradient_accumulation: 4
  lr: 5e-6

  peft: true
  lora_r: 16
  lora_alpha: 32
```

### ORPO 训练

结合 SFT + 偏好优化：

```yaml theme={null}
task: llm-orpo
backend: local
base_model: google/gemma-2-2b
project_name: gemma-orpo

data:
  path: ./preferences.jsonl
  train_split: train
  valid_split: null
  chat_template: tokenizer
  column_mapping:
    prompt_text_column: prompt
    text_column: chosen
    rejected_text_column: rejected

log: wandb

params:
  dpo_beta: 0.1
  max_prompt_length: 128
  max_completion_length: null

  epochs: 3
  batch_size: 2
  lr: 5e-5

  peft: true
  lora_r: 16
```

### 知识蒸馏

用于压缩更大的模型：

```yaml theme={null}
task: llm-sft
backend: local
base_model: google/gemma-3-270m
project_name: distilled-gemma

data:
  path: ./prompts.jsonl
  train_split: train
  valid_split: null
  chat_template: tokenizer
  column_mapping:
    text_column: text

log: wandb

params:
  use_distillation: true
  teacher_model: google/gemma-2-2b
  distill_temperature: 3.0
  distill_alpha: 0.7

  epochs: 5
  batch_size: 8
  lr: 1e-4
```

## 分类模板

### 文本分类

```yaml theme={null}
task: text-classification
backend: local
base_model: bert-base-uncased
project_name: sentiment

data:
  path: ./reviews.csv
  train_split: train
  valid_split: null
  column_mapping:
    text_column: text
    target_column: target

log: wandb

params:
  epochs: 5
  batch_size: 16
  lr: 5e-5
```

### 多类分类

```yaml theme={null}
task: text-classification
backend: local
base_model: microsoft/deberta-v3-base
project_name: categorizer

data:
  path: ./categories.csv
  train_split: train
  valid_split: validation
  column_mapping:
    text_column: content
    target_column: target

log: wandb

params:
  epochs: 10
  batch_size: 8
  lr: 1e-5
  warmup_ratio: 0.1
```

### 标记分类（NER）

```yaml theme={null}
task: token-classification
backend: local
base_model: bert-base-cased
project_name: entity-extractor

data:
  path: ./ner_data.json
  train_split: train
  valid_split: null
  column_mapping:
    tokens_column: tokens
    tags_column: tags

log: wandb

params:
  epochs: 5
  batch_size: 16
  lr: 5e-5
```

## 视觉模板

### 图像分类

```yaml theme={null}
task: image-classification
backend: local
base_model: google/vit-base-patch16-224
project_name: image-classifier

data:
  path: ./images/
  train_split: train
  valid_split: null
  column_mapping:
    image_column: image
    target_column: target

log: wandb

params:
  epochs: 10
  batch_size: 32
  lr: 5e-5
```

### 目标检测

```yaml theme={null}
task: object-detection
backend: local
base_model: facebook/detr-resnet-50
project_name: detector

data:
  path: ./coco_format/
  train_split: train
  valid_split: null
  column_mapping:
    image_column: image
    objects_column: objects

log: wandb

params:
  epochs: 20
  batch_size: 8
  lr: 1e-4
```

### 视觉-语言模型（VQA）

```yaml theme={null}
task: vlm:vqa
backend: local
base_model: google/paligemma-3b-pt-224
project_name: vlm-vqa

data:
  path: ./vqa_data.jsonl
  train_split: train
  valid_split: null
  column_mapping:
    image_column: image
    text_column: text
    prompt_text_column: prompt

log: wandb

params:
  epochs: 3
  batch_size: 2
  lr: 5e-5
  gradient_accumulation: 4

  peft: true
  lora_r: 16
  lora_alpha: 32
```

## 高级模板

### 超参数扫描

```yaml theme={null}
task: llm-sft
backend: local
base_model: google/gemma-3-270m
project_name: sweep-experiment

data:
  path: ./data.jsonl
  train_split: train
  valid_split: validation
  chat_template: tokenizer
  column_mapping:
    text_column: text

log: wandb

params:
  use_sweep: true
  sweep_backend: optuna
  sweep_n_trials: 20
  sweep_metric: eval_loss
  sweep_direction: minimize

  # Base parameters (sweep will vary these)
  epochs: 3
  batch_size: 4
  lr: 3e-5

  peft: true
  lora_r: 16
```

### 句子转换器

```yaml theme={null}
task: sentence-transformers:pair_score
backend: local
base_model: sentence-transformers/all-MiniLM-L6-v2
project_name: embeddings

data:
  path: ./pairs.csv
  train_split: train
  valid_split: null
  column_mapping:
    sentence1_column: sentence1
    sentence2_column: sentence2
    target_column: score

log: wandb

params:
  epochs: 3
  batch_size: 8
  lr: 3e-5
```

## 用法

将任何模板保存为 `config.yaml` 并运行：

```bash theme={null}
aitraining --config config.yaml
```

## 下一步

<CardGroup cols={2}>
  <Card title="YAML 配置" href="/cli/yaml-configs">
    配置文件结构详情
  </Card>

  <Card title="LLM 训练" href="/cli/llm-training">
    参数参考
  </Card>
</CardGroup>
