From 41fc6d08859655d4abd60078f47558337d7a1c25 Mon Sep 17 00:00:00 2001 From: Nate Butler Date: Mon, 19 Aug 2024 13:38:19 -0400 Subject: [PATCH] Make providers more clear in model selector (#16480) Make providers more clear in model selector Before: ![CleanShot 2024-08-19 at 13 20 36@2x](https://github.com/user-attachments/assets/5b43fa27-4aca-446a-a035-bc8bcb0d9b0e) After: ![CleanShot 2024-08-19 at 13 20 05@2x](https://github.com/user-attachments/assets/cb961405-b573-42fe-80e1-f3c2ce828ea4) Release Notes: - N/A --- assets/icons/ai_anthropic_hosted.svg | 11 ++++++----- crates/assistant/src/model_selector.rs | 10 +++++++++- 2 files changed, 15 insertions(+), 6 deletions(-) diff --git a/assets/icons/ai_anthropic_hosted.svg b/assets/icons/ai_anthropic_hosted.svg index 12d731fb0b..b088520490 100644 --- a/assets/icons/ai_anthropic_hosted.svg +++ b/assets/icons/ai_anthropic_hosted.svg @@ -1,11 +1,12 @@ - - - + + + + - - + + diff --git a/crates/assistant/src/model_selector.rs b/crates/assistant/src/model_selector.rs index 514bb3ee87..9a53c07dba 100644 --- a/crates/assistant/src/model_selector.rs +++ b/crates/assistant/src/model_selector.rs @@ -1,6 +1,7 @@ use feature_flags::ZedPro; use gpui::Action; use gpui::DismissEvent; + use language_model::{LanguageModel, LanguageModelAvailability, LanguageModelRegistry}; use proto::Plan; use workspace::ShowConfiguration; @@ -149,6 +150,8 @@ impl PickerDelegate for ModelPickerDelegate { use feature_flags::FeatureFlagAppExt; let model_info = self.filtered_models.get(ix)?; let show_badges = cx.has_flag::(); + let provider_name: String = model_info.model.provider_name().0.into(); + Some( ListItem::new(ix) .inset(true) @@ -166,11 +169,16 @@ impl PickerDelegate for ModelPickerDelegate { .w_full() .justify_between() .font_buffer(cx) - .min_w(px(200.)) + .min_w(px(240.)) .child( h_flex() .gap_2() .child(Label::new(model_info.model.name().0.clone())) + .child( + Label::new(provider_name) + .size(LabelSize::XSmall) + .color(Color::Muted), + ) .children(match model_info.availability { LanguageModelAvailability::Public => None, LanguageModelAvailability::RequiresPlan(Plan::Free) => None,