Todos os produtos
Search
Central de documentação

Platform For AI:Custom processors FAQ

Última atualização: Sep 06, 2026

Esta página responde às dúvidas mais comuns sobre a implantação e a execução de processadores personalizados no Elastic Algorithm Service (EAS).

Problemas de implantação

Problemas de execução

Autenticação e configuração

Como melhorar a eficiência de upload de um pacote de processador personalizado?

Use imagens docker para empacotar o ambiente de execução e arquivos grandes. Quando o código for alterado, apenas as camadas modificadas precisarão ser reconstruídas e enviadas, em vez de todo o pacote. Isso acelera significativamente as iterações durante o desenvolvimento.

Para mais detalhes, consulte Develop custom processors using Python.

Como resolver o erro "libSM.so.6: cannot open shared object file: No such file or directory" ao importar cv2?

O pacote padrão pip install opencv depende das bibliotecas libXext, libSM e libXrender, que não vêm pré-instaladas no ambiente de execução do EAS. O pacote pode funcionar em um ambiente de teste local, mas falhar quando implantado online.

Corrija esse problema usando uma das seguintes abordagens:

  • Recomendado: Instale opencv-python-headless em vez disso. Essa variante não depende de libXext, libSM ou libXrender.

    pip install opencv-python-headless
  • Alternativa: Localize os arquivos binários de libXext, libSM e libXrender no seu sistema local, copie-os para o diretório ENV/lib dentro do pacote do processador e envie o pacote.

    Nota: Esta abordagem pode introduzir problemas adicionais de dependência que exigirão resolução separada.

Como configurar variáveis de ambiente em um processador Python do EAS?

O EAS adiciona automaticamente todos os subdiretórios do diretório do processador à variável LD_LIBRARY_PATH. Portanto, bibliotecas de dependência armazenadas em qualquer lugar dentro desse diretório são carregadas automaticamente.

Para outras variáveis de ambiente, defina-as programaticamente no seu código Python:

import os
os.environ['key'] = 'val'

Como evitar que um processo seja encerrado devido a uma exceção não tratada?

Envolva as seções críticas da lógica do seu service em blocos try-catch para impedir que exceções não tratadas encerrem o processo.

Caso o processo seja encerrado por qualquer motivo, o EAS o reinicia automaticamente para manter a disponibilidade do service. O tratamento de exceções no nível da aplicação oferece controle mais refinado e evita reinicializações desnecessárias.

Como configurar um AccessKey e um endpoint?

Os services de previsão do EAS utilizam um AccessKey da Alibaba Cloud para autenticação de identidade. Configure seu AccessKey ID, AccessKey Secret e endpoint usando o comando eascmd64 config:

./eascmd64 config -i <yourAccessKeyID> -k <yourAccessKeySecret> -e <endpoint>

O endpoint padrão conecta-se à região China (Shanghai). Para implantar em uma região diferente, especifique o endpoint dessa região com o parâmetro -e. Por exemplo, para usar a região China (Beijing):

./eascmd64 config -i <yourAccessKeyID> -k <yourAccessKeySecret> -e pai-eas.cn-beijing.aliyuncs.com

Por que uma tarefa criada com EASCMD permanece no estado "[OK] Waiting [Total: 1, Pending: 1, Running: 0]"?

A tarefa fica aguardando porque o grupo de recursos não possui recursos disponíveis suficientes para iniciar as instâncias solicitadas.

Verifique os seguintes itens no arquivo de configuração do seu service:

  1. Região: Confirme se metadata.region corresponde à região onde seu grupo de recursos está localizado.

  2. Nome do grupo de recursos: Confirme se metadata.resource é o nome correto do grupo de recursos para aquela região (por exemplo, EAS-LsFlrwBP56).

  3. Recursos disponíveis: Confirme se o grupo de recursos tem GPU, CPU e memória livres suficientes para atender à contagem de instance configurada.

O exemplo de configuração a seguir mostra os campos relevantes:

{
  "name": "service",
  "token": "[Authorization-token]",
  "data_image": "[your-public-docker-image-repo]",
  "processor_entry": "app.py",
  "processor_type": "python",
  "processor_path": "[oss://eas-model-shenzhen/xxxxxxxxx/codes.tar.gz]",
  "metadata": {
    "region": "cn-shenzhen",
    "resource": "resource-name",
    "gpu": 1,
    "cpu": 6,
    "memory": 2000,
    "instance": 2,
    "cuda": "10.0"
  }
}

Neste exemplo, cada instância requer 1 GPU, 6 CPUs e 2000 B de memória. Se o grupo de recursos não puder atender a esses requisitos para 2 instâncias simultaneamente, a tarefa permanecerá no estado de espera.

O que fazer se um service EAS não conseguir acessar a rede pública?

Por padrão, os services EAS não têm acesso à rede pública. Se o código do seu processador tentar baixar arquivos da internet durante a inicialização, a implantação falhará com um erro de carregamento de arquivo.

Para corrigir isso, configure a public network connection para o seu service EAS.

Dica: Antes de implantar, teste seu processador localmente para confirmar que ele não depende de acesso à rede pública indisponível no ambiente EAS.

Erro: "Baixe processor files failed: forbidden to baixe file with size larger than 10G"

O EAS limita o tamanho combinado do modelo e do pacote do processador a 10 GB. Se o seu pacote exceder esse limite, use a implantação personalizada baseada em imagem pelo console.