@@ -46,7 +46,8 @@ interface GPT4All : AutoCloseable, Chat, Completion {
46
46
47
47
override suspend fun createCompletion (request : CompletionRequest ): CompletionResult =
48
48
with (request) {
49
- val response: String = generateCompletion(prompt, generationConfig)
49
+ val response: String =
50
+ gpt4allModel.prompt(messages.buildPrompt(), llmModelContext(generationConfig))
50
51
return CompletionResult (
51
52
UUID .randomUUID().toString(),
52
53
path.name,
@@ -59,8 +60,8 @@ interface GPT4All : AutoCloseable, Chat, Completion {
59
60
60
61
override suspend fun createChatCompletion (request : ChatCompletionRequest ): ChatCompletionResponse =
61
62
with (request) {
62
- val prompt : String = messages.buildPrompt()
63
- val response : String = generateCompletion( prompt, generationConfig)
63
+ val response : String =
64
+ gpt4allModel. prompt(messages.buildPrompt(), llmModelContext( generationConfig) )
64
65
return ChatCompletionResponse (
65
66
UUID .randomUUID().toString(),
66
67
path.name,
@@ -71,9 +72,7 @@ interface GPT4All : AutoCloseable, Chat, Completion {
71
72
)
72
73
}
73
74
74
- override fun tokensFromMessages (messages : List <Message >): Int {
75
- return 0
76
- }
75
+ override fun tokensFromMessages (messages : List <Message >): Int = 0
77
76
78
77
override val name: String = path.name
79
78
@@ -92,31 +91,25 @@ interface GPT4All : AutoCloseable, Chat, Completion {
92
91
return " $messages \n ### Response:"
93
92
}
94
93
95
- private fun generateCompletion (
96
- prompt : String ,
97
- generationConfig : GenerationConfig
98
- ): String {
99
- val context = LLModelContext (
100
- logits_size = LibCAPI .size_t(generationConfig.logitsSize.toLong()),
101
- tokens_size = LibCAPI .size_t(generationConfig.tokensSize.toLong()),
102
- n_past = generationConfig.nPast,
103
- n_ctx = generationConfig.nCtx,
104
- n_predict = generationConfig.nPredict,
105
- top_k = generationConfig.topK,
106
- top_p = generationConfig.topP.toFloat(),
107
- temp = generationConfig.temp.toFloat(),
108
- n_batch = generationConfig.nBatch,
109
- repeat_penalty = generationConfig.repeatPenalty.toFloat(),
110
- repeat_last_n = generationConfig.repeatLastN,
111
- context_erase = generationConfig.contextErase.toFloat()
112
- )
113
-
114
- return gpt4allModel.prompt(prompt, context)
115
- }
94
+ private fun llmModelContext (generationConfig : GenerationConfig ): String =
95
+ with (generationConfig) {
96
+ LLModelContext (
97
+ logits_size = LibCAPI .size_t(logitsSize.toLong()),
98
+ tokens_size = LibCAPI .size_t(tokensSize.toLong()),
99
+ n_past = nPast,
100
+ n_ctx = nCtx,
101
+ n_predict = nPredict,
102
+ top_k = topK,
103
+ top_p = topP.toFloat(),
104
+ temp = temp.toFloat(),
105
+ n_batch = nBatch,
106
+ repeat_penalty = repeatPenalty.toFloat(),
107
+ repeat_last_n = repeatLastN,
108
+ context_erase = contextErase.toFloat()
109
+ )
110
+ }
116
111
}
117
112
118
-
119
113
}
120
114
}
121
115
122
-
0 commit comments