diff --git a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/OpenAiService.java b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/OpenAiService.java index 4da7b67b..4a7a196b 100644 --- a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/OpenAiService.java +++ b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/OpenAiService.java @@ -1,23 +1,22 @@ // Copyright (c) Microsoft. All rights reserved. package com.microsoft.semantickernel.aiservices.openai; -import com.azure.ai.openai.OpenAIAsyncClient; import com.microsoft.semantickernel.services.AIService; import javax.annotation.Nullable; /** * Provides OpenAI service. */ -public abstract class OpenAiService implements AIService { +public abstract class OpenAiService implements AIService { - private final OpenAIAsyncClient client; + private final Client client; @Nullable private final String serviceId; private final String modelId; private final String deploymentName; protected OpenAiService( - OpenAIAsyncClient client, + Client client, @Nullable String serviceId, String modelId, String deploymentName) { @@ -39,7 +38,7 @@ public String getServiceId() { return serviceId; } - protected OpenAIAsyncClient getClient() { + protected Client getClient() { return client; } diff --git a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiAudioToTextService.java b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiAudioToTextService.java index 07fdc76f..7becd67e 100644 --- a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiAudioToTextService.java +++ b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiAudioToTextService.java @@ -18,7 +18,7 @@ /** * Provides OpenAi implementation of audio to text service. */ -public class OpenAiAudioToTextService extends OpenAiService implements AudioToTextService { +public class OpenAiAudioToTextService extends OpenAiService implements AudioToTextService { private static final Logger LOGGER = LoggerFactory.getLogger(OpenAiAudioToTextService.class); diff --git a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiTextToAudioService.java b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiTextToAudioService.java index b4f4dafd..25071ca9 100644 --- a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiTextToAudioService.java +++ b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/audio/OpenAiTextToAudioService.java @@ -17,7 +17,7 @@ /** * Provides OpenAi implementation of text to audio service. */ -public class OpenAiTextToAudioService extends OpenAiService implements TextToAudioService { +public class OpenAiTextToAudioService extends OpenAiService implements TextToAudioService { private static final Logger LOGGER = LoggerFactory.getLogger(OpenAiTextToAudioService.class); diff --git a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/chatcompletion/OpenAIChatCompletion.java b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/chatcompletion/OpenAIChatCompletion.java index 6bdb4f1c..9c0510ca 100644 --- a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/chatcompletion/OpenAIChatCompletion.java +++ b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/chatcompletion/OpenAIChatCompletion.java @@ -79,7 +79,7 @@ /** * OpenAI chat completion service. */ -public class OpenAIChatCompletion extends OpenAiService implements ChatCompletionService { +public class OpenAIChatCompletion extends OpenAiService implements ChatCompletionService { private static final Logger LOGGER = LoggerFactory.getLogger(OpenAIChatCompletion.class); @@ -1044,7 +1044,7 @@ static ChatRequestMessage getChatRequestMessage( /** * Builder for creating a new instance of {@link OpenAIChatCompletion}. */ - public static class Builder extends OpenAiServiceBuilder { + public static class Builder extends OpenAiServiceBuilder { @Override public OpenAIChatCompletion build() { diff --git a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textcompletion/OpenAITextGenerationService.java b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textcompletion/OpenAITextGenerationService.java index 57e3dd1f..5c418649 100644 --- a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textcompletion/OpenAITextGenerationService.java +++ b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textcompletion/OpenAITextGenerationService.java @@ -30,7 +30,7 @@ /** * An OpenAI implementation of a {@link TextGenerationService}. */ -public class OpenAITextGenerationService extends OpenAiService implements TextGenerationService { +public class OpenAITextGenerationService extends OpenAiService implements TextGenerationService { private static final Logger LOGGER = LoggerFactory.getLogger(OpenAITextGenerationService.class); diff --git a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textembedding/OpenAITextEmbeddingGenerationService.java b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textembedding/OpenAITextEmbeddingGenerationService.java index a46540c0..cd2c7aa8 100644 --- a/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textembedding/OpenAITextEmbeddingGenerationService.java +++ b/aiservices/openai/src/main/java/com/microsoft/semantickernel/aiservices/openai/textembedding/OpenAITextEmbeddingGenerationService.java @@ -23,7 +23,7 @@ * An OpenAI implementation of a {@link TextEmbeddingGenerationService}. * */ -public class OpenAITextEmbeddingGenerationService extends OpenAiService +public class OpenAITextEmbeddingGenerationService extends OpenAiService implements TextEmbeddingGenerationService { private static final Logger LOGGER = LoggerFactory .getLogger(OpenAITextEmbeddingGenerationService.class); @@ -87,7 +87,7 @@ protected Mono> internalGenerateTextEmbeddingsAsync(List * A builder for creating a {@link OpenAITextEmbeddingGenerationService}. */ public static class Builder extends - OpenAiServiceBuilder { + OpenAiServiceBuilder { private int dimensions = DEFAULT_DIMENSIONS; /** diff --git a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/AudioToTextService.java b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/AudioToTextService.java index 91e14466..70224596 100644 --- a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/AudioToTextService.java +++ b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/AudioToTextService.java @@ -1,6 +1,7 @@ // Copyright (c) Microsoft. All rights reserved. package com.microsoft.semantickernel.services.audio; +import com.azure.ai.openai.OpenAIAsyncClient; import com.microsoft.semantickernel.implementation.ServiceLoadUtil; import com.microsoft.semantickernel.services.AIService; import com.microsoft.semantickernel.services.openai.OpenAiServiceBuilder; @@ -32,7 +33,7 @@ static Builder builder() { /** * Builder for the AudioToTextService. */ - abstract class Builder extends OpenAiServiceBuilder { + abstract class Builder extends OpenAiServiceBuilder { } } diff --git a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/TextToAudioService.java b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/TextToAudioService.java index 80a42436..ff2cd40a 100644 --- a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/TextToAudioService.java +++ b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/audio/TextToAudioService.java @@ -1,6 +1,7 @@ // Copyright (c) Microsoft. All rights reserved. package com.microsoft.semantickernel.services.audio; +import com.azure.ai.openai.OpenAIAsyncClient; import com.microsoft.semantickernel.implementation.ServiceLoadUtil; import com.microsoft.semantickernel.services.AIService; import com.microsoft.semantickernel.services.openai.OpenAiServiceBuilder; @@ -36,7 +37,7 @@ static Builder builder() { * Builder for the TextToAudioService. */ abstract class Builder extends - OpenAiServiceBuilder { + OpenAiServiceBuilder { } } diff --git a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/openai/OpenAiServiceBuilder.java b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/openai/OpenAiServiceBuilder.java index 0197a55a..e42b2c6e 100644 --- a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/openai/OpenAiServiceBuilder.java +++ b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/openai/OpenAiServiceBuilder.java @@ -1,20 +1,24 @@ // Copyright (c) Microsoft. All rights reserved. package com.microsoft.semantickernel.services.openai; -import com.azure.ai.openai.OpenAIAsyncClient; +import com.microsoft.semantickernel.services.AIService; import com.microsoft.semantickernel.builders.SemanticKernelBuilder; import javax.annotation.Nullable; /** * Builder for an OpenAI service. - */ -public abstract class OpenAiServiceBuilder> implements + * @param The client type + * @param The service type + * @param The builder type +*/ +public abstract class OpenAiServiceBuilder> implements + SemanticKernelBuilder { @Nullable protected String modelId; @Nullable - protected OpenAIAsyncClient client; + protected C client; @Nullable protected String serviceId; @Nullable @@ -51,7 +55,7 @@ public U withDeploymentName(String deploymentName) { * @param client The OpenAI client * @return The builder */ - public U withOpenAIAsyncClient(OpenAIAsyncClient client) { + public U withOpenAIAsyncClient(C client) { this.client = client; return (U) this; } diff --git a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/textcompletion/TextGenerationService.java b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/textcompletion/TextGenerationService.java index ab592c86..8010b67f 100644 --- a/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/textcompletion/TextGenerationService.java +++ b/semantickernel-api/src/main/java/com/microsoft/semantickernel/services/textcompletion/TextGenerationService.java @@ -1,6 +1,7 @@ // Copyright (c) Microsoft. All rights reserved. package com.microsoft.semantickernel.services.textcompletion; +import com.azure.ai.openai.OpenAIAsyncClient; import com.microsoft.semantickernel.Kernel; import com.microsoft.semantickernel.implementation.ServiceLoadUtil; import com.microsoft.semantickernel.orchestration.PromptExecutionSettings; @@ -60,6 +61,6 @@ Flux getStreamingTextContentsAsync( /** * Builder for a TextGenerationService */ - abstract class Builder extends OpenAiServiceBuilder { + abstract class Builder extends OpenAiServiceBuilder { } }