Download project-docs/contract.md from enzoferracini/patchinsight-bertimbau-ptbr: direct link, hf CLI and curl.
- Browser
- Download file 4.22 kB
-
https://huggingface.co/enzoferracini/patchinsight-bertimbau-ptbr/resolve/main/project-docs/contract.md
- Command line
-
hf download hf://enzoferracini/patchinsight-bertimbau-ptbr/project-docs/contract.md
-
curl -L -o contract.md https://huggingface.co/enzoferracini/patchinsight-bertimbau-ptbr/resolve/main/project-docs/contract.md
Contrato CLI/JSON 0.2.0
patchinsight predict --text '...' --json usa BERT e exige um bundle local
ajustado. --backend heuristic seleciona explicitamente o baseline de regras.
Não existe fallback silencioso quando o modelo não carrega.
Entrada: string Unicode normalizada em NFC, espaços condensados, preservando maiúsculas e acentos. Vazio, controle não espacial e mais de 20.000 caracteres geram erro. O encoder limita a 192 tokens, incluindo tokens especiais.
Saída: um objeto JSON em stdout, validado por Pydantic. Erros de execução e entrada retornam código 2 e JSON em stderr; erros de argumentos usam o formato padrão do argparse em stderr. Logs das bibliotecas também podem ir para stderr.
| Campo | Significado |
|---|---|
components |
Exatamente os cinco rótulos; cada um com state e score |
state |
present, absent ou unknown |
score |
Sigmoid não calibrada por padrão; temperatura experimental opt-in; regra binária no baseline; null para desconhecido |
structures |
Zero ou mais de XYZ, STAR, Action–Result, Action–Technology, Action–Method |
task |
present se há objetivo/responsabilidade explícito, senão unknown |
technologies |
Nomes canônicos encontrados no léxico, sem extração de spans |
diagnostics |
Componentes ausentes/desconhecidos, task_unknown, unclassified, truncamento |
truncated / tokens |
Corte pelo tokenizer; tokens totais antes do corte; null no baseline |
versions |
schema_version, model_version, rules_version |
backend / score_kind |
Método efetivo e interpretação de seus valores |
Se houver truncamento, uma previsão negativa no prefixo fica unknown com
score null. Predições positivas referem-se ao trecho observado. A detecção
lexical de tecnologias e objetivo lê o texto normalizado completo; os
componentes semânticos do BERT leem o prefixo. Essa diferença pode limitar
a interpretação das combinações em entradas longas.
Regras, sempre exigindo componentes present:
| Estrutura | Componentes e auxiliares |
|---|---|
| XYZ | action + result + measurement + method |
| STAR | context + action + result + objetivo/responsabilidade explícito |
| Action–Result | action + result |
| Action–Technology | action + tecnologia do léxico |
| Action–Method | action + method |
Estas combinações verificam coocorrência, sem validar alinhamento causal,
ordem narrativa, qualidade ou adequação universal da estrutura. context
aproxima Situation; Task só é detectada por padrões explícitos como “meu
objetivo era” e “fui encarregado de”. A ausência desses padrões permanece
desconhecida. Não há score de qualidade ou ranking de pessoas. Na v0.2, a demo e o endpoint
HTTP são locais e restritos a loopback; não há API publicada.
O léxico usa limites de palavras, aliases como Postgres/K8s/sklearn e evita Java dentro de JavaScript. Uma menção lexical não prova uso da tecnologia pela pessoa; a estrutura Action–Technology é somente coocorrência.
Extensões da v0.2
versions.schema_version e rules_version são 0.2.0; model_version continua a
identificar o checkpoint efetivo, inclusive 0.1.0 para os pesos preservados.
score_kind aceita binary_rule, sigmoid_uncalibrated e
temperature_scaled_experimental. A política opt-in exige método BERT e hash de
manifest do mesmo bundle; sua identificação aparece em diagnostics.
Quando uma política de confiança válida encaminhar componente para revisão, state é unknown e score é null; nenhum match de estrutura pode usar unknown. A política fornecida nesta rodada não atingiu a meta de desenvolvimento e tem cutoff null, sem abstenção por confiança. Truncamento continua independente.
batch lê JSONL com text e id opcional; retorna envelope por linha com line,
id e prediction ou error. Código 1 indica erro por item; 2 erro global. O
carregamento ocorre uma vez e as previsões válidas são agrupadas. Limites,
timeout cooperativo e formato HTTP: v02.md.
A inferência em lote usa o mesmo contrato de componentes da inferência única. O timeout entre lotes não interrompe inferência ativa ou stdin bloqueado.