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.
Treinamento PPO
Treine modelos de linguagem usando Proximal Policy Optimization (PPO) para aprendizado por reforço com feedback humano (RLHF).Visão Geral
O treinamento PPO é um processo de 2 etapas:- Treinar um Modelo de Recompensa - Treine um modelo para pontuar respostas (veja Reward Modeling)
- Executar Treinamento PPO - Use o modelo de recompensa para guiar a otimização da política
Início Rápido
Python API
Requisitos
Parâmetros
Parâmetros Principais do PPO
| Parâmetro | Flag CLI | Padrão | Descrição |
|---|---|---|---|
rl_reward_model_path | --rl-reward-model-path | None | Caminho para modelo de recompensa (obrigatório) |
rl_gamma | --rl-gamma | 0.99 | Fator de desconto (0.9-0.99) |
rl_gae_lambda | --rl-gae-lambda | 0.95 | Lambda GAE para estimativa de vantagem (0.9-0.99) |
rl_kl_coef | --rl-kl-coef | 0.1 | Coeficiente de divergência KL (0.01-0.5) |
rl_value_loss_coef | --rl-value-loss-coef | 1.0 | Coeficiente de perda de valor (0.5-2.0) |
rl_clip_range | --rl-clip-range | 0.2 | Faixa de clipping do PPO (0.1-0.3) |
rl_value_clip_range | --rl-value-clip-range | 0.2 | Faixa de clipping da função de valor |
Parâmetros de Treinamento
| Parâmetro | Flag CLI | Padrão | Descrição |
|---|---|---|---|
rl_num_ppo_epochs | --rl-num-ppo-epochs | 4 | Épocas PPO por batch |
rl_chunk_size | --rl-chunk-size | 128 | Tamanho do chunk de treinamento |
rl_mini_batch_size | --rl-mini-batch-size | 8 | Tamanho do mini-batch |
rl_optimize_device_cache | --rl-optimize-device-cache | True | Otimização de memória |
Parâmetros de Geração
| Parâmetro | Flag CLI | Padrão | Descrição |
|---|---|---|---|
rl_max_new_tokens | --rl-max-new-tokens | 128 | Máximo de tokens a gerar |
rl_top_k | --rl-top-k | 50 | Amostragem top-k |
rl_top_p | --rl-top-p | 1.0 | Amostragem top-p (núcleo) |
rl_temperature | --rl-temperature | 1.0 | Temperatura de geração |
Parâmetros Avançados
| Parâmetro | Flag CLI | Padrão | Descrição |
|---|---|---|---|
rl_reward_fn | --rl-reward-fn | None | Função de recompensa: default, length_penalty, correctness, custom |
rl_multi_objective | --rl-multi-objective | False | Habilitar recompensas multi-objetivo |
rl_reward_weights | --rl-reward-weights | None | Pesos JSON para multi-objetivo |
rl_env_type | --rl-env-type | None | Tipo de ambiente RL |
rl_env_config | --rl-env-config | None | Configuração JSON do ambiente |
Formato dos Dados
O treinamento PPO usa apenas prompts (o modelo gera respostas):Tipos de Ambiente RL
Três tipos de ambiente estão disponíveis:| Ambiente | Descrição |
|---|---|
text_generation | Geração de texto padrão com pontuação de recompensa |
multi_objective | Múltiplos componentes de recompensa combinados |
preference_comparison | Comparar respostas geradas |
Recompensas Multi-Objetivo
Habilitar múltiplos sinais de recompensa:Exemplo: Pipeline RLHF Completo
Etapa 1: Treinar Modelo de Recompensa
Etapa 2: Executar Treinamento PPO
Melhores Práticas
- Comece com um bom modelo base - Faça fine-tuning com SFT antes do PPO
- Use um modelo de recompensa bem treinado - A qualidade das recompensas determina o sucesso do PPO
- Monitore a divergência KL - Muito alta significa que o modelo está divergindo demais do original
- Comece com hiperparâmetros padrão - Ajuste com base na dinâmica do treinamento
- Use taxas de aprendizado pequenas - PPO é sensível à taxa de aprendizado (1e-5 a 5e-6)
Próximos Passos
Reward Modeling
Treinar modelos de recompensa
DPO Training
Alternativa mais simples ao PPO
Treinamento GRPO
RL com ambientes personalizados
Módulo RL
Blocos de construção RL