Acesso no exterior: www.kdjingpai.com
Ctrl + D Marcar este site como favorito

O FastDeploy é uma ferramenta de código aberto desenvolvida pela equipe do PaddlePaddle que se concentra na implantação rápida de modelos de aprendizagem profunda. Ela é compatível com uma variedade de hardwares e estruturas, abrangendo mais de 20 cenários, como imagem, vídeo, texto e fala, e contém mais de 150 modelos convencionais. O FastDeploy oferece soluções de implantação prontas para uso em ambientes de produção, simplifica o processo de desenvolvimento e melhora o desempenho da inferência. Ele é compatível com a implantação da nuvem em dispositivos móveis e de borda, e é adequado para empresas e desenvolvedores implementarem rapidamente aplicativos de IA. O projeto está licenciado sob o Apache-2.0, tem uma comunidade ativa, está bem documentado e é adequado para desenvolvedores que buscam uma implantação eficiente.

 

Lista de funções

  • Suporte a vários hardwares: incluindo GPU NVIDIA, Kunlun XPU, Rise NPU, RK3588, etc., adaptando-se a uma variedade de chips.
  • Suporte a vários modelos: abrange mais de 20 cenários, como classificação de imagens, detecção de alvos, OCR, síntese de fala etc., com suporte a mais de 150 modelos.
  • Aceleração eficiente da inferência: oferece suporte à quantificação (por exemplo, W8A16, FP8), decodificação especulativa, várias opções de codificação e de análise de dados. token tecnologias como a previsão.
  • Pronto para uso em ambientes de produção: suporte vLLM e APIs OpenAI para simplificar a implantação de serviços.
  • Visual Deployment: combinado com o VisualDL, ele oferece suporte à modificação da configuração do modelo, ao monitoramento do desempenho e ao gerenciamento de serviços.
  • Implementação em várias plataformas: suporta implementação na nuvem, em dispositivos móveis, em dispositivos de borda e na Web.
  • Opções flexíveis de compilação: os desenvolvedores podem escolher o módulo de back-end de acordo com suas necessidades para reduzir o consumo de recursos.

Usando a Ajuda

Processo de instalação

O FastDeploy fornece métodos de instalação Python e C++, adequados a diferentes necessidades de desenvolvimento. A seguir, um exemplo de instalação do Python, com base em um sistema Ubuntu. Você precisa se certificar de que o Python 3.6+ e suas dependências estejam instalados em seu sistema.

  1. Preparação do ambiente
    Instale as dependências necessárias:

    sudo apt update
    sudo apt install -y python3 python3-dev python3-pip gcc python3-opencv python3-numpy
    

Recomenda-se isolar as dependências usando um ambiente virtual, como o conda:

conda create -n fastdeploy python=3.8
conda activate fastdeploy
  1. Instalando o PaddlePaddle
    O FastDeploy depende da estrutura do PaddlePaddle para instalar a versão de desenvolvimento:

    python -m pip install paddlepaddle==0.0.0 -f https://www.paddlepaddle.org.cn/whl/linux/cpu-mkl/develop.html
    
  2. Instalação do FastDeploy
    Os pacotes pré-compilados podem ser instalados via pip:

    pip install fastdeploy-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html
    

    ou compilado a partir do código-fonte:

    git clone https://github.com/PaddlePaddle/FastDeploy.git
    cd FastDeploy/python
    export ENABLE_ORT_BACKEND=ON
    export ENABLE_PADDLE_BACKEND=ON
    export ENABLE_VISION=ON
    python setup.py build
    python setup.py bdist_wheel
    pip install dist/fastdeploy_python-*-linux_x86_64.whl
    

    Se estiver compilando um dispositivo como o RK3588, será necessário definir o parâmetro ENABLE_RKNPU2_BACKEND=ON responder cantando RKNN2_TARGET_SOC=RK3588.

  3. Verificar a instalação
    Após a instalação, execute o código de amostra para verificar:

    import fastdeploy
    print(fastdeploy.__version__)
    

Função Fluxo de operação

1. implantação do modelo

O FastDeploy suporta a implantação de vários modelos com um único clique. Tome o modelo de detecção de alvos como exemplo e execute o modelo PaddleDetection:

from fastdeploy.vision import detection
model = detection.PaddleDetectionModel(
model_file="ppyoloe_crn_l_300e_coco/model.pdmodel",
params_file="ppyoloe_crn_l_300e_coco/model.pdiparams",
config_file="ppyoloe_crn_l_300e_coco/infer_cfg.yml"
)
result = model.predict("000000014439.jpg")
print(result)

Os usuários precisam fazer o download dos arquivos do modelo (por exemplo ppyoloe_crn_l_300e_coco.tgz) e descompactados, os arquivos estão disponíveis no link oficial.

2. adaptação de hardware

O FastDeploy oferece suporte a várias implementações de hardware. Por exemplo, a implementação no RK3588:

cd demos/vision/detection/paddledetection/rknpu2/python
python infer.py --model_file picodet_s_416_coco_lcnet_rk3588.rknn \
--config_file picodet_s_416_coco_lcnet/infer_cfg.yml \
--image 000000014439.jpg

Certifique-se de que o driver correspondente (por exemplo, rknpu2) esteja instalado no dispositivo.

3. raciocínio acelerado

O FastDeploy oferece várias técnicas de aceleração. Por exemplo, são usadas técnicas de quantificação (W8A16):

model.enable_quantization("W8A16")

ou ativar a decodificação especulativa:

model.enable_speculative_decoding()

Esses recursos melhoram significativamente a velocidade de inferência e são adequados para cenários exigentes de alto desempenho.

4. implantação visual

Em conjunto com o VisualDL, os usuários podem gerenciar modelos por meio de uma interface da Web:

  • Inicie o serviço VisualDL:
    visualdl --model-dir model_path --host 0.0.0.0 --port 8040
    
  • Acessado em um navegador http://localhost:8040Ajustar as configurações do modelo, monitorar o desempenho.

5. suporte à documentação

O FastDeploy fornece documentação detalhada na seção <FastDeploy>/docs ou no repositório do GitHub. Os usuários podem consultar:

  • Lista de suporte a modelos:<FastDeploy>/docs/supported_models.md
  • Guia de adaptação de hardware:<FastDeploy>/docs/cn/build_and_install

advertência

  • Certifique-se de que os drivers de hardware estejam instalados, como o driver rknpu2 para o RK3588.
  • Memória insuficiente pode causar falha na compilação; é recomendável adicionar pelo menos uma partição de troca de 4 GB ao RK3588.
  • O projeto é atualizado com frequência, portanto, é recomendável verificar regularmente o GitHub para obter a versão mais recente.

cenário do aplicativo

  1. Segurança inteligente
    O FastDeploy implementa modelos de detecção de alvos e reconhecimento facial para sistemas de monitoramento. Os desenvolvedores podem executar rapidamente modelos PaddleDetection em dispositivos de borda, como o RK3588, para detectar comportamentos anômalos em tempo real.
  2. varejo inteligente
    Oferece suporte a OCR e modelos de classificação de imagens para contagem de tráfego e identificação de produtos. Os varejistas podem implementar modelos em dispositivos móveis para analisar o comportamento do cliente por meio do FastDeploy.
  3. automação industrial
    Use o FastDeploy para implementar modelos de segmentação de imagens em linhas de produção para verificar a qualidade do produto. Oferece suporte a várias adaptações de hardware para ambientes complexos de fábrica.
  4. interação por voz
    Implante modelos de síntese de fala para atendimento inteligente ao cliente ou assistentes de voz. A tecnologia de previsão de vários tokens do FastDeploy aumenta a velocidade da geração de fala.

QA

  1. Qual é o hardware suportado pelo FastDeploy?
    Suporta GPU NVIDIA, Kunlun XPU, Rise NPU, RK3588, GPU Iluvatar, etc. Alguns hardwares, como a GPU MetaX, estão sendo adaptados.
  2. Como faço para alternar os back-ends de inferência?
    Ao definir uma variável de ambiente (por exemplo ENABLE_ORT_BACKEND=ON) ou especificar o backend no código (por exemplo model.set_backend("paddle")) Troca de mecanismos de inferência.
  3. O FastDeploy oferece suporte à implementação na Web?
    Sim, a implantação de applets e da Web é compatível com o Paddle.js, consulte <FastDeploy>/docs/web_deployment.md.
  4. O que devo fazer se estiver sentindo falta de memória?
    O número de tarefas pode ser limitado no momento da compilação (por exemplo python setup.py build -j 4) ou adicionar uma partição de troca ao dispositivo.
0Marcado
0Recomendado

Recomendado

Não consegue encontrar ferramentas de IA? Tente aqui!

Basta digitar a palavra-chave Acessibilidade Bing SearchA seção Ferramentas de IA deste site é uma maneira rápida e fácil de encontrar todas as ferramentas de IA deste site.

voltar ao topo

pt_BRPortuguês do Brasil