#
Junjie
3 天以前 1b8a4677f362d234d834120deac4880d7ae89a50
src/main/java/com/zy/ai/utils/AiPromptUtils.java
@@ -42,11 +42,11 @@
                    "你是一名资深 WCS(仓储控制系统)与自动化立库专家,熟悉:堆垛机、输送线、提升机、穿梭车等设备的任务分配和运行逻辑,也熟悉常见的系统卡死、任务不执行、设备空闲但无任务等问题模式。");
            blocks.put(AiPromptBlockType.TOOL_POLICY,
                    "你可以按需调用系统提供的工具以获取实时数据与上下文(工具返回 JSON):\n" +
                            "- 任务:task_query\n" +
                            "- 设备实时状态:device_get_crn_status / device_get_station_status / device_get_rgv_status\n" +
                            "- 日志:log_query\n" +
                            "- 设备配置:config_get_device_config\n" +
                            "- 系统配置:config_get_system_config\n\n" +
                            "- 任务:" + localTool("task_query") + "\n" +
                            "- 设备实时状态:" + localTool("device_get_crn_status") + " / " + localTool("device_get_station_status") + " / " + localTool("device_get_rgv_status") + "\n" +
                            "- 日志:" + localTool("log_query") + "\n" +
                            "- 设备配置:" + localTool("config_get_device_config") + "\n" +
                            "- 系统配置:" + localTool("config_get_system_config") + "\n\n" +
                            "使用策略:\n" +
                            "1)避免臆测。如信息不足,先调用相应工具收集必要数据;可多轮调用。\n" +
                            "2)对工具返回的 JSON 先进行结构化归纳,提炼关键字段,再做推理。\n" +
@@ -82,16 +82,16 @@
                            "4. **工具返回的数据是事实依据,必须引用其关键信息进行推理。**\n\n" +
                            "==================== 可用工具(返回 JSON) ====================\n\n" +
                            "【任务相关】\n" +
                            "- task_query:按任务号、状态、设备、条码、库位等条件查询任务\n" +
                            "- " + localTool("task_query") + ":按任务号、状态、设备、条码、库位等条件查询任务\n" +
                            "\n【设备实时状态】\n" +
                            "- device_get_crn_status:堆垛机实时状态\n" +
                            "- device_get_station_status:工位实时状态\n" +
                            "- device_get_rgv_status:RGV / 穿梭车实时状态\n" +
                            "- " + localTool("device_get_crn_status") + ":堆垛机实时状态\n" +
                            "- " + localTool("device_get_station_status") + ":工位实时状态\n" +
                            "- " + localTool("device_get_rgv_status") + ":RGV / 穿梭车实时状态\n" +
                            "\n【日志】\n" +
                            "- log_query:查询系统/设备日志\n" +
                            "- " + localTool("log_query") + ":查询系统/设备日志\n" +
                            "\n【配置】\n" +
                            "- config_get_device_config:设备配置\n" +
                            "- config_get_system_config:系统级配置");
                            "- " + localTool("config_get_device_config") + ":设备配置\n" +
                            "- " + localTool("config_get_system_config") + ":系统级配置");
            blocks.put(AiPromptBlockType.OUTPUT_CONTRACT,
                    "==================== 输出要求 ====================\n\n" +
                            "- 使用**简洁、明确的中文**\n" +
@@ -147,11 +147,11 @@
    public String getAiDiagnosePromptMcp() {
        String prompt = "你是一名资深 WCS(仓储控制系统)与自动化立库专家,熟悉:堆垛机、输送线、提升机、穿梭车等设备的任务分配和运行逻辑,也熟悉常见的系统卡死、任务不执行、设备空闲但无任务等问题模式。\n\n" +
                "你可以按需调用系统提供的工具以获取实时数据与上下文(工具返回 JSON):\n" +
                "- 任务:task_query\n" +
                "- 设备实时状态:device_get_crn_status / device_get_station_status / device_get_rgv_status\n" +
                "- 日志:log_query\n" +
                "- 设备配置:config_get_device_config\n" +
                "- 系统配置:config_get_system_config\n\n" +
                "- 任务:" + localTool("task_query") + "\n" +
                "- 设备实时状态:" + localTool("device_get_crn_status") + " / " + localTool("device_get_station_status") + " / " + localTool("device_get_rgv_status") + "\n" +
                "- 日志:" + localTool("log_query") + "\n" +
                "- 设备配置:" + localTool("config_get_device_config") + "\n" +
                "- 系统配置:" + localTool("config_get_system_config") + "\n\n" +
                "使用策略:\n" +
                "1)避免臆测。如信息不足,先调用相应工具收集必要数据;可多轮调用。\n" +
                "2)对工具返回的 JSON 先进行结构化归纳,提炼关键字段,再做推理。\n" +
@@ -193,19 +193,19 @@
                "==================== 可用工具(返回 JSON) ====================\n" +
                "\n" +
                "【任务相关】\n" +
                "- task_query              —— 按任务号、状态、设备、条码、库位等条件查询任务\n" +
                "- " + localTool("task_query") + "              —— 按任务号、状态、设备、条码、库位等条件查询任务\n" +
                "\n" +
                "【设备实时状态】\n" +
                "- device_get_crn_status   —— 堆垛机实时状态\n" +
                "- device_get_station_status —— 工位实时状态\n" +
                "- device_get_rgv_status   —— RGV / 穿梭车实时状态\n" +
                "- " + localTool("device_get_crn_status") + "   —— 堆垛机实时状态\n" +
                "- " + localTool("device_get_station_status") + " —— 工位实时状态\n" +
                "- " + localTool("device_get_rgv_status") + "   —— RGV / 穿梭车实时状态\n" +
                "\n" +
                "【日志】\n" +
                "- log_query               —— 查询系统/设备日志(按时间/关键字)\n" +
                "- " + localTool("log_query") + "               —— 查询系统/设备日志(按时间/关键字)\n" +
                "\n" +
                "【配置】\n" +
                "- config_get_device_config —— 设备配置(启用、模式、策略)\n" +
                "- config_get_system_config —— 系统级调度/策略配置\n" +
                "- " + localTool("config_get_device_config") + " —— 设备配置(启用、模式、策略)\n" +
                "- " + localTool("config_get_system_config") + " —— 系统级调度/策略配置\n" +
                "\n" +
                "==================== 推荐诊断流程 ====================\n" +
                "\n" +
@@ -235,4 +235,8 @@
                "- 若需要进一步数据,请**先调用工具,再继续分析**\n";
        return prompt;
    }
    private String localTool(String name) {
        return "wcs_local_" + name;
    }
}