Baixe e configure o Edge Manager - Amazon SageMaker

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Baixe e configure o Edge Manager

O agente do Edge Manager é um mecanismo de inferência para seus dispositivos Edge. Use o agente para fazer previsões com modelos carregados em seus dispositivos Edge. O agente também coleta métricas do modelo e captura dados em intervalos específicos.

Nesta seção, você configurará seu dispositivo com o agente. Para fazer isso, primeiro copie um artefato de lançamento e um certificado raiz de assinatura do repositório de lançamento localmente para sua máquina. Depois de descompactar o artefato de lançamento, carregue-o no Amazon S3. Em seguida, defina e salve um arquivo de configuração para o agente. Um modelo é fornecido para você copiar e colar. Por fim, copie os artefatos da versão, o arquivo de configuração e as credenciais para o seu dispositivo.

  1. Baixe o agente do SageMaker Edge Manager.

    O agente é lançado em formato binário para sistemas operacionais compatíveis. Este exemplo executa inferência em um Jetson Nano que usa um sistema operacional Linux e tem uma arquitetura. ARM64 Para obter mais informações sobre qual sistema operacional e arquitetura os dispositivos compatíveis usam, consulte Dispositivos, arquiteturas de chip e sistemas compatíveis.

    Obtenha a versão mais recente dos binários do bucket de lançamento do SageMaker Edge Manager na região us-west-2.

    !aws s3 ls s3://sagemaker-edge-release-store-us-west-2-linux-armv8/Releases/ | sort -r

    Isso retorna artefatos de lançamento classificados por sua versão.

    PRE 1.20210512.96da6cc/ PRE 1.20210305.a4bc999/ PRE 1.20201218.81f481f/ PRE 1.20201207.02d0e97/

    A versão tem o seguinte formato: <MAJOR_VERSION>.<YYYY-MM-DD>.<SHA-7>. É composto por três componentes:

    • <MAJOR_VERSION>: a versão de lançamento. A versão de lançamento está atualmente definida como 1.

    • <YYYY-MM-DD>: a data e hora da liberação do artefato.

    • < SHA -7>: O ID de confirmação do repositório a partir do qual a versão foi criada.

    Copie o TAR arquivo compactado localmente ou diretamente para o seu dispositivo. O exemplo a seguir mostra como copiar o artefato da versão mais recente no momento em que este documento foi lançado.

    !aws s3 cp s3://sagemaker-edge-release-store-us-west-2-linux-x64/Releases/1.20201218.81f481f/1.20201218.81f481f.tgz ./

    Depois de ter o artefato, descompacte o arquivo TAR compactado. O seguinte descompacta o TAR arquivo e o armazena em um diretório chamado: agent_demo

    !mkdir agent_demo !tar -xvzf 1.20201218.81f481f.tgz -C ./agent_demo

    Carregar os artefatos de liberação do agente para o seu bucket do Amazon S3. O exemplo de código a seguir copia o conteúdo agent_demo e o carrega em um diretório dentro do seu bucket do Amazon S3 chamado agent_demo:

    !aws s3 cp --recursive ./agent_demo s3://{bucket}/agent_demo

    Você também precisa dos certificados raiz de assinatura do bucket de lançamentos:

    !aws s3 cp s3://sagemaker-edge-release-store-us-west-2-linux-x64/Certificates/us-west-2/us-west-2.pem ./

    Carregue o certificado raiz de assinatura para o seu bucket do Amazon S3:

    !aws s3 cp us-west-2.pem s3://{bucket}/authorization-files/
  2. Defina um arquivo de configuração do agente do SageMaker Edge Manager.

    Primeiro, defina o arquivo de configuração do agente da seguinte forma:

    sagemaker_edge_config = { "sagemaker_edge_core_device_name": "device_name", "sagemaker_edge_core_device_fleet_name": "device_fleet_name", "sagemaker_edge_core_capture_data_buffer_size": 30, "sagemaker_edge_core_capture_data_push_period_seconds": 4, "sagemaker_edge_core_folder_prefix": "demo_capture", "sagemaker_edge_core_region": "us-west-2", "sagemaker_edge_core_root_certs_path": "/agent_demo/certificates", "sagemaker_edge_provider_aws_ca_cert_file": "/agent_demo/iot-credentials/AmazonRootCA1.pem", "sagemaker_edge_provider_aws_cert_file": "/agent_demo/iot-credentials/device.pem.crt", "sagemaker_edge_provider_aws_cert_pk_file": "/agent_demo/iot-credentials/private.pem.key", "sagemaker_edge_provider_aws_iot_cred_endpoint": "endpoint", "sagemaker_edge_provider_provider": "Aws", "sagemaker_edge_provider_s3_bucket_name": bucket, "sagemaker_edge_core_capture_data_destination": "Cloud" }

    Substitua o seguinte:

    • "device_name" com o nome do seu dispositivo (essa string foi armazenada em uma etapa anterior em uma variável chamada device_name).

    • "device_fleet_name“ com o nome do seu dispositivo (essa string foi armazenada em uma etapa anterior em uma variável chamada device_fleet_name)

    • "endpoint"com o endpoint AWS específico da sua conta para o provedor de credenciais (essa string foi armazenada em uma etapa anterior em uma variável chamada). endpoint

    Em seguida, salve-o como um JSON arquivo:

    edge_config_file = open("sagemaker_edge_config.json", "w") json.dump(sagemaker_edge_config, edge_config_file, indent = 6) edge_config_file.close()

    Carregue o arquivo de configuração em seu bucket no Amazon S3:

    !aws s3 cp sagemaker_edge_config.json s3://{bucket}/
  3. Copie os artefatos da versão, o arquivo de configuração e as credenciais para o seu dispositivo.

    As instruções a seguir são executadas no próprio dispositivo de borda.

    nota

    Você deve primeiro instalar o Python AWS SDK for Python (Boto3), o e o AWS CLI no seu dispositivo de borda.

    Abra um terminal no dispositivo. Crie uma pasta para armazenar os artefatos da versão, suas credenciais e o arquivo de configuração.

    mkdir agent_demo cd agent_demo

    Copie o conteúdo dos artefatos de lançamento que você armazenou no bucket do Amazon S3 para o seu dispositivo:

    # Copy release artifacts aws s3 cp s3://<bucket-name>/agent_demo/ ./ --recursive

    (O conteúdo do artefato de lançamento foi armazenado em um diretório chamado agent_demo na etapa anterior). Substitua <bucket-name> e agent_demo pelo nome do bucket do Amazon S3 e o caminho do arquivo para os artefatos de lançamento, respectivamente.

    Vá até o /bin diretório e torne os arquivos binários executáveis:

    cd bin chmod +x sagemaker_edge_agent_binary chmod +x sagemaker_edge_agent_client_example cd agent_demo

    Crie um diretório para armazenar suas AWS IoT credenciais e copiá-las do seu bucket do Amazon S3 para seu dispositivo de borda (use o mesmo que você define na variável: bucket

    mkdir iot-credentials cd iot-credentials aws s3 cp s3://<bucket-name>/authorization-files/AmazonRootCA1.pem ./ aws s3 cp s3://<bucket-name>/authorization-files/device.pem.crt ./ aws s3 cp s3://<bucket-name>/authorization-files/private.pem.key ./ cd ../

    Crie um diretório para armazenar seu modelo assinando certificados raiz:

    mkdir certificates cd certificates aws s3 cp s3://<bucket-name>/authorization-files/us-west-2.pem ./ cd agent_demo

    Copie seu arquivo de configuração para o seu dispositivo:

    #Download config file from S3 aws s3 cp s3://<bucket-name>/sagemaker_edge_config.json ./ cd agent_demo

    O agent_demo diretório em seu dispositivo de borda deve ser semelhante ao seguinte:

    ├──agent_demo | ├── bin | ├── sagemaker_edge_agent_binary | └── sagemaker_edge_agent_client_example | ├── sagemaker_edge_config.json | ├── certificates | └──us-west-2.pem | ├── iot-credentials | ├── AmazonRootCA1.pem | ├── device.pem.crt | └── private.pem.key | ├── docs | ├── api | └── examples | ├── ATTRIBUTIONS.txt | ├── LICENSE.txt | └── RELEASE_NOTES.md