Files
backend/src/main/java/com/yundage/chat/service/LLMService.java

32 lines
1.1 KiB
Java
Raw Normal View History

package com.yundage.chat.service;
import java.util.Map;
import java.util.function.Consumer;
/**
* 大语言模型服务接口
* 定义与大语言模型交互的通用方法方便替换不同的模型实现
*/
public interface LLMService {
/**
* 处理流式文本生成请求
* @param userMessage 用户消息
* @param parameters 额外的参数如温度最大长度等
* @param callback 接收每个文本块的回调函数
* @param onComplete 完成时的回调函数
* @param onError 错误时的回调函数
*/
void streamGenerateText(String userMessage,
Map<String, Object> parameters,
Consumer<String> callback,
Runnable onComplete,
Consumer<Throwable> onError);
/**
* 处理非流式文本生成请求
* @param userMessage 用户消息
* @param parameters 额外的参数如温度最大长度等
* @return 生成的文本
*/
String generateText(String userMessage, Map<String, Object> parameters);
}