You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

quick_start.md 3.7 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. # 快速开始
  2. ## python环境配置
  3. 首先,参考[文档](https://docs.anaconda.com/anaconda/install/) 安装配置Anaconda环境
  4. 安装完成后,执行如下命令为maas library创建对应的python环境。
  5. ```shell
  6. conda create -n maas python=3.6
  7. conda activate maas
  8. ```
  9. 检查python和pip命令是否切换到conda环境下。
  10. ```shell
  11. which python
  12. # ~/workspace/anaconda3/envs/maas/bin/python
  13. which pip
  14. # ~/workspace/anaconda3/envs/maas/bin/pip
  15. ```
  16. 注: 本项目只支持`python3`环境,请勿使用python2环境。
  17. ## 第三方依赖安装
  18. MaaS Library目前支持tensorflow,pytorch两大深度学习框架进行模型训练、推理, 在Python 3.6+, Pytorch 1.8+, Tensorflow 2.6上测试可运行,用户可以根据所选模型对应的计算框架进行安装,可以参考如下链接进行安装所需框架:
  19. * [Pytorch安装指导](https://pytorch.org/get-started/locally/)
  20. * [Tensorflow安装指导](https://www.tensorflow.org/install/pip)
  21. ## MaaS library 安装
  22. 注: 如果在安装过程中遇到错误,请前往[常见问题](faq.md)查找解决方案。
  23. ### pip安装
  24. ```shell
  25. pip install -r http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/release/maas/maas.txt
  26. ```
  27. 安装成功后,可以执行如下命令进行验证安装是否正确
  28. ```shell
  29. python -c "from maas_lib.pipelines import pipeline;print(pipeline('image-matting',model='damo/image-matting-person')('http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/data/test/maas/image_matting/test.png'))"
  30. ```
  31. ### 使用源码安装
  32. 适合本地开发调试使用,修改源码后可以直接执行
  33. ```shell
  34. git clone git@gitlab.alibaba-inc.com:Ali-MaaS/MaaS-lib.git maaslib
  35. git fetch origin master
  36. git checkout master
  37. cd maaslib
  38. #安装依赖
  39. pip install -r requirements.txt
  40. # 设置PYTHONPATH
  41. export PYTHONPATH=`pwd`
  42. ```
  43. 安装成功后,可以执行如下命令进行验证安装是否正确
  44. ```shell
  45. python -c "from maas_lib.pipelines import pipeline;print(pipeline('image-matting',model='damo/image-matting-person')('http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/data/test/maas/image_matting/test.png'))"
  46. ```
  47. ## 训练
  48. to be done
  49. ## 评估
  50. to be done
  51. ## 推理
  52. pipeline函数提供了简洁的推理接口,示例如下, 更多pipeline介绍和示例请参考[pipeline使用教程](tutorials/pipeline.md)
  53. ```python
  54. import cv2
  55. import os.path as osp
  56. from maas_lib.pipelines import pipeline
  57. from maas_lib.utils.constant import Tasks
  58. # 根据任务名创建pipeline
  59. img_matting = pipeline(Tasks.image_matting, model='damo/image-matting-person')
  60. # 直接提供图像文件的url作为pipeline推理的输入
  61. result = img_matting(
  62. 'http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/data/test/maas/image_matting/test.png'
  63. )
  64. cv2.imwrite('result.png', result['output_png'])
  65. print(f'Output written to {osp.abspath("result.png")}')
  66. ```
  67. 此外,pipeline接口也能接收Dataset作为输入,上面的代码同样可以实现为
  68. ```python
  69. import cv2
  70. import os.path as osp
  71. from maas_lib.pipelines import pipeline
  72. from maas_lib.utils.constant import Tasks
  73. from ali_maas_datasets import PyDataset
  74. # 使用图像url构建PyDataset,此处也可通过 input_location = '/dir/to/images' 来使用本地文件夹
  75. input_location = [
  76. 'http://pai-vision-data-hz.oss-cn-zhangjiakou.aliyuncs.com/data/test/maas/image_matting/test.png'
  77. ]
  78. dataset = PyDataset.load(input_location, target='image')
  79. img_matting = pipeline(Tasks.image_matting, model='damo/image-matting-person')
  80. # 输入为PyDataset时,输出的结果为迭代器
  81. result = img_matting(dataset)
  82. cv2.imwrite('result.png', next(result)['output_png'])
  83. print(f'Output written to {osp.abspath("result.png")}')
  84. ```

致力于通过开放的社区合作,开源AI模型以及相关创新技术,推动基于模型即服务的生态繁荣发展