Skip to content

binweil/alexa-skill-chat-gpt

Repository files navigation

Description

This repository is showing how to build an Alexa skill (ChatGPT) interact with OpenAI's GPT models. It allows Alexa customers speak to AI models on any Alexa devices. For those devices supports multi-modal, this chat gpt skill will render the APL cards, which displays the skill launch screen, help screen, and question response screen.

There are three folders inside the respo:

  • assets: contains the images for the skill detail page, multi-modal, in-skill products
  • interactionModels: a set of json files describing how Alexa should route the user utterances to intents and slots
  • skill_lambda: the python code to handle the Alexa requests

Requirements

  • Python 3.7
  • NodeJs
    • Option #1: GUI install: https://nodejs.org/en
    • Option #2: For Linux/Mac, the module n makes version-management easy npm install -g n
      • Install the latest stable version: n stable
      • (Optionally) Install the latest version: n latest
    • Verify the installation: node -v
  • Lerna CLI
    • npm install -g lerna
  • AWS CLI

Installation

  1. Clone the repository using
    1. git clone https://github.com/username/repo.git
  2. Navigate to the root directory of the cloned repository.
  3. Install lerna cli
    1. npm install -g lerna
  4. Build Python lambda code to zip
    1. chmod +x ./aws-lambda-helper.sh
    2. ./aws-lambda-helper.sh
  5. Run the installation script inside the project root folder using
    1. install package/infrastructure dependency: lerna bootstrap
    2. build all packages recursively: npm run release

Deploy to AWS Account

If you have NOT configured AWS profiles:

  1. Go to your AWS console -> IAM
  2. Create a IAM user with Administrator access
  3. Create a "secrete access key"
  4. Run aws configure in terminal, and give the key

Otherwise:

  • Start the cloudformation deployment by: npm run deploy

Architecture

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published