O Arquivo runtime.yaml
Além de score.py
, o arquivo runtime.yaml
deve estar em um artefato de modelo.
A finalidade do arquivo runtime.yaml
é:
Fornecer a referência necessária de runtime do ambiente conda para fins de implantação de modelo. Isso é necessário para implantar um modelo usando o recurso de implantação de modelo do serviço Data Science.
Fornecemos vários exemplos de catálogo de modelos que incluem arquivos runtime.yaml
.
Veja a seguir uma descrição de cada campo do arquivo runtime.yaml
. À medida que a estrutura do artefato de modelo muda, esse arquivo evolui, assim como a versão. Estes são os campos do MODEL_ARTIFACT_VERSION (3.0)
atual.
Campo | Descrição |
---|---|
|
A versão desse formato de artefato. Essa versão é 3.0. Isso é extraído automaticamente pelo ADS quando o modelo é salvo em uma sessão de notebook. |
|
O slug do ambiente conda que deseja usar para fins de implantação e pontuação. Normalmente, o ambiente de inferência é o mesmo que o ambiente de treinamento pensado que não precisa ser o caso. Por exemplo, você pode treinar um modelo em um ambiente conda, serializá-lo como modelo ONNX e, em seguida, usar um ambiente conda ONNX para implantá-lo. |
|
O tipo do ambiente conda que deseja usar para fins de implantação e pontuação. Dois valores possíveis: |
|
O caminho no Armazenamento de Objetos do ambiente conda que deseja usar para fins de implantação e pontuação. O caminho segue esta sintaxe: |
|
A versão do Python do ambiente conda que deseja usar para implantação de modelo. As versões suportadas do Python são |
Esquema runtime.yaml
{
"title": "Model Artifact schema",
"type": "object",
"properties": {
"MODEL_ARTIFACT_VERSION": {"type":"string"},
"MODEL_DEPLOYMENT": {
"type": "object",
"title": "Model Deployment",
"properties": {
"INFERENCE_CONDA_ENV": {
"type": "object",
"title": "Inference Conda Env",
"properties": {
"INFERENCE_ENV_SLUG": {"type":"string"},
"INFERENCE_ENV_TYPE": {"type":"string", "enum": ["published", "data_science"]},
"INFERENCE_ENV_PATH": {"type":"string"},
"INFERENCE_PYTHON_VERSION": {"type":"string"}
}
}
}
}
}
}
Exemplo de Arquivo para Implantação de Modelo
Este é um exemplo de arquivo runtime.yaml
para um recurso de implantação de modelo do serviço Data Science:
MODEL_ARTIFACT_VERSION: '3.0'
MODEL_DEPLOYMENT:
INFERENCE_CONDA_ENV:
INFERENCE_ENV_SLUG: envslug
INFERENCE_ENV_TYPE: published
INFERENCE_ENV_PATH: oci://<bucket-name>@<namespace>/<prefix>/<env>.tar.gz
INFERENCE_PYTHON_VERSION: '3.7'
Outros Arquivos de Artefato
Além de score.py
e runtime.yaml
, você pode incluir mais arquivos necessários para executar o modelo no artefato. Isso pode incluir:
-
Uma representação serializada do objeto estimador. Por exemplo,
onnx
,pkl
,hdf5
oujson
. -
Um arquivo CSV, uma tabela de dados de lookup etc.
-
Módulos Python extras que são importados em
score.py
.Importante
Módulos Python extras que são importados em
score.py
. Qualquer código usado para inferência deve ser zipado no mesmo nível quescore.py
ou em qualquer nível abaixo. Se algum arquivo necessário estiver presente nos níveis de pasta acima do arquivoscore.py
, ele será ignorado e poderá resultar em falha na implantação.
Se você estiver salvando seu modelo usando a Console, a CLI ou SDKs do OCI, basta compactar os arquivos com os arquivos score.py
e runtime.yaml
.
Se você estiver usando o ADS para salvar seu modelo, copie todos os arquivos no diretório em que o artefato foi criado temporariamente antes de salvar o modelo no catálogo. O ADS compacta o diretório de artefatos inteiro e o envia para o catálogo de modelos.
O artefato agora suporta modelos descompactados de até 6 GB quando o modelo é salvo usando ADS, a CLI ou SDKs. O limite é de 100 MB ao usar a Console do OCI.