Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

OpenAI API client library to access GPT-3 in Ruby

This is a wrapper for calling OpenAI and GPT-3's HTTP APIs. API docs are available here:


Add this line to your application's Gemfile:

gem 'openai'

And then execute:

$ bundle

Or install it yourself as:

$ gem install openai


require "openai"

openai_client = ENV.fetch("OPENAI_API_KEY"), default_engine: "ada")

# List Engines

# Retrieve Engine

# Search ["White House", "hospital", "school"], query: "the president")

# Create Completion
openai_client.completions(prompt: "Once upon a time", max_tokens: 5)


  • Stream Completion


After checking out the repo, run bin/setup to install dependencies. 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 tags, and push the .gem file to


Bug reports and pull requests are welcome on GitHub at


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