package com.ai.da.service;

import com.ai.da.common.response.PageBaseResponse;
import com.ai.da.mapper.primary.entity.ChatMessage;
import com.ai.da.model.dto.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.mvc.method.annotation.SseEmitter;

import java.util.List;

/**
 * 服务类
 *
 * @author easy-generator
 * @since 2022-08-11
 */
public interface LLMService {

    SseEmitter stream(String prompt, Long projectId, String fileUrl, List<String> imageUrlList, String token, Boolean enableThinking, String process);

    Long chatCreateProject(String prompt, String process, String fileUrl, List<String> imageUrlList);

    List<String> uploadFile(MultipartFile file);

    PageBaseResponse<ChatMessage> getChatHistory(ChatHistoryDTO chatHistoryDTO);

    SseEmitter streamNew(String prompt, Long projectId, String fileUrl, List<String> imageUrlList, String token, Boolean enableThinking, String process);
}
