You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

getlisttrainingjobslogic.go 3.7 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. package ai
  2. import (
  3. "context"
  4. "github.com/jinzhu/copier"
  5. "github.com/pkg/errors"
  6. "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/svc"
  7. "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/types"
  8. "gitlink.org.cn/jcce-pcm/pcm-coordinator/pkg/utils"
  9. "gitlink.org.cn/jcce-pcm/pcm-participant-modelarts/modelarts"
  10. "gitlink.org.cn/jcce-pcm/utils/result"
  11. "gitlink.org.cn/jcce-pcm/utils/xerr"
  12. "k8s.io/apimachinery/pkg/util/json"
  13. "github.com/zeromicro/go-zero/core/logx"
  14. )
  15. type GetListTrainingJobsLogic struct {
  16. logx.Logger
  17. ctx context.Context
  18. svcCtx *svc.ServiceContext
  19. }
  20. func NewGetListTrainingJobsLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetListTrainingJobsLogic {
  21. return &GetListTrainingJobsLogic{
  22. Logger: logx.WithContext(ctx),
  23. ctx: ctx,
  24. svcCtx: svcCtx,
  25. }
  26. }
  27. func (l *GetListTrainingJobsLogic) GetListTrainingJobs(req *types.ListTrainingJobsreq) (resp *types.ListTrainingJobsresp, err error) {
  28. modelartsReq := &modelarts.ListTrainingJobsreq{}
  29. err = copier.CopyWithOption(modelartsReq, req, copier.Option{Converters: utils.Converters})
  30. listDataSetResp, err := l.svcCtx.ModelArtsRpc.GetListTrainingJobs(l.ctx, modelartsReq)
  31. if err != nil {
  32. return nil, errors.Wrapf(xerr.NewErrMsg("Failed to get db DataSet list"), "Failed to get db DataSet list err : %v ,req:%+v", err, req)
  33. }
  34. marshal, err := json.Marshal(&listDataSetResp)
  35. if err != nil {
  36. return nil, result.NewDefaultError(err.Error())
  37. }
  38. json.Unmarshal(marshal, &resp)
  39. err = copier.CopyWithOption(&resp, &listDataSetResp, copier.Option{Converters: utils.Converters})
  40. return resp, nil
  41. /* modelartsType := req.ModelartsType
  42. switch modelartsType {
  43. case "octops":
  44. octopusReq := &octopus.GetTrainJobListReq{}
  45. err = copier.CopyWithOption(octopusReq, req, copier.Option{Converters: utils.Converters})
  46. listTrainJobResp, err := l.svcCtx.OctopusRpc.GetTrainJobList(l.ctx, octopusReq)
  47. if err != nil {
  48. return nil, errors.Wrapf(xerr.NewErrMsg("Failed to get db TrainJobs list"), "Failed to get db DataSet list err : %v ,req:%+v", err, req)
  49. }
  50. marshal, err := json.Marshal(&listTrainJobResp)
  51. if err != nil {
  52. return nil, result.NewDefaultError(err.Error())
  53. }
  54. json.Unmarshal(marshal, &resp)
  55. err = copier.CopyWithOption(&resp, &listTrainJobResp, copier.Option{Converters: utils.Converters})
  56. case "cn-north-4.myhuawei":
  57. modelartsReq := &modelarts.ListTrainingJobsreq{}
  58. err = copier.CopyWithOption(modelartsReq, req, copier.Option{Converters: utils.Converters})
  59. listDataSetResp, err := l.svcCtx.ModelArtsRpc.GetListTrainingJobs(l.ctx, modelartsReq)
  60. if err != nil {
  61. return nil, errors.Wrapf(xerr.NewErrMsg("Failed to get db TrainJobs list"), "Failed to get db DataSet list err : %v ,req:%+v", err, req)
  62. }
  63. marshal, err := json.Marshal(&listDataSetResp)
  64. if err != nil {
  65. return nil, result.NewDefaultError(err.Error())
  66. }
  67. json.Unmarshal(marshal, &resp)
  68. err = copier.CopyWithOption(&resp, &listDataSetResp, copier.Option{Converters: utils.Converters})
  69. case "cn-east-293.njaci":
  70. modelartsReq := &modelarts.ListTrainingJobsreq{}
  71. err = copier.CopyWithOption(modelartsReq, req, copier.Option{Converters: utils.Converters})
  72. listDataSetResp, err := l.svcCtx.ModelArtsRpc.GetListTrainingJobs(l.ctx, modelartsReq)
  73. if err != nil {
  74. return nil, errors.Wrapf(xerr.NewErrMsg("Failed to get db TrainJobs list"), "Failed to get db DataSet list err : %v ,req:%+v", err, req)
  75. }
  76. marshal, err := json.Marshal(&listDataSetResp)
  77. if err != nil {
  78. return nil, result.NewDefaultError(err.Error())
  79. }
  80. json.Unmarshal(marshal, &resp)
  81. err = copier.CopyWithOption(&resp, &listDataSetResp, copier.Option{Converters: utils.Converters})
  82. }*/
  83. }

PCM is positioned as Software stack over Cloud, aiming to build the standards and ecology of heterogeneous cloud collaboration for JCC in a non intrusive and autonomous peer-to-peer manner.