| 
									
										
										
										
											2025-05-06 11:58:49 +08:00
										 |  |  | from flask_restful import fields | 
					
						
							| 
									
										
										
										
											2024-02-06 13:21:13 +08:00
										 |  |  | 
 | 
					
						
							|  |  |  | from fields.conversation_fields import message_file_fields | 
					
						
							| 
									
										
										
										
											2023-09-27 16:06:32 +08:00
										 |  |  | from libs.helper import TimestampField | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-10-21 10:43:49 +08:00
										 |  |  | from .raws import FilesContainedField | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  | feedback_fields = {"rating": fields.String} | 
					
						
							| 
									
										
										
										
											2023-09-27 16:06:32 +08:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2024-01-23 19:58:23 +08:00
										 |  |  | agent_thought_fields = { | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  |     "id": fields.String, | 
					
						
							|  |  |  |     "chain_id": fields.String, | 
					
						
							|  |  |  |     "message_id": fields.String, | 
					
						
							|  |  |  |     "position": fields.Integer, | 
					
						
							|  |  |  |     "thought": fields.String, | 
					
						
							|  |  |  |     "tool": fields.String, | 
					
						
							|  |  |  |     "tool_labels": fields.Raw, | 
					
						
							|  |  |  |     "tool_input": fields.String, | 
					
						
							|  |  |  |     "created_at": TimestampField, | 
					
						
							|  |  |  |     "observation": fields.String, | 
					
						
							|  |  |  |     "files": fields.List(fields.String), | 
					
						
							| 
									
										
										
										
											2024-01-23 19:58:23 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | retriever_resource_fields = { | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  |     "id": fields.String, | 
					
						
							|  |  |  |     "message_id": fields.String, | 
					
						
							|  |  |  |     "position": fields.Integer, | 
					
						
							|  |  |  |     "dataset_id": fields.String, | 
					
						
							|  |  |  |     "dataset_name": fields.String, | 
					
						
							|  |  |  |     "document_id": fields.String, | 
					
						
							|  |  |  |     "document_name": fields.String, | 
					
						
							|  |  |  |     "data_source_type": fields.String, | 
					
						
							|  |  |  |     "segment_id": fields.String, | 
					
						
							|  |  |  |     "score": fields.Float, | 
					
						
							|  |  |  |     "hit_count": fields.Integer, | 
					
						
							|  |  |  |     "word_count": fields.Integer, | 
					
						
							|  |  |  |     "segment_position": fields.Integer, | 
					
						
							|  |  |  |     "index_node_hash": fields.String, | 
					
						
							|  |  |  |     "content": fields.String, | 
					
						
							|  |  |  |     "created_at": TimestampField, | 
					
						
							| 
									
										
										
										
											2024-01-23 19:58:23 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-09-27 16:06:32 +08:00
										 |  |  | message_fields = { | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  |     "id": fields.String, | 
					
						
							|  |  |  |     "conversation_id": fields.String, | 
					
						
							| 
									
										
										
										
											2024-09-22 03:15:11 +08:00
										 |  |  |     "parent_message_id": fields.String, | 
					
						
							| 
									
										
										
										
											2024-10-21 10:43:49 +08:00
										 |  |  |     "inputs": FilesContainedField, | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  |     "query": fields.String, | 
					
						
							|  |  |  |     "answer": fields.String(attribute="re_sign_file_url_answer"), | 
					
						
							|  |  |  |     "feedback": fields.Nested(feedback_fields, attribute="user_feedback", allow_null=True), | 
					
						
							|  |  |  |     "retriever_resources": fields.List(fields.Nested(retriever_resource_fields)), | 
					
						
							|  |  |  |     "created_at": TimestampField, | 
					
						
							|  |  |  |     "agent_thoughts": fields.List(fields.Nested(agent_thought_fields)), | 
					
						
							| 
									
										
										
										
											2024-10-21 10:43:49 +08:00
										 |  |  |     "message_files": fields.List(fields.Nested(message_file_fields)), | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  |     "status": fields.String, | 
					
						
							|  |  |  |     "error": fields.String, | 
					
						
							| 
									
										
										
										
											2023-09-27 16:06:32 +08:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | message_infinite_scroll_pagination_fields = { | 
					
						
							| 
									
										
										
										
											2024-08-15 12:54:05 +08:00
										 |  |  |     "limit": fields.Integer, | 
					
						
							|  |  |  |     "has_more": fields.Boolean, | 
					
						
							|  |  |  |     "data": fields.List(fields.Nested(message_fields)), | 
					
						
							| 
									
										
										
										
											2024-01-23 19:58:23 +08:00
										 |  |  | } |