from typing import Optional, List from strands import Agent from .conversation_manager import ByteWindowConversationManager from .hooks import default_hooks from .model import get_model from .prompts import build_system_prompt from .tools import get_tools from . import config def create_agent( *, system_prompt: Optional[str] = None, messages: Optional[List[dict]] = None, ) -> Agent: """创建一个 Agent 实例,带有可选的系统提示和消息列表。 Args: system_prompt (Optional[str]): 系统提示,用于指导 Agent 的行为。 messages (Optional[List[dict]]): 消息列表,每条消息是一个字典,包含角色和内容。 Returns: Agent: 创建的 Agent 实例。 """ agent = Agent( model=get_model(), system_prompt=system_prompt, tools=get_tools(), conversation_manager=ByteWindowConversationManager( max_bytes=config.CONV_MAX_BYTES ), hooks=default_hooks(), messages=messages or [] )