开发者社区 > 云原生 > Serverless > 正文

有没有大佬帮看下 我在自定义版本SD中上传了一个safetensor的模型文件(这也是SD mode

有没有大佬帮看下 我在自定义版本SD中上传了一个safetensor的模型文件(这也是SD model中目前唯一一个模型文件),但SD却打不开,并得到报错。。之后尝试把这个文件的后缀改成ckpt仍然不行

提问5.png

展开
收起
古拉古拉 2023-06-12 22:33:03 334 0
4 条回答
写回答
取消 提交回答
  • 删除重新上传,上传未完成

    此答案来自钉钉群“阿里函数计算官网客户"

    2023-06-13 12:40:12
    赞同 展开评论 打赏
  • 函数计算中上传的文件需要符合函数计算的要求,如果您的文件不符合要求,则可能会导致函数计算无法正常加载和执行。

    另外,您可以查看函数计算的错误日志,以了解更多有关错误的详细信息。

    关于您的问题,我建议您检查以下几点:

    1. 您的模型文件是否符合函数计算的要求。您可以查看函数计算的文档,了解有关上传文件的要求。

    2. 您的模型文件是否已经损坏。您可以尝试在本地打开模型文件,以确保它没有损坏。

    3. 您的代码是否正确地加载了模型文件。您可以检查您的代码,确保正确地加载了模型文件,并且没有出现任何错误。

    2023-06-13 08:42:03
    赞同 展开评论 打赏
  • 十分耕耘,一定会有一分收获!

    楼主你好,根据您的描述,您是使用Serverless Devs工具上传了一个模型文件,并且在使用Serverless Devs时出现了错误。

    根据您提供的信息,我猜测问题可能是由于模型文件的格式不兼容或者不支持导致的。要解决这个问题,您可以尝试以下几个步骤:

    检查模型文件的格式:safetensor是一个新型的深度学习框架,如果您正在使用的是其他的深度学习框架(如TensorFlow或PyTorch),则可能需要将模型文件进行转换,以使其兼容safetensor框架。您可以尝试使用safetensor提供的转换工具,将模型文件转换为safetensor支持的格式。

    确认模型文件的正确性:确保您上传的模型文件没有损坏或者格式错误。您可以尝试在本地使用safetensor框架加载模型文件,以检查模型文件是否正确。

    检查Serverless Devs的版本:确保您使用的是最新版本的Serverless Devs工具。如果您使用的是旧版本的Serverless Devs工具,则可能会出现兼容性问题。

    尝试修改模型文件的后缀名:如果您上传的模型文件后缀名为.safetensor,可能会导致Serverless Devs无法正确识别模型文件。您可以尝试将模型文件的后缀名改为其他格式,例如.ckpt或.pb等,然后重新上传到Serverless Devs中。

    2023-06-13 08:09:18
    赞同 展开评论 打赏
  • 值得去的地方都没有捷径

    如果你上传的模型文件是安全张量,那么需要在打开SD时使用安全会话模式,才能成功加载该模型。

    你可以尝试以下步骤来打开SD:

    设置安全Context并创建会话: import tensorflow as tf from tensorflow.python.platform import build_info import os

    if build_info.is_macos() or build_info.is_windows(): os.environ['TF_DNNL_USE_PRIMITIVE_CONV'] = '1'

    config = tf.ConfigProto() config.gpu_options.allow_growth = True

    sess = tf.Session(config=config) sess.run(tf.global_variables_initializer()) 在会话中加载模型文件,设置import_scope: import tensorflow as tf

    signature_key = tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY input_key = 'inputs' output_key = 'outputs' export_dir = 'path/to/your/exported/safetensor/model/'

    exported_model = tf.saved_model.load(export_dir, sess.graph) signature = exported_model.signature_def[signature_key] input_tensor_name = signature.inputs[input_key].name output_tensor_name = signature.outputs[output_key].name

    import_scope = "import"

    tf.saved_model.loader.load(sess, [tf.saved_model.tag_constants.SERVING], export_dir, import_scope=import_scope) 如果还是无法加载模型,在检查文件路径和模型文件是否完好之后,你可以尝试使用tensorflow的其他函数(例如tf.train.load_variables())手动加载模型,以便进一步诊断问题。

    2023-06-12 22:45:47
    赞同 展开评论 打赏
问答地址:

快速交付实现商业价值。

热门讨论

热门文章

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载