Class: Braintrust::Resources::Experiment
- Inherits:
-
Object
- Object
- Braintrust::Resources::Experiment
- Defined in:
- lib/braintrust/resources/experiment.rb
Instance Method Summary collapse
-
#create(params = {}, opts = {}) ⇒ Braintrust::Models::Experiment
Create a new experiment.
-
#delete(experiment_id, opts = {}) ⇒ Braintrust::Models::Experiment
Delete an experiment object by its id.
-
#feedback(experiment_id, params = {}, opts = {}) ⇒ nil
Log feedback for a set of experiment events.
-
#fetch(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentFetchResponse
Fetch the events in an experiment.
-
#fetch_post(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentFetchPostResponse
Fetch the events in an experiment.
-
#initialize(client:) ⇒ Experiment
constructor
A new instance of Experiment.
-
#insert(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentInsertResponse
Insert a set of events into the experiment.
-
#list(params = {}, opts = {}) ⇒ Braintrust::ListObjects<Braintrust::Models::Experiment>
List out all experiments.
-
#replace(params = {}, opts = {}) ⇒ Braintrust::Models::Experiment
NOTE: This operation is deprecated and will be removed in a future revision of the API.
-
#retrieve(experiment_id, opts = {}) ⇒ Braintrust::Models::Experiment
Get an experiment object by its id.
-
#summarize(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentSummarizeResponse
Summarize experiment.
-
#update(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::Experiment
Partially update an experiment object.
Constructor Details
#initialize(client:) ⇒ Experiment
Returns a new instance of Experiment.
6 7 8 |
# File 'lib/braintrust/resources/experiment.rb', line 6 def initialize(client:) @client = client end |
Instance Method Details
#create(params = {}, opts = {}) ⇒ Braintrust::Models::Experiment
Create a new experiment. If there is an existing experiment in the project with the same name as the one specified in the request, will return the existing experiment unmodified
35 36 37 38 39 40 41 42 |
# File 'lib/braintrust/resources/experiment.rb', line 35 def create(params = {}, opts = {}) req = {} req[:method] = :post req[:path] = "/v1/experiment" req[:body] = params req[:model] = Braintrust::Models::Experiment @client.request(req, opts) end |
#delete(experiment_id, opts = {}) ⇒ Braintrust::Models::Experiment
Delete an experiment object by its id
129 130 131 132 133 134 135 |
# File 'lib/braintrust/resources/experiment.rb', line 129 def delete(experiment_id, opts = {}) req = {} req[:method] = :delete req[:path] = "/v1/experiment/#{experiment_id}" req[:model] = Braintrust::Models::Experiment @client.request(req, opts) end |
#feedback(experiment_id, params = {}, opts = {}) ⇒ nil
Log feedback for a set of experiment events
147 148 149 150 151 152 153 154 |
# File 'lib/braintrust/resources/experiment.rb', line 147 def feedback(experiment_id, params = {}, opts = {}) req = {} req[:method] = :post req[:path] = "/v1/experiment/#{experiment_id}/feedback" req[:body] = params req[:model] = NilClass @client.request(req, opts) end |
#fetch(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentFetchResponse
Fetch the events in an experiment. Equivalent to the POST form of the same path, but with the parameters in the URL query rather than in the request body
205 206 207 208 209 210 211 212 |
# File 'lib/braintrust/resources/experiment.rb', line 205 def fetch(experiment_id, params = {}, opts = {}) req = {} req[:method] = :get req[:path] = "/v1/experiment/#{experiment_id}/fetch" req[:query] = params req[:model] = Braintrust::Models::ExperimentFetchResponse @client.request(req, opts) end |
#fetch_post(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentFetchPostResponse
Fetch the events in an experiment. Equivalent to the GET form of the same path, but with the parameters in the request body rather than in the URL query
270 271 272 273 274 275 276 277 |
# File 'lib/braintrust/resources/experiment.rb', line 270 def fetch_post(experiment_id, params = {}, opts = {}) req = {} req[:method] = :post req[:path] = "/v1/experiment/#{experiment_id}/fetch" req[:body] = params req[:model] = Braintrust::Models::ExperimentFetchPostResponse @client.request(req, opts) end |
#insert(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentInsertResponse
Insert a set of events into the experiment
289 290 291 292 293 294 295 296 |
# File 'lib/braintrust/resources/experiment.rb', line 289 def insert(experiment_id, params = {}, opts = {}) req = {} req[:method] = :post req[:path] = "/v1/experiment/#{experiment_id}/insert" req[:body] = params req[:model] = Braintrust::Models::ExperimentInsertResponse @client.request(req, opts) end |
#list(params = {}, opts = {}) ⇒ Braintrust::ListObjects<Braintrust::Models::Experiment>
List out all experiments. The experiments are sorted by creation date, with the most recently-created experiments coming first
113 114 115 116 117 118 119 120 121 |
# File 'lib/braintrust/resources/experiment.rb', line 113 def list(params = {}, opts = {}) req = {} req[:method] = :get req[:path] = "/v1/experiment" req[:query] = params req[:page] = Braintrust::ListObjects req[:model] = Braintrust::Models::Experiment @client.request(req, opts) end |
#replace(params = {}, opts = {}) ⇒ Braintrust::Models::Experiment
NOTE: This operation is deprecated and will be removed in a future revision of the API. Create or replace a new experiment. If there is an existing experiment in the project with the same name as the one specified in the request, will return the existing experiment unmodified, will replace the existing experiment with the provided fields
325 326 327 328 329 330 331 332 |
# File 'lib/braintrust/resources/experiment.rb', line 325 def replace(params = {}, opts = {}) req = {} req[:method] = :put req[:path] = "/v1/experiment" req[:body] = params req[:model] = Braintrust::Models::Experiment @client.request(req, opts) end |
#retrieve(experiment_id, opts = {}) ⇒ Braintrust::Models::Experiment
Get an experiment object by its id
50 51 52 53 54 55 56 |
# File 'lib/braintrust/resources/experiment.rb', line 50 def retrieve(experiment_id, opts = {}) req = {} req[:method] = :get req[:path] = "/v1/experiment/#{experiment_id}" req[:model] = Braintrust::Models::Experiment @client.request(req, opts) end |
#summarize(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::ExperimentSummarizeResponse
Summarize experiment
349 350 351 352 353 354 355 356 |
# File 'lib/braintrust/resources/experiment.rb', line 349 def summarize(experiment_id, params = {}, opts = {}) req = {} req[:method] = :get req[:path] = "/v1/experiment/#{experiment_id}/summarize" req[:query] = params req[:model] = Braintrust::Models::ExperimentSummarizeResponse @client.request(req, opts) end |
#update(experiment_id, params = {}, opts = {}) ⇒ Braintrust::Models::Experiment
Partially update an experiment object. Specify the fields to update in the payload. Any object-type fields will be deep-merged with existing content. Currently we do not support removing fields or setting them to null.
80 81 82 83 84 85 86 87 |
# File 'lib/braintrust/resources/experiment.rb', line 80 def update(experiment_id, params = {}, opts = {}) req = {} req[:method] = :patch req[:path] = "/v1/experiment/#{experiment_id}" req[:body] = params req[:model] = Braintrust::Models::Experiment @client.request(req, opts) end |