feat: persist cleaned question insights
This commit is contained in:
@@ -2,12 +2,14 @@ from sqlalchemy import create_engine
|
||||
from datetime import datetime, timedelta
|
||||
from sqlalchemy.orm import Session
|
||||
from sqlalchemy.pool import StaticPool
|
||||
from types import SimpleNamespace
|
||||
|
||||
from app.api.admin_agent_records import attention_list, retrieval_logs
|
||||
from app.api.admin_records import ai_logs, chat_detail, chat_messages, question_insights
|
||||
from app.api.admin_records import ai_logs, chat_detail, chat_messages, question_insights, refresh_question_insights
|
||||
from app.api.admin_users import list_users
|
||||
from app.models import Base
|
||||
from app.models.chat import ChatMessage, ChatSession
|
||||
from app.models.insight import QuestionInsightCleanedQuestion
|
||||
from app.models.knowledge import HumanAttentionRecord, KnowledgeRetrievalLog
|
||||
from app.models.logs import AiRequestLog
|
||||
from app.models.user import User
|
||||
@@ -129,6 +131,20 @@ def test_question_insights_clean_and_cluster_similar_user_questions():
|
||||
db.add(AiRequestLog(session_id=1, user_id=1, status="SUCCESS", prompt="用户问题:心光有哪些作业?", knowledge_hit=0))
|
||||
db.commit()
|
||||
|
||||
first_refresh = refresh_question_insights(
|
||||
dateFrom=None,
|
||||
dateTo=None,
|
||||
maxMessages=100,
|
||||
db=db,
|
||||
current_admin=SimpleNamespace(id=1),
|
||||
)["data"]
|
||||
second_refresh = refresh_question_insights(
|
||||
dateFrom=None,
|
||||
dateTo=None,
|
||||
maxMessages=100,
|
||||
db=db,
|
||||
current_admin=SimpleNamespace(id=1),
|
||||
)["data"]
|
||||
response = question_insights(
|
||||
dateFrom=None,
|
||||
dateTo=None,
|
||||
@@ -141,6 +157,11 @@ def test_question_insights_clean_and_cluster_similar_user_questions():
|
||||
)
|
||||
|
||||
data = response["data"]
|
||||
assert first_refresh["processedMessages"] == 4
|
||||
assert first_refresh["acceptedQuestions"] == 4
|
||||
assert first_refresh["filteredMessages"] == 1
|
||||
assert second_refresh["processedMessages"] == 0
|
||||
assert db.query(QuestionInsightCleanedQuestion).count() == 5
|
||||
assert data["summary"]["scannedMessages"] == 4
|
||||
assert data["summary"]["filteredMessages"] == 1
|
||||
assert data["summary"]["cleanedQuestions"] == 4
|
||||
|
||||
Reference in New Issue
Block a user