Coder Social home page Coder Social logo

nlp_compromise's Introduction

CodacyBadge npm version downloads

nlp_compromise does NLP in the browser. This Version comes with experimental pronoun resolution

nlp.sentence('She sells seashells').to_past().text()
// 'She sold seashells'

Yup,

  • <150k js file
  • 86% on the Penn treebank
  • keypress speed, constant-time.
  • caniuse, uhuh. IE9+
  • no dependencies, training, configuration, or prolog.

It's a handy, and not overly-fancy tool for understanding, changing, and playing with english.

Off you go,

npm install nlp_compromise

<script src="https://npmcdn.com/nlp_compromise@latest/builds/nlp_compromise.min.js"></script>

let nlp = require('nlp_compromise'); // or nlp = window.nlp_compromise

nlp.noun('dinosaur').pluralize();
// 'dinosaurs'

nlp.verb('speak').conjugate();
// { past: 'spoke',
//   infinitive: 'speak',
//   gerund: 'speaking',
//   actor: 'speaker',
//   present: 'speaks',
//   future: 'will speak',
//   perfect: 'have spoken',
//   pluperfect: 'had spoken',
//   future_perfect: 'will have spoken'
// }

nlp.statement('She sells seashells').negate().text()
// 'She doesn't sell seashells'

nlp.sentence('I fed the dog').replace('the [Noun]', 'the cat').text()
// 'I fed the cat'

nlp.text('Tony Hawk did a kickflip').people();
// [ Person { text: 'Tony Hawk' ..} ]

nlp.noun('vacuum').article();
// 'a'

nlp.person('Tony Hawk').pronoun();
// 'he'

nlp.value('five hundred and sixty').number;
// 560

nlp.text(require('nlp-corpus').text.friends()).topics()//11 seasons of friends
// [ { count: 2523, text: 'ross' },
//   { count: 1922, text: 'joey' },
//   { count: 1876, text: 'god' },
//   { count: 1411, text: 'rachel' },
//   ....

#Plugin/Mixins we've also got a modest, though ambitious plugin ecosystem:

//US-UK localization
nlp.plugin(require('nlp-locale'))
nlp.term('favourite').toAmerican()
// 'favorite'

//syllable hyphenization
nlp.plugin(require('nlp-syllables'));
var t2 = nlp.term('houston texas');
t2.syllables()
//[ [ 'hous', 'ton' ], [ 'tex', 'as' ] ]

//semantic n-gram
nlp.plugin(require('nlp-ngram'));
var t4 = nlp.text(`Tony Hawk played Tony Hawk's pro skater`);
t4.ngram({min_count: 2});
// [{word:'tony hawk', count:2, size:1}]

//grammar links
nlp.plugin(require('nlp-links'));
var sen = nlp.sentence('I fed the dog').withLinks();
// Each term now has links to words they are grammatically connected to
sen.terms[1].links[1].target.word; // terms[1] is verb 'fed'
// 'dog'

Development

Issue Stats Issue Stats

Useful NLP is a problem only solved with many hands. Contributing in any form is valued.

Join our slack group (login from here) or our infrequent announcement email-list.

Or just pick up an open issue

We're moving fast

MIT license

nlp_compromise's People

Contributors

yashsinha1996 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

importrayhan

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.