¿Cómo creo un trabajo de entrenamiento cuando el modelo que se va a entrenar hace referencia a un paquete de dependencia?
Almacene el archivo pip-requirements.txt en el directorio de código de entrenamiento.
Se puede utilizar cualquiera de los siguientes nombres de archivo. Esta sección utiliza pip-requirements.txt como ejemplo.
- pip-requirement.txt
- pip-requirements.txt
- requirement.txt
- requirements.txt
Antes de ejecutar el archivo de arranque de entrenamiento, el sistema ejecuta automáticamente el siguiente comando para instalar los paquetes de Python especificados:
pip install -r pip-requirements.txt
- Para obtener más información sobre el directorio de código, consulte Almacenamiento del archivo de instalación en el directorio de código.
- Para obtener más información acerca de las especificaciones de pip-requirements.txt, consulte Especificaciones del archivo de instalación.
Almacenamiento del archivo de instalación en el directorio de código
ModelArts le permite instalar paquetes de dependencias de terceros durante el entrenamiento de modelos de cualquiera de las siguientes maneras:
- Método 1 (recomendado): Antes de crear un algoritmo, almacene los archivos necesarios o paquetes de instalación en el directorio de código.
Figura 1 Creación de un algoritmo
- Método 2: Antes de utilizar un marco común para crear un trabajo de entrenamiento, almacene los archivos necesarios o los paquetes de instalación en el directorio de código. (Esta función dejará de estar disponible en breve.)
Figura 2 Usar un framework común para crear un algoritmo
Especificaciones del archivo de instalación
El archivo de instalación varía según el tipo de paquete de dependencia.
- Paquetes de instalación de código abierto
No se admite la instalación con el código fuente de GitHub.
Cree un archivo llamado pip-requirements.txt en el directorio de código y especifique el nombre y el número de versión del paquete de dependencias en el archivo. El formato es [Package name]==[Version].
Tomemos, por ejemplo, una ruta de OBS especificada por Code Dir que contiene archivos de modelo y el archivo pip-requirements.txt. La estructura de directorios de código sería la siguiente:
|---OBS path to the model boot file |---model.py #Model boot file |---pip-requirements.txt #Defined configuration file, which specifies the name and version of the dependency package
A continuación se muestra el contenido del archivo pip-requirements.txt:
alembic==0.8.6 bleach==1.4.3 click==6.6
- Paquetes de WHL
Si los antecedentes de entrenamiento no admiten la descarga de paquetes de instalación de código abierto o el uso de paquetes de WHL compilados por el usuario, el sistema no puede descargar e instalar automáticamente el paquete. En este caso, coloque el paquete de WHL en el directorio de código, cree un archivo llamado pip-requirements.txt y especifique el nombre del paquete WHL en el archivo. El paquete de dependencias debe ser un archivo .whl.
Tomemos, por ejemplo, una ruta de acceso de OBS especificada por Code Dir que contiene archivos de modelo, el archivo .whl y el archivo pip-requirements.txt. La estructura de directorios de código sería la siguiente:
|---OBS path to the model boot file |---model.py #Model boot file |---XXX.whl #Dependency package. If multiple dependencies are required, place multiple dependency packages here. |---pip-requirements.txt #Defined configuration file, which specifies the name of the dependency package
A continuación se muestra el contenido del archivo pip-requirements.txt:
numpy-1.15.4-cp36-cp36m-manylinux1_x86_64.whl tensorflow-1.8.0-cp36-cp36m-manylinux1_x86_64.whl