|
|
|
|
|
|
|
|
|
|
|
|
|
|
from flask import Flask, current_app |
|
|
from flask import Flask, current_app |
|
|
|
|
|
|
|
|
from configs import DifyConfig |
|
|
|
|
|
from core.rag.data_post_processor.data_post_processor import DataPostProcessor |
|
|
from core.rag.data_post_processor.data_post_processor import DataPostProcessor |
|
|
from core.rag.datasource.keyword.keyword_factory import Keyword |
|
|
from core.rag.datasource.keyword.keyword_factory import Keyword |
|
|
from core.rag.datasource.vdb.vector_factory import Vector |
|
|
from core.rag.datasource.vdb.vector_factory import Vector |
|
|
|
|
|
|
|
|
query=query, |
|
|
query=query, |
|
|
documents=all_documents, |
|
|
documents=all_documents, |
|
|
score_threshold=score_threshold, |
|
|
score_threshold=score_threshold, |
|
|
top_n=DifyConfig.RETRIEVAL_TOP_N or top_k, |
|
|
|
|
|
|
|
|
top_n=top_k, |
|
|
) |
|
|
) |
|
|
|
|
|
|
|
|
return all_documents |
|
|
return all_documents |
|
|
|
|
|
|
|
|
query=query, |
|
|
query=query, |
|
|
documents=documents, |
|
|
documents=documents, |
|
|
score_threshold=score_threshold, |
|
|
score_threshold=score_threshold, |
|
|
top_n=DifyConfig.RETRIEVAL_TOP_N or len(documents), |
|
|
|
|
|
|
|
|
top_n=len(documents), |
|
|
) |
|
|
) |
|
|
) |
|
|
) |
|
|
else: |
|
|
else: |
|
|
|
|
|
|
|
|
query=query, |
|
|
query=query, |
|
|
documents=documents, |
|
|
documents=documents, |
|
|
score_threshold=score_threshold, |
|
|
score_threshold=score_threshold, |
|
|
top_n=DifyConfig.RETRIEVAL_TOP_N or len(documents), |
|
|
|
|
|
|
|
|
top_n=len(documents), |
|
|
) |
|
|
) |
|
|
) |
|
|
) |
|
|
else: |
|
|
else: |