allow null usage for openai embedding model

Signed-off-by: jonghoon park <dev@jonghoonpark.com>
This commit is contained in:
jonghoon park
2025-03-17 15:16:08 +09:00
committed by Ilayaperumal Gopinathan
parent cdac6ee42f
commit 77ee57cec0

View File

@@ -23,6 +23,8 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.ai.chat.metadata.DefaultUsage;
import org.springframework.ai.chat.metadata.EmptyUsage;
import org.springframework.ai.chat.metadata.Usage;
import org.springframework.ai.document.Document;
import org.springframework.ai.document.MetadataMode;
import org.springframework.ai.embedding.AbstractEmbeddingModel;
@@ -167,8 +169,9 @@ public class OpenAiEmbeddingModel extends AbstractEmbeddingModel {
return new EmbeddingResponse(List.of());
}
var metadata = new EmbeddingResponseMetadata(apiEmbeddingResponse.model(),
getDefaultUsage(apiEmbeddingResponse.usage()));
OpenAiApi.Usage usage = apiEmbeddingResponse.usage();
Usage embeddingResponseUsage = usage != null ? getDefaultUsage(usage) : new EmptyUsage();
var metadata = new EmbeddingResponseMetadata(apiEmbeddingResponse.model(), embeddingResponseUsage);
List<Embedding> embeddings = apiEmbeddingResponse.data()
.stream()