AWS Lambda Console - обновить версию boto3 - PullRequest
0 голосов
/ 12 декабря 2018

Я создаю проект DeepLens для распознавания людей, когда камера сканирует одну из выбранной группы людей.

В проекте используется лямбда, которая обрабатывает изображения и запускает повторное распознавание 'aws api.

  • Когда я запускаю API с моего локального компьютера - я получаю хороший ответ

  • Когда я запускаюAPI из консоли AWS - я получаю неудачный ответ

Проблема

После долгих копаний я обнаружил, что 'boto3' (библиотека Python AWS)имеет версию:

  • 1.9.62 - на моей локальной машине

  • 1.8.9 - на консоли AWS

Вопрос

Могу ли я обновить версию библиотеки 'boto3' на лямбда-консоли AWS ??Если да, то как?

Ответы [ 2 ]

0 голосов
/ 18 июля 2019

Если вы не хотите упаковывать более свежую версию boto3 с вашей функцией, вы можете загружать boto3 при каждом вызове Lambda.Помните, что / tmp / - это каталог, в который Lambda позволит вам загрузить, поэтому вы можете использовать его для временной загрузки boto3:

import sys
from pip._internal import main

main(['install', '-I', '-q', 'boto3', '--target', '/tmp/', '--no-cache-dir', '--disable-pip-version-check'])
sys.path.insert(0,'/tmp/')

import boto3
from botocore.exceptions import ClientError

def handler(event, context):
    print(boto3.__version__)
0 голосов
/ 12 декабря 2018

Вы можете достичь того же с помощью Python-функции с зависимостями или с виртуальной средой .

Это другие доступные варианты, которые вы также не пытаетесьсвяжитесь с командой Amazon, если они могут помочь вам с обновлением.

...