Updated api/core/rag/retrieval/dataset_retrieval.py to set user_from via UserFrom, so dataset query attribution aligns with the enum used elsewhere in the codepath.

fix(api): use UserFrom enum for dataset retrieval user_from

Tests not run (not requested).

1) `make lint`
2) `make type-check`
3) `uv run --project api --dev dev/pytest/pytest_unit_tests.sh`
This commit is contained in:
-LAN-
2026-01-06 18:58:45 +08:00
parent d4432ed80f
commit 27932cb669

View File

@ -63,6 +63,7 @@ from libs.json_in_md_parser import parse_and_check_json_markdown
from models import UploadFile
from models.dataset import ChildChunk, Dataset, DatasetMetadata, DatasetQuery, DocumentSegment, SegmentAttachmentBinding
from models.dataset import Document as DatasetDocument
from models.enums import UserFrom
from services.external_knowledge_service import ExternalDatasetService
default_retrieval_model: dict[str, Any] = {
@ -176,7 +177,9 @@ class DatasetRetrieval:
)
all_documents = []
user_from = "account" if invoke_from in {InvokeFrom.EXPLORE, InvokeFrom.DEBUGGER} else "end_user"
user_from = (
UserFrom.ACCOUNT if invoke_from in {InvokeFrom.EXPLORE, InvokeFrom.DEBUGGER} else UserFrom.END_USER
)
if retrieve_config.retrieve_strategy == DatasetRetrieveConfigEntity.RetrieveStrategy.SINGLE:
all_documents = self.single_retrieve(
app_id,