refactor(api): add UserFrom creator role conversion and reuse in knowledge retrieval

Tests not run (not requested).
This commit is contained in:
-LAN-
2026-01-06 19:53:58 +08:00
parent b64725b733
commit 49c7501cc8
2 changed files with 7 additions and 2 deletions

View File

@ -55,7 +55,7 @@ from extensions.ext_database import db
from extensions.ext_redis import redis_client
from libs.json_in_md_parser import parse_and_check_json_markdown
from models.dataset import Dataset, DatasetMetadata, Document, RateLimitLog
from models.enums import CreatorUserRole, UserFrom
from models.enums import UserFrom
from services.feature_service import FeatureService
from .entities import KnowledgeRetrievalNodeData
@ -269,7 +269,7 @@ class KnowledgeRetrievalNode(LLMUsageTrackingMixin, Node[KnowledgeRetrievalNodeD
usage = self._merge_usage(usage, metadata_usage)
all_documents = []
dataset_retrieval = DatasetRetrieval()
creator_user_role = CreatorUserRole.ACCOUNT if self.user_from == UserFrom.ACCOUNT else CreatorUserRole.END_USER
creator_user_role = self.user_from.to_creator_user_role()
if str(node_data.retrieval_mode) == DatasetRetrieveConfigEntity.RetrieveStrategy.SINGLE and query:
# fetch model config
if node_data.single_retrieval_config is None:

View File

@ -12,6 +12,11 @@ class UserFrom(StrEnum):
ACCOUNT = "account"
END_USER = "end-user"
def to_creator_user_role(self) -> "CreatorUserRole":
if self == UserFrom.ACCOUNT:
return CreatorUserRole.ACCOUNT
return CreatorUserRole.END_USER
class WorkflowRunTriggeredFrom(StrEnum):
DEBUGGING = "debugging"