oktoscript / examples /TROUBLESHOOTING.md
OktoSeek's picture
Update
5df2c77 verified
# Troubleshooting - Problemas Comuns
## Erro: "Failed to parse file"
### Possíveis Causas:
1. **Encoding do arquivo**
- O arquivo deve estar em **UTF-8 sem BOM**
- Evite salvar no Bloco de Notas do Windows (pode adicionar BOM)
- Use VSCode, Notepad++, ou outro editor que suporte UTF-8
2. **Caracteres invisíveis**
- Copiar/colar pode adicionar caracteres invisíveis
- Re-digite o arquivo ou use um editor que mostre caracteres invisíveis
3. **Problemas com comentários**
- Comentários devem começar com `#` no início da linha
- Evite caracteres especiais em comentários
4. **Aspas incorretas**
- Use aspas retas `"` não aspas curvas `"` ou `"`
- Verifique se todas as aspas estão fechadas
### Soluções:
#### 1. Validar o arquivo primeiro:
```bash
okto validate scripts/train.okt
```
Isso mostrará erros detalhados.
#### 2. Verificar encoding no VSCode:
- Abra o arquivo no VSCode
- Veja no canto inferior direito: deve mostrar "UTF-8"
- Se mostrar outro encoding, clique e selecione "Save with Encoding" → "UTF-8"
#### 3. Criar arquivo limpo:
```bash
# Copie o conteúdo do exemplo
cp oktoscript/examples/test-t5-basic.okt scripts/train.okt
# Ou crie manualmente
```
#### 4. Verificar sintaxe básica:
- Todas as strings devem estar entre aspas: `"valor"`
- Arrays devem usar colchetes: `["okm", "safetensors"]`
- Blocos devem ter chaves: `{ ... }`
- Não use vírgulas no final de arrays ou objetos
### Exemplo de arquivo correto:
```okt
# okto_version: "1.2"
PROJECT "test_t5_basic"
DESCRIPTION "Teste basico"
ENV {
accelerator: "gpu"
min_memory: "4GB"
install_missing: true
}
DATASET {
train: "dataset/train.jsonl"
validation: "dataset/val.jsonl"
}
MODEL {
base: "google/t5-small"
}
TRAIN {
epochs: 3
batch_size: 8
learning_rate: 0.0001
}
EXPORT {
format: ["okm"]
path: "export/"
}
```
### Checklist:
- [ ] Arquivo está em UTF-8
- [ ] Todas as aspas estão fechadas
- [ ] Não há caracteres especiais invisíveis
- [ ] Sintaxe está correta (chaves, colchetes, etc.)
- [ ] `okto validate` passa sem erros
### Se ainda não funcionar:
1. Execute com `--debug` (se disponível):
```bash
okto validate scripts/train.okt --debug
```
2. Verifique o conteúdo do arquivo:
```bash
okto show scripts/train.okt
```
3. Compare com um exemplo que funciona:
```bash
okto validate oktoscript/examples/test-t5-basic.okt
```