random qa

This commit is contained in:
春河晴
2025-06-10 16:41:28 +09:00
parent 4d32b3052f
commit cf39f2fe84
19 changed files with 34 additions and 66 deletions

View File

@@ -48,11 +48,13 @@ class ToolProcessor(BaseProcessor):
self.structured_info = []
async def process_info(
self, observations: Optional[List[Observation]] = None, running_memorys: Optional[List[Dict]] = None, *infos
) -> List[dict]:
self, observations: Optional[List[Observation]] = None, running_memories: Optional[List[Dict]] = None, *infos
) -> List[StructuredInfo]:
"""处理信息对象
Args:
observations: 可选的观察列表包含ChattingObservation和StructureObservation类型
running_memories: 可选的运行时记忆列表,包含字典类型的记忆信息
*infos: 可变数量的InfoBase类型的信息对象
Returns:
@@ -60,15 +62,15 @@ class ToolProcessor(BaseProcessor):
"""
working_infos = []
result = []
if observations:
for observation in observations:
if isinstance(observation, ChattingObservation):
result, used_tools, prompt = await self.execute_tools(observation, running_memorys)
result, used_tools, prompt = await self.execute_tools(observation, running_memories)
# 更新WorkingObservation中的结构化信息
logger.debug(f"工具调用结果: {result}")
# 更新WorkingObservation中的结构化信息
for observation in observations:
if isinstance(observation, StructureObservation):
for structured_info in result:
@@ -81,12 +83,7 @@ class ToolProcessor(BaseProcessor):
structured_info = StructuredInfo()
if working_infos:
for working_info in working_infos:
# print(f"working_info: {working_info}")
# print(f"working_info.get('type'): {working_info.get('type')}")
# print(f"working_info.get('content'): {working_info.get('content')}")
structured_info.set_info(key=working_info.get("type"), value=working_info.get("content"))
# info = structured_info.get_processed_info()
# print(f"info: {info}")
return [structured_info]