(improvement)(Headless) Adjust file paths and fix the issue of inserting duplicate data in embeddings. (#918)

This commit is contained in:
lexluo09
2024-04-18 10:38:18 +08:00
committed by GitHub
parent ee798b7671
commit f9c60d0c65
2 changed files with 17 additions and 14 deletions

View File

@@ -0,0 +1,41 @@
package com.tencent.supersonic.headless.server.listener;
import com.tencent.supersonic.common.config.EmbeddingConfig;
import com.tencent.supersonic.headless.core.chat.parser.JavaLLMProxy;
import com.tencent.supersonic.headless.core.chat.parser.llm.SqlExamplarLoader;
import com.tencent.supersonic.headless.core.chat.parser.llm.SqlExample;
import com.tencent.supersonic.headless.core.utils.ComponentFactory;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import java.util.List;
@Slf4j
@Component
@Order(0)
public class EmbeddingInitListener implements CommandLineRunner {
@Autowired
private SqlExamplarLoader sqlExamplarLoader;
@Autowired
private EmbeddingConfig embeddingConfig;
@Override
public void run(String... args) {
initSqlExamples();
}
public void initSqlExamples() {
try {
if (ComponentFactory.getLLMProxy() instanceof JavaLLMProxy) {
List<SqlExample> sqlExamples = sqlExamplarLoader.getSqlExamples();
String collectionName = embeddingConfig.getText2sqlCollectionName();
sqlExamplarLoader.addEmbeddingStore(sqlExamples, collectionName);
}
} catch (Exception e) {
log.error("initSqlExamples error", e);
}
}
}