diff --git a/src/lib/components/admin/Evaluations/Leaderboard.svelte b/src/lib/components/admin/Evaluations/Leaderboard.svelte index de99a6752..46daf2127 100644 --- a/src/lib/components/admin/Evaluations/Leaderboard.svelte +++ b/src/lib/components/admin/Evaluations/Leaderboard.svelte @@ -7,6 +7,8 @@ import { onMount, getContext } from 'svelte'; import { models } from '$lib/stores'; + import ModelModal from './LeaderboardModal.svelte'; + import Spinner from '$lib/components/common/Spinner.svelte'; import Tooltip from '$lib/components/common/Tooltip.svelte'; import MagnifyingGlass from '$lib/components/icons/MagnifyingGlass.svelte'; @@ -66,6 +68,25 @@ } } + ////////////////////// + // + // Aggregate Level Modal + // + ////////////////////// + + let showLeaderboardModal = false; + let selectedModel = null; + + const openFeedbackModal = (model) => { + showLeaderboardModal = true; + selectedModel = model; + }; + + const closeLeaderboardModal = () => { + showLeaderboardModal = false; + selectedModel = null; + }; + ////////////////////// // // Rank models by Elo rating @@ -305,6 +326,13 @@ }); + +
@@ -475,7 +503,10 @@ {#each sortedModels as model, modelIdx (model.id)} - + openFeedbackModal(model)} + >
{model?.rating !== '-' ? modelIdx + 1 : '-'} diff --git a/src/lib/components/admin/Evaluations/LeaderboardModal.svelte b/src/lib/components/admin/Evaluations/LeaderboardModal.svelte new file mode 100644 index 000000000..c89f0989b --- /dev/null +++ b/src/lib/components/admin/Evaluations/LeaderboardModal.svelte @@ -0,0 +1,79 @@ + + + + {#if model} +
+
+ {model.name} + {$i18n.t('Details')} +
+ +
+
+
+ {$i18n.t('Top Tags')}: + {#if topTags.length} +
+ {#each topTags as tagInfo} + + {tagInfo.tag} ({tagInfo.count}) + + {/each} +
+ {:else} + - + {/if} +
+
+ +
+
+ {/if} +