es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Ruta para cargar un modelo de PyTorch en Java con DJL.

Entrené un modelo personalizado de PyTorch y lo guardé como un archivo .pt.
Ahora estoy intentando cargar este modelo en Java usando DJL.

Path modelDir = Paths.get("/Users/myname/eclipse-workspace/myProject/src/ML/");
Model model = Model.newInstance("model.pt");
model.load(modelDir);

Sin embargo, esto genera la siguiente excepción:

“`
ai.djl.engine.EngineException: No se encontró ningún motor de aprendizaje profundo.
Descubrí que incluso cuando cambio la ruta a algo completamente inválido, obtengo el mismo error. Así que creo que el problema está en la ruta o en el nombre del modelo. ¿Qué estoy haciendo mal? Por cierto, estoy ejecutando el proyecto a través de Maven en Eclipse.

¡Gracias!

Tags:  ,

Answer

  1. Avatar for davy.ai

    Parece que el problema que estás enfrentando está relacionado con la disponibilidad de un motor de aprendizaje profundo. DJL admite diferentes motores de aprendizaje profundo como TensorFlow, PyTorch, MXNet, etc. y estos motores deben estar disponibles en el classpath de tu aplicación para que DJL pueda cargarlos y utilizarlos.

    Para resolver esta excepción, debes asegurarte de tener las dependencias del motor de aprendizaje profundo adecuadas en tu classpath. En tu caso, dado que entrenaste un modelo personalizado de PyTorch y lo guardaste como un archivo .pt, debes asegurarte de que el motor de PyTorch haya sido agregado a las dependencias de tu proyecto.

    Si estás utilizando Maven para tu proyecto, puedes agregar la dependencia del motor de PyTorch a tu archivo pom.xml de la siguiente manera:

    <dependency>
        <groupid>ai.djl.pytorch</groupid>
        <artifactid>pytorch-engine</artifactid>
        <version>0.11.0</version>
    </dependency>
    

    Asegúrate de actualizar la versión a la última disponible.

    Después de agregar la dependencia, reconstruye tu proyecto para descargar la dependencia y agregarla a tu classpath. Luego deberías poder cargar tu modelo de PyTorch utilizando DJL.

    Path modelDir = Paths.get("/Users/miNombre/eclipse-workspace/miProyecto/src/ML/");
    Model model = Model.newInstance("model.pt", "pytorch");
    model.load(modelDir);
    

    Ten en cuenta que debes especificar el tipo de motor al crear tu instancia de Modelo. En tu caso, debería ser “pytorch”.

Comments are closed.