completion-kit 0.28.14 → 0.28.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3aa50615418395ad99363761cda1ae26f1423659511d52db2252cd41b5cd13d9
4
- data.tar.gz: 053ac0c75a8f0eaf921132adf4f6a6dee9f926495a0698700213e143fbc43a59
3
+ metadata.gz: 5a20d91f5d5238d9e197866ec1e44c7eee4668ebfdf3e119f849a9d0066056cd
4
+ data.tar.gz: 4e4ddf23dddcd3913756dc3df7fa6eb0ee896f902c81d20dabf8ec361cdbcf6b
5
5
  SHA512:
6
- metadata.gz: 9eb01763e01bc3b96d0994a73dbf5a38ecd9f4ea928c133cca98575879eb0088754b256ae540ca2c2df66fcf94608f3de90acf9e88a14d2aa0c12939d8e45840
7
- data.tar.gz: bf6992f1fb1a1f19abb7f1b59cde253a23e661a7301f590511328e7c1a662b6ed4199701d5b235beba681e15b6b9056dd80567301d338a15f391f8fa6b837fa0
6
+ metadata.gz: 5cf6c757cc4574866668f854220740428245c05f99174d8551bfdfdd58110ed1d8714f8bde0c9c65b27e2ceb3cffe0d2e43478fcc5039cc27e7c5e4628244856
7
+ data.tar.gz: 97c2689b0dffdc7ac2a55a3ee7d8354cebae320aa5a7fa23816572a44e3a1414d006c20214e8e3887040731db3d38eb3b45380189bea775defdb31cc88c5f7ef
@@ -9,7 +9,7 @@ module CompletionKit
9
9
 
10
10
  def show
11
11
  @runs = Run.where(prompt_id: @prompt.family_versions.select(:id))
12
- .includes(:prompt, :dataset, responses: :reviews)
12
+ .includes(:prompt, :dataset, :tags, responses: :reviews)
13
13
  .order(created_at: :desc)
14
14
  .display_scoped
15
15
  end
@@ -117,7 +117,12 @@ module CompletionKit
117
117
  end
118
118
 
119
119
  def reviews_for_summary
120
- @reviews_for_summary ||= Review.where(response_id: responses.select(:id)).to_a
120
+ @reviews_for_summary ||=
121
+ if responses.loaded? && responses.all? { |response| response.association(:reviews).loaded? }
122
+ responses.flat_map(&:reviews)
123
+ else
124
+ Review.where(response_id: responses.select(:id)).to_a
125
+ end
121
126
  end
122
127
 
123
128
  def avg_score
@@ -35,7 +35,7 @@
35
35
  <section class="ck-card--spaced">
36
36
  <div class="ck-prompt-preview__header">
37
37
  <p class="ck-kicker">Prompt</p>
38
- <% judged_run = @runs.select { |r| r.prompt_id == @prompt.id && r.status == "completed" }.find { |r| r.responses.joins(:reviews).exists? } %>
38
+ <% judged_run = @runs.select { |r| r.prompt_id == @prompt.id && r.status == "completed" }.find { |r| r.responses.any? { |resp| resp.reviews.any? } } %>
39
39
  <% if judged_run %>
40
40
  <%= button_to suggest_run_path(judged_run), method: :post, class: ck_button_classes(:light, variant: :outline) + " ck-button--sm", form_class: "inline-block" do %>
41
41
  <%= heroicon_tag "sparkles", variant: :outline, class: "ck-magic-icon", "aria-hidden": "true" %>
@@ -48,7 +48,8 @@
48
48
  <pre class="ck-code ck-code--dark ck-code--prompt"><%= @prompt.template %></pre>
49
49
  </section>
50
50
 
51
- <% versions = @prompt.family_versions.includes(runs: { responses: :reviews }).to_a %>
51
+ <% versions = @prompt.family_versions.to_a %>
52
+ <% runs_by_version = @runs.group_by(&:prompt_id) %>
52
53
  <% predecessor_of = versions.index_with { |v| versions.detect { |o| o.version_number < v.version_number } } %>
53
54
  <% version_changed = ->(v, pred) { pred && (pred.template != v.template || pred.llm_model != v.llm_model) } %>
54
55
  <% if versions.size > 1 %>
@@ -65,7 +66,7 @@
65
66
  </thead>
66
67
  <tbody>
67
68
  <% versions.each do |v| %>
68
- <% scoped_runs = v.runs.display_scoped %>
69
+ <% scoped_runs = runs_by_version[v.id] || [] %>
69
70
  <% best_score = scoped_runs.map(&:avg_score).compact.max %>
70
71
  <% best_pass_rate = scoped_runs.map(&:check_pass_rate).compact.max %>
71
72
  <% pred = predecessor_of[v] %>
@@ -1,3 +1,3 @@
1
1
  module CompletionKit
2
- VERSION = "0.28.14"
2
+ VERSION = "0.28.15"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: completion-kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.28.14
4
+ version: 0.28.15
5
5
  platform: ruby
6
6
  authors:
7
7
  - Damien Bastin