Saltar para o conteúdo principal
Capítulos do guia de treino Toda a documentação

Tutoriais de treino de modelos e exemplos completos

Exemplos práticos do SDK 0.2.0 para alemão, classificação, tradução, dados privados, alojamento, Colab, várias GPU e exportação.

Os comandos e o código permanecem em inglês em todos os idiomas. Substitua os marcadores em maiúsculas pelos valores da sua conta e da sua tarefa paga; não cole chaves reais em cadernos partilhados nem em registos.

Criar uma receita de treino completa

Um exemplo útil inclui dados, computação e aceitação, não apenas uma instrução.
  1. Tarefa Objetivo linguístico ou empresarial
  2. Entradas Treino, validação e teste reservado
  3. Ambiente Computação e armazenamento compatíveis
  4. Resultados Critérios aceites e resultado válido

Tarefa: Objetivo linguístico ou empresarial. Entradas: Treino, validação e teste reservado. Ambiente: Computação e armazenamento compatíveis. Resultados: Critérios aceites e resultado válido

Treinar um modelo independente para alemão

Comece pela configuração completa do modo Automático do capítulo de configuração. Crie um diretório de projeto que contenha o modelo aluno compatível, material de treino revisto, conjuntos independentes de validação e teste final e a grelha de avaliação de alemão. Escolha um modelo de referência incluído no plano do fornecedor. O SDK deverá propor pré-requisitos e temas, estabelecer uma linha de base e melhorar dentro dos orçamentos aprovados.

  • O JSON seguinte ilustra o formato dos dados em inglês; coloque texto alemão real e revisto nos ficheiros de dados, um objeto por linha.
  • Utilize a configuração completa do modo Automático como ficheiro executável do projeto, não um fragmento de receita.
  • Meça separadamente a compreensão, a escrita, a tradução e o raciocínio. Não é garantido que um modelo aluno pequeno iguale o professor em todas as tarefas.
Exemplo · jsonl
{"text":"Customer: My invoice total is incorrect. Category: billing"}
{"text":"Customer: I cannot sign in. Category: account_access"}
{"text":"Customer: The application closes when I upload a file. Category: technical_issue"}
Exemplo · bash
# Full Automatic German-language workflow.
# 1. Put a compatible local model in german-project/models/student/.
# 2. Save the complete project configuration as german-project/training.json.
# 3. Add independent train/validation/test files and the reviewed german rubric.
# 4. Replace provider/reference placeholders using your included model catalogue.
fpai-training doctor --config ./german-project/training.json
fpai-training plan --config ./german-project/training.json --dry-run
# The plan must break the objective into prerequisites and measurable topics.
fpai-training run --config ./german-project/training.json
fpai-training evaluate --run ./german-project/runs/german-001 --split test
fpai-training export --run ./german-project/runs/german-001 --format safetensors
# Evaluate comprehension, writing, translation and reasoning separately.
# A passed classifier does not prove all German-language capabilities.

Adaptar o projeto a uma tarefa empresarial

Os exemplos JSON seguintes são fragmentos de configuração, não ficheiros de projeto completos. Copie a configuração completa do modo Automático ou Avançado, substitua as secções indicadas pelo fragmento, mantenha a identidade, o modelo, o professor, o ambiente de execução e os orçamentos finitos e valide o ficheiro completo. A classificação e a tradução precisam de temas, dados e critérios de aceitação diferentes.

  • Na classificação de pedidos de apoio, apresente precisão e revocação por classe, F1 macro, equilíbrio das classes e casos ambíguos.
  • Na tradução, avalie o sentido, a terminologia, os nomes, os números e o tom com exemplos bilingues independentes.
  • Quando teacher_sharing for none, os registos dos clientes permanecem locais. Se não for possível atingir o objetivo sem partilha proibida, pare e explique o motivo em vez de carregar os dados.
Exemplo · json
{
  "schema_version": "1.0", "mode": "automatic",
  "objective": "Classify support messages into billing, account_access or technical_issue.",
  "model": {"path": "./models/student", "adapter": "transformers-causal-lm", "revision": null},
  "teacher": {"provider": "openai", "reference_model_id": 123},
  "data": {"sources": ["./data/train.jsonl"], "teacher_sharing": "none", "validation_path": "./data/validation.jsonl", "test_path": "./data/test.jsonl", "deduplicate": true, "seed": 42},
  "runtime": {"target": "customer_datacenter", "devices": "auto", "distributed": {"backend": "none", "nodes": 1}},
  "training": {"method": "auto"},
  "curriculum": {"topics": ["intent", "ambiguous_requests", "class_balance"], "max_improvement_cycles": 3, "stop_on_regression": true},
  "budgets": {"max_training_minutes": 120, "max_teacher_requests": 100, "max_storage_gib": 20},
  "checkpoints": {"every_steps": 100, "keep_last": 3, "resume_validation": "strict"},
  "evaluation": {"rubric": "./rubric.json", "baseline_required": true},
  "output": {"directory": "./runs/support-001", "format": "adapters"}
}
Exemplo · json
{
  "objective": "Translate English support replies into German while preserving names, numbers and meaning.",
  "curriculum": {"topics": ["terminology", "meaning", "names_and_numbers", "tone"], "max_improvement_cycles": 3, "stop_on_regression": true},
  "evaluation": {"rubric": "./rubrics/translation.json", "baseline_required": true},
  "data": {"sources": ["./data/translation-train.jsonl"], "validation_path": "./data/translation-validation.jsonl", "test_path": "./data/translation-test.jsonl", "teacher_sharing": "approved_only"},
  "output": {"directory": "./runs/translation-001", "format": "safetensors"}
}
Exemplo · jsonl
{"prompt":"My invoice total is wrong. Which category applies?","target":"billing","criterion":"support_category"}
{"prompt":"I cannot sign in. Which category applies?","target":"account_access","criterion":"support_category"}
Exemplo · json
{
  "schema_version": "1.0",
  "name": "support-category-evaluation",
  "scale": {"minimum": 0, "maximum": 1},
  "criteria": [
    {"id": "support_category", "description": "Match the expected category.", "metric": "macro_f1", "minimum_score": 0.85}
  ],
  "regression": {"maximum_score_drop": 0.02},
  "final_test": {"path": "./data/test.jsonl", "allow_training_use": false}
}

Escolher a infraestrutura certa e entregar com segurança

Estes exemplos de ambiente são também fragmentos destinados a uma configuração completa e revista. A FusionPointAI Hosting, um centro de dados do cliente e um ambiente Colab compatível fornecem capacidade de computação; selecionar um nome não atribui GPU, não compra créditos de notebook nem torna outro ambiente compatível. O SDK carrega e treina o modelo aluno nesse ambiente. Guarde os resultados antes de terminar um notebook efémero.

  • Exemplo alojado: utilize o ambiente de computação contratado, o armazenamento aprovado e as permissões da conta; o alojamento pode ser um item comercial separado.
  • Exemplo Colab: guarde a chave de API nos segredos do notebook, verifique a GPU e o armazenamento disponíveis e copie checkpoints válidos para armazenamento duradouro aprovado antes do fim da sessão.
  • Exemplo distribuído: utilize um coordenador autorizado e comunicações autenticadas entre nós, com ambientes fixados iguais e valores acordados de rendezvous e rank. O iniciador deve gerir apenas os processos deste projeto.
Exemplo · json
{
  "runtime": {"target": "fusionpointai_hosting", "devices": "auto", "distributed": {"backend": "none", "nodes": 1}},
  "budgets": {"max_training_minutes": 60, "max_teacher_requests": 500, "max_storage_gib": 20},
  "output": {"directory": "./runs/hosted-001", "format": "safetensors"}
}
Exemplo · json
{
  "runtime": {"target": "colab", "devices": [0], "distributed": {"backend": "none", "nodes": 1}},
  "checkpoints": {"every_steps": 50, "keep_last": 2, "resume_validation": "strict"},
  "budgets": {"max_training_minutes": 30, "max_teacher_requests": 100, "max_storage_gib": 10},
  "output": {"directory": "./runs/colab-001", "format": "adapters"}
}
Exemplo · json
{
  "runtime": {"target": "customer_datacenter", "devices": [0, 1], "distributed": {"backend": "ddp", "nodes": 2}},
  "checkpoints": {"every_steps": 100, "keep_last": 3, "resume_validation": "strict"},
  "output": {"directory": "./runs/distributed-001", "format": "safetensors"}
}
Exemplo · bash
# Export a validated adapter or full model, not teacher weights.
fpai-training evaluate --run ./german-project/runs/support-001 --split test
fpai-training export --run ./german-project/runs/support-001 --format adapters
# Inspect artifact-manifest.json, pinned base/tokenizer and evaluation-report.json.
# Reload the package in a fresh compatible runtime before changing live inference.
# Export does not deploy, allocate hosting, or upload to an external model hub.