Documentación

Modelfile

Un Modelfile describe un modelo derivado: un modelo base más las preguntas que debería plantear siempre y, opcionalmente, una calibración reajustada, una precisión fijada, una licencia y una descripción. Constrúyelo con ollaya create y luego ejecútalo por su nombre con solo un estado.

ollaya create triage -f Modelfile
ollaya run triage "I was charged twice for my subscription this month."

Ejemplo

# 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

Instrucciones

Instrucción Obligatorio Valor
FROM sí El modelo base, por ejemplo laya:en, o un router como laya
QUESTIONS no Las preguntas integradas: el mismo objeto que questions en la API
CALIBRATION no Temperaturas que reemplazan las del modelo base
PARAMETER no precision fp16 o precision fp32, para fijar un grafo
DESCRIPTION no Una línea, mostrada por ollaya show y /v1/models
LICENSE no Texto de licencia para el modelo derivado
  • Sintaxis. Las directivas no distinguen mayúsculas de minúsculas; # inicia una línea de comentario.
  • Valores. QUESTIONS, CALIBRATION y LICENSE aceptan una ruta relativa al Modelfile (~/ funciona), JSON en línea en una sola línea, o un bloque entre """ que abarca varias líneas.
  • Entrada desconocida. Cualquier otra directiva o parámetro es un error.
  • Descarga. ollaya create descarga FROM primero cuando no está en esta máquina.

Todo lo que omitas se hereda del modelo base. Cuando una solicitud envía sus propias questions, reemplazan las integradas para esa solicitud.

FROM

El modelo sobre el que construir. Un router también sirve; el modelo derivado entonces enruta como su base:

FROM laya

QUESTIONS

Las preguntas que el modelo plantea cuando una solicitud no trae ninguna; se validan como una solicitud de decisión (1–256 preguntas):

QUESTIONS ./questions.json

CALIBRATION

Las probabilidades solo son útiles para umbrales si están calibradas. Ollaya calibra con escalado de temperatura: los logits se dividen por una temperatura según el tipo de pregunta y el número de opciones. CALIBRATION reemplaza las temperaturas del modelo base por unas reajustadas con tus propios datos etiquetados:

{
  "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 un fallback por tipo de pregunta (choice, score, noul). Las claves de temperature_by_options son <type>:<2|3-5|6-10|11+>, según el número de opciones de la pregunta.

PARAMETER

El único parámetro es precision. Un modelo sin fijar lleva un grafo fp16 y uno fp32 y elige uno al cargarse (fp16 en una GPU CUDA, fp32 en la CPU). PARAMETER precision fp32 fija el grafo fp32 en todas partes, por ejemplo para coincidir exactamente con una referencia fp32.

PARAMETER precision fp32

DESCRIPTION

DESCRIPTION Support ticket triage

LICENSE

El texto de licencia que se distribuye con el modelo y que muestra ollaya show --license. Cuando construyas sobre un modelo Apache-2.0 como Laya, conserva su licencia y atribución.