Files
sentclaw/backend/app/models/agent.py
T
2026-04-07 16:05:05 +08:00

38 lines
1.3 KiB
Python

from .base import BaseModel
from . import db
class Agent(BaseModel):
__tablename__ = "agents"
workspace_id = db.Column(
db.BigInteger,
db.ForeignKey("workspaces.id"),
nullable=False,
comment="工作空间ID",
)
name = db.Column(db.String(100), nullable=False, comment="Agent 名称")
description = db.Column(db.Text, nullable=True, comment="描述")
system_prompt = db.Column(db.Text, nullable=True, comment="系统提示词")
model_id = db.Column(db.String(50), nullable=True, comment="模型ID")
temperature = db.Column(
db.Numeric(3, 2), default=0.70, nullable=False, comment="温度参数"
)
max_tokens = db.Column(
db.Integer, default=2000, nullable=False, comment="最大Token数"
)
is_active = db.Column(db.Boolean, default=True, nullable=False, comment="是否激活")
conversations = db.relationship(
"Conversation", backref="agent", lazy=True, cascade="all, delete-orphan"
)
tools = db.relationship(
"AgentTool", backref="agent", lazy=True, cascade="all, delete-orphan"
)
cron_jobs = db.relationship(
"CronJob", backref="agent", lazy=True, cascade="all, delete-orphan"
)
memories = db.relationship(
"Memory", backref="agent", lazy=True, cascade="all, delete-orphan"
)