wutian713 2023-10-25 19:54 采纳率: 33.3%
浏览 69
已结题

Tensor.op is undefined when eager execution is enabled


    user_layer_model = keras.models.Model(
        inputs=[m.input[0], m.input[1], m.input[2]],
        outputs=m.get_layer("user_embedding").output
    )
 
    user_input = [
            np.reshape(user_id, [1, 1]),
            np.reshape(user_type, [1, 1]),
            np.reshape(actor, [1, 1])
    ]
 
    u_embedding = user_layer_model(user_input)
    user_embedding.append(u_embedding.numpy().flatten())
 

使用gunicorn+gevent实现高并发调用推荐模型,少量线程并发较低调用没有问题,线程多并发高点第12行会报错Tensor.op is undefined when eager execution is enabled

Exception encountered when calling layer 'embedding' (type Embedding).
 
Tensor.op is undefined when eager execution is enabled.
 
Call arguments received by layer 'embedding' (type Embedding):
  • inputs=tf.Tensor(shape=(1, 1), dtype=float32)

  • 写回答

26条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2023-10-25 19:54
    关注
    获得2.00元问题酬金

    引自强大而免费的微信小程序:皆我百晓生

    这个问题是由于在启用eager execution时,有一个Tensor.op未定义引起的。在TensorFlow 2.0中,eager execution是默认启用的,这会导致某些底层操作(例如Tensor.op)不可用。

    为了解决这个问题,你可以尝试使用tf.compat.v1.disable_eager_execution()禁用eager execution,然后重新运行你的代码。

    修改后的代码如下:

    import tensorflow as tf
    import numpy as np
    from tensorflow import keras
    
    tf.compat.v1.disable_eager_execution()
    
    user_layer_model = keras.models.Model(
        inputs=[m.input[0], m.input[1], m.input[2]],
        outputs=m.get_layer("user_embedding").output
    )
    
    user_input = [
            np.reshape(user_id, [1, 1]),
            np.reshape(user_type, [1, 1]),
            np.reshape(actor, [1, 1])
    ]
    
    u_embedding = user_layer_model(user_input)
    user_embedding.append(u_embedding.numpy().flatten())
    

    这样应该就可以解决"Tensor.op is undefined when eager execution is enabled"的问题。

    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月2日
  • 赞助了问题酬金50元 10月26日
  • 创建了问题 10月25日

悬赏问题

  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line