Kube 또는 가짜? 플레이어의 목표는 ChatGPT에서 생성된 단어가 실제 Kubernetes 용어인지 아니면 지어낸 단어인지 정확하게 추측하는 재미있는 미니 게임입니다.
LinkedIn/Twitter에서 결과를 공유하는 것을 잊지 마세요!
파이썬
npm
도커
AWS SAM CLI
양조 설치 aws/tap/aws-sam-cli
이 저장소를 포크하세요.
종속성 설치
npm 설치
이 리포지토리에는 AWS Lambda를 로컬로 실행하고 CloudFormation 템플릿을 사용하여 AWS에 배포하는 데 필요한 파일이 포함되어 있습니다.
template.yml
에서 환경 변수 OPENAI_API_KEY
및 OPENAI_MODEL_NAME
에 대한 값을 제공합니다.
openai
Python 패키지에 대한 로컬 Lambda 계층을 생성합니다.
pip 설치 -r 요구사항.txt -t libs/python
Lambda는 sam
사용하여 로컬에서 실행할 수 있습니다.
샘 로컬 시작 API
이 명령은 localhost:3000
에서 실행 중인 서버를 시작합니다. 명령 출력은 다음과 같아야 합니다.
Mounting GenerateKubernetesTermFunction at http://127.0.0.1:3000/generate [GET] You can now browse to the above endpoints to invoke your functions. You do not need to restart/reload SAM CLI while working on your functions, changes will be reflected instantly/automatically. If you used sam build before running local commands, you will need to re-run sam build for the changes to be picked up. You only need to restart SAM CLI if you update your AWS SAM template 2023-07-20 11:58:51 WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Running on http://127.0.0.1:3000 2023-07-20 11:58:51 Press CTRL+C to quit
localhost:3000/generate
통해 Lambda가 호출되면 몇 가지 추가 로그가 표시됩니다.
Invoking lambda.lambda_handler (python3.10) OpenAILambdaLayer is a local Layer in the template Local image is up-to-date Building image..................... Using local image: samcli/lambda-python:3.10-x86_64-b22538ac72603f4028703c3d1. Mounting kube-or-fake/lambda as /var/task:ro,delegated, inside runtime container START RequestId: b1c733b3-8449-421b-ae6a-fe9ac2c86022 Version: $LATEST END RequestId: b1c733b3-8449-421b-ae6a-fe9ac2c86022 REPORT RequestId: b1c733b3-8449-421b-ae6a-fe9ac2c86022
참고: sam
로컬 docker 데몬과 상호 작용할 수 있도록 로컬 시스템 자격 증명을 제공하라는 요청을 받을 수 있습니다.
Lambda 코드는 lambda/lambda.py
에 존재하며, lambda_handler
핸들러입니다. 자유롭게 탐험해 보세요!
Lambda 도커 이미지는 호출할 때마다 구축되므로 Lambda 코드를 변경할 때 sam local start-api
다시 실행할 필요가 없습니다(단, template.yml
을 변경하면 다시 실행 해야 함). .
우리는 sam
사용하여 이 작업도 수행합니다.
샘 빌드 샘 배포
명령의 출력을 따라 새 Lambda가 생성된 위치를 확인하세요.
scripts/words.js
에서 GENERATOR_URL
http://127.0.0.1:3000/generate
(로컬로 실행하는 경우) 또는 원격 Lambda URL로 변경합니다.
어떤 브라우저에서든 index.html
열고 재생을 시작하세요. 올바르게 구성된 경우 로컬 로그 또는 CloudWatch를 통해 Lambda 호출이 표시되어야 합니다.