Co-authored-by: Hao Fu <hao.fu@helloklarity.com>tags/0.3.11
| 'status': fields.String, | 'status': fields.String, | ||||
| 'from_source': fields.String, | 'from_source': fields.String, | ||||
| 'from_end_user_id': fields.String, | 'from_end_user_id': fields.String, | ||||
| 'from_end_user_session_id': fields.String(attribute='end_user.session_id'), | |||||
| 'from_account_id': fields.String, | 'from_account_id': fields.String, | ||||
| 'read_at': TimestampField, | 'read_at': TimestampField, | ||||
| 'created_at': TimestampField, | 'created_at': TimestampField, | ||||
| query = db.select(Conversation).where(Conversation.app_id == app.id, Conversation.mode == 'completion') | query = db.select(Conversation).where(Conversation.app_id == app.id, Conversation.mode == 'completion') | ||||
| query = query.options(joinedload(Conversation.end_user)) | |||||
| if args['keyword']: | if args['keyword']: | ||||
| query = query.join( | query = query.join( | ||||
| Message, Message.conversation_id == Conversation.id | Message, Message.conversation_id == Conversation.id | ||||
| 'status': fields.String, | 'status': fields.String, | ||||
| 'from_source': fields.String, | 'from_source': fields.String, | ||||
| 'from_end_user_id': fields.String, | 'from_end_user_id': fields.String, | ||||
| 'from_end_user_session_id': fields.String(attribute='end_user.session_id'), | |||||
| 'from_account_id': fields.String, | 'from_account_id': fields.String, | ||||
| 'summary': fields.String(attribute='summary_or_query'), | 'summary': fields.String(attribute='summary_or_query'), | ||||
| 'read_at': TimestampField, | 'read_at': TimestampField, | ||||
| query = db.select(Conversation).where(Conversation.app_id == app.id, Conversation.mode == 'chat') | query = db.select(Conversation).where(Conversation.app_id == app.id, Conversation.mode == 'chat') | ||||
| query = query.options(joinedload(Conversation.end_user)) | |||||
| if args['keyword']: | if args['keyword']: | ||||
| query = query.join( | query = query.join( | ||||
| Message, Message.conversation_id == Conversation.id | Message, Message.conversation_id == Conversation.id |
| system_instruction_tokens = db.Column(db.Integer, nullable=False, server_default=db.text('0')) | system_instruction_tokens = db.Column(db.Integer, nullable=False, server_default=db.text('0')) | ||||
| status = db.Column(db.String(255), nullable=False) | status = db.Column(db.String(255), nullable=False) | ||||
| from_source = db.Column(db.String(255), nullable=False) | from_source = db.Column(db.String(255), nullable=False) | ||||
| from_end_user_id = db.Column(UUID) | |||||
| from_end_user_id = db.Column(UUID, db.ForeignKey('end_users.id')) | |||||
| from_account_id = db.Column(UUID) | from_account_id = db.Column(UUID) | ||||
| read_at = db.Column(db.DateTime) | read_at = db.Column(db.DateTime) | ||||
| read_account_id = db.Column(UUID) | read_account_id = db.Column(UUID) | ||||
| messages = db.relationship("Message", backref="conversation", lazy='select', passive_deletes="all") | messages = db.relationship("Message", backref="conversation", lazy='select', passive_deletes="all") | ||||
| message_annotations = db.relationship("MessageAnnotation", backref="conversation", lazy='select', passive_deletes="all") | message_annotations = db.relationship("MessageAnnotation", backref="conversation", lazy='select', passive_deletes="all") | ||||
| end_user = db.relationship("EndUser", backref="conversations") | |||||
| is_deleted = db.Column(db.Boolean, nullable=False, server_default=db.text('false')) | is_deleted = db.Column(db.Boolean, nullable=False, server_default=db.text('false')) | ||||
| @property | @property |
| </thead> | </thead> | ||||
| <tbody className="text-gray-500"> | <tbody className="text-gray-500"> | ||||
| {logs.data.map((log) => { | {logs.data.map((log) => { | ||||
| const endUser = log.from_end_user_id?.slice(0, 8) | |||||
| const endUser = log.from_end_user_session_id | |||||
| const leftValue = get(log, isChatMode ? 'summary' : 'message.query') | const leftValue = get(log, isChatMode ? 'summary' : 'message.query') | ||||
| const rightValue = get(log, isChatMode ? 'message_count' : 'message.answer') | const rightValue = get(log, isChatMode ? 'message_count' : 'message.answer') | ||||
| return <tr | return <tr |
| status: 'normal' | 'finished' | status: 'normal' | 'finished' | ||||
| from_source: 'api' | 'console' | from_source: 'api' | 'console' | ||||
| from_end_user_id: string | from_end_user_id: string | ||||
| from_end_user_session_id: string | |||||
| from_account_id: string | from_account_id: string | ||||
| read_at: Date | read_at: Date | ||||
| created_at: number | created_at: number |