diff --git a/apps/manager/flow.py b/apps/manager/flow.py index b76589357e75638623cab817c125b68fa5d288a6..c2966d2ac64d7cabbedba35ee36f5c9e495499cd 100644 --- a/apps/manager/flow.py +++ b/apps/manager/flow.py @@ -102,7 +102,7 @@ class FlowManager: service_collection = MongoDB.get_collection("service") try: match_conditions = [ - {"name": "系统"}, + {"author": "system"}, {"author": user_sub}, { "$and": [ diff --git a/apps/scheduler/call/rag.py b/apps/scheduler/call/rag.py index 3cace0fd256f5bae7ff6afb6fb5e6b93f02bcec4..96248e75e89fcd5276cf019c901bc83ac8c3849a 100644 --- a/apps/scheduler/call/rag.py +++ b/apps/scheduler/call/rag.py @@ -16,9 +16,9 @@ from apps.scheduler.call.core import CoreCall class _RAGParams(BaseModel): """RAG工具的参数""" - knowledge_base: str = Field(description="知识库的id", alias="kb_sn") + knowledge_base: str = Field(description="知识库的id", alias="kb_sn", default=None) top_k: int = Field(description="返回的答案数量(经过整合以及上下文关联)", default=5) - methods: Optional[list[str]] = Field(description="rag检索方法") + retrieval_mode: str = Field(description="检索模式", default="chunk", choices=['chunk', 'full_text']) class _RAGOutputList(BaseModel): @@ -45,8 +45,7 @@ class RAG(metaclass=CoreCall, param_cls=_RAGParams, output_cls=_RAGOutput): params: _RAGParams = getattr(self, "_params") params_dict = params.model_dump(exclude_none=True, by_alias=True) - params_dict["question"] = syscall_vars.question - + params_dict["content"] = syscall_vars.question url = config["RAG_HOST"].rstrip("/") + "/chunk/get" headers = { "Content-Type": "application/json", @@ -59,6 +58,8 @@ class RAG(metaclass=CoreCall, param_cls=_RAGParams, output_cls=_RAGOutput): if response.status == status.HTTP_200_OK: result = await response.json() chunk_list = result["data"] + for chunk in chunk_list: + chunk=chunk.replace("\n", " ") return _RAGOutput( output=_RAGOutputList(corpus=chunk_list), )