From 655ae796fdfca6efc289d264d90e40ee213c6d2c Mon Sep 17 00:00:00 2001 From: lixinyue <2569494688@qq.com> Date: Thu, 22 Jan 2026 11:25:09 +0800 Subject: [PATCH] =?UTF-8?q?(=E7=94=A8=E6=88=B7=E6=91=98=E8=A6=81)=20(?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=85=B4=E8=B6=A3=E5=88=86=E5=B8=83)=20(?= =?UTF-8?q?=E8=AE=B0=E5=BF=86=E6=B4=9E=E5=AF=9F)=20=20(=E5=8F=8D=E6=80=9D)?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E4=B8=AD=E7=BF=BB=E8=AF=91=E8=8B=B1,?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E6=94=BE=E7=BD=AEHeaders?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api/app/controllers/memory_agent_controller.py | 4 ++-- api/app/controllers/memory_reflection_controller.py | 4 ++-- api/app/controllers/memory_short_term_controller.py | 4 ++-- api/app/controllers/user_memory_controllers.py | 8 ++++---- api/app/schemas/emotion_schema.py | 13 +++++++------ 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/api/app/controllers/memory_agent_controller.py b/api/app/controllers/memory_agent_controller.py index 22830890..78a5771f 100644 --- a/api/app/controllers/memory_agent_controller.py +++ b/api/app/controllers/memory_agent_controller.py @@ -18,7 +18,7 @@ from app.services import task_service, workspace_service from app.services.memory_agent_service import MemoryAgentService from app.services.model_service import ModelConfigService from dotenv import load_dotenv -from fastapi import APIRouter, Depends, File, Form, Query, UploadFile +from fastapi import APIRouter, Depends, File, Form, Query, UploadFile,Header from sqlalchemy.orm import Session from starlette.responses import StreamingResponse @@ -652,7 +652,7 @@ async def get_knowledge_type_stats_api( @router.get("/analytics/hot_memory_tags/by_user", response_model=ApiResponse) async def get_hot_memory_tags_by_user_api( end_user_id: Optional[str] = Query(None, description="用户ID(可选)"), - language_type: Optional[str] ="zh", + language_type: str = Header(default="zh", alias="X-Language-Type"), limit: int = Query(20, description="返回标签数量限制"), current_user: User = Depends(get_current_user), db: Session=Depends(get_db), diff --git a/api/app/controllers/memory_reflection_controller.py b/api/app/controllers/memory_reflection_controller.py index 9be6e035..abd50a33 100644 --- a/api/app/controllers/memory_reflection_controller.py +++ b/api/app/controllers/memory_reflection_controller.py @@ -20,7 +20,7 @@ from app.services.memory_reflection_service import ( ) from app.services.model_service import ModelConfigService from dotenv import load_dotenv -from fastapi import APIRouter, Depends, HTTPException, status +from fastapi import APIRouter, Depends, HTTPException, status,Header from sqlalchemy import text from sqlalchemy.orm import Session @@ -192,7 +192,7 @@ async def start_reflection_configs( @router.get("/reflection/run") async def reflection_run( config_id: int, - language_type: str = "zh", + language_type: str = Header(default="zh", alias="X-Language-Type"), current_user: User = Depends(get_current_user), db: Session = Depends(get_db), ) -> dict: diff --git a/api/app/controllers/memory_short_term_controller.py b/api/app/controllers/memory_short_term_controller.py index 9cf66749..c375ae80 100644 --- a/api/app/controllers/memory_short_term_controller.py +++ b/api/app/controllers/memory_short_term_controller.py @@ -1,4 +1,4 @@ -from fastapi import APIRouter, Depends, HTTPException, status +from fastapi import APIRouter, Depends, HTTPException, status,Header from app.core.logging_config import get_api_logger from app.core.response_utils import success from app.db import get_db @@ -20,7 +20,7 @@ router = APIRouter( @router.get("/short_term") async def short_term_configs( end_user_id: str, - language_type:Optional[str] = "zh", + language_type:str = Header(default="zh", alias="X-Language-Type"), current_user: User = Depends(get_current_user), db: Session = Depends(get_db), ): diff --git a/api/app/controllers/user_memory_controllers.py b/api/app/controllers/user_memory_controllers.py index 3b7345b6..6f02f8f9 100644 --- a/api/app/controllers/user_memory_controllers.py +++ b/api/app/controllers/user_memory_controllers.py @@ -5,7 +5,7 @@ from typing import Optional import datetime from sqlalchemy.orm import Session -from fastapi import APIRouter, Depends +from fastapi import APIRouter, Depends,Header from app.db import get_db from app.core.logging_config import get_api_logger @@ -45,7 +45,7 @@ router = APIRouter( @router.get("/analytics/memory_insight/report", response_model=ApiResponse) async def get_memory_insight_report_api( end_user_id: str, - language_type: str = "zh", + language_type: str = Header(default="zh", alias="X-Language-Type"), current_user: User = Depends(get_current_user), db: Session = Depends(get_db), ) -> dict: @@ -82,7 +82,7 @@ async def get_memory_insight_report_api( @router.get("/analytics/user_summary", response_model=ApiResponse) async def get_user_summary_api( end_user_id: str, - language_type: str="zh", + language_type: str = Header(default="zh", alias="X-Language-Type"), current_user: User = Depends(get_current_user), db: Session = Depends(get_db), ) -> dict: @@ -385,7 +385,7 @@ async def update_end_user_profile( return fail(BizCode.INTERNAL_ERROR, "用户信息更新失败", error_msg) @router.get("/memory_space/timeline_memories", response_model=ApiResponse) -async def memory_space_timeline_of_shared_memories(id: str, label: str,language_type: str="zh", +async def memory_space_timeline_of_shared_memories(id: str, label: str,language_type: str = Header(default="zh", alias="X-Language-Type"), current_user: User = Depends(get_current_user), db: Session = Depends(get_db), ): diff --git a/api/app/schemas/emotion_schema.py b/api/app/schemas/emotion_schema.py index cfa65b0f..a0253871 100644 --- a/api/app/schemas/emotion_schema.py +++ b/api/app/schemas/emotion_schema.py @@ -3,7 +3,7 @@ from typing import Optional from pydantic import BaseModel, Field - +from fastapi import Header class EmotionTagsRequest(BaseModel): """获取情绪标签统计请求""" group_id: str = Field(..., description="组ID") @@ -11,7 +11,7 @@ class EmotionTagsRequest(BaseModel): start_date: Optional[str] = Field(None, description="开始日期(ISO格式,如:2024-01-01)") end_date: Optional[str] = Field(None, description="结束日期(ISO格式,如:2024-12-31)") limit: int = Field(10, ge=1, le=100, description="返回数量限制") - language_type: Optional[str] = Field("zh", description="语言类型(zh/en)") + language_type: str = Header(default="zh", alias="X-Language-Type") class EmotionWordcloudRequest(BaseModel): @@ -19,24 +19,25 @@ class EmotionWordcloudRequest(BaseModel): group_id: str = Field(..., description="组ID") emotion_type: Optional[str] = Field(None, description="情绪类型过滤(joy/sadness/anger/fear/surprise/neutral)") limit: int = Field(50, ge=1, le=200, description="返回词语数量") - language_type: Optional[str] = Field("zh", description="语言类型(zh/en)") + language_type: str = Header(default="zh", alias="X-Language-Type") class EmotionHealthRequest(BaseModel): """获取情绪健康指数请求""" group_id: str = Field(..., description="组ID") time_range: str = Field("30d", description="时间范围(7d/30d/90d)") - language_type: Optional[str] = Field("zh", description="语言类型(zh/en)") + language_type: str = Header(default="zh", alias="X-Language-Type") + class EmotionSuggestionsRequest(BaseModel): """获取个性化情绪建议请求""" group_id: str = Field(..., description="组ID") config_id: Optional[int] = Field(None, description="配置ID(用于指定LLM模型)") - language_type: Optional[str] = Field("zh", description="语言类型(zh/en)") + language_type: str = Header(default="zh", alias="X-Language-Type") class EmotionGenerateSuggestionsRequest(BaseModel): """生成个性化情绪建议请求""" end_user_id: str = Field(..., description="终端用户ID") - language_type: Optional[str] = Field("zh", description="语言类型(zh/en)") + language_type: str = Header(default="zh", alias="X-Language-Type")