TangCheng
7 天以前 b3ff01f6463bfa5ed16753369abc3ad623df9e73
JAVA/SMTAIServer/src/main/java/com/smtaiserver/smtaiserver/core/SMTAIServerEncache.java
@@ -4,6 +4,8 @@
import java.util.LinkedHashMap;
import java.util.Map;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.locationtech.proj4j.CRSFactory;
import org.locationtech.proj4j.CoordinateReferenceSystem;
import org.locationtech.proj4j.CoordinateTransform;
@@ -29,6 +31,7 @@
import com.smtaiserver.smtaiserver.javaai.metrics.base.SMTMetricsDef;
import com.smtaiserver.smtaiserver.javaai.querydetail.SMTAIQueryDetail;
import com.smtaiserver.smtaiserver.javaai.qwen.SMTQwenAgentManager;
import com.smtaiserver.smtaiserver.javaai.qwen.SMTQwenApp;
import com.smtaiserver.smtaiserver.javaai.qwen.agent.SMTQwenAgent;
import com.smtaiserver.smtaiserver.javaai.qwen.agent.SMTQwenAgentKnowlgFile;
import com.smtservlet.util.Json;
@@ -38,6 +41,8 @@
{
   @Value("${hswater.tables.global_config}")
   protected String                  _tableGlobalConfig;
   private static Logger                _logger = LogManager.getLogger(SMTQwenApp.class);
   
    public static String makeQueryStringAllRegExp(String str)
    {
@@ -295,21 +300,29 @@
      
      try
      {
         // 读取所有amis的agent
         db.querySQLNotify(
         String sql =
              " SELECT agent_id,agent_type,agent_xml,clz_name,clz_arguments, group_type, agent_title, agent_group, agent_order,inner_call"
            + " FROM ai_agent_amis A"
             + " LEFT JOIN ai_scene_group G ON A.agent_group = G.group_id"
            + " WHERE " + (debugMode ? " agent_order > 0 OR is_debug='Y'" : "agent_order > 0 AND is_debug IS NULL")
            + " ORDER BY abs(agent_order)"
            , null,
            new DBQueryNotify() {
            ;
         // 读取所有amis的agent
         db.querySQLNotify(sql, null, new DBQueryNotify() {
               @Override
               public boolean onNextRecord(DBRecord rec) throws Exception 
               {
                  SMTQwenAgent agent = (SMTQwenAgent)Class.forName(rec.getString("clz_name")).newInstance();
                  agent.initInstance(rec);
                  manager.addAgent(agent);
                  try
                  {
                     SMTQwenAgent agent = (SMTQwenAgent)Class.forName(rec.getString("clz_name")).newInstance();
                     agent.initInstance(rec);
                     manager.addAgent(agent);
                  }
                  catch(Exception ex)
                  {
                     _logger.fatal("load agent error and skip it : " + rec.getString("agent_id"), ex);
                  }
                  
                  return true;
               }