Final Commit Before Rdev

This commit is contained in:
UnCLAS-Prommer
2026-03-11 00:14:18 +08:00
committed by SengokuCola
parent e1e296491c
commit 8b9cda4296
10 changed files with 662 additions and 1348 deletions

View File

@@ -1,7 +1,7 @@
import json
from dataclasses import dataclass
# import json
# from dataclasses import dataclass
from . import BaseDataModel
# from . import BaseDataModel
# @dataclass
@@ -208,33 +208,33 @@ from . import BaseDataModel
# }
@dataclass(init=False)
class DatabaseActionRecords(BaseDataModel):
def __init__(
self,
action_id: str,
time: float,
action_name: str,
action_data: str,
action_done: bool,
action_build_into_prompt: bool,
action_prompt_display: str,
chat_id: str,
chat_info_stream_id: str,
chat_info_platform: str,
action_reasoning: str,
):
self.action_id = action_id
self.time = time
self.action_name = action_name
if isinstance(action_data, str):
self.action_data = json.loads(action_data)
else:
raise ValueError("action_data must be a JSON string")
self.action_done = action_done
self.action_build_into_prompt = action_build_into_prompt
self.action_prompt_display = action_prompt_display
self.chat_id = chat_id
self.chat_info_stream_id = chat_info_stream_id
self.chat_info_platform = chat_info_platform
self.action_reasoning = action_reasoning
# @dataclass(init=False)
# class DatabaseActionRecords(BaseDataModel):
# def __init__(
# self,
# action_id: str,
# time: float,
# action_name: str,
# action_data: str,
# action_done: bool,
# action_build_into_prompt: bool,
# action_prompt_display: str,
# chat_id: str,
# chat_info_stream_id: str,
# chat_info_platform: str,
# action_reasoning: str,
# ):
# self.action_id = action_id
# self.time = time
# self.action_name = action_name
# if isinstance(action_data, str):
# self.action_data = json.loads(action_data)
# else:
# raise ValueError("action_data must be a JSON string")
# self.action_done = action_done
# self.action_build_into_prompt = action_build_into_prompt
# self.action_prompt_display = action_prompt_display
# self.chat_id = chat_id
# self.chat_info_stream_id = chat_info_stream_id
# self.chat_info_platform = chat_info_platform
# self.action_reasoning = action_reasoning

View File

@@ -1,27 +1,28 @@
from dataclasses import dataclass, field
from typing import Optional, Dict, TYPE_CHECKING
from . import BaseDataModel
# from dataclasses import dataclass, field
# from typing import Optional, Dict, TYPE_CHECKING
# from . import BaseDataModel
if TYPE_CHECKING:
from .database_data_model import DatabaseMessages
from src.core.types import ActionInfo
# if TYPE_CHECKING:
# from .database_data_model import DatabaseMessages
# from src.core.types import ActionInfo
# # @dataclass
# # class TargetPersonInfo(BaseDataModel):
# # platform: str = field(default_factory=str)
# # user_id: str = field(default_factory=str)
# # user_nickname: str = field(default_factory=str)
# # person_id: Optional[str] = None
# # person_name: Optional[str] = None
# @dataclass
# class TargetPersonInfo(BaseDataModel):
# platform: str = field(default_factory=str)
# user_id: str = field(default_factory=str)
# user_nickname: str = field(default_factory=str)
# person_id: Optional[str] = None
# person_name: Optional[str] = None
@dataclass
class ActionPlannerInfo(BaseDataModel):
action_type: str = field(default_factory=str)
reasoning: Optional[str] = None
action_data: Optional[Dict] = None
action_message: Optional["DatabaseMessages"] = None
available_actions: Optional[Dict[str, "ActionInfo"]] = None
loop_start_time: Optional[float] = None
action_reasoning: Optional[str] = None
# class ActionPlannerInfo(BaseDataModel):
# action_type: str = field(default_factory=str)
# reasoning: Optional[str] = None
# action_data: Optional[Dict] = None
# action_message: Optional["DatabaseMessages"] = None
# available_actions: Optional[Dict[str, "ActionInfo"]] = None
# loop_start_time: Optional[float] = None
# action_reasoning: Optional[str] = None
# TODO: 重构

View File

@@ -1,22 +1,23 @@
from dataclasses import dataclass
from typing import Optional, List, TYPE_CHECKING, Dict, Any
# from dataclasses import dataclass
# from typing import Optional, List, TYPE_CHECKING, Dict, Any
from . import BaseDataModel
# from . import BaseDataModel
if TYPE_CHECKING:
from src.common.data_models.message_data_model import ReplySetModel
from src.llm_models.payload_content.tool_option import ToolCall
# if TYPE_CHECKING:
# from src.common.data_models.message_data_model import ReplySetModel
# from src.llm_models.payload_content.tool_option import ToolCall
@dataclass
class LLMGenerationDataModel(BaseDataModel):
content: Optional[str] = None
reasoning: Optional[str] = None
model: Optional[str] = None
tool_calls: Optional[List["ToolCall"]] = None
prompt: Optional[str] = None
selected_expressions: Optional[List[int]] = None
reply_set: Optional["ReplySetModel"] = None
timing: Optional[Dict[str, Any]] = None
processed_output: Optional[List[str]] = None
timing_logs: Optional[List[str]] = None
# @dataclass
# class LLMGenerationDataModel(BaseDataModel):
# content: Optional[str] = None
# reasoning: Optional[str] = None
# model: Optional[str] = None
# tool_calls: Optional[List["ToolCall"]] = None
# prompt: Optional[str] = None
# selected_expressions: Optional[List[int]] = None
# reply_set: Optional["ReplySetModel"] = None
# timing: Optional[Dict[str, Any]] = None
# processed_output: Optional[List[str]] = None
# timing_logs: Optional[List[str]] = None
# TODO: 重构