From ca8772c2d54b349aca09d1f7157cf5cdc63c06b2 Mon Sep 17 00:00:00 2001 From: desAweis Date: Thu, 21 Aug 2025 16:40:28 +0800 Subject: [PATCH] [FEL] remove apikey header while input apikey is null --- .../community/model/openai/OpenAiModel.java | 20 +++++++++++++++---- .../model/openai/config/OpenAiConfig.java | 2 +- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/OpenAiModel.java b/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/OpenAiModel.java index 68693325..9214b2ff 100644 --- a/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/OpenAiModel.java +++ b/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/OpenAiModel.java @@ -132,7 +132,10 @@ public List generate(List inputs, EmbedOption option) { notBlank(option.model(), "The embed model name cannot be null."); HttpClassicClientRequest request = this.httpClient.get() .createRequest(HttpRequestMethod.POST, UrlUtils.combine(this.baseUrl, OpenAiApi.EMBEDDING_ENDPOINT)); - HttpUtils.setBearerAuth(request, StringUtils.blankIf(option.apiKey(), this.defaultApiKey)); + String actualApiKey = StringUtils.blankIf(option.apiKey(), this.defaultApiKey); + if (StringUtils.isNotBlank(actualApiKey)) { + HttpUtils.setBearerAuth(request, actualApiKey); + } request.jsonEntity(new OpenAiEmbeddingRequest(inputs, option.model())); Class clazz = OpenAiEmbeddingResponse.class; try (HttpClassicClientResponse response = request.exchange(clazz)) { @@ -151,7 +154,10 @@ public Choir generate(Prompt prompt, ChatOption chatOption) { String modelSource = StringUtils.blankIf(chatOption.baseUrl(), this.baseUrl); HttpClassicClientRequest request = this.getHttpClient(chatOption.secureConfig()) .createRequest(HttpRequestMethod.POST, UrlUtils.combine(modelSource, OpenAiApi.CHAT_ENDPOINT)); - HttpUtils.setBearerAuth(request, StringUtils.blankIf(chatOption.apiKey(), this.defaultApiKey)); + String actualApiKey = StringUtils.blankIf(chatOption.apiKey(), this.defaultApiKey); + if (StringUtils.isNotBlank(actualApiKey)) { + HttpUtils.setBearerAuth(request, actualApiKey); + } request.jsonEntity(new OpenAiChatCompletionRequest(prompt, chatOption)); return chatOption.stream() ? this.createChatStream(request) : this.createChatCompletion(request); } @@ -163,7 +169,10 @@ public List generate(String prompt, ImageOption option) { String modelSource = StringUtils.blankIf(option.baseUrl(), this.baseUrl); HttpClassicClientRequest request = this.httpClient.get() .createRequest(HttpRequestMethod.POST, UrlUtils.combine(modelSource, OpenAiApi.IMAGE_ENDPOINT)); - HttpUtils.setBearerAuth(request, StringUtils.blankIf(option.apiKey(), this.defaultApiKey)); + String actualApiKey = StringUtils.blankIf(option.apiKey(), this.defaultApiKey); + if (StringUtils.isNotBlank(actualApiKey)) { + HttpUtils.setBearerAuth(request, actualApiKey); + } request.jsonEntity(new OpenAiImageRequest(option.model(), option.size(), prompt)); Class clazz = OpenAiImageResponse.class; try (HttpClassicClientResponse response = request.exchange(clazz)) { @@ -182,7 +191,10 @@ public List generate(List documents, Rer String modelSource = StringUtils.blankIf(rerankOption.baseUri(), this.baseUrl); HttpClassicClientRequest request = this.getHttpClient(rerankOption.secureConfig()) .createRequest(HttpRequestMethod.POST, UrlUtils.combine(modelSource, OpenAiApi.RERANK_ENDPOINT)); - HttpUtils.setBearerAuth(request, StringUtils.blankIf(rerankOption.apiKey(), this.defaultApiKey)); + String actualApiKey = StringUtils.blankIf(rerankOption.apiKey(), this.defaultApiKey); + if (StringUtils.isNotBlank(actualApiKey)) { + HttpUtils.setBearerAuth(request, actualApiKey); + } List docs = documents.stream().map(MeasurableDocument::text).collect(Collectors.toList()); OpenAiRerankRequest fields = new OpenAiRerankRequest(rerankOption, docs); request.entity(Entity.createObject(request, fields)); diff --git a/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/config/OpenAiConfig.java b/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/config/OpenAiConfig.java index d2f47244..745b2bd1 100644 --- a/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/config/OpenAiConfig.java +++ b/framework/fel/java/fel-community/model-openai/src/main/java/modelengine/fel/community/model/openai/config/OpenAiConfig.java @@ -18,7 +18,7 @@ @AcceptConfigValues("fel.openai") public class OpenAiConfig { private String apiBase = "https://api.openai.com/v1/"; - private String apiKey = "EMPTY"; + private String apiKey = ""; private int connectTimeout = 30000; private int readTimeout = 30000;