Skip to content

Latest commit

 

History

History
100 lines (82 loc) · 2.92 KB

README.md

File metadata and controls

100 lines (82 loc) · 2.92 KB

Sentiment-aI

✨ A gem that use Generative AI for data sentiment analysis ✨

The styling is to look like Sentimental, a tribute to the song Shunkan Sentimental by SCANDAL

Installation

Install the gem and add to the application's Gemfile by executing:

$ bundle add sentiment-ai

If bundler is not being used to manage dependencies, install the gem by executing:

$ gem install sentiment-ai

Compatibility

This gem is compatible with Ruby 3.1 or greater.

Usage

Require it in you code:

require "sentiment_ai"

Then use it like this:

sentiment = SentimentAI.new(YOUR_PROVIDER,YOUR_API_KEY)

For example:

sentiment = SentimentAI.new(:open_ai, OPEN_AI_KEY)

For the current version, the gem supports only OpenAI and Google Gemini.

After calling the provider, use:

sentiment.analyze_sentence("I Love Ruby")
# => { :sentence => "I Love Ruby", :sentiment => "positive" }

For analyzing an array of sentence, use:

array = ["I Love Ruby", "I use Ruby"]
sentiment.analyze_array(array)
# => [{ :sentence => "I Love Ruby", :sentiment => "positive" }, { :sentence => "I use Ruby", :sentiment => "neutral" }]

For analyzing a CSV file, use:

sentiment.analyze_csv(csv_path, sentence_column, output_directory)

Assume that the CSV file is

comment
I love Ruby
I use Ruby

Analyze the file by calling: sentiment.analyze_csv("path/to/example.csv", "comment", "output/directory"). The output is:

comment,sentiment
I love Ruby, positive
I use Ruby, neutral

By default, the language used for the gem is English. If you want to use the other languages, Japanese for example, use:

sentiment = SentimentAI.new(:open_ai, OPEN_AI_KEY, :ja)
sentiment.analyze_sentence("Rubyは世界一プログラミング言語")
# => { :sentence => "Rubyは世界一プログラミング言語", :sentiment => "肯定的" }

If you want to only choose positive, use:

sentiment.positive_check("I Love Ruby")
# => { :sentence => "I Love Ruby", :positive => true }
# => { :sentence => "It was never love for me", :positive => false }

Supported GenAI providers

Language Code
OpenAI(GPT) :open_ai
Google Gemini :gemini_ai_pro
Anthropic :anthropic

Supported languages

Language Code
English :en
Vietnamese :vi
Japanese :ja

Development

After checking out the repo, run bin/setup to install dependencies. Then, run rake spec to run the tests. You can also run bin/console for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run bundle exec rake install. To release a new version, update the version number in version.rb, and then run bundle exec rake release, which will create a git tag for the version, push git commits and the created tag, and push the .gem file to rubygems.org.