PinkSky / server /models.py
FreshPixels's picture
Rename models.py to server/models.py
3505bd0 verified
Raw
History Blame Contribute Delete
980 Bytes
"""Датаклассы для моделей, ролей и кондукторов"""
from dataclasses import dataclass, field
from typing import List
@dataclass
class ModelConfig:
name: str
provider: str
endpoint: str
api_key_env: str
context_window: int = 32000
max_tokens: int = 8000
cost_per_1k_input: float = 0.0
cost_per_1k_output: float = 0.0
coding_rank: int = 50
speed_rank: int = 50
reasoning_rank: int = 50
tags: List[str] = field(default_factory=list)
@dataclass
class Role:
name: str
prompt: str
description: str
preferred_models: List[str] = field(default_factory=list)
complexity: str = "medium"
tags: List[str] = field(default_factory=list)
tools: List[str] = field(default_factory=list)
@dataclass
class Conductor:
name: str
prompt: str
description: str
strategy: str = "parallel"
max_agents: int = 3
cost_aware: bool = True
auto_rank_by: str = "coding"