| | |
| | | , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) |
| | | , Column('dialog_id', String(36), ForeignKey('dialogs.id', ondelete='CASCADE'))) |
| | | |
| | | group_agent_table = Table('group_agent', Base.metadata |
| | | group_agent_table = Table('group_canvas', Base.metadata |
| | | , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) |
| | | , Column('agent_id', String(36), ForeignKey('canvas.id', ondelete='CASCADE'))) |
| | | , Column('canvas_id', String(36), ForeignKey('canvas.id', ondelete='CASCADE'))) |
| | | |
| | | group_llm_table = Table('group_llm', Base.metadata |
| | | , Column('group_id', Integer, ForeignKey('group.id', ondelete='CASCADE')) |
| | |
| | | created_at = Column(DateTime, default=datetime.now()) |
| | | updated_at = Column(DateTime, default=datetime.now(), onupdate=datetime.now()) |
| | | creator = Column(Integer) |
| | | group_type = Column(Integer, default=1) |
| | | |
| | | |
| | | knowledges = relationship('KnowledgeModel', |
| | |
| | | |
| | | agents = relationship('CanvasModel', |
| | | secondary=group_agent_table, |
| | | backref=backref('groups', lazy='dynamic'), |
| | | lazy="dynamic") |
| | | backref=backref('groups', lazy='dynamic')) |
| | | |
| | | llms = relationship('CommonLlmModel', |
| | | secondary=group_llm_table, |
| | | backref=backref('groups', lazy='dynamic'), |
| | | lazy="dynamic") |
| | | backref=backref('groups', lazy='dynamic')) |
| | | |
| | | unified_agents = relationship('UnifiedAgentModel', |
| | | secondary=group_unified_agent_table, |
| | | backref=backref('roles', lazy='dynamic'), |
| | | lazy="dynamic") |
| | | backref=backref('groups', lazy='dynamic')) |
| | | def to_dict(self): |
| | | return { |
| | | 'groupId': self.id, |
| | |
| | | |
| | | def to_json(self): |
| | | json = { |
| | | 'roleId': self.id, |
| | | 'groupId': self.id, |
| | | 'createTime': self.created_at.strftime('%Y-%m-%d %H:%M:%S'), |
| | | 'updateTime': self.updated_at.strftime('%Y-%m-%d %H:%M:%S'), |
| | | 'groupName': self.group_name, |
| | | 'remark': self.group_description, |
| | | 'description': self.group_description, |
| | | 'status': self.status, |
| | | } |
| | | if len(self.knowledges.all()) > 0: |
| | | json['knowledges'] = [knowledge.to_json() for knowledge in self.knowledges] |
| | | # if len(self.knowledges.all()) > 0: |
| | | json['knowledges'] = [knowledge.to_json() for knowledge in self.knowledges] |
| | | |
| | | if len(self.dialogs.all()) > 0: |
| | | json['dialogs'] = [dialog.to_json() for dialog in self.dialogs] |
| | | # if len(self.dialogs.all()) > 0: |
| | | json['dialogs'] = [dialog.to_json() for dialog in self.dialogs] |
| | | |
| | | if len(self.agents.all()) > 0: |
| | | json['agents'] = [agent.to_json() for agent in self.agents] |
| | | # if len(self.agents.all()) > 0: |
| | | # json['agents'] = [agent.to_json() for agent in self.agents] |
| | | |
| | | if len(self.llms.all()) > 0: |
| | | json['llms'] = [llm.to_json() for llm in self.llms] |
| | | # if len(self.llms.all()) > 0: |
| | | json['llms'] = [llm.to_json() for llm in self.llms] |
| | | |
| | | json['users'] = [user.to_dict() for user in self.users] |
| | | |
| | | if hasattr(self, 'flag'): |
| | | json['flag'] = self.flag |
| | | # if hasattr(self, 'flag'): |
| | | # json['flag'] = self.flag |
| | | |
| | | return json |
| | | |
| | |
| | | |
| | | class GroupData(BaseModel): |
| | | id: Optional[int] = None |
| | | group_name: Optional[str] = "" |
| | | group_description: Optional[str] = "" |
| | | group_status: Optional[str] = "" |
| | | groupName: Optional[str] = "" |
| | | description: Optional[str] = "" |
| | | status: Optional[str] = "" |
| | | |
| | | class GroupUsers(BaseModel): |
| | | id: int |
| | | user_list: list |
| | | userList: list |
| | | |
| | | |
| | | class GroupResource(BaseModel): |
| | | id: int |
| | | llms: list |
| | | dialogs: list |
| | | knowledges: list |
| | | |