Como criar umAWS LambdaFunção - Amazon Textract

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á.

Como criar umAWS LambdaFunção

Você pode chamar as operações da API Amazon Textract de dentro de umAWS Lambdafunção. As instruções a seguir mostram como criar uma função Lambda no Python que chamaDetectDocumentText. Ele retorna uma lista deBlockobjetos. Para executar este exemplo, você precisa de um bucket do Amazon S3 que contenha um documento no formato PNG ou JPEG. Para criar uma função, use o console.

Para obter um exemplo que usa funções do Lambda para processar documentos em grande escala, consulteProcessamento de documentos em grande escala com o Amazon Textract.

Para chamar a operação DetectDocumentText a partir de uma função do Lambda:

Etapa 1: Criar um pacote de implantação do Lambda
  1. Abra uma janela de comando.

  2. Insira os comandos a seguir para criar um pacote de implantação com a versão mais recente doAWSSDK.

    pip install boto3 --target python/. zip boto3-layer.zip -r python/
Etapa 2: Criar uma função do Lambda
  1. Faça login no AWS Management Console e abra o console AWS Lambda em https://console.aws.amazon.com/lambda/.

  2. Escolha Create function (Criar função).

  3. Especifique o seguinte.

    • Escolha Author from scratch.

    • Em Function name (Nome da função), insira um nome.

    • para oTempo de execução, escolhaPython 3.7ouPython 3.6.

    • para oEscolha ou crie uma função de execução, escolhaCriar uma nova função com permissões básicas do Lambda.

  4. SelecioneCriar funçãoPara criar a função do Lambda.

  5. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  6. No painel de navegação, escolhaFunções do.

  7. Na lista de recursos, escolha a função do IAM criada pelo Lambda para você. O nome da função começa com o nome da função do Lambda.

  8. Selecione oPermissõese, em seguida, escolhaAnexar políticas.

  9. Selecione as políticas AmazonTextractFullAccess e AmazonS3ReadOnlyAccess.

  10. SelectAnexar política.

Para obter mais informações, consulteCriar uma função do Lambda com o console

Etapa 3: Criar e adicionar uma camada
  1. Abra o console do AWS Lambda em https://console.aws.amazon.com/lambda/.

  2. No painel de navegação, escolha Layers (Camadas).

  3. Escolha Create layer (Criar camada).

  4. para oName (Nome)Insira um nome.

  5. Em Description (Descrição), insira uma descrição.

  6. para oTipo de entrada de código, escolhaFazer upload do arquivo .zipSelecione e selecioneCarregar.

  7. Na caixa de diálogo, selecione o arquivo zip (boto3-layer.zip), o zip que você criou emEtapa 1: Criar um pacote de implantação do Lambda.

  8. para oTempos de execução compatíveis, escolha a versão do tempo de execução que você escolheuEtapa 2: Criar uma função do Lambda.

  9. SelecioneCriarPara criar a camada.

  10. Escolha o ícone do menu do painel de navegação.

  11. Selecione Functions (Funções) no painel de navegação.

  12. Na lista de recursos, selecione a função criada emEtapa 2: Criar uma função do Lambda.

  13. SelecioneConfiguraçãoe noDesignerEscolha, escolhaCamadas do(sob o nome da função do Lambda).

  14. NoCamadas doEscolha, escolhaAdicionar uma camada.

  15. SelecioneSelecione na lista de camadas compatíveis com tempo de execução.

  16. DentroCamadas compatíveis, selecione oName (Nome)eVersãoda camada criada na etapa 3.

  17. Escolha Add (Adicionar).

Etapa 4: Adicionar código python à função
  1. DentroDesignerEscolha a função do.

  2. No editor de código da função, adicione o seguinte ao arquivolambda_function.py. Altere os valores debucketedocumentpara seu bucket e documento.

    import json import boto3 def lambda_handler(event, context): bucket="bucket" document="document" client = boto3.client('textract') #process using S3 object response = client.detect_document_text( Document={'S3Object': {'Bucket': bucket, 'Name': document}}) #Get the text blocks blocks=response['Blocks'] return { 'statusCode': 200, 'body': json.dumps(blocks) }
  3. SelecioneSalvarPara salvar a função do Lambda.

Etapa 5: Testar o Lambda
  1. SelectTeste.

  2. Insira um valor para oEvent name (Nome do evento).

  3. Escolha Create (Criar).

  4. A saída, uma lista deBlockobjetos, aparece no painel Resultados da execução.

Se oAWS Lambdafunção retorna um erro de tempo limite, uma chamada de operação da API Amazon Textract pode ser a causa. Para obter mais informações sobre como estender o período de tempo limite para umAWS LambdaConsulte a função doConfiguração da função do AWS Lambda.

Para obter mais informações sobre como invocar uma função Lambda do seu código, consulteInvocarAWS LambdaFunções.