From 08657e874a3a127be4a3a9022f6b185fd6b3ce48 Mon Sep 17 00:00:00 2001 From: Simon Vergauwen Date: Tue, 26 Mar 2024 10:24:13 +0100 Subject: [PATCH] Update enum as discussed with @raulraja --- .../kotlin/com/xebia/functional/xef/AI.kt | 4 +- .../xebia/functional/xef/llm/Embeddings.kt | 3 +- .../functional/xef/llm/MetricManagement.kt | 2 +- .../com/xebia/functional/xef/llm/Vision.kt | 4 +- .../functional/xef/llm/models/OpenAIClient.kt | 4 +- .../functional/xef/metrics/LogsMetric.kt | 4 +- .../functional/xef/prompt/PromptBuilder.kt | 11 ++--- .../configuration/PromptConfiguration.kt | 2 +- .../functional/xef/store/LocalVectorStore.kt | 3 +- .../functional/xef/store/MemorizedMessage.kt | 15 +++---- .../xef/conversation/ConversationSpec.kt | 26 ++++++------ .../xef/prompt/PromptBuilderSpec.kt | 2 +- .../xef/store/CombinedVectorStoreSpec.kt | 2 +- .../xef/store/LocalVectorStoreSpec.kt | 2 +- .../functional/xef/evaluator/SuiteBuilder.kt | 2 +- .../xebia/functional/xef/assistants/DSL.kt | 4 +- .../xef/assistants/LoadFromYamlConfig.kt | 4 +- .../xef/conversation/conversations/Animal.kt | 2 +- .../functional/xef/dsl/audio/SimpleSpeech.kt | 2 +- .../xebia/functional/xef/dsl/chat/Classes.kt | 2 +- .../xef/dsl/classify/AnswerAccuracy.kt | 2 +- .../functional/xef/evaluator/TestExample.kt | 4 +- .../OpenTelemetryAssistantState.kt | 28 ++++++------- .../src/test/kotlin/xef/PGVectorStoreSpec.kt | 4 +- .../generated/model/AssistantFileObject.kt | 2 +- .../openai/generated/model/AssistantObject.kt | 2 +- .../generated/model/AssistantToolsCode.kt | 2 +- .../generated/model/AssistantToolsFunction.kt | 2 +- .../model/AssistantToolsRetrieval.kt | 2 +- .../model/ChatCompletionMessageToolCall.kt | 2 +- .../ChatCompletionMessageToolCallChunk.kt | 2 +- .../model/ChatCompletionNamedToolChoice.kt | 2 +- .../ChatCompletionRequestAssistantMessage.kt | 2 +- .../ChatCompletionRequestFunctionMessage.kt | 2 +- ...ompletionRequestMessageContentPartImage.kt | 2 +- ...nRequestMessageContentPartImageImageUrl.kt | 2 +- ...CompletionRequestMessageContentPartText.kt | 2 +- .../ChatCompletionRequestSystemMessage.kt | 2 +- .../model/ChatCompletionRequestToolMessage.kt | 2 +- .../model/ChatCompletionRequestUserMessage.kt | 2 +- .../model/ChatCompletionResponseMessage.kt | 2 +- .../generated/model/ChatCompletionRole.kt | 28 ++++++++----- .../ChatCompletionStreamResponseDelta.kt | 2 +- .../generated/model/ChatCompletionTool.kt | 2 +- .../CreateChatCompletionFunctionResponse.kt | 2 +- ...tCompletionFunctionResponseChoicesInner.kt | 2 +- .../model/CreateChatCompletionRequestModel.kt | 42 +++++++++++++------ ...eateChatCompletionRequestResponseFormat.kt | 2 +- .../model/CreateChatCompletionResponse.kt | 2 +- ...reateChatCompletionResponseChoicesInner.kt | 2 +- .../CreateChatCompletionStreamResponse.kt | 2 +- ...hatCompletionStreamResponseChoicesInner.kt | 2 +- .../model/CreateCompletionRequestModel.kt | 28 +++++++------ .../model/CreateCompletionResponse.kt | 2 +- .../CreateCompletionResponseChoicesInner.kt | 2 +- .../generated/model/CreateEmbeddingRequest.kt | 2 +- .../model/CreateEmbeddingRequestModel.kt | 28 +++++++------ .../model/CreateEmbeddingResponse.kt | 2 +- .../model/CreateFineTuningJobRequestModel.kt | 28 +++++++------ .../model/CreateImageEditRequestModel.kt | 26 ++++++------ .../generated/model/CreateImageRequest.kt | 8 ++-- .../model/CreateImageRequestModel.kt | 26 ++++++------ .../generated/model/CreateMessageRequest.kt | 2 +- .../model/CreateModerationRequestModel.kt | 27 ++++++------ .../generated/model/CreateSpeechRequest.kt | 4 +- .../model/CreateSpeechRequestModel.kt | 26 ++++++------ .../model/CreateTranscriptionRequestModel.kt | 26 ++++++------ .../model/DeleteAssistantFileResponse.kt | 2 +- .../model/DeleteAssistantResponse.kt | 2 +- .../generated/model/DeleteFileResponse.kt | 2 +- .../generated/model/DeleteMessageResponse.kt | 2 +- .../generated/model/DeleteThreadResponse.kt | 2 +- .../openai/generated/model/Embedding.kt | 2 +- .../openai/generated/model/FineTuningJob.kt | 4 +- .../generated/model/FineTuningJobEvent.kt | 4 +- .../generated/model/ListFilesResponse.kt | 2 +- .../model/ListFineTuningJobEventsResponse.kt | 2 +- .../generated/model/ListModelsResponse.kt | 2 +- .../ListPaginatedFineTuningJobsResponse.kt | 2 +- .../model/MessageContentImageFileObject.kt | 2 +- ...ontentTextAnnotationsFileCitationObject.kt | 2 +- ...ageContentTextAnnotationsFilePathObject.kt | 2 +- .../model/MessageContentTextObject.kt | 2 +- .../generated/model/MessageFileObject.kt | 2 +- .../openai/generated/model/MessageObject.kt | 4 +- .../openai/generated/model/Model.kt | 2 +- .../openai/generated/model/OpenAIFile.kt | 6 +-- .../openai/generated/model/RunObject.kt | 4 +- .../generated/model/RunObjectLastError.kt | 2 +- .../model/RunObjectRequiredAction.kt | 2 +- .../RunStepDetailsMessageCreationObject.kt | 2 +- .../RunStepDetailsToolCallsCodeObject.kt | 2 +- ...epDetailsToolCallsCodeOutputImageObject.kt | 2 +- ...tepDetailsToolCallsCodeOutputLogsObject.kt | 2 +- .../RunStepDetailsToolCallsFunctionObject.kt | 2 +- .../model/RunStepDetailsToolCallsObject.kt | 2 +- .../RunStepDetailsToolCallsRetrievalObject.kt | 2 +- .../openai/generated/model/RunStepObject.kt | 6 +-- .../generated/model/RunStepObjectLastError.kt | 2 +- .../generated/model/RunToolCallObject.kt | 2 +- .../openai/generated/model/ThreadObject.kt | 2 +- .../generator/config/data_class.mustache | 2 +- .../generator/config/enum_class.mustache | 27 +++++------- .../services/PostgresVectorStoreService.kt | 2 +- 104 files changed, 322 insertions(+), 290 deletions(-) diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/AI.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/AI.kt index 748c0ec98..e8bbc99f7 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/AI.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/AI.kt @@ -86,7 +86,7 @@ sealed interface AI { input: String, output: String, context: String, - model: CreateChatCompletionRequestModel = CreateChatCompletionRequestModel._4_1106_preview, + model: CreateChatCompletionRequestModel = CreateChatCompletionRequestModel.gpt_4_1106_preview, target: KType = typeOf(), config: Config = Config(), api: Chat = OpenAI(config).chat, @@ -107,7 +107,7 @@ sealed interface AI { suspend inline operator fun invoke( prompt: String, target: KType = typeOf(), - model: CreateChatCompletionRequestModel = CreateChatCompletionRequestModel._4_1106_preview, + model: CreateChatCompletionRequestModel = CreateChatCompletionRequestModel.gpt_4_1106_preview, config: Config = Config(), api: Chat = OpenAI(config).chat, conversation: Conversation = Conversation() diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Embeddings.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Embeddings.kt index 7a67e147f..57e51c77c 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Embeddings.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Embeddings.kt @@ -10,7 +10,8 @@ import com.xebia.functional.openai.generated.model.Embedding suspend fun Embeddings.embedDocuments( texts: List, chunkSize: Int = 400, - embeddingRequestModel: CreateEmbeddingRequestModel = CreateEmbeddingRequestModel.ada_002 + embeddingRequestModel: CreateEmbeddingRequestModel = + CreateEmbeddingRequestModel.text_embedding_ada_002 ): List = if (texts.isEmpty()) emptyList() else diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/MetricManagement.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/MetricManagement.kt index a7c123567..57fedd132 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/MetricManagement.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/MetricManagement.kt @@ -28,7 +28,7 @@ suspend fun Prompt.addMetrics(conversation: Conversation) { conversation.metric.parameter( "openai.chat_completion.prompt.messages_roles", - messages.map { it.completionRole().value } + messages.map { it.completionRole().name } ) conversation.metric.parameter( "openai.chat_completion.prompt.last-message", diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Vision.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Vision.kt index 173f8eee6..605973bad 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Vision.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/Vision.kt @@ -20,7 +20,7 @@ suspend inline fun Chat.visionStructured( prompt: String, url: String, conversation: Conversation = Conversation(), - model: CreateChatCompletionRequestModel = CreateChatCompletionRequestModel._4_vision_preview + model: CreateChatCompletionRequestModel = CreateChatCompletionRequestModel.gpt_4_vision_preview ): A { val response = vision(prompt, url, conversation).toList().joinToString("") { it } return prompt(Prompt(model) { +user(response) }, conversation, serializer()) @@ -32,7 +32,7 @@ fun Chat.vision( conversation: Conversation = Conversation() ): Flow = promptStreaming( - prompt = Prompt(CreateChatCompletionRequestModel._4_vision_preview) { +image(prompt, url) }, + prompt = Prompt(CreateChatCompletionRequestModel.gpt_4_vision_preview) { +image(prompt, url) }, scope = conversation ) diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/models/OpenAIClient.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/models/OpenAIClient.kt index ba9b824f5..228285233 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/models/OpenAIClient.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/llm/models/OpenAIClient.kt @@ -5,13 +5,13 @@ import com.xebia.functional.openai.generated.model.CreateEmbeddingRequestModel import com.xebia.functional.tokenizer.ModelType fun CreateChatCompletionRequestModel.modelType(forFunctions: Boolean = false): ModelType { - val stringValue = value + val stringValue = name val forFunctionsModel = ModelType.functionSpecific.find { forFunctions && it.name == stringValue } return forFunctionsModel ?: (ModelType.all.find { it.name == stringValue } ?: ModelType.TODO(stringValue)) } fun CreateEmbeddingRequestModel.modelType(): ModelType { - val stringValue = value + val stringValue = name return ModelType.all.find { it.name == stringValue } ?: ModelType.TODO(stringValue) } diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/metrics/LogsMetric.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/metrics/LogsMetric.kt index 78d6c4f6d..a0bdecd1a 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/metrics/LogsMetric.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/metrics/LogsMetric.kt @@ -54,7 +54,7 @@ class LogsMetric(private val level: Level = Level.INFO) : Metric { this.message = "${writeIndent(numberOfBlocks.get())}|-- RunId: ${runObject.id}" } logger.at(level) { - this.message = "${writeIndent(numberOfBlocks.get())}|-- Status: ${runObject.status.value}" + this.message = "${writeIndent(numberOfBlocks.get())}|-- Status: ${runObject.status.name}" } } @@ -93,7 +93,7 @@ class LogsMetric(private val level: Level = Level.INFO) : Metric { this.message = "${writeIndent(numberOfBlocks.get())}|-- RunId: ${output.runId}" } logger.at(level) { - this.message = "${writeIndent(numberOfBlocks.get())}|-- Status: ${output.status.value}" + this.message = "${writeIndent(numberOfBlocks.get())}|-- Status: ${output.status.name}" } return output } diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/PromptBuilder.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/PromptBuilder.kt index 9e2dc61e7..923dd051d 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/PromptBuilder.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/PromptBuilder.kt @@ -26,11 +26,12 @@ interface PromptBuilder { ): ChatCompletionRequestMessage { val content = "${contentAsString()}\n${message.contentAsString()}" return when (completionRole()) { - ChatCompletionRole.system -> system(content) - ChatCompletionRole.user -> user(content) - ChatCompletionRole.assistant -> assistant(content) - ChatCompletionRole.tool -> error("Tool role is not supported") - ChatCompletionRole.function -> error("Function role is not supported") + ChatCompletionRole.Supported.system -> system(content) + ChatCompletionRole.Supported.user -> user(content) + ChatCompletionRole.Supported.assistant -> assistant(content) + ChatCompletionRole.Supported.tool -> error("Tool role is not supported") + ChatCompletionRole.Supported.function -> error("Function role is not supported") + is ChatCompletionRole.Custom -> error("Custom roles are not supported") } } diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/configuration/PromptConfiguration.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/configuration/PromptConfiguration.kt index b8d42db2b..d4b79b581 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/configuration/PromptConfiguration.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/prompt/configuration/PromptConfiguration.kt @@ -11,7 +11,7 @@ data class PromptConfiguration @JvmOverloads constructor( var maxDeserializationAttempts: Int = 3, - var user: String = ChatCompletionRole.user.value, + var user: String = ChatCompletionRole.user.name, var temperature: Double = 0.4, var numberOfPredictions: Int = 1, var docsInContext: Int = 5, diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/store/LocalVectorStore.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/store/LocalVectorStore.kt index ffd8ea7ea..67908be24 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/store/LocalVectorStore.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/store/LocalVectorStore.kt @@ -33,7 +33,8 @@ private constructor( ) : VectorStore { constructor( embeddings: Embeddings, - embeddingRequestModel: CreateEmbeddingRequestModel = CreateEmbeddingRequestModel.ada_002 + embeddingRequestModel: CreateEmbeddingRequestModel = + CreateEmbeddingRequestModel.text_embedding_ada_002 ) : this(embeddings, Atomic(State.empty()), embeddingRequestModel) override val indexValue: AtomicInt = AtomicInt(0) diff --git a/core/src/commonMain/kotlin/com/xebia/functional/xef/store/MemorizedMessage.kt b/core/src/commonMain/kotlin/com/xebia/functional/xef/store/MemorizedMessage.kt index a8cd2172c..17973250c 100644 --- a/core/src/commonMain/kotlin/com/xebia/functional/xef/store/MemorizedMessage.kt +++ b/core/src/commonMain/kotlin/com/xebia/functional/xef/store/MemorizedMessage.kt @@ -7,8 +7,8 @@ sealed class MemorizedMessage { val role: ChatCompletionRole get() = when (this) { - is Request -> ChatCompletionRole.valueOf(message.completionRole().value) - is Response -> ChatCompletionRole.valueOf(message.role.value) + is Request -> ChatCompletionRole.valueOf(message.completionRole().name) + is Response -> ChatCompletionRole.valueOf(message.role.name) } fun asRequestMessage(): ChatCompletionRequestMessage = @@ -30,7 +30,7 @@ sealed class MemorizedMessage { fun memorizedMessage(role: ChatCompletionRole, content: String): MemorizedMessage = when (role) { - ChatCompletionRole.system -> + ChatCompletionRole.Supported.system -> MemorizedMessage.Request( ChatCompletionRequestMessage.Third( ChatCompletionRequestSystemMessage( @@ -39,7 +39,7 @@ fun memorizedMessage(role: ChatCompletionRole, content: String): MemorizedMessag ) ) ) - ChatCompletionRole.user -> + ChatCompletionRole.Supported.user -> MemorizedMessage.Request( ChatCompletionRequestMessage.Fifth( ChatCompletionRequestUserMessage( @@ -48,13 +48,14 @@ fun memorizedMessage(role: ChatCompletionRole, content: String): MemorizedMessag ) ) ) - ChatCompletionRole.assistant -> + ChatCompletionRole.Supported.assistant -> MemorizedMessage.Response( ChatCompletionResponseMessage( content = content, role = ChatCompletionResponseMessage.Role.assistant ) ) - ChatCompletionRole.tool -> error("Tool messages are not supported") - ChatCompletionRole.function -> error("Function messages are not supported") + ChatCompletionRole.Supported.tool -> error("Tool messages are not supported") + ChatCompletionRole.Supported.function -> error("Function messages are not supported") + is ChatCompletionRole.Custom -> error("Custom messages are not supported") } diff --git a/core/src/commonTest/kotlin/com/xebia/functional/xef/conversation/ConversationSpec.kt b/core/src/commonTest/kotlin/com/xebia/functional/xef/conversation/ConversationSpec.kt index 96bc3f360..30c7883fa 100644 --- a/core/src/commonTest/kotlin/com/xebia/functional/xef/conversation/ConversationSpec.kt +++ b/core/src/commonTest/kotlin/com/xebia/functional/xef/conversation/ConversationSpec.kt @@ -31,7 +31,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._4 + val model = CreateChatCompletionRequestModel.gpt_4 val scope = Conversation( @@ -69,7 +69,7 @@ class ConversationSpec : val vectorStore = scope.store val chatApi = TestChatApi(responses = messages) - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val totalTokens = model.modelType().tokensFromMessages(messages.flatMap(::chatCompletionRequestMessages)) @@ -105,7 +105,7 @@ class ConversationSpec : val vectorStore = scope.store val chatApi = TestChatApi(responses = messages) - val model = CreateChatCompletionRequestModel._3_5_turbo_16k + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo_16k val totalTokens = model.modelType().tokensFromMessages(messages.flatMap(::chatCompletionRequestMessages)) @@ -139,7 +139,7 @@ class ConversationSpec : ) val chatApi = TestChatApi(message) - val model = CreateChatCompletionRequestModel._3_5_turbo_16k + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo_16k val response: Answer = chatApi.prompt( @@ -172,7 +172,7 @@ class ConversationSpec : ) val chatApi = TestChatApi(message) - val model = CreateChatCompletionRequestModel._3_5_turbo_0613 + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo_0613 val response: Answer = chatApi.prompt( @@ -192,7 +192,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val scope = Conversation( @@ -255,7 +255,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) @@ -288,7 +288,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) @@ -317,7 +317,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) @@ -348,7 +348,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) @@ -377,7 +377,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) @@ -409,7 +409,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) @@ -445,7 +445,7 @@ class ConversationSpec : val conversationId = ConversationId(UUID.generateUUID().toString()) val chatApi = TestChatApi() - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo val vectorStore = LocalVectorStore(TestEmbeddings()) diff --git a/core/src/commonTest/kotlin/com/xebia/functional/xef/prompt/PromptBuilderSpec.kt b/core/src/commonTest/kotlin/com/xebia/functional/xef/prompt/PromptBuilderSpec.kt index b0b3a3888..45ee78648 100644 --- a/core/src/commonTest/kotlin/com/xebia/functional/xef/prompt/PromptBuilderSpec.kt +++ b/core/src/commonTest/kotlin/com/xebia/functional/xef/prompt/PromptBuilderSpec.kt @@ -9,7 +9,7 @@ import io.kotest.matchers.shouldBe class PromptBuilderSpec : StringSpec({ - val model = CreateChatCompletionRequestModel._4 + val model = CreateChatCompletionRequestModel.gpt_4 "buildPrompt should return the expected messages" { val messages = Prompt(model) { diff --git a/core/src/commonTest/kotlin/com/xebia/functional/xef/store/CombinedVectorStoreSpec.kt b/core/src/commonTest/kotlin/com/xebia/functional/xef/store/CombinedVectorStoreSpec.kt index 9456c0a41..54cca47ab 100644 --- a/core/src/commonTest/kotlin/com/xebia/functional/xef/store/CombinedVectorStoreSpec.kt +++ b/core/src/commonTest/kotlin/com/xebia/functional/xef/store/CombinedVectorStoreSpec.kt @@ -9,7 +9,7 @@ import io.kotest.matchers.shouldBe class CombinedVectorStoreSpec : StringSpec({ - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo "memories function should return all of messages combined in the right order" { val memoryData = MemoryData() diff --git a/core/src/commonTest/kotlin/com/xebia/functional/xef/store/LocalVectorStoreSpec.kt b/core/src/commonTest/kotlin/com/xebia/functional/xef/store/LocalVectorStoreSpec.kt index a1fd9f407..abc6a22d4 100644 --- a/core/src/commonTest/kotlin/com/xebia/functional/xef/store/LocalVectorStoreSpec.kt +++ b/core/src/commonTest/kotlin/com/xebia/functional/xef/store/LocalVectorStoreSpec.kt @@ -9,7 +9,7 @@ import io.kotest.matchers.shouldBe class LocalVectorStoreSpec : StringSpec({ - val model = CreateChatCompletionRequestModel._3_5_turbo + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo "memories function should return all of messages in the right order when the limit is greater than the number of stored messages" { val localVectorStore = LocalVectorStore(TestEmbeddings()) diff --git a/evaluator/src/main/kotlin/com/xebia/functional/xef/evaluator/SuiteBuilder.kt b/evaluator/src/main/kotlin/com/xebia/functional/xef/evaluator/SuiteBuilder.kt index d0e7ed3fd..2e37ee995 100644 --- a/evaluator/src/main/kotlin/com/xebia/functional/xef/evaluator/SuiteBuilder.kt +++ b/evaluator/src/main/kotlin/com/xebia/functional/xef/evaluator/SuiteBuilder.kt @@ -49,7 +49,7 @@ data class SuiteSpec( } ItemResult(item.input, outputResults) } - val suiteResults = SuiteResults(description, model.value, E::class.simpleName, items) + val suiteResults = SuiteResults(description, model.name, E::class.simpleName, items) export(Json.encodeToString(suiteResults)) return suiteResults } diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/assistants/DSL.kt b/examples/src/main/kotlin/com/xebia/functional/xef/assistants/DSL.kt index 85b155b09..e4314a8f3 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/assistants/DSL.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/assistants/DSL.kt @@ -93,8 +93,8 @@ private fun displayStepsStatus(step: AssistantThread.RunDelta.Step) { val details = step.runStep.stepDetails val type = when (details) { - is RunStepObjectStepDetails.First -> details.value.type.value - is RunStepObjectStepDetails.Second -> details.value.type.value + is RunStepObjectStepDetails.First -> details.value.type.name + is RunStepObjectStepDetails.Second -> details.value.type.name } val calls = when (details) { diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/assistants/LoadFromYamlConfig.kt b/examples/src/main/kotlin/com/xebia/functional/xef/assistants/LoadFromYamlConfig.kt index 97fec651e..2580fb190 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/assistants/LoadFromYamlConfig.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/assistants/LoadFromYamlConfig.kt @@ -51,8 +51,8 @@ suspend fun main() { when (it) { is AssistantThread.RunDelta.ReceivedMessage -> println("received message: ${it.message.content.firstOrNull()}") - is AssistantThread.RunDelta.Run -> println("run: ${it.message.status.value}") - is AssistantThread.RunDelta.Step -> println("step: ${it.runStep.type.value}") + is AssistantThread.RunDelta.Run -> println("run: ${it.message.status.name}") + is AssistantThread.RunDelta.Step -> println("step: ${it.runStep.type.name}") } } } diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/conversation/conversations/Animal.kt b/examples/src/main/kotlin/com/xebia/functional/xef/conversation/conversations/Animal.kt index 7ec770023..212580158 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/conversation/conversations/Animal.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/conversation/conversations/Animal.kt @@ -30,7 +30,7 @@ suspend fun main() { val configNoneFromConversation = PromptConfiguration { messagePolicy { addMessagesFromConversation = MessagesFromHistory.NONE } } - val model = CreateChatCompletionRequestModel._3_5_turbo_16k_0613 + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo_16k_0613 val animal: Animal = AI( Prompt(model) { +user("A unique animal species.") } diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/dsl/audio/SimpleSpeech.kt b/examples/src/main/kotlin/com/xebia/functional/xef/dsl/audio/SimpleSpeech.kt index 9de952a71..5a942d26b 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/dsl/audio/SimpleSpeech.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/dsl/audio/SimpleSpeech.kt @@ -30,7 +30,7 @@ suspend fun main() { val channel = audio.createSpeech( CreateSpeechRequest( - model = CreateSpeechRequestModel._1, + model = CreateSpeechRequestModel.tts_1, input = modelResponse, voice = CreateSpeechRequest.Voice.nova ) diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/dsl/chat/Classes.kt b/examples/src/main/kotlin/com/xebia/functional/xef/dsl/chat/Classes.kt index 7b29debe3..c7d1fa62f 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/dsl/chat/Classes.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/dsl/chat/Classes.kt @@ -26,7 +26,7 @@ data class Book( ) suspend fun books(topic: String): Books { - val model = CreateChatCompletionRequestModel._3_5_turbo_16k_0613 + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo_16k_0613 val myCustomPrompt = Prompt( diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/dsl/classify/AnswerAccuracy.kt b/examples/src/main/kotlin/com/xebia/functional/xef/dsl/classify/AnswerAccuracy.kt index bd9305db5..363ea4275 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/dsl/classify/AnswerAccuracy.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/dsl/classify/AnswerAccuracy.kt @@ -21,7 +21,7 @@ suspend fun main() { input = "Do I love Xef?", output = "I have three opened PRs", context = "The answer responds the question", - model = CreateChatCompletionRequestModel._3_5_turbo_0125 + model = CreateChatCompletionRequestModel.gpt_3_5_turbo_0125 ) ) } diff --git a/examples/src/main/kotlin/com/xebia/functional/xef/evaluator/TestExample.kt b/examples/src/main/kotlin/com/xebia/functional/xef/evaluator/TestExample.kt index 2d5f4e8cf..7cd6adb30 100644 --- a/examples/src/main/kotlin/com/xebia/functional/xef/evaluator/TestExample.kt +++ b/examples/src/main/kotlin/com/xebia/functional/xef/evaluator/TestExample.kt @@ -15,13 +15,13 @@ object TestExample { @JvmStatic fun main(args: Array) = SuspendApp { - val model = CreateChatCompletionRequestModel._3_5_turbo_16k + val model = CreateChatCompletionRequestModel.gpt_3_5_turbo_16k val chat = OpenAI().chat val spec = SuiteSpec( description = "Check GTP3.5 and fake outputs", - model = CreateChatCompletionRequestModel._4_turbo_preview + model = CreateChatCompletionRequestModel.gpt_4_turbo_preview ) { val gpt35Description = OutputDescription("Using GPT3.5") val fakeOutputs = OutputDescription("Fake outputs with errors") diff --git a/integrations/opentelemetry/src/main/kotlin/com/xebia/functional/xef/opentelemetry/OpenTelemetryAssistantState.kt b/integrations/opentelemetry/src/main/kotlin/com/xebia/functional/xef/opentelemetry/OpenTelemetryAssistantState.kt index 5e8581303..c20fc10d7 100644 --- a/integrations/opentelemetry/src/main/kotlin/com/xebia/functional/xef/opentelemetry/OpenTelemetryAssistantState.kt +++ b/integrations/opentelemetry/src/main/kotlin/com/xebia/functional/xef/opentelemetry/OpenTelemetryAssistantState.kt @@ -16,7 +16,7 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { val currentSpan = tracer - .spanBuilder(runObject.status.value) + .spanBuilder(runObject.status.name) .setParent(parentOrRoot) .setSpanKind(SpanKind.CLIENT) .startSpan() @@ -42,7 +42,7 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { return try { val output = block() currentSpan.makeCurrent().use { - currentSpan.updateName(output.status.value) + currentSpan.updateName(output.status.name) output.setParameters(currentSpan) } output @@ -65,7 +65,7 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { return try { val output = block() currentSpan.makeCurrent().use { - currentSpan.updateName("ToolOutput: ${output.status.value}") + currentSpan.updateName("ToolOutput: ${output.status.name}") output.setParameters(currentSpan) } output @@ -90,16 +90,16 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { currentSpan.makeCurrent().use { when (val detail = output.stepDetails) { is RunStepObjectStepDetails.First -> - currentSpan.updateName("Creating message: ${output.status.value}") + currentSpan.updateName("Creating message: ${output.status.name}") is RunStepObjectStepDetails.Second -> currentSpan.updateName( "Tools: ${detail.value.toolCalls.joinToString { when (it) { - is RunStepDetailsToolCallsObjectToolCallsInner.First -> it.value.type.value + is RunStepDetailsToolCallsObjectToolCallsInner.First -> it.value.type.name is RunStepDetailsToolCallsObjectToolCallsInner.Second -> it.value.function.name - is RunStepDetailsToolCallsObjectToolCallsInner.Third -> it.value.type.value + is RunStepDetailsToolCallsObjectToolCallsInner.Third -> it.value.type.name } - }}: ${output.status.value}" + }}: ${output.status.name}" ) } output.setParameters(currentSpan) @@ -154,7 +154,7 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { span.setAttribute("openai.assistant.thread.id", threadId) span.setAttribute("openai.assistant.assistant.id", assistantId) span.setAttribute("openai.assistant.run.id", id) - span.setAttribute("openai.assistant.status", status.value) + span.setAttribute("openai.assistant.status", status.name) usage?.let { span.setAttribute("openai.assistant.usage.totalTokens", it.totalTokens.toString()) span.setAttribute("openai.assistant.usage.completionTokens", it.completionTokens.toString()) @@ -163,12 +163,12 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { } private fun RunStepObject.setParameters(span: Span) { - span.setAttribute("openai.assistant.type", type.value) + span.setAttribute("openai.assistant.type", type.name) span.setAttribute("openai.assistant.thread.id", threadId) span.setAttribute("openai.assistant.assistant.id", assistantId) span.setAttribute("openai.assistant.run.id", runId) span.setAttribute("openai.assistant.runStep.id", id) - span.setAttribute("openai.assistant.status", status.value) + span.setAttribute("openai.assistant.status", status.name) when (val detail = stepDetails) { is RunStepObjectStepDetails.First -> { span.setAttribute( @@ -180,14 +180,14 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { detail.value.toolCalls.forEachIndexed { index, toolCall -> when (toolCall) { is RunStepDetailsToolCallsObjectToolCallsInner.First -> { - span.setAttribute("openai.assistant.toolCalls.$index.type", toolCall.value.type.value) + span.setAttribute("openai.assistant.toolCalls.$index.type", toolCall.value.type.name) span.setAttribute( "openai.assistant.toolCalls.$index.function.name", "code_interpreter" ) } is RunStepDetailsToolCallsObjectToolCallsInner.Second -> { - span.setAttribute("openai.assistant.toolCalls.$index.type", toolCall.value.type.value) + span.setAttribute("openai.assistant.toolCalls.$index.type", toolCall.value.type.name) span.setAttribute( "openai.assistant.toolCalls.$index.function.name", toolCall.value.function.name @@ -198,7 +198,7 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { ) } is RunStepDetailsToolCallsObjectToolCallsInner.Third -> { - span.setAttribute("openai.assistant.toolCalls.$index.type", toolCall.value.type.value) + span.setAttribute("openai.assistant.toolCalls.$index.type", toolCall.value.type.name) span.setAttribute("openai.assistant.toolCalls.$index.function.name", "retrieval") } } @@ -210,7 +210,7 @@ class OpenTelemetryAssistantState(private val tracer: Tracer) { private fun List.setParameters(span: Span) { span.setAttribute("openai.assistant.messages.count", size.toString()) forEach { - span.setAttribute("openai.assistant.messages.${indexOf(it)}.role", it.role.value) + span.setAttribute("openai.assistant.messages.${indexOf(it)}.role", it.role.name) when (val inner = it.content.firstOrNull()) { is MessageObjectContentInner.First -> { span.setAttribute( diff --git a/integrations/postgresql/src/test/kotlin/xef/PGVectorStoreSpec.kt b/integrations/postgresql/src/test/kotlin/xef/PGVectorStoreSpec.kt index 6525a835e..c7e5ab83b 100644 --- a/integrations/postgresql/src/test/kotlin/xef/PGVectorStoreSpec.kt +++ b/integrations/postgresql/src/test/kotlin/xef/PGVectorStoreSpec.kt @@ -39,7 +39,7 @@ class PGVectorStoreSpec : ) ) - val embeddingsRequestModel = CreateEmbeddingRequestModel.ada_002 + val embeddingsRequestModel = CreateEmbeddingRequestModel.text_embedding_ada_002 fun StringSpecScope.pg() = PGVectorStore( @@ -109,7 +109,7 @@ class PGVectorStoreSpec : "the added memories sorted by index should be obtained in the same order" { val memoryData = MemoryData() - val model = CreateChatCompletionRequestModel._4 + val model = CreateChatCompletionRequestModel.gpt_4 val memories = memoryData.generateRandomMessages(10) pg().addMemories(memories) memories.map { Tuple3(it.index, it.conversationId, it.content.asRequestMessage()) } shouldBe diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantFileObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantFileObject.kt index f51264608..97f085abc 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantFileObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantFileObject.kt @@ -35,7 +35,7 @@ data class AssistantFileObject( * Values: assistant_file */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "assistant.file") assistant_file("assistant.file") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantObject.kt index 08087de84..011a18ac0 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantObject.kt @@ -63,7 +63,7 @@ data class AssistantObject( * Values: assistant */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "assistant") assistant("assistant") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsCode.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsCode.kt index 6b9e3000c..e20ebda78 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsCode.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsCode.kt @@ -22,7 +22,7 @@ data class AssistantToolsCode( * Values: code_interpreter */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "code_interpreter") code_interpreter("code_interpreter") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsFunction.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsFunction.kt index a9ff55e12..8a6d0e966 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsFunction.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsFunction.kt @@ -26,7 +26,7 @@ data class AssistantToolsFunction( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsRetrieval.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsRetrieval.kt index 174c6bd62..21e00d265 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsRetrieval.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/AssistantToolsRetrieval.kt @@ -22,7 +22,7 @@ data class AssistantToolsRetrieval( * Values: retrieval */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "retrieval") retrieval("retrieval") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCall.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCall.kt index fd8507310..33714ec14 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCall.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCall.kt @@ -29,7 +29,7 @@ data class ChatCompletionMessageToolCall( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCallChunk.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCallChunk.kt index 7ead4db21..728f6563a 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCallChunk.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionMessageToolCallChunk.kt @@ -31,7 +31,7 @@ data class ChatCompletionMessageToolCallChunk( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionNamedToolChoice.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionNamedToolChoice.kt index 9a8ada8dc..e930ffa6d 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionNamedToolChoice.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionNamedToolChoice.kt @@ -28,7 +28,7 @@ data class ChatCompletionNamedToolChoice( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestAssistantMessage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestAssistantMessage.kt index 9ec409762..869a6c2cf 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestAssistantMessage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestAssistantMessage.kt @@ -40,7 +40,7 @@ data class ChatCompletionRequestAssistantMessage( * Values: assistant */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "assistant") assistant("assistant") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestFunctionMessage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestFunctionMessage.kt index 5aab9c43a..764880a98 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestFunctionMessage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestFunctionMessage.kt @@ -31,7 +31,7 @@ data class ChatCompletionRequestFunctionMessage( * Values: function */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImage.kt index 1dbafbdc6..1c66f6d43 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImage.kt @@ -27,7 +27,7 @@ data class ChatCompletionRequestMessageContentPartImage( * Values: image_url */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "image_url") image_url("image_url") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImageImageUrl.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImageImageUrl.kt index 479454ae4..c48db5755 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImageImageUrl.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartImageImageUrl.kt @@ -30,7 +30,7 @@ data class ChatCompletionRequestMessageContentPartImageImageUrl( * Values: auto,low,high */ @Serializable - enum class Detail(val value: kotlin.String) { + enum class Detail(name: kotlin.String) { @SerialName(value = "auto") auto("auto"), @SerialName(value = "low") low("low"), @SerialName(value = "high") high("high") diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartText.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartText.kt index eea4843e1..83daedf81 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartText.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestMessageContentPartText.kt @@ -27,7 +27,7 @@ data class ChatCompletionRequestMessageContentPartText( * Values: text */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "text") text("text") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestSystemMessage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestSystemMessage.kt index fef42da5f..c26541c2c 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestSystemMessage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestSystemMessage.kt @@ -31,7 +31,7 @@ data class ChatCompletionRequestSystemMessage( * Values: system */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "system") system("system") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestToolMessage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestToolMessage.kt index a71892531..fbd1c66d8 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestToolMessage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestToolMessage.kt @@ -30,7 +30,7 @@ data class ChatCompletionRequestToolMessage( * Values: tool */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "tool") tool("tool") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestUserMessage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestUserMessage.kt index 737902e3c..665f1901a 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestUserMessage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRequestUserMessage.kt @@ -30,7 +30,7 @@ data class ChatCompletionRequestUserMessage( * Values: user */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "user") user("user") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionResponseMessage.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionResponseMessage.kt index d3d148c5b..b7b239990 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionResponseMessage.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionResponseMessage.kt @@ -37,7 +37,7 @@ data class ChatCompletionResponseMessage( * Values: assistant */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "assistant") assistant("assistant") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRole.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRole.kt index f3354068f..68901cced 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRole.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionRole.kt @@ -6,7 +6,11 @@ package com.xebia.functional.openai.generated.model -import com.xebia.functional.openai.generated.model.ChatCompletionRole.Supported.* +import com.xebia.functional.openai.generated.model.ChatCompletionRole.Supported.assistant +import com.xebia.functional.openai.generated.model.ChatCompletionRole.Supported.function +import com.xebia.functional.openai.generated.model.ChatCompletionRole.Supported.system +import com.xebia.functional.openai.generated.model.ChatCompletionRole.Supported.tool +import com.xebia.functional.openai.generated.model.ChatCompletionRole.Supported.user import kotlin.jvm.JvmStatic import kotlinx.serialization.* import kotlinx.serialization.builtins.* @@ -22,27 +26,26 @@ import kotlinx.serialization.encoding.* @Suppress("SERIALIZER_TYPE_INCOMPATIBLE") @Serializable(with = ChatCompletionRoleSerializer::class) sealed interface ChatCompletionRole { - val value: kotlin.String + val name: kotlin.String @Serializable(with = ChatCompletionRoleSerializer::class) - enum class Supported(override val value: kotlin.String) : ChatCompletionRole { - + enum class Supported(name: kotlin.String) : ChatCompletionRole { @SerialName(value = "system") system("system"), @SerialName(value = "user") user("user"), @SerialName(value = "assistant") assistant("assistant"), @SerialName(value = "tool") tool("tool"), @SerialName(value = "function") function("function"); - override fun toString(): kotlin.String = value + override fun toString(): kotlin.String = name } @Serializable(with = ChatCompletionRoleSerializer::class) - data class Custom(override val value: kotlin.String) : ChatCompletionRole + data class Custom(override val name: kotlin.String) : ChatCompletionRole companion object { @JvmStatic - fun fromValue(value: kotlin.String): ChatCompletionRole = - values().firstOrNull { it.value == value } ?: Custom(value) + fun valueOf(name: kotlin.String): ChatCompletionRole = + values().firstOrNull { it.name == name } ?: Custom(name) inline val system: ChatCompletionRole get() = Supported.system @@ -61,7 +64,10 @@ sealed interface ChatCompletionRole { @JvmStatic fun values(): List = Supported.entries - @JvmStatic fun serializer(): KSerializer = ChatCompletionRoleSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // ChatCompletionRoleSerializer } } @@ -71,10 +77,10 @@ private object ChatCompletionRoleSerializer : KSerializer { override fun deserialize(decoder: Decoder): ChatCompletionRole { val value = decoder.decodeSerializableValue(valueSerializer) - return ChatCompletionRole.fromValue(value) + return ChatCompletionRole.valueOf(value) } override fun serialize(encoder: Encoder, value: ChatCompletionRole) { - encoder.encodeSerializableValue(valueSerializer, value.value) + encoder.encodeSerializableValue(valueSerializer, value.name) } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionStreamResponseDelta.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionStreamResponseDelta.kt index 905e06d44..c7a38789f 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionStreamResponseDelta.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionStreamResponseDelta.kt @@ -36,7 +36,7 @@ data class ChatCompletionStreamResponseDelta( * Values: system,user,assistant,tool */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "system") system("system"), @SerialName(value = "user") user("user"), @SerialName(value = "assistant") assistant("assistant"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionTool.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionTool.kt index 3411544ec..4a5d317eb 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionTool.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ChatCompletionTool.kt @@ -26,7 +26,7 @@ data class ChatCompletionTool( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponse.kt index 0fec5bcba..06a75dbc4 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponse.kt @@ -46,7 +46,7 @@ data class CreateChatCompletionFunctionResponse( * Values: chat_completion */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "chat.completion") chat_completion("chat.completion") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponseChoicesInner.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponseChoicesInner.kt index 2c08f756a..26a8da6c6 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponseChoicesInner.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionFunctionResponseChoicesInner.kt @@ -37,7 +37,7 @@ data class CreateChatCompletionFunctionResponseChoicesInner( * Values: stop,length,function_call,content_filter */ @Serializable - enum class FinishReason(val value: kotlin.String) { + enum class FinishReason(name: kotlin.String) { @SerialName(value = "stop") stop("stop"), @SerialName(value = "length") @JsName("length_type") length("length"), @SerialName(value = "function_call") function_call("function_call"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestModel.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestModel.kt index 0747910c4..93cf676dc 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestModel.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestModel.kt @@ -6,7 +6,23 @@ package com.xebia.functional.openai.generated.model -import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.* +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo_0125 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo_0301 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo_0613 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo_1106 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo_16k +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_3_5_turbo_16k_0613 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_0125_preview +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_0314 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_0613 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_1106_preview +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_32k +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_32k_0314 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_32k_0613 +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_turbo_preview +import com.xebia.functional.openai.generated.model.CreateChatCompletionRequestModel.Supported.gpt_4_vision_preview import kotlin.jvm.JvmStatic import kotlinx.serialization.* import kotlinx.serialization.builtins.* @@ -25,11 +41,10 @@ import kotlinx.serialization.encoding.* @Suppress("SERIALIZER_TYPE_INCOMPATIBLE") @Serializable(with = CreateChatCompletionRequestModelSerializer::class) sealed interface CreateChatCompletionRequestModel { - val value: kotlin.String + val name: kotlin.String @Serializable(with = CreateChatCompletionRequestModelSerializer::class) - enum class Supported(override val value: kotlin.String) : CreateChatCompletionRequestModel { - + enum class Supported(name: kotlin.String) : CreateChatCompletionRequestModel { @SerialName(value = "gpt-4-0125-preview") gpt_4_0125_preview("gpt-4-0125-preview"), @SerialName(value = "gpt-4-turbo-preview") gpt_4_turbo_preview("gpt-4-turbo-preview"), @SerialName(value = "gpt-4-1106-preview") gpt_4_1106_preview("gpt-4-1106-preview"), @@ -48,16 +63,16 @@ sealed interface CreateChatCompletionRequestModel { @SerialName(value = "gpt-3.5-turbo-0125") gpt_3_5_turbo_0125("gpt-3.5-turbo-0125"), @SerialName(value = "gpt-3.5-turbo-16k-0613") gpt_3_5_turbo_16k_0613("gpt-3.5-turbo-16k-0613"); - override fun toString(): kotlin.String = value + override fun toString(): kotlin.String = name } @Serializable(with = CreateChatCompletionRequestModelSerializer::class) - data class Custom(override val value: kotlin.String) : CreateChatCompletionRequestModel + data class Custom(override val name: kotlin.String) : CreateChatCompletionRequestModel companion object { @JvmStatic - fun fromValue(value: kotlin.String): CreateChatCompletionRequestModel = - values().firstOrNull { it.value == value } ?: Custom(value) + fun valueOf(name: kotlin.String): CreateChatCompletionRequestModel = + values().firstOrNull { it.name == name } ?: Custom(name) inline val gpt_4_0125_preview: CreateChatCompletionRequestModel get() = Supported.gpt_4_0125_preview @@ -112,9 +127,10 @@ sealed interface CreateChatCompletionRequestModel { @JvmStatic fun values(): List = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateChatCompletionRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateChatCompletionRequestModelSerializer } } @@ -125,10 +141,10 @@ private object CreateChatCompletionRequestModelSerializer : override fun deserialize(decoder: Decoder): CreateChatCompletionRequestModel { val value = decoder.decodeSerializableValue(valueSerializer) - return CreateChatCompletionRequestModel.fromValue(value) + return CreateChatCompletionRequestModel.valueOf(value) } override fun serialize(encoder: Encoder, value: CreateChatCompletionRequestModel) { - encoder.encodeSerializableValue(valueSerializer, value.value) + encoder.encodeSerializableValue(valueSerializer, value.name) } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestResponseFormat.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestResponseFormat.kt index 848eaa382..d04c193de 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestResponseFormat.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionRequestResponseFormat.kt @@ -34,7 +34,7 @@ data class CreateChatCompletionRequestResponseFormat( * Values: text,json_object */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "text") text("text"), @SerialName(value = "json_object") json_object("json_object") } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponse.kt index 3c7d89022..b9ada7c5e 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponse.kt @@ -46,7 +46,7 @@ data class CreateChatCompletionResponse( * Values: chat_completion */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "chat.completion") chat_completion("chat.completion") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponseChoicesInner.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponseChoicesInner.kt index 4e4d14bc7..980168441 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponseChoicesInner.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionResponseChoicesInner.kt @@ -41,7 +41,7 @@ data class CreateChatCompletionResponseChoicesInner( * Values: stop,length,tool_calls,content_filter,function_call */ @Serializable - enum class FinishReason(val value: kotlin.String) { + enum class FinishReason(name: kotlin.String) { @SerialName(value = "stop") stop("stop"), @SerialName(value = "length") @JsName("length_type") length("length"), @SerialName(value = "tool_calls") tool_calls("tool_calls"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponse.kt index 0fb5a392b..ef000e759 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponse.kt @@ -46,7 +46,7 @@ data class CreateChatCompletionStreamResponse( * Values: chat_completion_chunk */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "chat.completion.chunk") chat_completion_chunk("chat.completion.chunk") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponseChoicesInner.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponseChoicesInner.kt index b45bad5c1..abb9eb365 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponseChoicesInner.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateChatCompletionStreamResponseChoicesInner.kt @@ -42,7 +42,7 @@ data class CreateChatCompletionStreamResponseChoicesInner( * Values: stop,length,tool_calls,content_filter,function_call */ @Serializable - enum class FinishReason(val value: kotlin.String) { + enum class FinishReason(name: kotlin.String) { @SerialName(value = "stop") stop("stop"), @SerialName(value = "length") @JsName("length_type") length("length"), @SerialName(value = "tool_calls") tool_calls("tool_calls"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateCompletionRequestModel.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateCompletionRequestModel.kt index 8065b5396..d5533dc2c 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateCompletionRequestModel.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateCompletionRequestModel.kt @@ -6,7 +6,9 @@ package com.xebia.functional.openai.generated.model -import com.xebia.functional.openai.generated.model.CreateCompletionRequestModel.Supported.* +import com.xebia.functional.openai.generated.model.CreateCompletionRequestModel.Supported.babbage_002 +import com.xebia.functional.openai.generated.model.CreateCompletionRequestModel.Supported.davinci_002 +import com.xebia.functional.openai.generated.model.CreateCompletionRequestModel.Supported.gpt_3_5_turbo_instruct import kotlin.jvm.JvmStatic import kotlinx.serialization.* import kotlinx.serialization.builtins.* @@ -24,25 +26,24 @@ import kotlinx.serialization.encoding.* @Suppress("SERIALIZER_TYPE_INCOMPATIBLE") @Serializable(with = CreateCompletionRequestModelSerializer::class) sealed interface CreateCompletionRequestModel { - val value: kotlin.String + val name: kotlin.String @Serializable(with = CreateCompletionRequestModelSerializer::class) - enum class Supported(override val value: kotlin.String) : CreateCompletionRequestModel { - + enum class Supported(name: kotlin.String) : CreateCompletionRequestModel { @SerialName(value = "gpt-3.5-turbo-instruct") gpt_3_5_turbo_instruct("gpt-3.5-turbo-instruct"), @SerialName(value = "davinci-002") davinci_002("davinci-002"), @SerialName(value = "babbage-002") babbage_002("babbage-002"); - override fun toString(): kotlin.String = value + override fun toString(): kotlin.String = name } @Serializable(with = CreateCompletionRequestModelSerializer::class) - data class Custom(override val value: kotlin.String) : CreateCompletionRequestModel + data class Custom(override val name: kotlin.String) : CreateCompletionRequestModel companion object { @JvmStatic - fun fromValue(value: kotlin.String): CreateCompletionRequestModel = - values().firstOrNull { it.value == value } ?: Custom(value) + fun valueOf(name: kotlin.String): CreateCompletionRequestModel = + values().firstOrNull { it.name == name } ?: Custom(name) inline val gpt_3_5_turbo_instruct: CreateCompletionRequestModel get() = Supported.gpt_3_5_turbo_instruct @@ -55,9 +56,10 @@ sealed interface CreateCompletionRequestModel { @JvmStatic fun values(): List = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateCompletionRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateCompletionRequestModelSerializer } } @@ -67,10 +69,10 @@ private object CreateCompletionRequestModelSerializer : KSerializer = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateEmbeddingRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateEmbeddingRequestModelSerializer } } @@ -67,10 +69,10 @@ private object CreateEmbeddingRequestModelSerializer : KSerializer = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateFineTuningJobRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateFineTuningJobRequestModelSerializer } } @@ -67,10 +69,10 @@ private object CreateFineTuningJobRequestModelSerializer : override fun deserialize(decoder: Decoder): CreateFineTuningJobRequestModel { val value = decoder.decodeSerializableValue(valueSerializer) - return CreateFineTuningJobRequestModel.fromValue(value) + return CreateFineTuningJobRequestModel.valueOf(value) } override fun serialize(encoder: Encoder, value: CreateFineTuningJobRequestModel) { - encoder.encodeSerializableValue(valueSerializer, value.value) + encoder.encodeSerializableValue(valueSerializer, value.name) } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateImageEditRequestModel.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateImageEditRequestModel.kt index cf8a2d0fd..452821bdb 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateImageEditRequestModel.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/CreateImageEditRequestModel.kt @@ -6,7 +6,7 @@ package com.xebia.functional.openai.generated.model -import com.xebia.functional.openai.generated.model.CreateImageEditRequestModel.Supported.* +import com.xebia.functional.openai.generated.model.CreateImageEditRequestModel.Supported.dall_e_2 import kotlin.jvm.JvmStatic import kotlinx.serialization.* import kotlinx.serialization.builtins.* @@ -22,32 +22,32 @@ import kotlinx.serialization.encoding.* @Suppress("SERIALIZER_TYPE_INCOMPATIBLE") @Serializable(with = CreateImageEditRequestModelSerializer::class) sealed interface CreateImageEditRequestModel { - val value: kotlin.String + val name: kotlin.String @Serializable(with = CreateImageEditRequestModelSerializer::class) - enum class Supported(override val value: kotlin.String) : CreateImageEditRequestModel { - + enum class Supported(name: kotlin.String) : CreateImageEditRequestModel { @SerialName(value = "dall-e-2") dall_e_2("dall-e-2"); - override fun toString(): kotlin.String = value + override fun toString(): kotlin.String = name } @Serializable(with = CreateImageEditRequestModelSerializer::class) - data class Custom(override val value: kotlin.String) : CreateImageEditRequestModel + data class Custom(override val name: kotlin.String) : CreateImageEditRequestModel companion object { @JvmStatic - fun fromValue(value: kotlin.String): CreateImageEditRequestModel = - values().firstOrNull { it.value == value } ?: Custom(value) + fun valueOf(name: kotlin.String): CreateImageEditRequestModel = + values().firstOrNull { it.name == name } ?: Custom(name) inline val dall_e_2: CreateImageEditRequestModel get() = Supported.dall_e_2 @JvmStatic fun values(): List = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateImageEditRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateImageEditRequestModelSerializer } } @@ -57,10 +57,10 @@ private object CreateImageEditRequestModelSerializer : KSerializer = Supported.entries - @JvmStatic - fun serializer(): KSerializer = CreateImageRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateImageRequestModelSerializer } } @@ -60,10 +62,10 @@ private object CreateImageRequestModelSerializer : KSerializer = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateModerationRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateModerationRequestModelSerializer } } @@ -65,10 +66,10 @@ private object CreateModerationRequestModelSerializer : KSerializer = Supported.entries - @JvmStatic - fun serializer(): KSerializer = CreateSpeechRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateSpeechRequestModelSerializer } } @@ -60,10 +62,10 @@ private object CreateSpeechRequestModelSerializer : KSerializer = Supported.entries - @JvmStatic - fun serializer(): KSerializer = - CreateTranscriptionRequestModelSerializer + // Is this resulting in a recursive loop!? + // @JvmStatic + // fun serializer(): KSerializer = + // CreateTranscriptionRequestModelSerializer } } @@ -58,10 +58,10 @@ private object CreateTranscriptionRequestModelSerializer : override fun deserialize(decoder: Decoder): CreateTranscriptionRequestModel { val value = decoder.decodeSerializableValue(valueSerializer) - return CreateTranscriptionRequestModel.fromValue(value) + return CreateTranscriptionRequestModel.valueOf(value) } override fun serialize(encoder: Encoder, value: CreateTranscriptionRequestModel) { - encoder.encodeSerializableValue(valueSerializer, value.value) + encoder.encodeSerializableValue(valueSerializer, value.name) } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantFileResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantFileResponse.kt index 81a1c645a..31d82d0be 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantFileResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantFileResponse.kt @@ -26,7 +26,7 @@ data class DeleteAssistantFileResponse( /** Values: assistant_file_deleted */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "assistant.file.deleted") assistant_file_deleted("assistant.file.deleted") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantResponse.kt index ad62c3629..7f4ceff2a 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteAssistantResponse.kt @@ -23,7 +23,7 @@ data class DeleteAssistantResponse( /** Values: assistant_deleted */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "assistant.deleted") assistant_deleted("assistant.deleted") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteFileResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteFileResponse.kt index 5f02a2297..40838ac55 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteFileResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteFileResponse.kt @@ -23,7 +23,7 @@ data class DeleteFileResponse( /** Values: file */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "file") file("file") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteMessageResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteMessageResponse.kt index a255e5e7c..fbd6f80a5 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteMessageResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteMessageResponse.kt @@ -23,7 +23,7 @@ data class DeleteMessageResponse( /** Values: thread_message_deleted */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread.message.deleted") thread_message_deleted("thread.message.deleted") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteThreadResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteThreadResponse.kt index f5ff42437..34384b237 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteThreadResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/DeleteThreadResponse.kt @@ -23,7 +23,7 @@ data class DeleteThreadResponse( /** Values: thread_deleted */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread.deleted") thread_deleted("thread.deleted") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Embedding.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Embedding.kt index 215f4cc6d..24c805d0d 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Embedding.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Embedding.kt @@ -35,7 +35,7 @@ data class Embedding( * Values: embedding */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "embedding") embedding("embedding") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJob.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJob.kt index eb146189b..e45a9f7f5 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJob.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJob.kt @@ -70,7 +70,7 @@ data class FineTuningJob( * Values: fine_tuning_job */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "fine_tuning.job") fine_tuning_job("fine_tuning.job") } /** @@ -80,7 +80,7 @@ data class FineTuningJob( * Values: validating_files,queued,running,succeeded,failed,cancelled */ @Serializable - enum class Status(val value: kotlin.String) { + enum class Status(name: kotlin.String) { @SerialName(value = "validating_files") validating_files("validating_files"), @SerialName(value = "queued") queued("queued"), @SerialName(value = "running") running("running"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJobEvent.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJobEvent.kt index db4239174..05f312f7b 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJobEvent.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/FineTuningJobEvent.kt @@ -29,14 +29,14 @@ data class FineTuningJobEvent( /** Values: info,warn,error */ @Serializable - enum class Level(val value: kotlin.String) { + enum class Level(name: kotlin.String) { @SerialName(value = "info") info("info"), @SerialName(value = "warn") warn("warn"), @SerialName(value = "error") error("error") } /** Values: fine_tuning_job_event */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "fine_tuning.job.event") fine_tuning_job_event("fine_tuning.job.event") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFilesResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFilesResponse.kt index 9d41c8dc0..b0b26aad4 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFilesResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFilesResponse.kt @@ -21,7 +21,7 @@ data class ListFilesResponse( /** Values: list */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "list") list("list") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFineTuningJobEventsResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFineTuningJobEventsResponse.kt index 3f4ace665..4ea92a31e 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFineTuningJobEventsResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListFineTuningJobEventsResponse.kt @@ -21,7 +21,7 @@ data class ListFineTuningJobEventsResponse( /** Values: list */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "list") list("list") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListModelsResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListModelsResponse.kt index 3f10cddf0..057d2459f 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListModelsResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListModelsResponse.kt @@ -21,7 +21,7 @@ data class ListModelsResponse( /** Values: list */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "list") list("list") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListPaginatedFineTuningJobsResponse.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListPaginatedFineTuningJobsResponse.kt index 92c68f42d..371fe6605 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListPaginatedFineTuningJobsResponse.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ListPaginatedFineTuningJobsResponse.kt @@ -23,7 +23,7 @@ data class ListPaginatedFineTuningJobsResponse( /** Values: list */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "list") list("list") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentImageFileObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentImageFileObject.kt index 984ccc0ba..5a6642495 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentImageFileObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentImageFileObject.kt @@ -28,7 +28,7 @@ data class MessageContentImageFileObject( * Values: image_file */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "image_file") image_file("image_file") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFileCitationObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFileCitationObject.kt index 1e19e201b..5668ee908 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFileCitationObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFileCitationObject.kt @@ -38,7 +38,7 @@ data class MessageContentTextAnnotationsFileCitationObject( * Values: file_citation */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "file_citation") file_citation("file_citation") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFilePathObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFilePathObject.kt index e1440565d..234a7844e 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFilePathObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextAnnotationsFilePathObject.kt @@ -37,7 +37,7 @@ data class MessageContentTextAnnotationsFilePathObject( * Values: file_path */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "file_path") file_path("file_path") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextObject.kt index b6191d015..2d8d2986a 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageContentTextObject.kt @@ -28,7 +28,7 @@ data class MessageContentTextObject( * Values: text */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "text") text("text") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageFileObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageFileObject.kt index 6042e235a..c99d60a69 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageFileObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageFileObject.kt @@ -36,7 +36,7 @@ data class MessageFileObject( * Values: thread_message_file */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread.message.file") thread_message_file("thread.message.file") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageObject.kt index 4db0c8ac3..41f995573 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/MessageObject.kt @@ -60,7 +60,7 @@ data class MessageObject( * Values: thread_message */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread.message") thread_message("thread.message") } /** @@ -69,7 +69,7 @@ data class MessageObject( * Values: user,assistant */ @Serializable - enum class Role(val value: kotlin.String) { + enum class Role(name: kotlin.String) { @SerialName(value = "user") user("user"), @SerialName(value = "assistant") assistant("assistant") } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Model.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Model.kt index 6ecd73282..ffda32702 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Model.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/Model.kt @@ -35,7 +35,7 @@ data class Model( * Values: model */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "model") model("model") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/OpenAIFile.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/OpenAIFile.kt index 575c8731c..24c830a24 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/OpenAIFile.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/OpenAIFile.kt @@ -54,7 +54,7 @@ data class OpenAIFile( * Values: file */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "file") file("file") } /** @@ -64,7 +64,7 @@ data class OpenAIFile( * Values: fine_tune,fine_tune_results,assistants,assistants_output */ @Serializable - enum class Purpose(val value: kotlin.String) { + enum class Purpose(name: kotlin.String) { @SerialName(value = "fine-tune") fine_tune("fine-tune"), @SerialName(value = "fine-tune-results") fine_tune_results("fine-tune-results"), @SerialName(value = "assistants") assistants("assistants"), @@ -77,7 +77,7 @@ data class OpenAIFile( * Values: uploaded,processed,error */ @Serializable - enum class Status(val value: kotlin.String) { + enum class Status(name: kotlin.String) { @SerialName(value = "uploaded") uploaded("uploaded"), @SerialName(value = "processed") processed("processed"), @SerialName(value = "error") error("error") diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObject.kt index 9cdabbf6d..111767b23 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObject.kt @@ -87,7 +87,7 @@ data class RunObject( * Values: thread_run */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread.run") thread_run("thread.run") } /** @@ -97,7 +97,7 @@ data class RunObject( * Values: queued,in_progress,requires_action,cancelling,cancelled,failed,completed,expired */ @Serializable - enum class Status(val value: kotlin.String) { + enum class Status(name: kotlin.String) { @SerialName(value = "queued") queued("queued"), @SerialName(value = "in_progress") in_progress("in_progress"), @SerialName(value = "requires_action") requires_action("requires_action"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectLastError.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectLastError.kt index a777f8ed9..9be8b95ab 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectLastError.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectLastError.kt @@ -29,7 +29,7 @@ data class RunObjectLastError( * Values: server_error,rate_limit_exceeded */ @Serializable - enum class Code(val value: kotlin.String) { + enum class Code(name: kotlin.String) { @SerialName(value = "server_error") server_error("server_error"), @SerialName(value = "rate_limit_exceeded") rate_limit_exceeded("rate_limit_exceeded") } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectRequiredAction.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectRequiredAction.kt index 6daa289c9..d6c3b338c 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectRequiredAction.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunObjectRequiredAction.kt @@ -29,7 +29,7 @@ data class RunObjectRequiredAction( * Values: submit_tool_outputs */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "submit_tool_outputs") submit_tool_outputs("submit_tool_outputs") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsMessageCreationObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsMessageCreationObject.kt index fcc158497..864820a17 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsMessageCreationObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsMessageCreationObject.kt @@ -29,7 +29,7 @@ data class RunStepDetailsMessageCreationObject( * Values: message_creation */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "message_creation") message_creation("message_creation") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeObject.kt index c4e48960b..d485e43ba 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeObject.kt @@ -34,7 +34,7 @@ data class RunStepDetailsToolCallsCodeObject( * Values: code_interpreter */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "code_interpreter") code_interpreter("code_interpreter") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputImageObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputImageObject.kt index 41efcffac..88cfbbb47 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputImageObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputImageObject.kt @@ -26,7 +26,7 @@ data class RunStepDetailsToolCallsCodeOutputImageObject( * Values: image */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "image") image("image") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputLogsObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputLogsObject.kt index e47df46bf..24e11a9ac 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputLogsObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsCodeOutputLogsObject.kt @@ -29,7 +29,7 @@ data class RunStepDetailsToolCallsCodeOutputLogsObject( * Values: logs */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "logs") logs("logs") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsFunctionObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsFunctionObject.kt index ac540fdc2..f6ffd5f06 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsFunctionObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsFunctionObject.kt @@ -30,7 +30,7 @@ data class RunStepDetailsToolCallsFunctionObject( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsObject.kt index 9112701bc..aa81fb1a5 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsObject.kt @@ -31,7 +31,7 @@ data class RunStepDetailsToolCallsObject( * Values: tool_calls */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "tool_calls") tool_calls("tool_calls") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsRetrievalObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsRetrievalObject.kt index 71b6e5a29..93de47d31 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsRetrievalObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepDetailsToolCallsRetrievalObject.kt @@ -31,7 +31,7 @@ data class RunStepDetailsToolCallsRetrievalObject( * Values: retrieval */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "retrieval") retrieval("retrieval") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObject.kt index 58338d064..937e51d07 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObject.kt @@ -73,7 +73,7 @@ data class RunStepObject( * Values: thread_run_step */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread.run.step") thread_run_step("thread.run.step") } /** @@ -82,7 +82,7 @@ data class RunStepObject( * Values: message_creation,tool_calls */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "message_creation") message_creation("message_creation"), @SerialName(value = "tool_calls") tool_calls("tool_calls") } @@ -93,7 +93,7 @@ data class RunStepObject( * Values: in_progress,cancelled,failed,completed,expired */ @Serializable - enum class Status(val value: kotlin.String) { + enum class Status(name: kotlin.String) { @SerialName(value = "in_progress") in_progress("in_progress"), @SerialName(value = "cancelled") cancelled("cancelled"), @SerialName(value = "failed") failed("failed"), diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObjectLastError.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObjectLastError.kt index 83a6e6537..9da64c5e6 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObjectLastError.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunStepObjectLastError.kt @@ -29,7 +29,7 @@ data class RunStepObjectLastError( * Values: server_error,rate_limit_exceeded */ @Serializable - enum class Code(val value: kotlin.String) { + enum class Code(name: kotlin.String) { @SerialName(value = "server_error") server_error("server_error"), @SerialName(value = "rate_limit_exceeded") rate_limit_exceeded("rate_limit_exceeded") } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunToolCallObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunToolCallObject.kt index bbfe2fa23..be8dc9464 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunToolCallObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/RunToolCallObject.kt @@ -32,7 +32,7 @@ data class RunToolCallObject( * Values: function */ @Serializable - enum class Type(val value: kotlin.String) { + enum class Type(name: kotlin.String) { @SerialName(value = "function") function("function") } } diff --git a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ThreadObject.kt b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ThreadObject.kt index 25ba1a199..afa58f9bd 100644 --- a/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ThreadObject.kt +++ b/openai-client/client/src/commonMain/kotlin/com/xebia/functional/openai/generated/model/ThreadObject.kt @@ -37,7 +37,7 @@ data class ThreadObject( * Values: thread */ @Serializable - enum class `Object`(val value: kotlin.String) { + enum class `Object`(name: kotlin.String) { @SerialName(value = "thread") thread("thread") } } diff --git a/openai-client/generator/config/data_class.mustache b/openai-client/generator/config/data_class.mustache index 5249e3f43..67fd67027 100644 --- a/openai-client/generator/config/data_class.mustache +++ b/openai-client/generator/config/data_class.mustache @@ -42,7 +42,7 @@ import kotlinx.serialization.encoding.Encoder * Values: {{#allowableValues}}{{#enumVars}}{{&name}}{{^-last}},{{/-last}}{{/enumVars}}{{/allowableValues}} */ @Serializable{{#enumUnknownDefaultCase}}(with = {{classname}}Serializer::class){{/enumUnknownDefaultCase}} - {{#nonPublicApi}}internal {{/nonPublicApi}}enum class {{{nameInCamelCase}}}(val value: {{^isContainer}}{{dataType}}{{/isContainer}}{{#isContainer}}kotlin.String{{/isContainer}}) { + {{#nonPublicApi}}internal {{/nonPublicApi}}enum class {{{nameInCamelCase}}}({{#isContainer}}val value: {{dataType}}{{/isContainer}}{{^isContainer}}name: kotlin.String{{/isContainer}}) { {{#allowableValues}} {{#enumVars}} @SerialName(value = {{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}}) {{#lambda.jsname}}{{&name}}{{/lambda.jsname}}({{{value}}}){{^-last}},{{/-last}}{{#-last}};{{/-last}} diff --git a/openai-client/generator/config/enum_class.mustache b/openai-client/generator/config/enum_class.mustache index 2835ae471..a1be439a3 100644 --- a/openai-client/generator/config/enum_class.mustache +++ b/openai-client/generator/config/enum_class.mustache @@ -2,7 +2,8 @@ import kotlinx.serialization.builtins.* import kotlinx.serialization.encoding.* import kotlin.jvm.JvmStatic -import com.xebia.functional.openai.generated.model.{{classname}}.Supported.* +{{#allowableValues}}{{#enumVars}}import com.xebia.functional.openai.generated.model.{{classname}}.Supported.{{#lambda.unquote}}{{&value}}{{/lambda.unquote}} +{{/enumVars}}{{/allowableValues}} /** * {{{description}}} @@ -14,23 +15,22 @@ import com.xebia.functional.openai.generated.model.{{classname}}.Supported.* @Suppress("SERIALIZER_TYPE_INCOMPATIBLE") @Serializable(with = {{classname}}Serializer::class) sealed interface {{classname}} { - val value: {{{dataType}}} + {{^isString}}val value: {{{dataType}}}{{/isString}}{{#isString}}val name: kotlin.String{{/isString}} @Serializable(with = {{classname}}Serializer::class) - enum class Supported(override val value: {{{dataType}}}) : {{classname}} { - {{#allowableValues}}{{#enumVars}} - @SerialName(value = {{{value}}}) {{#lambda.unquote}}{{&value}}{{/lambda.unquote}}({{#isArray}}{{#isList}}listOf({{{value}}})){{/isList}}{{^isList}}arrayOf({{{value}}})){{/isList}}{{/isArray}}{{^isArray}}{{#isString}}{{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}}{{/isString}}{{^isString}}{{{value}}}{{/isString}}{{/isArray}}){{^-last}},{{/-last}}{{#-last}};{{/-last}}{{/enumVars}}{{/allowableValues}} + enum class Supported({{^isString}}override val value: {{{dataType}}}{{/isString}}{{#isString}}name: kotlin.String{{/isString}}) : {{classname}} { + {{#allowableValues}}{{#enumVars}}@SerialName(value = {{{value}}}) {{#lambda.unquote}}{{&value}}{{/lambda.unquote}}({{#isArray}}{{#isList}}listOf({{{value}}})){{/isList}}{{^isList}}arrayOf({{{value}}})){{/isList}}{{/isArray}}{{^isArray}}{{#isString}}{{#lambda.doublequote}}{{{value}}}{{/lambda.doublequote}}{{/isString}}{{^isString}}{{{value}}}{{/isString}}{{/isArray}}){{^-last}},{{/-last}}{{#-last}};{{/-last}}{{/enumVars}}{{/allowableValues}} - override fun toString(): kotlin.String = value{{^isString}}.toString(){{/isString}} + override fun toString(): kotlin.String = {{^isString}}value.toString(){{/isString}}{{#isString}}name{{/isString}} } @Serializable(with = {{classname}}Serializer::class) - data class Custom(override val value: kotlin.String) : {{classname}} + data class Custom(override val {{^isString}}value: {{{datatype}}}{{/isString}}{{#isString}}name: kotlin.String{{/isString}}) : {{classname}} companion object { @JvmStatic - fun fromValue(value: {{{dataType}}}): {{classname}} = - values().firstOrNull { it.value == value } ?: Custom(value) + fun valueOf({{^isString}}value{{/isString}}{{#isString}}name{{/isString}}: {{{dataType}}}): {{classname}} = + values().firstOrNull { it.name == name } ?: Custom(name) {{#allowableValues}}{{#enumVars}} inline val {{#lambda.unquote}}{{&value}}{{/lambda.unquote}}: {{classname}} @@ -38,11 +38,6 @@ sealed interface {{classname}} { {{/enumVars}}{{/allowableValues}} @JvmStatic fun values(): List<{{classname}}> = Supported.entries - - @JvmStatic - fun serializer(): KSerializer<{{classname}}> = - {{classname}}Serializer - } } private object {{classname}}Serializer : KSerializer<{{classname}}> { @@ -51,11 +46,11 @@ private object {{classname}}Serializer : KSerializer<{{classname}}> { override fun deserialize(decoder: Decoder): {{classname}} { val value = decoder.decodeSerializableValue(valueSerializer) - return {{classname}}.fromValue(value) + return {{classname}}.valueOf(value) } override fun serialize(encoder: Encoder, value: {{classname}}) { - encoder.encodeSerializableValue(valueSerializer, value.value) + encoder.encodeSerializableValue(valueSerializer, value.{{^isString}}value{{/isString}}{{#isString}}name{{/isString}}) } } {{/isEnum}} \ No newline at end of file diff --git a/server/src/main/kotlin/com/xebia/functional/xef/server/services/PostgresVectorStoreService.kt b/server/src/main/kotlin/com/xebia/functional/xef/server/services/PostgresVectorStoreService.kt index 639c1b968..f21cc19cb 100644 --- a/server/src/main/kotlin/com/xebia/functional/xef/server/services/PostgresVectorStoreService.kt +++ b/server/src/main/kotlin/com/xebia/functional/xef/server/services/PostgresVectorStoreService.kt @@ -22,7 +22,7 @@ class PostgresVectorStoreService( private val chunkSize: Int = 400, private val distanceStrategy: PGDistanceStrategy = PGDistanceStrategy.Euclidean, private val embeddingRequestModel: CreateEmbeddingRequestModel = - CreateEmbeddingRequestModel.ada_002 + CreateEmbeddingRequestModel.text_embedding_3_small ) : VectorStoreService() { fun addCollection() {