package com.guo.learningprogresstracker.service.impl; import com.guo.learningprogresstracker.entity.StudyReportsEntity; import com.guo.learningprogresstracker.entity.TaskApplicationEntity; import com.guo.learningprogresstracker.entity.TaskEntity; import com.guo.learningprogresstracker.service.MindMapAiClient; import com.guo.learningprogresstracker.utils.MindMapNode; import com.guo.learningprogresstracker.utils.MindMapTreeTool; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; /** * 远程 AI 思维导图生成客户端。 *
通过 lpt-ai 服务({@code lpt.ai-service.url})调用大语言模型生成思维导图。 * 未配置 lpt-ai 时不可用,会回退到 {@link BuiltinMindMapGenerator}。
*/ @Slf4j @Component @RequiredArgsConstructor public class RemoteAiMindMapClient implements MindMapAiClient { private final AiServiceClient aiServiceClient; @Override public boolean isAvailable() { return aiServiceClient.isConfigured(); } @Override public String generatorName() { return "AI"; } @Override public Optional