Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

backend/app.py 启动时报 ImportError: cannot import name 'MSRA' from 'paddle.fluid.initializer' #80

Open
287852793 opened this issue Oct 10, 2023 · 6 comments · Fixed by #81
Assignees

Comments

@287852793
Copy link

287852793 commented Oct 10, 2023

版本信息:
paddlepaddle-gpu 2.5.1.post112
paddlers 0.0.0.dev0 (develop分支,拉取于2023年10月9日)
PP-GeoView v0.1.1

解释:
如果 PaddleRS v1.0.0 进行部署使用,则会报另一个 ImportError,应该是 paddlepaddle 2.5.1 不兼容,改用 develop 分支构建后部署过程正常

求助~

企业微信截图_16969084812320

@Bobholamovic Bobholamovic self-assigned this Oct 10, 2023
@Bobholamovic
Copy link
Member

你好,目前GeoView暂不支持PaddleRS的develop版本,请使用PaddleRS 1.0版本~

@287852793
Copy link
Author

了解,该问题是由于PaddlePaddle版本>=2.5导致,PaddleRS v1.0.0 版本本身也不支持 PaddlePaddle >= 2.5 的版本

建议:

1、主页 README.md 中,“PaddlePaddle >= 2.2.0” 改为 “PaddlePaddle >= 2.2.0 & PaddlePaddle < 2.5.0”

2、早日完成对 PaddlePaddle >= 2.5.0 的支持

@Bobholamovic
Copy link
Member

Bobholamovic commented Oct 11, 2023

该问题是由于PaddlePaddle版本>=2.5导致,PaddleRS v1.0.0 版本本身也不支持 PaddlePaddle >= 2.5 的版本

是的,这确实是问题所在~

感谢你的建议,我已经提了PR在文档中对PaddlePaddle版本追加上限。我们后续将适配PaddleRS新的稳定版本以完成对PaddlePaddle 2.5的支持。

@287852793
Copy link
Author

感谢开源建设人员的付出和分享

经历了3天的测试把PaddlerRS和GeoView了解了一下,在将PaddlePaddle的版本替换成了2.4.2之后,部署的过程中还是踩了不少坑,包括但不限于以下:

  1. numpy版本不能是1.24,根据PaddleRS的依赖安装之后的numpy默认1.24,但此版本安装后续的GeoView会报错,需在装完PaddleRS之后手动调整numpy版本到1.21
  2. PaddleRS安装的时候setuptools版本应该低于68(65.5.0可成功)
  3. GeoView backend 的 requirements 中所有定义的 flask 相关的版本号,>=统统改成==,最新的flask无法启动GeoView的后端
  4. GeoView如果是服务器部署客户端访问的话,需要额外修改配置文件 frontend/.env 为服务器的ip
  5. PaddleRS的项目构建的时候文档描述为 pip install . ,而GeoView 描述为 pip install -e . ,这两种方法本质没什么区别,但是采用前者报错,最终使用 GeoView 的关联 PaddleRS 版本安装成功
  6. GeoView中关联的PaddleRS安装成功后,python环境无法检测到paddlers的依赖,我这边的处理方式为将PaddleRS目录中的paddlers在python的dist-packages目录下建立了软链接,后续验证可正常工作(我的python版本为3.8.10)

在部署成功之后体验了一下GeoView,感觉后续工作还是任重道远,作为一个遥感影像解译软件,解析TIF格式的数据是必要的,而且这也是PaddleRS v1.0.0版本的新特性,无法直接处理TIF数据对于遥感解译平台的局限还是太大了

另外在模型方面,GeoView提供的预训练模型也有一些问题:
1、变化检测模型未推理成功
image
2、地物分类模型未推理成功,报错为:Cannot handle this data type: (1, 1, 3), <i8
image

我这边会持续关注 PaddleRS 和 GeoView 的更新情况,希望这两个项目越做越好

@jscslld
Copy link
Member

jscslld commented Oct 11, 2023

变化检测和地物分类报错的问题您可以尝试使用v0.1.1版本,在这个版本里面这两个问题应该都已经修复了。

@287852793
Copy link
Author

通过拉取 GeoView v.0.1.1 版本构建部署,已解决模型使用问题。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants