feat(chat): 接入全局知识库上下文
This commit is contained in:
@@ -3,7 +3,7 @@ from urllib import request
|
||||
|
||||
import pytest
|
||||
|
||||
from review_agent.llm import stream_reply
|
||||
from review_agent.llm import build_messages, stream_reply
|
||||
from review_agent.models import Conversation
|
||||
|
||||
|
||||
@@ -39,3 +39,16 @@ def test_stream_reply_skips_malformed_sse_data(monkeypatch, settings, django_use
|
||||
chunks = list(stream_reply(conversation, "你好"))
|
||||
|
||||
assert chunks == ["A", "B"]
|
||||
|
||||
|
||||
def test_build_messages_includes_knowledge_context(django_user_model):
|
||||
user = django_user_model.objects.create_user(username="owner", password="pass")
|
||||
conversation = Conversation.objects.create(user=user, title="会话")
|
||||
|
||||
messages = build_messages(conversation, "孙之烨是谁", knowledge_context="来源:简历\n孙之烨负责审核智能体项目。")
|
||||
|
||||
assert messages[0]["role"] == "system"
|
||||
assert messages[1]["role"] == "system"
|
||||
assert "全局知识库" in messages[1]["content"]
|
||||
assert "孙之烨负责审核智能体项目" in messages[1]["content"]
|
||||
assert messages[-1] == {"role": "user", "content": "孙之烨是谁"}
|
||||
|
||||
Reference in New Issue
Block a user