¿Cómo edito los parámetros de dependencia del paquete de instalación en un archivo de configuración de modelo al importar un modelo?
Síntoma
Al importar un modelo desde OBS o una imagen de contenedor, edite un archivo de configuración de modelo. El archivo de configuración del modelo describe el uso del modelo, el marco informático, la precisión, el paquete de dependencia del código de inferencia y la API del modelo. El archivo de configuración debe estar en formato JSON. dependencies en el archivo de configuración especifica el paquete de dependencias necesario para configurar el código de inferencia del modelo. Configure el nombre del paquete, el modo de instalación y las restricciones de versión. Para obtener más información, véase Parámetros. En la siguiente sección se describe cómo editar dependencies en el archivo de configuración del modelo durante la importación del modelo.
Solución
Los paquetes de instalación deben instalarse en secuencia. Por ejemplo, antes de instalar mmcv-full, instale Cython, pytest-runner y pytest. En el archivo de configuración Cython, pytest-runner y pytest están por delante de mmcv-full.
Por ejemplo:
"dependencies": [ { "installer": "pip", "packages": [ { "package_name": "Cython" }, { "package_name": "pytest-runner" }, { "package_name": "pytest" }, { "restraint": "ATLEAST", "package_version": "5.0.0", "package_name": "Pillow" }, { "restraint": "ATLEAST", "package_version": "1.4.0", "package_name": "torch" }, { "restraint": "ATLEAST", "package_version": "1.19.1", "package_name": "numpy" }, { "package_name": "mmcv-full" } ] } ]
Si la instalación de mmcv-full falla, la posible causa es que GCC no se instaló en la imagen básica, lo que provoca un error de compilación. En este caso, utilice el paquete de ruedas en las instalaciones para instalar mmcv-full.
Por ejemplo:
"dependencies": [ { "installer": "pip", "packages": [ { "package_name": "Cython" }, { "package_name": "pytest-runner" }, { "package_name": "pytest" }, { "restraint": "ATLEAST", "package_version": "5.0.0", "package_name": "Pillow" }, { "restraint": "ATLEAST", "package_version": "1.4.0", "package_name": "torch" }, { "restraint": "ATLEAST", "package_version": "1.19.1", "package_name": "numpy" }, { "package_name": "mmcv_full-1.3.9-cp37-cp37m-manylinux1_x86_64.whl" } ] } ]
dependencies en el archivo de configuración del modelo admite múltiples matrices de estructura de dependencias en formato de lista.
"dependencies": [ { "installer": "pip", "packages": [ { "package_name": "Cython" }, { "package_name": "pytest-runner" }, { "package_name": "pytest" }, { "package_name": "mmcv_full-1.3.9-cp37-cp37m-manylinux1_x86_64.whl" } ] }, { "installer": "pip", "packages": [ { "restraint": "ATLEAST", "package_version": "5.0.0", "package_name": "Pillow" }, { "restraint": "ATLEAST", "package_version": "1.4.0", "package_name": "torch" }, { "restraint": "ATLEAST", "package_version": "1.19.1", "package_name": "numpy" }, ] } ]