Add initial project with simple chat using openchat-3.5-0106.Q4_K_M.gguf model
This commit is contained in:
33
src/main/java/com/pablotj/ia/chat/boot/PromptBuilder.java
Normal file
33
src/main/java/com/pablotj/ia/chat/boot/PromptBuilder.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package com.pablotj.ia.chat.boot;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class PromptBuilder {
|
||||
|
||||
private final String systemPrompt;
|
||||
private final List<String> turns = new ArrayList<>();
|
||||
|
||||
public PromptBuilder(String systemPrompt) {
|
||||
this.systemPrompt = systemPrompt;
|
||||
}
|
||||
|
||||
public void user(String message) {
|
||||
turns.add("GPT4 Correct User: " + message + "<|end_of_turn|>");
|
||||
}
|
||||
|
||||
public void assistant(String message) {
|
||||
turns.add("GPT4 Correct Assistant: " + message + "<|end_of_turn|>");
|
||||
}
|
||||
|
||||
public String build() {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
sb.append(systemPrompt).append("<|end_of_turn|>\n");
|
||||
for (String turn : turns) {
|
||||
sb.append(turn).append("\n");
|
||||
}
|
||||
// Deja el último turno preparado para que el modelo continúe como "Assistant"
|
||||
sb.append("GPT4 Correct Assistant: ");
|
||||
return sb.toString();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user