2023-09-27 16:06:32 +08:00
|
|
|
from flask_restful import fields
|
2024-02-06 13:21:13 +08:00
|
|
|
|
2023-09-27 16:06:32 +08:00
|
|
|
from libs.helper import TimestampField
|
|
|
|
|
|
|
|
dataset_fields = {
|
|
|
|
'id': fields.String,
|
|
|
|
'name': fields.String,
|
|
|
|
'description': fields.String,
|
|
|
|
'permission': fields.String,
|
|
|
|
'data_source_type': fields.String,
|
|
|
|
'indexing_technique': fields.String,
|
|
|
|
'created_by': fields.String,
|
|
|
|
'created_at': TimestampField,
|
|
|
|
}
|
|
|
|
|
2023-11-17 22:13:37 +08:00
|
|
|
reranking_model_fields = {
|
|
|
|
'reranking_provider_name': fields.String,
|
|
|
|
'reranking_model_name': fields.String
|
|
|
|
}
|
|
|
|
|
2024-07-24 12:50:11 +08:00
|
|
|
keyword_setting_fields = {
|
|
|
|
'keyword_weight': fields.Float
|
|
|
|
}
|
|
|
|
|
|
|
|
vector_setting_fields = {
|
|
|
|
'vector_weight': fields.Float,
|
|
|
|
'embedding_model_name': fields.String,
|
|
|
|
'embedding_provider_name': fields.String,
|
|
|
|
}
|
|
|
|
|
|
|
|
weighted_score_fields = {
|
|
|
|
'weight_type': fields.String,
|
|
|
|
'keyword_setting': fields.Nested(keyword_setting_fields),
|
|
|
|
'vector_setting': fields.Nested(vector_setting_fields),
|
|
|
|
}
|
|
|
|
|
2023-11-17 22:13:37 +08:00
|
|
|
dataset_retrieval_model_fields = {
|
|
|
|
'search_method': fields.String,
|
|
|
|
'reranking_enable': fields.Boolean,
|
2024-07-24 12:50:11 +08:00
|
|
|
'reranking_mode': fields.String,
|
2023-11-17 22:13:37 +08:00
|
|
|
'reranking_model': fields.Nested(reranking_model_fields),
|
2024-07-24 12:50:11 +08:00
|
|
|
'weights': fields.Nested(weighted_score_fields, allow_null=True),
|
2023-11-17 22:13:37 +08:00
|
|
|
'top_k': fields.Integer,
|
2023-11-27 15:34:45 +08:00
|
|
|
'score_threshold_enabled': fields.Boolean,
|
2023-11-17 22:13:37 +08:00
|
|
|
'score_threshold': fields.Float
|
|
|
|
}
|
|
|
|
|
2024-04-24 15:02:29 +08:00
|
|
|
tag_fields = {
|
|
|
|
'id': fields.String,
|
|
|
|
'name': fields.String,
|
|
|
|
'type': fields.String
|
|
|
|
}
|
2023-11-17 22:13:37 +08:00
|
|
|
|
2023-09-27 16:06:32 +08:00
|
|
|
dataset_detail_fields = {
|
|
|
|
'id': fields.String,
|
|
|
|
'name': fields.String,
|
|
|
|
'description': fields.String,
|
|
|
|
'provider': fields.String,
|
|
|
|
'permission': fields.String,
|
|
|
|
'data_source_type': fields.String,
|
|
|
|
'indexing_technique': fields.String,
|
|
|
|
'app_count': fields.Integer,
|
|
|
|
'document_count': fields.Integer,
|
|
|
|
'word_count': fields.Integer,
|
|
|
|
'created_by': fields.String,
|
|
|
|
'created_at': TimestampField,
|
|
|
|
'updated_by': fields.String,
|
|
|
|
'updated_at': TimestampField,
|
|
|
|
'embedding_model': fields.String,
|
|
|
|
'embedding_model_provider': fields.String,
|
2023-11-17 22:13:37 +08:00
|
|
|
'embedding_available': fields.Boolean,
|
2024-04-24 15:02:29 +08:00
|
|
|
'retrieval_model_dict': fields.Nested(dataset_retrieval_model_fields),
|
|
|
|
'tags': fields.List(fields.Nested(tag_fields))
|
2023-09-27 16:06:32 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
dataset_query_detail_fields = {
|
|
|
|
"id": fields.String,
|
|
|
|
"content": fields.String,
|
|
|
|
"source": fields.String,
|
|
|
|
"source_app_id": fields.String,
|
|
|
|
"created_by_role": fields.String,
|
|
|
|
"created_by": fields.String,
|
|
|
|
"created_at": TimestampField
|
|
|
|
}
|
2023-11-17 22:13:37 +08:00
|
|
|
|
|
|
|
|