Modelfile
Um Modelfile descreve um modelo derivado: um modelo base mais as perguntas que deve fazer sempre e, opcionalmente, uma calibração reajustada, uma precisão fixada, uma licença e uma descrição. Constrói-o com ollaya create e depois executa-o pelo nome apenas com um estado.
ollaya create triage -f Modelfile
ollaya run triage "I was charged twice for my subscription this month."
Exemplo
# Support ticket triage
FROM laya:en
QUESTIONS """
{
"department": {
"type": "choice",
"instructions": "Which team should handle this ticket?",
"criteria": {
"billing": "Payments, invoices and refunds",
"technical": "Bugs, errors and outages",
"account": "Login, profile and settings"
}
},
"urgency": {
"type": "score",
"instructions": "How urgent is this ticket?",
"criteria": ["Can wait", "Needs attention this week", "Needs attention today"]
},
"refund": {
"type": "noul",
"instructions": "Does the customer ask for money back?"
}
}
"""
CALIBRATION ./calibration.json
PARAMETER precision fp32
DESCRIPTION Support ticket triage
LICENSE ./LICENSE
Instruções
| Instrução | Obrigatório | Valor |
|---|---|---|
FROM |
sim | O modelo base, por exemplo laya:en, ou um roteador como laya |
QUESTIONS |
não | As perguntas integradas: o mesmo objeto que questions na API |
CALIBRATION |
não | Temperaturas que substituem as do modelo base |
PARAMETER |
não | precision fp16 ou precision fp32, para fixar um grafo |
DESCRIPTION |
não | Uma linha, mostrada por ollaya show e /v1/models |
LICENSE |
não | Texto de licença para o modelo derivado |
- Sintaxe. As diretivas não distinguem maiúsculas de minúsculas;
#inicia uma linha de comentário. - Valores.
QUESTIONS,CALIBRATIONeLICENSEaceitam um caminho relativo ao Modelfile (~/funciona), JSON em linha numa só linha, ou um bloco entre"""com várias linhas. - Entrada desconhecida. Qualquer outra diretiva ou parâmetro é um erro.
- Descarga.
ollaya createdescarregaFROMprimeiro quando este não está nesta máquina.
Tudo o que omitires é herdado do modelo base. Quando um pedido envia as próprias questions, estas substituem as integradas nesse pedido.
FROM
O modelo sobre o qual construir. Um roteador também funciona; o modelo derivado encaminha então como a sua base:
FROM laya
QUESTIONS
As perguntas que o modelo faz quando um pedido não traz nenhuma; validadas como um pedido de decisão (1–256 perguntas):
QUESTIONS ./questions.json
CALIBRATION
As probabilidades só são úteis para limiares se estiverem calibradas. A Ollaya calibra com escalonamento de temperatura: os logits são divididos por uma temperatura por tipo de pergunta e número de opções. CALIBRATION substitui as temperaturas do modelo base por outras reajustadas nos teus próprios dados rotulados:
{
"temperature": [1.6, 1.25, 1.98],
"temperature_by_options": {
"choice:2": 1.9,
"choice:3-5": 1.76,
"score:3-5": 1.25,
"noul:2": 1.98
}
}
temperature guarda um fallback por tipo de pergunta (choice, score, noul). As chaves de temperature_by_options são <type>:<2|3-5|6-10|11+>, pelo número de opções da pergunta.
PARAMETER
O único parâmetro é precision. Um modelo puro transporta um grafo fp16 e um fp32 e escolhe um ao carregar (fp16 numa GPU CUDA, fp32 na CPU). PARAMETER precision fp32 fixa o grafo fp32 em todo o lado, por exemplo para corresponder exatamente a uma referência fp32.
PARAMETER precision fp32
DESCRIPTION
DESCRIPTION Support ticket triage
LICENSE
O texto de licença fornecido com o modelo e mostrado por ollaya show --license. Quando construíres sobre um modelo Apache-2.0 como o Laya, mantém a licença e a atribuição dele.