From 61b7a057927f1ad912cbaa33738e9c1c15a12cb9 Mon Sep 17 00:00:00 2001 From: Marshall Bowers Date: Tue, 8 Apr 2025 10:46:15 -0400 Subject: [PATCH] language_models: Allow overriding Zed completions URL via environment variable (#28323) This PR adds support for overriding the Zed completions URL via the `ZED_COMPLETIONS_URL` environment variable. Release Notes: - N/A --- crates/language_models/src/provider/cloud.rs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/crates/language_models/src/provider/cloud.rs b/crates/language_models/src/provider/cloud.rs index ff109cf55a..9377bf315f 100644 --- a/crates/language_models/src/provider/cloud.rs +++ b/crates/language_models/src/provider/cloud.rs @@ -504,10 +504,14 @@ impl CloudLanguageModel { let mut retry_delay = Duration::from_secs(1); loop { - let request_builder = http_client::Request::builder(); + let request_builder = http_client::Request::builder().method(Method::POST); + let request_builder = if let Ok(completions_url) = std::env::var("ZED_COMPLETIONS_URL") + { + request_builder.uri(completions_url) + } else { + request_builder.uri(http_client.build_zed_llm_url("/completion", &[])?.as_ref()) + }; let request = request_builder - .method(Method::POST) - .uri(http_client.build_zed_llm_url("/completion", &[])?.as_ref()) .header("Content-Type", "application/json") .header("Authorization", format!("Bearer {token}")) .body(serde_json::to_string(&body)?.into())?;