24 lines
641 B
Python
24 lines
641 B
Python
"""Muse 角色模型策略解析与前置校验。"""
|
|
|
|
from __future__ import annotations
|
|
|
|
from typing import Any
|
|
|
|
from framework.adapters.pi.runner import ExecutionPolicy
|
|
from role_task import RoleTaskPackage
|
|
|
|
|
|
def validate_role_execution_policy(
|
|
package: RoleTaskPackage, policy: ExecutionPolicy
|
|
) -> None:
|
|
"""在进入框架适配器前校验 Muse 角色模型合同。"""
|
|
|
|
if (
|
|
package.role_contract.model_policy == "fixed-opus"
|
|
and "opus" not in policy.model.lower()
|
|
):
|
|
raise ValueError(f"角色 {package.spec.role} 要求 fixed-opus 模型策略")
|
|
|
|
|
|
__all__ = ["validate_role_execution_policy"]
|