sync: 鍚屾灞€鍩熺綉鏈€鏂颁唬鐮?(source master @ b69568e4)
This commit is contained in:
1 parent
4f7f07504a
commit
8bc8b0e082
1651 files changed
+278599
-11416
No files matched your search
@@ -2,6 +2,7 @@
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from types import SimpleNamespace
|
||||
from typing import Any
|
||||
|
||||
from deerflow.agents.memory.manager import MemoryManager
|
||||
@@ -113,6 +114,22 @@ class TestSystemPromptAndPrefetch:
|
||||
manager.add_provider(_FakeProvider("builtin", prompt_block=""))
|
||||
assert manager.build_system_prompt() == ""
|
||||
|
||||
def test_build_system_prompt_can_exclude_only_legacy_knowledge(self):
|
||||
manager = MemoryManager()
|
||||
manager.add_provider(_FakeProvider("builtin", prompt_block="用户记忆"))
|
||||
manager.add_provider(
|
||||
_FakeProvider("knowledge", prompt_block="/mnt/knowledge/routing.md")
|
||||
)
|
||||
manager.add_provider(_FakeProvider("hindsight", prompt_block="Hindsight 说明"))
|
||||
|
||||
result = manager.build_system_prompt(
|
||||
excluded_provider_names={"knowledge"}
|
||||
)
|
||||
|
||||
assert "用户记忆" in result
|
||||
assert "Hindsight 说明" in result
|
||||
assert "/mnt/knowledge/routing.md" not in result
|
||||
|
||||
def test_prefetch_all_concatenates(self):
|
||||
manager = MemoryManager()
|
||||
manager.add_provider(_FakeProvider("builtin", prefetch_text="召回1"))
|
||||
@@ -128,6 +145,46 @@ class TestSystemPromptAndPrefetch:
|
||||
block = manager.build_injection_block("查询")
|
||||
assert "静态块" in block and "动态块" in block
|
||||
|
||||
def test_lead_memory_context_keeps_memory_when_legacy_routing_is_disabled(
|
||||
self,
|
||||
monkeypatch,
|
||||
):
|
||||
from deerflow.agents.lead_agent import prompt as prompt_module
|
||||
from deerflow.agents.memory import manager as manager_module
|
||||
from deerflow.config import memory_config as memory_config_module
|
||||
from deerflow.runtime import user_context as user_context_module
|
||||
|
||||
manager = MemoryManager()
|
||||
manager.add_provider(_FakeProvider("builtin", prompt_block="用户偏好记忆"))
|
||||
manager.add_provider(
|
||||
_FakeProvider("knowledge", prompt_block="读取 /mnt/knowledge/routing.md")
|
||||
)
|
||||
manager.add_provider(_FakeProvider("hindsight", prompt_block="历史召回说明"))
|
||||
|
||||
monkeypatch.setattr(
|
||||
manager_module,
|
||||
"build_memory_manager",
|
||||
lambda **_kwargs: manager,
|
||||
)
|
||||
monkeypatch.setattr(
|
||||
memory_config_module,
|
||||
"get_effective_memory_config",
|
||||
lambda _user_id: SimpleNamespace(enabled=True),
|
||||
)
|
||||
monkeypatch.setattr(
|
||||
user_context_module,
|
||||
"get_effective_user_id",
|
||||
lambda: "user-1",
|
||||
)
|
||||
|
||||
context = prompt_module._get_memory_context(
|
||||
include_legacy_knowledge_routing=False
|
||||
)
|
||||
|
||||
assert "用户偏好记忆" in context
|
||||
assert "历史召回说明" in context
|
||||
assert "/mnt/knowledge/routing.md" not in context
|
||||
|
||||
|
||||
class TestHookDispatch:
|
||||
def test_sync_all(self):
|
||||
|
||||
Reference in new issue
Block a user