Project

rubyai

0.03
The project is in a healthy, maintained state
RubyAI is a wrapper for the OpenAI API that allows you to interact with GPT-4 within Ruby/Rails applications. It provides simple methods for integrating language model capabilities into your Ruby projects.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 3.10

Runtime

 Project Readme

RubyAI - OpenAI integration Ruby gem

Gem Version GitHub license

Use the OpenAI API 🤖 with Ruby! ❤️

Generate text with ChatGPT (Generative Pre-trained Transformer)

Installation

Add this line to your application's Gemfile:

gem "rubyai"

And then execute:

$ bundle install

Or install with:

$ gem install rubyai

and require with:

require "rubyai"

Usage

Quickstart

For a quick test you can pass your token directly to a new client:

result = RubyAI::Client.new(access_token, messages).call

ChatGPT

ChatGPT is a conversational-style text generation model. You can use it to generate a response to a sequence of messages:

api_key = "YOUR API KEY"
messages = "Who is the best chess player in history?"

result = RubyAI::Client.new(api_key, messages, model: "gpt-4").call
puts result.dig("choices", 0, "message", "content")

# => As an AI language model, I do not have personal opinions, but according to historical records, Garry Kasparov is often considered as one of the best chess players in history. Other notable players include Magnus Carlsen, Bobby Fischer, and Jose Capablanca.

You can also pass client variables using the configuration file. Create configruation file like on example:

configuration = RubyAI::Configuration.new("YOUR API KEY", "Who is the best chess player in history?")
client = RubyAI::Client.new(configuration)
result = client.call
puts result.dig("choices", 0, "message", "content")

Also (mostly) if you are using Rails you can use configure method:

RubyAI.configure do |config|
  config.api_key = "YOUR API KEY"
  config.messages = "Who is the best chess player in history?"
  config.model = "gpt-4o-mini"
end

Models

We support all popular GPT models:

gpt-4-turbo: A powerful variant of GPT-4 optimized for efficiency and speed, perfect for high-demand tasks.

gpt-4o-mini: A streamlined version of GPT-4, designed to provide a balance between performance and resource efficiency.

o1-mini: A compact, yet effective model that is well-suited for lightweight tasks.

o1-preview: A preview version of the o1 model, offering insights into upcoming advancements and features.

Development

After checking out the repo, run bin/setup to install dependencies. You can 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.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/alexshapalov/rubyai. This project is intended to be a safe, welcoming space for collaboration, and contributors.

License

The gem is available as open source under the terms of the MIT License.