diff --git a/api/db/services/knowledgebase_service.py b/api/db/services/knowledgebase_service.py index a8a98cf81..5f506888c 100644 --- a/api/db/services/knowledgebase_service.py +++ b/api/db/services/knowledgebase_service.py @@ -411,8 +411,6 @@ class KnowledgebaseService(CommonService): ok, _t = TenantService.get_by_id(tenant_id) if not ok: return False, get_data_error_result(message="Tenant not found.") - if kwargs.get("parser_config") and isinstance(kwargs["parser_config"], dict) and not kwargs["parser_config"].get("llm_id"): - kwargs["parser_config"]["llm_id"] = _t.llm_id # Build payload kb_id = get_uuid() @@ -427,6 +425,7 @@ class KnowledgebaseService(CommonService): # Update parser_config (always override with validated default/merged config) payload["parser_config"] = get_parser_config(parser_id, kwargs.get("parser_config")) + payload["parser_config"]["llm_id"] = _t.llm_id return True, payload diff --git a/rag/flow/tokenizer/tokenizer.py b/rag/flow/tokenizer/tokenizer.py index a13d95c0a..f723e992f 100644 --- a/rag/flow/tokenizer/tokenizer.py +++ b/rag/flow/tokenizer/tokenizer.py @@ -105,6 +105,9 @@ class Tokenizer(ProcessBase): async def _invoke(self, **kwargs): try: + chunks = kwargs.get("chunks") + kwargs["chunks"] = [c for c in chunks if c is not None] + from_upstream = TokenizerFromUpstream.model_validate(kwargs) except Exception as e: self.set_output("_ERROR", f"Input error: {str(e)}")