Skip to content

Manage text intent classifications and natural language training utterances.

Notifications You must be signed in to change notification settings

bbrewer97202/simpleclassifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SimpleClassifier

Manage text intent classifications and natural language training utterances.

Overview

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.

App screenshot Training Add training definitions and example utterances

App screenshot Testing Test classification with utterance

Server

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.

Client

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.

TODO

  • API authentication

License

MIT

About

Manage text intent classifications and natural language training utterances.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published