All Projects → ankane → Informers

ankane / Informers

Licence: apache-2.0
State-of-the-art natural language processing for Ruby

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Informers

Dan Jurafsky Chris Manning Nlp
My solution to the Natural Language Processing course made by Dan Jurafsky, Chris Manning in Winter 2012.
Stars: ✭ 124 (-59.48%)
Mutual labels:  question-answering, sentiment-analysis, named-entity-recognition
Turkish Bert Nlp Pipeline
Bert-base NLP pipeline for Turkish, Ner, Sentiment Analysis, Question Answering etc.
Stars: ✭ 85 (-72.22%)
Mutual labels:  question-answering, sentiment-analysis, named-entity-recognition
Camel tools
A suite of Arabic natural language processing tools developed by the CAMeL Lab at New York University Abu Dhabi.
Stars: ✭ 124 (-59.48%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Indonesian Nlp Resources
data resource untuk NLP bahasa indonesia
Stars: ✭ 143 (-53.27%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Deeppavlov
An open source library for deep learning end-to-end dialog systems and chatbots.
Stars: ✭ 5,525 (+1705.56%)
Mutual labels:  question-answering, named-entity-recognition
Spark Nlp
State of the Art Natural Language Processing
Stars: ✭ 2,518 (+722.88%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Pynlp
A pythonic wrapper for Stanford CoreNLP.
Stars: ✭ 103 (-66.34%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Rust Bert
Rust native ready-to-use NLP pipelines and transformer-based models (BERT, DistilBERT, GPT2,...)
Stars: ✭ 510 (+66.67%)
Mutual labels:  question-answering, sentiment-analysis
Harvesttext
文本挖掘和预处理工具(文本清洗、新词发现、情感分析、实体识别链接、关键词抽取、知识抽取、句法分析等),无监督或弱监督方法
Stars: ✭ 956 (+212.42%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Simpletransformers
Transformers for Classification, NER, QA, Language Modelling, Language Generation, T5, Multi-Modal, and Conversational AI
Stars: ✭ 2,881 (+841.5%)
Mutual labels:  question-answering, named-entity-recognition
Bertweet
BERTweet: A pre-trained language model for English Tweets (EMNLP-2020)
Stars: ✭ 282 (-7.84%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Shukongdashi
使用知识图谱,自然语言处理,卷积神经网络等技术,基于python语言,设计了一个数控领域故障诊断专家系统
Stars: ✭ 109 (-64.38%)
Mutual labels:  named-entity-recognition, question-answering
Agriculture knowledgegraph
农业知识图谱(AgriKG):农业领域的信息检索,命名实体识别,关系抽取,智能问答,辅助决策
Stars: ✭ 2,957 (+866.34%)
Mutual labels:  question-answering, named-entity-recognition
rosette-elasticsearch-plugin
Document Enrichment plugin for Elasticsearch
Stars: ✭ 25 (-91.83%)
Mutual labels:  sentiment-analysis, named-entity-recognition
Introduction Datascience Python Book
Introduction to Data Science: A Python Approach to Concepts, Techniques and Applications
Stars: ✭ 275 (-10.13%)
Mutual labels:  sentiment-analysis
Ner
Named Entity Recognition
Stars: ✭ 288 (-5.88%)
Mutual labels:  named-entity-recognition
Chatbot ner
chatbot_ner: Named Entity Recognition for chatbots.
Stars: ✭ 273 (-10.78%)
Mutual labels:  named-entity-recognition
Twitter Sent Dnn
Deep Neural Network for Sentiment Analysis on Twitter
Stars: ✭ 270 (-11.76%)
Mutual labels:  sentiment-analysis
Reactionrnn
Python module + R package to predict the reactions to a given text using a pretrained recurrent neural network.
Stars: ✭ 299 (-2.29%)
Mutual labels:  sentiment-analysis
Bert For Rrc Absa
code for our NAACL 2019 paper: "BERT Post-Training for Review Reading Comprehension and Aspect-based Sentiment Analysis"
Stars: ✭ 286 (-6.54%)
Mutual labels:  sentiment-analysis

Informers

🙂 State-of-the-art natural language processing for Ruby

Supports:

  • Sentiment analysis
  • Question answering
  • Named-entity recognition
  • Text generation - in development
  • Summarization - in development
  • Translation - in development

Build Status

Installation

Add this line to your application’s Gemfile:

gem 'informers'

Getting Started

Sentiment Analysis

First, download the pretrained model.

Predict sentiment

model = Informers::SentimentAnalysis.new("sentiment-analysis.onnx")
model.predict("This is super cool")

This returns

{label: "positive", score: 0.999855186578301}

Predict multiple at once

model.predict(["This is super cool", "I didn't like it"])

Question Answering

First, download the pretrained model and add Numo to your application’s Gemfile:

gem 'numo-narray'

Ask a question with some context

model = Informers::QuestionAnswering.new("question-answering.onnx")
model.predict(
  question: "Who invented Ruby?",
  context: "Ruby is a programming language created by Matz"
)

This returns

{answer: "Matz", score: 0.9980658360049758, start: 42, end: 46}

Named-Entity Recognition

First, export the pretrained model.

Get entities

model = Informers::NER.new("ner.onnx")
model.predict("Nat works at GitHub in San Francisco")

This returns

[
  {text: "Nat",           tag: "person",   score: 0.9840519576513487, start: 0,  end: 3},
  {text: "GitHub",        tag: "org",      score: 0.9426134775785775, start: 13, end: 19},
  {text: "San Francisco", tag: "location", score: 0.9952414982243061, start: 23, end: 36}
]

Models

Task Description Contributor License Link
Sentiment analysis DistilBERT fine-tuned on SST-2 Hugging Face Apache-2.0 Link
Question answering DistilBERT fine-tuned on SQuAD Hugging Face Apache-2.0 Link
Named-entity recognition BERT fine-tuned on CoNLL03 Bayerische Staatsbibliothek In-progress Link

Models are quantized to make them faster and smaller.

Deployment

Check out Trove for deploying models.

trove push sentiment-analysis.onnx

Credits

This project uses many state-of-the-art technologies:

Some code was ported from Transformers and is available under the same license.

History

View the changelog

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

To get started with development:

git clone https://github.com/ankane/informers.git
cd informers
bundle install

export MODELS_PATH=path/to/onnx/models
bundle exec rake test
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].