similarity_search.py 1.0 KB

123456789101112131415161718192021222324
  1. from qwen_agent.tools import SimilaritySearchType
  2. class SimilaritySearch:
  3. def __init__(self, type='keyword', llm=None, stream=False):
  4. self.type = type
  5. if type == SimilaritySearchType.KeyWord.value:
  6. from qwen_agent.tools.similarity_search_keyword import SSKeyWord
  7. run_func = SSKeyWord(llm, stream).run
  8. elif type == SimilaritySearchType.QueryMatch.value:
  9. from qwen_agent.tools.similarity_search_querymatch import SSQueryMatch
  10. run_func = SSQueryMatch(llm, stream).run
  11. elif type == SimilaritySearchType.LLM.value:
  12. from qwen_agent.tools.similarity_search_llm import SSLLM
  13. run_func = SSLLM(llm).run
  14. elif type == SimilaritySearchType.Jaccard.value:
  15. from qwen_agent.tools.similarity_search_jaccard import SSJaccard
  16. run_func = SSJaccard(llm, stream).run
  17. else:
  18. raise NotImplementedError
  19. self.run_func = run_func
  20. def run(self, path, query):
  21. return self.run_func(path, query)