Как импортировать модуль Google непосредственно в AWS Lambda? - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь обработать аудиофайл из моего S3 с помощью функции Lambda, которая должна вызывать API Google Speech для преобразования текста в файл с файлом. Однако не похоже, что в Lambda установлен этот модуль.

Есть ли способ импортировать модуль извне / вручную?

import json
import boto3
import array as arr
import botocore
from botocore.vendored import requests
import os
import urllib
from google.cloud import speech
from google.cloud.speech import enums
from google.cloud.speech import types

def lambda_handler(event, context):
    output = 'test'
    return output

Ожидается, что импорт работает, однако вывод ошибки следующий:

"errorMessage": "Unable to import module 'lambda_function': No module 
   named 'google'",

Ответы [ 2 ]

0 голосов
/ 18 января 2019

Лучшим способом было бы создать файл с именем requirements.txt и добавить туда все зависимости

google-cloud-speech==0.36.0
0 голосов
/ 18 января 2019

Вы должны добавить библиотеку Google в свой пакет развертывания. В зависимости от процесса развертывания, существуют разные способы, как это сделать. Документация - хорошее место для начала изучения этого.

Кстати, вместо речи Google в текст вы можете использовать один из AWS под названием Transcribe . Вам не нужно устанавливать дополнительную библиотеку, чтобы использовать это, boto3 подойдет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...