新增DifyCompareTest.py文件以实现Dify新旧流程对比测试功能,并更新.gitignore以忽略新测试文件。
This commit is contained in:
@@ -9,3 +9,4 @@ rag2_0/demo/Test.py
|
|||||||
data/excel/*.xlsx
|
data/excel/*.xlsx
|
||||||
rag2_0/demo/ProfessionalTermAnalyzer.py
|
rag2_0/demo/ProfessionalTermAnalyzer.py
|
||||||
data/logs/*
|
data/logs/*
|
||||||
|
rag2_0/dify/Test.py
|
||||||
|
|||||||
@@ -457,3 +457,40 @@ class KnowledgeBaseClient(DifyClient):
|
|||||||
data = {"segment": segment_data}
|
data = {"segment": segment_data}
|
||||||
url = f"/datasets/{self._get_dataset_id()}/documents/{document_id}/segments/{segment_id}"
|
url = f"/datasets/{self._get_dataset_id()}/documents/{document_id}/segments/{segment_id}"
|
||||||
return self._send_request("POST", url, json=data, **kwargs)
|
return self._send_request("POST", url, json=data, **kwargs)
|
||||||
|
|
||||||
|
def retrieve(
|
||||||
|
self,
|
||||||
|
query: str,
|
||||||
|
retrieval_model: dict | None = None,
|
||||||
|
external_retrieval_model: dict | None = None,
|
||||||
|
**kwargs
|
||||||
|
):
|
||||||
|
"""
|
||||||
|
Retrieve from knowledge base.
|
||||||
|
|
||||||
|
:param query: Query keyword for retrieval
|
||||||
|
:param retrieval_model: Retrieval parameters (optional), example:
|
||||||
|
{
|
||||||
|
"search_method": "semantic_search", # One of: "keyword_search", "semantic_search", "full_text_search", "hybrid_search"
|
||||||
|
"reranking_enable": True, # Optional, whether to enable reranking
|
||||||
|
"reranking_mode": { # Optional, required if reranking_enable is True
|
||||||
|
"reranking_provider_name": "provider_name",
|
||||||
|
"reranking_model_name": "model_name"
|
||||||
|
},
|
||||||
|
"weights": 0.5, # Optional, weight for semantic search in hybrid search mode
|
||||||
|
"top_k": 10, # Optional, number of results to return
|
||||||
|
"score_threshold_enabled": True, # Optional, whether to enable score threshold
|
||||||
|
"score_threshold": 0.5 # Optional, score threshold value
|
||||||
|
}
|
||||||
|
:param external_retrieval_model: Unused field
|
||||||
|
:return: Response from the API
|
||||||
|
"""
|
||||||
|
data = {"query": query}
|
||||||
|
if retrieval_model is not None:
|
||||||
|
data["retrieval_model"] = retrieval_model
|
||||||
|
if external_retrieval_model is not None:
|
||||||
|
data["external_retrieval_model"] = external_retrieval_model
|
||||||
|
|
||||||
|
url = f"/datasets/{self._get_dataset_id()}/retrieve"
|
||||||
|
return self._send_request("POST", url, json=data, **kwargs)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user