zed-industries/zed · error · anyhow::Error
ChatGPT models response did not contain any picker-visible m
Error message
ChatGPT models response did not contain any picker-visible models
What it means
The models request succeeded and the response parsed, but after filtering out models that are not visible in the ChatGPT picker, the list was empty. This means OpenAI's account has no models available for this credentials (e.g. a restricted organization, a new account, or a server-side catalog change that altered visibility flags).
Source
Thrown at crates/openai_subscribed/src/openai_subscribed.rs:738
.context("failed to request ChatGPT models")?;
let status = response.status();
let mut body = String::new();
smol::io::AsyncReadExt::read_to_string(response.body_mut(), &mut body)
.await
.context("failed to read ChatGPT models response")?;
if !status.is_success() {
return Err(anyhow!(
"ChatGPT models request failed (HTTP {status}): {body}"
));
}
let mut models = serde_json::from_str::<ModelsResponse>(&body)
.context("failed to parse ChatGPT models response")?
.models;
models.retain(|model| model.visibility == ModelVisibility::List);
models.sort_by_key(|model| model.priority);
if models.is_empty() {
return Err(anyhow!(
"ChatGPT models response did not contain any picker-visible models"
));
}
Ok(models.into_iter().map(ChatGptModel::from).collect())
}
impl LanguageModel for OpenAiSubscribedLanguageModel {
fn id(&self) -> LanguageModelId {
self.id.clone()
}
fn name(&self) -> LanguageModelName {
LanguageModelName::from(self.model.display_name().to_string())
}
fn provider_id(&self) -> LanguageModelProviderId {
PROVIDER_ID
}View on GitHub (pinned to 5a9b9558db)
Solutions
- Verify the signed-in ChatGPT account actually has model access (some organizations restrict available models)
- Sign out and sign back in to refresh credentials in case the account state changed
- Check whether OpenAI changed the picker-visibility field names in the models response, which would make every model filtered out
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at crates/openai_subscribed/src/openai_subscribed.rs:706 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of zed-industries/zed@5a9b9558db (2026-08-20).
Data as JSON: /api/errors/462c39481a2bd4ac.
Report an issue: GitHub.