Module: OpenAI::HTTP
- Included in:
- Client
- Defined in:
- lib/openai/http.rb
Instance Method Summary collapse
- #delete(path:) ⇒ Object
- #get(path:) ⇒ Object
- #json_post(path:, parameters:) ⇒ Object
- #multipart_post(path:, parameters: nil) ⇒ Object
Instance Method Details
#delete(path:) ⇒ Object
30 31 32 33 34 |
# File 'lib/openai/http.rb', line 30 def delete(path:) to_json(conn.delete(uri(path: path)) do |req| req.headers = headers end&.body) end |
#get(path:) ⇒ Object
3 4 5 6 7 |
# File 'lib/openai/http.rb', line 3 def get(path:) to_json(conn.get(uri(path: path)) do |req| req.headers = headers end&.body) end |
#json_post(path:, parameters:) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 |
# File 'lib/openai/http.rb', line 9 def json_post(path:, parameters:) to_json(conn.post(uri(path: path)) do |req| if parameters[:stream].respond_to?(:call) req..on_data = to_json_stream(user_proc: parameters[:stream]) parameters[:stream] = true # Necessary to tell OpenAI to stream. elsif parameters[:stream] raise ArgumentError, "The stream parameter must be a Proc or have a #call method" end req.headers = headers req.body = parameters.to_json end&.body) end |
#multipart_post(path:, parameters: nil) ⇒ Object
23 24 25 26 27 28 |
# File 'lib/openai/http.rb', line 23 def multipart_post(path:, parameters: nil) to_json(conn(multipart: true).post(uri(path: path)) do |req| req.headers = headers.merge({ "Content-Type" => "multipart/form-data" }) req.body = multipart_parameters(parameters) end&.body) end |