refactor(memory_agent_service, memory_perceptual_service): Simplify audit logger import and usage
- Removed try-except block for importing `audit_logger` and directly imported it. - Removed redundant checks for `audit_logger` being `None` before logging operations. - Added a check in `MemoryPerceptualService` to return `None` if `model_config` or `llm` is `None`.
This commit is contained in:
@@ -244,6 +244,8 @@ class MemoryPerceptualService:
|
||||
file: FileInput
|
||||
):
|
||||
llm, model_config = self._get_mutlimodal_client(file.type, memory_config)
|
||||
if model_config is None or llm is None:
|
||||
return None
|
||||
multimodel_service = MultimodalService(self.db, ModelInfo(
|
||||
model_name=model_config.model_name,
|
||||
provider=model_config.provider,
|
||||
@@ -265,15 +267,20 @@ class MemoryPerceptualService:
|
||||
with open(os.path.join(prompt_path, 'perceptual_summary_system.jinja2'), 'r', encoding='utf-8') as f:
|
||||
opt_system_prompt = f.read()
|
||||
rendered_system_message = Template(opt_system_prompt).render(file_type=file.type, language='zh')
|
||||
except FileNotFoundError:
|
||||
raise BusinessException(message="System prompt template not found", code=BizCode.NOT_FOUND)
|
||||
except FileNotFoundError as e:
|
||||
business_logger.error(f"Failed to generate perceptual memory: {str(e)}")
|
||||
return None
|
||||
messages = [
|
||||
{"role": RoleType.SYSTEM.value, "content": [{"type": "text", "text": rendered_system_message}]},
|
||||
{"role": RoleType.USER.value, "content": [
|
||||
{"type": "text", "text": "Summarize the following file"}, file_message
|
||||
]}
|
||||
]
|
||||
result = await llm.ainvoke(messages)
|
||||
try:
|
||||
result = await llm.ainvoke(messages)
|
||||
except Exception as e:
|
||||
business_logger.error(f"Failed to generate perceptual memory: {str(e)}")
|
||||
return None
|
||||
content = result.content
|
||||
final_output = ""
|
||||
if isinstance(content, list):
|
||||
|
||||
Reference in New Issue
Block a user