mirror of
https://github.com/langgenius/dify.git
synced 2026-05-30 13:47:52 +08:00
Merge branch 'feat/evaluation-fe' into deploy/dev
This commit is contained in:
@ -162,9 +162,9 @@ class DatasetVectorSettingResponse(ResponseModel):
|
||||
|
||||
|
||||
class DatasetWeightedScoreResponse(ResponseModel):
|
||||
weight_type: str | None
|
||||
keyword_setting: DatasetKeywordSettingResponse | None
|
||||
vector_setting: DatasetVectorSettingResponse | None
|
||||
weight_type: str | None = None
|
||||
keyword_setting: DatasetKeywordSettingResponse | None = None
|
||||
vector_setting: DatasetVectorSettingResponse | None = None
|
||||
|
||||
|
||||
class DatasetRetrievalModelResponse(ResponseModel):
|
||||
|
||||
@ -12085,9 +12085,9 @@ Condition detail
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
| ---- | ---- | ----------- | -------- |
|
||||
| keyword_setting | [DatasetKeywordSettingResponse](#datasetkeywordsettingresponse) | | Yes |
|
||||
| vector_setting | [DatasetVectorSettingResponse](#datasetvectorsettingresponse) | | Yes |
|
||||
| weight_type | string | | Yes |
|
||||
| keyword_setting | [DatasetKeywordSettingResponse](#datasetkeywordsettingresponse) | | No |
|
||||
| vector_setting | [DatasetVectorSettingResponse](#datasetvectorsettingresponse) | | No |
|
||||
| weight_type | string | | No |
|
||||
|
||||
#### DatasourceCredentialDeletePayload
|
||||
|
||||
|
||||
@ -2574,9 +2574,9 @@ Condition detail
|
||||
|
||||
| Name | Type | Description | Required |
|
||||
| ---- | ---- | ----------- | -------- |
|
||||
| keyword_setting | [DatasetKeywordSettingResponse](#datasetkeywordsettingresponse) | | Yes |
|
||||
| vector_setting | [DatasetVectorSettingResponse](#datasetvectorsettingresponse) | | Yes |
|
||||
| weight_type | string | | Yes |
|
||||
| keyword_setting | [DatasetKeywordSettingResponse](#datasetkeywordsettingresponse) | | No |
|
||||
| vector_setting | [DatasetVectorSettingResponse](#datasetvectorsettingresponse) | | No |
|
||||
| weight_type | string | | No |
|
||||
|
||||
#### DatasourceNodeRunPayload
|
||||
|
||||
|
||||
@ -245,6 +245,55 @@ class TestDatasetList:
|
||||
|
||||
assert status == 200
|
||||
|
||||
def test_get_allows_legacy_weighted_score_without_weight_type(self, app: Flask):
|
||||
api = DatasetListApi()
|
||||
method = unwrap(api.get)
|
||||
|
||||
current_user = self._mock_user()
|
||||
datasets = [
|
||||
make_dataset(
|
||||
retrieval_model={
|
||||
"search_method": "hybrid_search",
|
||||
"reranking_enable": True,
|
||||
"reranking_mode": "weighted_score",
|
||||
"reranking_model": None,
|
||||
"weights": {
|
||||
"vector_setting": {
|
||||
"vector_weight": 0.7,
|
||||
"embedding_model_name": "text-embedding",
|
||||
"embedding_provider_name": "openai",
|
||||
},
|
||||
"keyword_setting": {"keyword_weight": 0.3},
|
||||
},
|
||||
"top_k": 3,
|
||||
"score_threshold_enabled": False,
|
||||
"score_threshold": 0.0,
|
||||
}
|
||||
)
|
||||
]
|
||||
|
||||
with app.test_request_context("/datasets"):
|
||||
with (
|
||||
patch(
|
||||
"controllers.console.datasets.datasets.current_account_with_tenant",
|
||||
return_value=(current_user, "tenant-1"),
|
||||
),
|
||||
patch.object(
|
||||
DatasetService,
|
||||
"get_datasets",
|
||||
return_value=(datasets, 1),
|
||||
),
|
||||
patch.object(
|
||||
ProviderManager,
|
||||
"get_configurations",
|
||||
return_value=MagicMock(get_models=lambda **_: []),
|
||||
),
|
||||
):
|
||||
resp, status = method(api)
|
||||
|
||||
assert status == 200
|
||||
assert resp["data"][0]["retrieval_model_dict"]["weights"]["weight_type"] is None
|
||||
|
||||
def test_embedding_available_false(self, app: Flask):
|
||||
api = DatasetListApi()
|
||||
method = unwrap(api.get)
|
||||
|
||||
Reference in New Issue
Block a user