From 9d4fff4e537e4cc74ef14023c136fea966a274f9 Mon Sep 17 00:00:00 2001 From: bossanyit Date: Sat, 29 Apr 2023 18:00:59 +0200 Subject: [PATCH] v1.2.5.1 gpt-4 possible --- Dockerfile | 11 +++++++++++ build.gradle.kts | 2 +- build_api_test | 1 + .../aitrainer/api/controller/OpenAIController.kt | 1 - .../com/aitrainer/api/openai/OpenAIService.kt | 13 +++++++++---- 5 files changed, 22 insertions(+), 6 deletions(-) create mode 100644 Dockerfile create mode 100644 build_api_test diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..17297ef --- /dev/null +++ b/Dockerfile @@ -0,0 +1,11 @@ +FROM openjdk:18 +RUN mkdir diet4you +RUN mkdir diet4you/data +RUN mkdir diet4you/data/db +COPY update*.sql ./diet4you/data/db/ +RUN cd diet4you +COPY aitrainer_server.jar ./diet4you/ +WORKDIR /diet4you + +ENV PORT=8843 +EXPOSE 8843 \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index 79bd81b..2179f68 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -48,7 +48,7 @@ dependencies { implementation("jakarta.mail:jakarta.mail-api:2.1.1") implementation("org.eclipse.angus:angus-mail:2.0.1") - implementation ("com.aallam.openai:openai-client:3.0.0") + implementation ("com.aallam.openai:openai-client:3.2.2") implementation("io.ktor:ktor-client-java:2.2.3") runtimeOnly("mysql:mysql-connector-java") diff --git a/build_api_test b/build_api_test new file mode 100644 index 0000000..6429af5 --- /dev/null +++ b/build_api_test @@ -0,0 +1 @@ +docker build --no-cache -t diet4you_api_test -f Dockerfile . \ No newline at end of file diff --git a/src/main/kotlin/com/aitrainer/api/controller/OpenAIController.kt b/src/main/kotlin/com/aitrainer/api/controller/OpenAIController.kt index 0fcd29c..4370bfa 100644 --- a/src/main/kotlin/com/aitrainer/api/controller/OpenAIController.kt +++ b/src/main/kotlin/com/aitrainer/api/controller/OpenAIController.kt @@ -24,7 +24,6 @@ class OpenAIController() { } runBlocking { result = deferred.await() - //println("Result: $result" ) } return result } diff --git a/src/main/kotlin/com/aitrainer/api/openai/OpenAIService.kt b/src/main/kotlin/com/aitrainer/api/openai/OpenAIService.kt index 5917d83..bb2cebd 100644 --- a/src/main/kotlin/com/aitrainer/api/openai/OpenAIService.kt +++ b/src/main/kotlin/com/aitrainer/api/openai/OpenAIService.kt @@ -36,6 +36,7 @@ class OpenAIService(@Value("\${openai.key}") private val openaiKey: String, priv /* models: gpt-3.5-turbo chat/completion + gpt-4-0314 chat/completion text-davinci-003 completion */ @@ -79,10 +80,10 @@ class OpenAIService(@Value("\${openai.key}") private val openaiKey: String, priv lengthQuestion += message.content.length } - val realModelName = "gpt-3.5-turbo" - /*if ( modelName != null) { + var realModelName = "gpt-3.5-turbo" + if ( modelName != null) { realModelName = modelName - }*/ + } var realTemperature = 0.1 if ( temperature != null ) { realTemperature = temperature @@ -90,11 +91,15 @@ class OpenAIService(@Value("\${openai.key}") private val openaiKey: String, priv if (openAI == null) { connect(realModelName) } + var tokens = 4096 + if (realModelName.contains("gpt-4")) { + tokens = 8192 + } println("OpenAI Chat Last Question: $lastQuestion") val completionRequest = ChatCompletionRequest( model = ModelId(realModelName), messages = messages, - maxTokens = 4096 - lengthQuestion, + maxTokens = tokens - lengthQuestion, temperature = realTemperature, ) val completion: ChatCompletion = openAI!!.chatCompletion(completionRequest)