Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

377
Vistas
gcloud ml-engine local predict RuntimeError: número mágico incorrecto en el archivo .pyc

Mi objetivo es hacer predicciones en el motor de google cloud ml.

Instalé gcloud sdk en linux ubuntu 16.04LT siguiendo las instrucciones de Google . Ya tengo un modelo entrenado en aprendizaje automático. Estoy usando la versión de python anaconda python 3.5.

Corro:

 gcloud ml-engine local predict --model-dir={MY_MODEL_DIR} --json-instances={MY_INPUT_JSON_INSTANCE}

Recibí el mensaje: ERROR:

(gcloud.ml-engine.local.predict) RuntimeError: número mágico incorrecto en el archivo .pyc

A continuación se muestra todo el seguimiento de la pila:

 DEBUG: (gcloud.ml-engine.local.predict) RuntimeError: Bad magic number in .pyc file Traceback (most recent call last): File "/usr/lib/google-cloud-sdk/lib/googlecloudsdk/calliope/cli.py", line 797, in Execute resources = calliope_command.Run(cli=self, args=args) File "/usr/lib/google-cloud-sdk/lib/googlecloudsdk/calliope/backend.py", line 757, in Run resources = command_instance.Run(args) File "/usr/lib/google-cloud-sdk/lib/surface/ml_engine/local/predict.py", line 65, in Run args.text_instances) File "/usr/lib/google-cloud-sdk/lib/googlecloudsdk/command_lib/ml_engine/local_utils.py", line 89, in RunPredict raise LocalPredictRuntimeError(err) LocalPredictRuntimeError: RuntimeError: Bad magic number in .pyc file ERROR: (gcloud.ml-engine.local.predict) RuntimeError: Bad magic number in .pyc file Evaluation ended**
over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

en realidad funciona con python3, solo necesita eliminar los archivos pyc en las carpetas de la nube de Google, para que la llamada de predicción pueda compilarlos con python3.

para conocer la ubicación de los archivos pyc, habilité la marca --verbosity debug en la llamada de predicción:

 gcloud ml-engine local predict --model-dir=${MODEL_LOCATION} --json-instances=data/new-data2.json --verbosity debug

el trackback le dará información sobre la ruta de los archivos del motor gcloud ml, en mi máquina era:

 /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/lib/googlecloudsdk/command_lib/ml_engine/

vaya a ese directorio y elimine los archivos pyc.

over 4 years ago · Santiago Trujillo Denunciar

0

De hecho, yo mismo publiqué esta pregunta para ayudar a las personas con el mismo problema, porque no pude encontrar una respuesta fácil y concisa.

Hay otras soluciones, en mi opinión incluso mejores que la mía, pero esta fue la que me resolvió.

Mi solución fue que Google Cloud SDK no funciona con Python 3, al menos en mi configuración. Resolver:

  1. instale un entorno virtual anaconda con python 2 (en mi caso 2.7.14)
  2. activa el ambiente
  3. ejecuta el comando gcloud nuevamente

Si su modelo de exportación ml y las entradas están bien, funcionará.

Problema simple, pero me causó mucho dolor, solo porque no pude encontrar fácilmente este requisito previo o simplemente me lo perdí.

Espero ayudar a alguien.

over 4 years ago · Santiago Trujillo Denunciar

0

Encuentre y elimine todos los archivos pyc en el SDK de Google. Fueron compilados con el entorno de python incorrecto. Se volverán a compilar automáticamente la próxima vez que se necesiten.

 %%bash find "/tools/google-cloud-sdk/lib/" -name '*.pyc' -delete
over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda