Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

dataset_fields.py 3.6KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. from flask_restx import fields
  2. from libs.helper import TimestampField
  3. dataset_fields = {
  4. "id": fields.String,
  5. "name": fields.String,
  6. "description": fields.String,
  7. "permission": fields.String,
  8. "data_source_type": fields.String,
  9. "indexing_technique": fields.String,
  10. "created_by": fields.String,
  11. "created_at": TimestampField,
  12. }
  13. reranking_model_fields = {"reranking_provider_name": fields.String, "reranking_model_name": fields.String}
  14. keyword_setting_fields = {"keyword_weight": fields.Float}
  15. vector_setting_fields = {
  16. "vector_weight": fields.Float,
  17. "embedding_model_name": fields.String,
  18. "embedding_provider_name": fields.String,
  19. }
  20. weighted_score_fields = {
  21. "weight_type": fields.String,
  22. "keyword_setting": fields.Nested(keyword_setting_fields),
  23. "vector_setting": fields.Nested(vector_setting_fields),
  24. }
  25. dataset_retrieval_model_fields = {
  26. "search_method": fields.String,
  27. "reranking_enable": fields.Boolean,
  28. "reranking_mode": fields.String,
  29. "reranking_model": fields.Nested(reranking_model_fields),
  30. "weights": fields.Nested(weighted_score_fields, allow_null=True),
  31. "top_k": fields.Integer,
  32. "score_threshold_enabled": fields.Boolean,
  33. "score_threshold": fields.Float,
  34. }
  35. external_retrieval_model_fields = {
  36. "top_k": fields.Integer,
  37. "score_threshold": fields.Float,
  38. "score_threshold_enabled": fields.Boolean,
  39. }
  40. tag_fields = {"id": fields.String, "name": fields.String, "type": fields.String}
  41. external_knowledge_info_fields = {
  42. "external_knowledge_id": fields.String,
  43. "external_knowledge_api_id": fields.String,
  44. "external_knowledge_api_name": fields.String,
  45. "external_knowledge_api_endpoint": fields.String,
  46. }
  47. doc_metadata_fields = {"id": fields.String, "name": fields.String, "type": fields.String}
  48. icon_info_fields = {
  49. "icon_type": fields.String,
  50. "icon": fields.String,
  51. "icon_background": fields.String,
  52. "icon_url": fields.String,
  53. }
  54. dataset_detail_fields = {
  55. "id": fields.String,
  56. "name": fields.String,
  57. "description": fields.String,
  58. "provider": fields.String,
  59. "permission": fields.String,
  60. "data_source_type": fields.String,
  61. "indexing_technique": fields.String,
  62. "app_count": fields.Integer,
  63. "document_count": fields.Integer,
  64. "word_count": fields.Integer,
  65. "created_by": fields.String,
  66. "created_at": TimestampField,
  67. "updated_by": fields.String,
  68. "updated_at": TimestampField,
  69. "embedding_model": fields.String,
  70. "embedding_model_provider": fields.String,
  71. "embedding_available": fields.Boolean,
  72. "retrieval_model_dict": fields.Nested(dataset_retrieval_model_fields),
  73. "tags": fields.List(fields.Nested(tag_fields)),
  74. "doc_form": fields.String,
  75. "external_knowledge_info": fields.Nested(external_knowledge_info_fields),
  76. "external_retrieval_model": fields.Nested(external_retrieval_model_fields, allow_null=True),
  77. "doc_metadata": fields.List(fields.Nested(doc_metadata_fields)),
  78. "built_in_field_enabled": fields.Boolean,
  79. "pipeline_id": fields.String,
  80. "runtime_mode": fields.String,
  81. "chunk_structure": fields.String,
  82. "icon_info": fields.Nested(icon_info_fields),
  83. "is_published": fields.Boolean,
  84. "total_documents": fields.Integer,
  85. "total_available_documents": fields.Integer,
  86. }
  87. dataset_query_detail_fields = {
  88. "id": fields.String,
  89. "content": fields.String,
  90. "source": fields.String,
  91. "source_app_id": fields.String,
  92. "created_by_role": fields.String,
  93. "created_by": fields.String,
  94. "created_at": TimestampField,
  95. }
  96. dataset_metadata_fields = {
  97. "id": fields.String,
  98. "type": fields.String,
  99. "name": fields.String,
  100. }