workflow_run_fields.py 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. from flask_restful import fields
  2. from fields.end_user_fields import simple_end_user_fields
  3. from fields.member_fields import simple_account_fields
  4. from libs.helper import TimestampField
  5. workflow_run_for_log_fields = {
  6. "id": fields.String,
  7. "version": fields.String,
  8. "status": fields.String,
  9. "error": fields.String,
  10. "elapsed_time": fields.Float,
  11. "total_tokens": fields.Integer,
  12. "total_steps": fields.Integer,
  13. "created_at": TimestampField,
  14. "finished_at": TimestampField,
  15. }
  16. workflow_run_for_list_fields = {
  17. "id": fields.String,
  18. "sequence_number": fields.Integer,
  19. "version": fields.String,
  20. "status": fields.String,
  21. "elapsed_time": fields.Float,
  22. "total_tokens": fields.Integer,
  23. "total_steps": fields.Integer,
  24. "created_by_account": fields.Nested(simple_account_fields, attribute="created_by_account", allow_null=True),
  25. "created_at": TimestampField,
  26. "finished_at": TimestampField,
  27. }
  28. advanced_chat_workflow_run_for_list_fields = {
  29. "id": fields.String,
  30. "conversation_id": fields.String,
  31. "message_id": fields.String,
  32. "sequence_number": fields.Integer,
  33. "version": fields.String,
  34. "status": fields.String,
  35. "elapsed_time": fields.Float,
  36. "total_tokens": fields.Integer,
  37. "total_steps": fields.Integer,
  38. "created_by_account": fields.Nested(simple_account_fields, attribute="created_by_account", allow_null=True),
  39. "created_at": TimestampField,
  40. "finished_at": TimestampField,
  41. }
  42. advanced_chat_workflow_run_pagination_fields = {
  43. "limit": fields.Integer(attribute="limit"),
  44. "has_more": fields.Boolean(attribute="has_more"),
  45. "data": fields.List(fields.Nested(advanced_chat_workflow_run_for_list_fields), attribute="data"),
  46. }
  47. workflow_run_pagination_fields = {
  48. "limit": fields.Integer(attribute="limit"),
  49. "has_more": fields.Boolean(attribute="has_more"),
  50. "data": fields.List(fields.Nested(workflow_run_for_list_fields), attribute="data"),
  51. }
  52. workflow_run_detail_fields = {
  53. "id": fields.String,
  54. "sequence_number": fields.Integer,
  55. "version": fields.String,
  56. "graph": fields.Raw(attribute="graph_dict"),
  57. "inputs": fields.Raw(attribute="inputs_dict"),
  58. "status": fields.String,
  59. "outputs": fields.Raw(attribute="outputs_dict"),
  60. "error": fields.String,
  61. "elapsed_time": fields.Float,
  62. "total_tokens": fields.Integer,
  63. "total_steps": fields.Integer,
  64. "created_by_role": fields.String,
  65. "created_by_account": fields.Nested(simple_account_fields, attribute="created_by_account", allow_null=True),
  66. "created_by_end_user": fields.Nested(simple_end_user_fields, attribute="created_by_end_user", allow_null=True),
  67. "created_at": TimestampField,
  68. "finished_at": TimestampField,
  69. }
  70. workflow_run_node_execution_fields = {
  71. "id": fields.String,
  72. "index": fields.Integer,
  73. "predecessor_node_id": fields.String,
  74. "node_id": fields.String,
  75. "node_type": fields.String,
  76. "title": fields.String,
  77. "inputs": fields.Raw(attribute="inputs_dict"),
  78. "process_data": fields.Raw(attribute="process_data_dict"),
  79. "outputs": fields.Raw(attribute="outputs_dict"),
  80. "status": fields.String,
  81. "error": fields.String,
  82. "elapsed_time": fields.Float,
  83. "execution_metadata": fields.Raw(attribute="execution_metadata_dict"),
  84. "extras": fields.Raw,
  85. "created_at": TimestampField,
  86. "created_by_role": fields.String,
  87. "created_by_account": fields.Nested(simple_account_fields, attribute="created_by_account", allow_null=True),
  88. "created_by_end_user": fields.Nested(simple_end_user_fields, attribute="created_by_end_user", allow_null=True),
  89. "finished_at": TimestampField,
  90. }
  91. workflow_run_node_execution_list_fields = {
  92. "data": fields.List(fields.Nested(workflow_run_node_execution_fields)),
  93. }