| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- #!/usr/bin/env bash
- device_type='gpu'
- backend='vllm'
- build_for_offline='false'
- paddleocr_version='>=3.3.2,<3.4'
- tag_suffix='latest'
- while [[ $# -gt 0 ]]; do
- case $1 in
- --device-type)
- [ -z "$2" ] && {
- echo "`--device-type` requires a value" >&2
- exit 2
- }
- device_type="$2"
- shift
- shift
- case "${device_type}" in
- gpu|gpu-sm120|dcu|xpu|metax-gpu)
- ;;
- *)
- echo "Unknown device type: ${device_type}" >&2
- exit 2
- ;;
- esac
- ;;
- --backend)
- [ -z "$2" ] && {
- echo "`--backend` requires a value" >&2
- exit 2
- }
- backend="$2"
- shift 2
- case "${backend}" in
- vllm|fastdeploy)
- ;;
- *)
- echo "Unknown backend: ${backend}" >&2
- exit 2
- ;;
- esac
- ;;
- --offline)
- build_for_offline='true'
- shift
- ;;
- --ppocr-version)
- [ -z "$2" ] && {
- echo "`--ppocr-version` requires a value" >&2
- exit 2
- }
- paddleocr_version="==$2"
- shift
- shift
- ;;
- --tag-suffix)
- [ -z "$2" ] && {
- echo "`--tag-suffix` requires a value" >&2
- exit 2
- }
- tag_suffix="$2"
- shift
- shift
- ;;
- *)
- echo "Unknown option: $1" >&2
- exit 2
- ;;
- esac
- done
- if [ "${device_type}" != 'gpu' ]; then
- tag_suffix="${tag_suffix}-${device_type}"
- fi
- if [ "${build_for_offline}" = 'true' ]; then
- tag_suffix="${tag_suffix}-offline"
- fi
- dockerfile="accelerators/${device_type}/vlm.Dockerfile"
- docker build \
- -f "${dockerfile}" \
- -t "ccr-2vdh3abv-pub.cnc.bj.baidubce.com/paddlepaddle/paddleocr-genai-${backend}-server:${tag_suffix}" \
- --build-arg BUILD_FOR_OFFLINE="${build_for_offline}" \
- --build-arg PADDLEOCR_VERSION="${paddleocr_version}" \
- --build-arg BACKEND="${backend}" \
- --build-arg http_proxy="${http_proxy}" \
- --build-arg https_proxy="${https_proxy}" \
- --build-arg no_proxy="${no_proxy}" \
- .
|