package com.yaoai.ai.core.service;

import com.yaoai.ai.core.model.ChatMessage;
import com.yaoai.ai.core.model.ChatRequest;

import java.util.List;

public interface LlmService {

    /**
     * 发起一次对话，返回模型回复文本
     */
    String chat(ChatRequest request);

    /**
     * 快捷方式：system prompt + user 消息，使用默认模型
     */
    default String chat(String systemPrompt, String userMessage) {
        return chat(ChatRequest.builder()
                .messages(List.of(
                        ChatMessage.system(systemPrompt),
                        ChatMessage.user(userMessage)))
                .build());
    }

    /** 默认文本模型 ID，用于计费明细 */
    String getModelId();

    /** 模型展示名称，用于计费明细 */
    String getModelName();

    /** Provider 标识，例：volcengine / qwen / openai */
    String getProvider();
}
