Skip to content

Commit 29078f5

Browse files
authored
Merge pull request #388 from shalecraig/incr/retrieve-params
Teach runs list endpoints to use parameters
2 parents 63cf9ea + 9a59cc7 commit 29078f5

18 files changed

+183
-283
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -682,10 +682,10 @@ If the `status` response indicates that the `run` is `completed`, the associated
682682

683683
```ruby
684684
# Either retrieve all messages in bulk again, or...
685-
messages = client.messages.list(thread_id: thread_id) # Note: as of 2023-12-11 adding limit or order options isn't working, yet
685+
messages = client.messages.list(thread_id: thread_id, parameters: { order: 'asc' })
686686

687687
# Alternatively retrieve the `run steps` for the run which link to the messages:
688-
run_steps = client.run_steps.list(thread_id: thread_id, run_id: run_id)
688+
run_steps = client.run_steps.list(thread_id: thread_id, run_id: run_id, parameters: { order: 'asc' })
689689
new_message_ids = run_steps['data'].filter_map { |step|
690690
if step['type'] == 'message_creation'
691691
step.dig('step_details', "message_creation", "message_id")
@@ -712,10 +712,10 @@ new_messages.each { |msg|
712712
}
713713
```
714714

715-
At any time you can list all runs which have been performed on a particular thread or are currently running (in descending/newest first order):
715+
At any time you can list all runs which have been performed on a particular thread or are currently running:
716716

717717
```ruby
718-
client.runs.list(thread_id: thread_id)
718+
client.runs.list(thread_id: thread_id, parameters: { order: "asc", limit: 3 })
719719
```
720720

721721
#### Create and Run

lib/openai/http.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ module OpenAI
66
module HTTP
77
include HTTPHeaders
88

9-
def get(path:)
10-
parse_jsonl(conn.get(uri(path: path)) do |req|
9+
def get(path:, parameters: nil)
10+
parse_jsonl(conn.get(uri(path: path), parameters) do |req|
1111
req.headers = headers
1212
end&.body)
1313
end

lib/openai/messages.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ def initialize(client:)
44
@client = client.beta(assistants: "v1")
55
end
66

7-
def list(thread_id:)
8-
@client.get(path: "/threads/#{thread_id}/messages")
7+
def list(thread_id:, parameters: {})
8+
@client.get(path: "/threads/#{thread_id}/messages", parameters: parameters)
99
end
1010

1111
def retrieve(thread_id:, id:)

lib/openai/run_steps.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ def initialize(client:)
44
@client = client.beta(assistants: "v1")
55
end
66

7-
def list(thread_id:, run_id:)
8-
@client.get(path: "/threads/#{thread_id}/runs/#{run_id}/steps")
7+
def list(thread_id:, run_id:, parameters: {})
8+
@client.get(path: "/threads/#{thread_id}/runs/#{run_id}/steps", parameters: parameters)
99
end
1010

1111
def retrieve(thread_id:, run_id:, id:)

lib/openai/runs.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ def initialize(client:)
44
@client = client.beta(assistants: "v1")
55
end
66

7-
def list(thread_id:)
8-
@client.get(path: "/threads/#{thread_id}/runs")
7+
def list(thread_id:, parameters: {})
8+
@client.get(path: "/threads/#{thread_id}/runs", parameters: parameters)
99
end
1010

1111
def retrieve(thread_id:, id:)

spec/fixtures/cassettes/messages_list.yml

Lines changed: 10 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/fixtures/cassettes/messages_list_thread_setup.yml

Lines changed: 11 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/fixtures/cassettes/run_steps_list.yml

Lines changed: 9 additions & 76 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

spec/fixtures/cassettes/run_steps_list_assistant_setup.yml

Lines changed: 14 additions & 11 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)