У меня есть контроллер < /p>
@GetMapping(value = "/stream", produces = MediaType.TEXT_EVENT_STREAM_VALUE)
public Flux streamChat(
@RequestParam String question,
@RequestParam String chatId,
Principal principal) {
return reactiveService.processChatMessageReactive(question, chatId, principal.getName())
.flatMapMany(currentHistory -> chatClient
.prompt(new Prompt(currentHistory.toString()))
.user(CURRENT_PROMPT_INSTRUCTIONS.concat(question))
.advisors(advisor -> advisor.param(ChatMemory.CONVERSATION_ID, chatId))
.stream()
.content()
.map(chunk -> new ChunkResponseDTO(chunk, false, null))
.doOnNext(chunk -> chatMessageService.saveChunk(chatId, chunk.content()))
.doOnComplete(() -> {
String response = chatMessageService.saveAiResponse(chatId);
currentHistory.add(new UserMessage(CURRENT_PROMPT_INSTRUCTIONS.concat(question)));
currentHistory.add(new AssistantMessage(response));
})
.concatWith(Mono.just(new ChunkResponseDTO("[END]", true, null)))
)
// .publishOn(Schedulers.boundedElastic())
.onErrorResume(LimitExceededException.class, e -> Mono.fromCallable(() -> {
chatRoomService.setInactive(chatId);
return null;
})
.subscribeOn(Schedulers.boundedElastic())
.thenReturn(new ChunkResponseDTO(e.getMessage(), true, LIMIT_EXCEEDED.name()
))
.flux())
.onErrorResume(e -> {
return Flux.empty();
});
}
< /code>
Сначала он работает хорошо, затем метаданные добавляются в конце или начале сообщения.
Я не могу понять, почему.
, а иногда поколение может застрять в цикле.
может дать мне несколько советов? < /p>
Подробнее здесь: https://stackoverflow.com/questions/796 ... ith-ollama
Поток Spring Boot Ai + с Ollama ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Использование Haystack и Ollama. ModuleNotFoundError: нет модуля с именем «ollama».
Anonymous » » в форуме Python - 0 Ответы
- 25 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Использование Haystack и Ollama. ModuleNotFoundError: нет модуля с именем «ollama».
Anonymous » » в форуме Python - 0 Ответы
- 45 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Не удалось найти org.springframework.ai:spring-ai-ollama-spring-boot-starter.
Anonymous » » в форуме JAVA - 0 Ответы
- 60 Просмотры
-
Последнее сообщение Anonymous
-