Module: OpenaiClient

Defined in:
lib/pleasegpt/openai_api.rb

Overview

Main module for OpenAI Client

Class Method Summary collapse

Class Method Details

.openai_client_newObject

Raises:



24
25
26
27
28
29
# File 'lib/pleasegpt/openai_api.rb', line 24

def self.openai_client_new
  Dotenv.load(PleaseGPT::Api.join_lib_dir_with_file)
  raise PleaseGPT::Error, 'OPENAI_API_KEY not set' unless ENV['OPENAI_API_KEY']

  OpenAI::Client.new(access_token: ENV['OPENAI_API_KEY'])
end

.openai_response(prompt, max_tokens, temperature, responses_qty, stop) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/pleasegpt/openai_api.rb', line 10

def self.openai_response(prompt, max_tokens, temperature, responses_qty, stop)
  response = openai_client_new.completions(
    parameters: {
      model: 'text-davinci-003',
      prompt: prompt,
      max_tokens: max_tokens,
      temperature: temperature,
      n: responses_qty,
      stop: stop
    }
  )
  PleaseGPT::Error.check_response(response)
end