Class: OpenAI::Client

Inherits:
Object
  • Object
show all
Extended by:
HTTP
Defined in:
lib/openai/client.rb

Instance Method Summary collapse

Methods included from HTTP

delete, get, json_post, multipart_post

Constructor Details

#initialize(access_token: nil, organization_id: nil, uri_base: nil, request_timeout: nil, extra_headers: {}) ⇒ Client

Returns a new instance of Client.



5
6
7
8
9
10
11
12
# File 'lib/openai/client.rb', line 5

def initialize(access_token: nil, organization_id: nil, uri_base: nil, request_timeout: nil,
               extra_headers: {})
  OpenAI.configuration.access_token = access_token if access_token
  OpenAI.configuration.organization_id = organization_id if organization_id
  OpenAI.configuration.uri_base = uri_base if uri_base
  OpenAI.configuration.request_timeout = request_timeout if request_timeout
  OpenAI.configuration.extra_headers = extra_headers
end

Instance Method Details

#chat(parameters: {}) ⇒ Object



14
15
16
# File 'lib/openai/client.rb', line 14

def chat(parameters: {})
  OpenAI::Client.json_post(path: "/chat/completions", parameters: parameters)
end

#completions(parameters: {}) ⇒ Object



18
19
20
# File 'lib/openai/client.rb', line 18

def completions(parameters: {})
  OpenAI::Client.json_post(path: "/completions", parameters: parameters)
end

#edits(parameters: {}) ⇒ Object



22
23
24
# File 'lib/openai/client.rb', line 22

def edits(parameters: {})
  OpenAI::Client.json_post(path: "/edits", parameters: parameters)
end

#embeddings(parameters: {}) ⇒ Object



26
27
28
# File 'lib/openai/client.rb', line 26

def embeddings(parameters: {})
  OpenAI::Client.json_post(path: "/embeddings", parameters: parameters)
end

#filesObject



30
31
32
# File 'lib/openai/client.rb', line 30

def files
  @files ||= OpenAI::Files.new
end

#finetunesObject



34
35
36
# File 'lib/openai/client.rb', line 34

def finetunes
  @finetunes ||= OpenAI::Finetunes.new
end

#imagesObject



38
39
40
# File 'lib/openai/client.rb', line 38

def images
  @images ||= OpenAI::Images.new
end

#modelsObject



42
43
44
# File 'lib/openai/client.rb', line 42

def models
  @models ||= OpenAI::Models.new
end

#moderations(parameters: {}) ⇒ Object



46
47
48
# File 'lib/openai/client.rb', line 46

def moderations(parameters: {})
  OpenAI::Client.json_post(path: "/moderations", parameters: parameters)
end

#transcribe(parameters: {}) ⇒ Object



50
51
52
# File 'lib/openai/client.rb', line 50

def transcribe(parameters: {})
  OpenAI::Client.multipart_post(path: "/audio/transcriptions", parameters: parameters)
end

#translate(parameters: {}) ⇒ Object



54
55
56
# File 'lib/openai/client.rb', line 54

def translate(parameters: {})
  OpenAI::Client.multipart_post(path: "/audio/translations", parameters: parameters)
end