Manage text intent classifications and natural language training utterances.
Client/server app to manage training data using the Wink Naive Bayes Classifier. Server hosted on AWS, managed by AWS CDK, built with Node.js. Client built with TypeScript, React and Tailwind.css.
Add training definitions and example utterances
Test classification with utterance
Requires an AWS account with AWS CDK installed.
If you use an AWS Profile, update package.json with your profile id.
If using a profile, you may need to bootstrap CDK:
cdk bootstrap "aws://[profile_account_id]/[profile_default_region]" --profile [profile_id]
Install dependencies in both the server root and inside server/src:
npm install
The second dependencies inside server/src is required for the lambda functions CDK code bundling limitations at the time this project was created.
Create and deploy the stack:
npm run deploy
Creates: an API Gateway, a pay per request DynamoDB instance, and 5 Lambda instances.
Create an .env
file with the generated server endpoint url:
REACT_APP_SERVICE_URL=https://[instance].execute-api.[region].amazonaws.com
Install dependencies:
npm install
Run client app on localhost:
npm start
Run tests:
npm run test
Please define at least two definitions and a handful of utterances for each before testing classifier.
- API authentication