{"source":"https://contributable.vercel.app","licence":"CC BY 4.0","methodology":"https://contributable.vercel.app/methodology","v":2,"owner":"kubeflow","name":"trainer","updatedAt":"2026-10-11T05:36:44.048Z","coveredSince":"2025-10-04T14:56:03.404Z","facts":{"owner":"kubeflow","name":"trainer","description":"Distributed AI Model Training and LLM Fine-Tuning on Kubernetes","stars":2242,"forks":1075,"archived":false,"isFork":false,"license":"Apache-2.0","defaultBranch":"master","pushedAt":"2026-10-11T02:31:05Z","createdAt":"2017-06-28T18:38:14Z","topics":["ai","distributed","fine-tuning","gpu","huggingface","jax","kubeflow","kubernetes","llm","machine-learning","mlops","python","pytorch","tensorflow","xgboost"],"languages":{"Go":1631975,"Rust":144500,"Python":97109,"Shell":43441,"Makefile":16662,"Go Template":12800,"Dockerfile":10554,"HCL":3350},"frameworks":["Cobra","gRPC","Kubernetes client"],"commits90d":220,"releases365d":13,"lastReleaseAt":"2026-08-18T19:16:42Z","gettingStarted":{"contributing":true,"codeOfConduct":true,"issueTemplates":true,"devcontainer":false,"cla":"none","channels":[],"policy":null}},"metrics":{"computedAt":"2026-10-11T05:36:44.048Z","outsidePulls":{"cohort":{"n":116,"merged":41,"closedUnmerged":26,"open":49,"mergeRate":0.6119402985074627,"openShare":0.4224137931034483,"evidence":{"merged":[4049,4007,4005,3989,3987,3973,3971,3968,3966,3951,3926,3922,3915,3912,3910,3904,3891,3886,3883,3880],"closedUnmerged":[4034,4024,4020,3969,3964,3916,3890,3878,3876,3875,3868,3865,3864,3863,3832,3830,3808,3764,3746,3700],"open":[4050,4045,4032,4029,4026,4021,4003,4002,3998,3997,3992,3988,3974,3963,3961,3958,3948,3945,3933,3932]}},"firstTimers":{"n":40,"merged":11,"closedUnmerged":10,"open":19,"mergeRate":0.5238095238095238,"openShare":0.475,"evidence":{"merged":[3989,3968,3951,3926,3782,3714,3682,3649,3624,3601,3599],"closedUnmerged":[4034,4020,3964,3875,3864,3863,3830,3808,3764,3700],"open":[4050,4045,4029,4021,3933,3931,3892,3871,3869,3866,3829,3783,3740,3736,3719,3717,3668,3657,3648]}},"year":{"n":265,"merged":125,"closedUnmerged":80,"open":60,"mergeRate":0.6097560975609756,"openShare":0.22641509433962265,"evidence":{"merged":[4049,4007,4005,3989,3987,3973,3971,3968,3966,3951,3926,3922,3915,3912,3910,3904,3891,3886,3883,3880],"closedUnmerged":[4034,4024,4020,3969,3964,3916,3890,3878,3876,3875,3868,3865,3864,3863,3832,3830,3808,3764,3746,3700],"open":[4050,4045,4032,4029,4026,4021,4003,4002,3998,3997,3992,3988,3974,3963,3961,3958,3948,3945,3933,3932]}}},"pullFirstResponse":{"n":116,"answered":85,"waiting":31,"medianHours":103.91583333333334,"p75Hours":null,"within48h":0.37068965517241326,"within7d":0.5517241379310339,"curve":[{"hours":0.05555555555555555,"waiting":0.9913793103448276},{"hours":0.17166666666666666,"waiting":0.9741379310344828},{"hours":0.3522222222222222,"waiting":0.956896551724138},{"hours":0.44027777777777777,"waiting":0.9482758620689655},{"hours":0.5566666666666666,"waiting":0.9310344827586208},{"hours":0.8738888888888889,"waiting":0.9137931034482759},{"hours":1.7152777777777777,"waiting":0.8965517241379312},{"hours":2.470833333333333,"waiting":0.8793103448275864},{"hours":3.0119444444444445,"waiting":0.870689655172414},{"hours":5.682777777777778,"waiting":0.8534482758620693},{"hours":7.001388888888889,"waiting":0.8362068965517245},{"hours":10.533055555555556,"waiting":0.8189655172413798},{"hours":11.927777777777777,"waiting":0.8103448275862073},{"hours":18.733333333333334,"waiting":0.7931034482758625},{"hours":19.34111111111111,"waiting":0.7758620689655177},{"hours":25.431944444444444,"waiting":0.7586206896551728},{"hours":28.86111111111111,"waiting":0.7413793103448281},{"hours":29.633055555555554,"waiting":0.7327586206896556},{"hours":30.225833333333334,"waiting":0.7155172413793108},{"hours":31.559444444444445,"waiting":0.698275862068966},{"hours":32.772777777777776,"waiting":0.6810344827586211},{"hours":34.26833333333333,"waiting":0.6637931034482764},{"hours":34.78861111111111,"waiting":0.655172413793104},{"hours":40.239444444444445,"waiting":0.6379310344827591},{"hours":48.60472222222222,"waiting":0.6206896551724143},{"hours":55.20805555555555,"waiting":0.6034482758620695},{"hours":56.5775,"waiting":0.5948275862068971},{"hours":60.130833333333335,"waiting":0.5775862068965524},{"hours":65.87611111111111,"waiting":0.5603448275862075},{"hours":73.32111111111111,"waiting":0.5431034482758628},{"hours":80.83916666666667,"waiting":0.525862068965518},{"hours":87.03166666666667,"waiting":0.5172413793103455},{"hours":103.91583333333334,"waiting":0.5000000000000007},{"hours":105.06805555555556,"waiting":0.4827586206896558},{"hours":136.78916666666666,"waiting":0.46551724137931094},{"hours":162.09444444444443,"waiting":0.4482758620689661},{"hours":175.0911111111111,"waiting":0.43965517241379365},{"hours":200.41305555555556,"waiting":0.4224137931034488},{"hours":219.23527777777778,"waiting":0.4051724137931039},{"hours":264.4711111111111,"waiting":0.38793103448275906},{"hours":317.92861111111114,"waiting":0.37931034482758663},{"hours":332.6252777777778,"waiting":0.36206896551724177},{"hours":375.36055555555555,"waiting":0.3448275862068969},{"hours":388.84166666666664,"waiting":0.32758620689655205},{"hours":547.8058333333333,"waiting":0.3103448275862072},{"hours":563.3652777777778,"waiting":0.30172413793103475},{"hours":695.0216666666666,"waiting":0.2844827586206899},{"hours":1064.465,"waiting":0.264992954244032}],"evidence":{"answered":[4049,4045,4034,4029,4021,4007,4005,4002,3998,3997,3989,3988,3987,3973,3971,3968,3966,3964,3961,3958],"waiting":[4050,4032,4026,4024,4020,4003,3992,3974,3969,3963,3948,3945,3931,3928,3911,3875,3871,3865,3864,3863]}},"timeToMerge":{"n":116,"merged":41,"medianHours":null,"evidence":[4049,4007,4005,3989,3987,3973,3971,3968,3966,3951,3926,3922,3915,3912,3910,3904,3891,3886,3883,3880]},"issueFirstResponse":{"n":98,"answered":73,"waiting":25,"medianHours":95.4563888888889,"p75Hours":2418.659166666667,"within48h":0.34693877551020447,"within7d":0.6020408163265312,"curve":[{"hours":0.14527777777777778,"waiting":0.9897959183673469},{"hours":0.43805555555555553,"waiting":0.9693877551020408},{"hours":0.5247222222222222,"waiting":0.9591836734693877},{"hours":0.5980555555555556,"waiting":0.9387755102040816},{"hours":0.9591666666666666,"waiting":0.9285714285714285},{"hours":1.1536111111111111,"waiting":0.9081632653061223},{"hours":1.3044444444444445,"waiting":0.8979591836734693},{"hours":1.7305555555555556,"waiting":0.8775510204081631},{"hours":2.9766666666666666,"waiting":0.8673469387755101},{"hours":3.5258333333333334,"waiting":0.8469387755102039},{"hours":4.3725,"waiting":0.8367346938775508},{"hours":7.035277777777778,"waiting":0.8163265306122447},{"hours":7.597777777777778,"waiting":0.8061224489795916},{"hours":8.682777777777778,"waiting":0.7857142857142855},{"hours":9.220277777777778,"waiting":0.7755102040816324},{"hours":11.429444444444444,"waiting":0.7551020408163263},{"hours":14.01361111111111,"waiting":0.7346938775510201},{"hours":15.625555555555556,"waiting":0.724489795918367},{"hours":19.513333333333332,"waiting":0.7040816326530609},{"hours":19.925833333333333,"waiting":0.6938775510204078},{"hours":34.01555555555556,"waiting":0.6734693877551017},{"hours":39.348333333333336,"waiting":0.6632653061224486},{"hours":48.20722222222222,"waiting":0.6428571428571425},{"hours":54.240833333333335,"waiting":0.6326530612244894},{"hours":60.98444444444444,"waiting":0.6122448979591832},{"hours":65.82277777777777,"waiting":0.6020408163265302},{"hours":69.26583333333333,"waiting":0.581632653061224},{"hours":70.30083333333333,"waiting":0.571428571428571},{"hours":76.06916666666666,"waiting":0.5510204081632648},{"hours":83.81305555555555,"waiting":0.5408163265306117},{"hours":93.83055555555555,"waiting":0.5204081632653056},{"hours":95.40027777777777,"waiting":0.5102040816326525},{"hours":108.715,"waiting":0.4897959183673464},{"hours":115.16277777777778,"waiting":0.4693877551020402},{"hours":128.63194444444446,"waiting":0.4591836734693872},{"hours":140.25805555555556,"waiting":0.4387755102040811},{"hours":142.26722222222222,"waiting":0.42857142857142805},{"hours":159.18944444444443,"waiting":0.4081632653061219},{"hours":165.30388888888888,"waiting":0.39795918367346883},{"hours":240.86666666666667,"waiting":0.37755102040816274},{"hours":248.115,"waiting":0.3673469387755097},{"hours":267.2536111111111,"waiting":0.3469387755102036},{"hours":281.0761111111111,"waiting":0.3367346938775505},{"hours":313.8905555555556,"waiting":0.3163265306122444},{"hours":457.0211111111111,"waiting":0.3061224489795914},{"hours":531.7688888888889,"waiting":0.28571428571428537},{"hours":584.6955555555555,"waiting":0.27551020408163235},{"hours":2418.659166666667,"waiting":0.22076138147566696}],"evidence":{"answered":[4052,4033,4031,4030,4028,4019,4006,3999,3995,3994,3993,3975,3967,3965,3962,3957,3956,3955,3954,3929],"waiting":[4048,4025,4001,3996,3991,3990,3979,3972,3970,3927,3917,3909,3906,3885,3882,3879,3820,3738,3713,3688]}},"starter":{"counts":{"available":0,"claimed":1,"in-progress":3,"stale":0},"helpWantedAvailable":0,"issues":[{"n":3781,"title":"Run MPI E2E tests for DeepSpeed and MLX examples","state":"in-progress","label":"beginner","createdAt":"2026-07-21T13:21:30Z","updatedAt":"2026-10-08T10:25:47Z"},{"n":3174,"title":"Support local iceberg table with parquet files to local validation and e2es","state":"in-progress","label":"beginner","createdAt":"2026-02-04T16:52:14Z","updatedAt":"2026-08-07T09:37:31Z"},{"n":3120,"title":"Automate managing of network policy resources for every train job","state":"claimed","label":"beginner","createdAt":"2026-01-23T16:08:27Z","updatedAt":"2026-08-28T19:44:16Z"},{"n":2903,"title":"KEP-2903: Support Elastic PyTorch in TrainJob","state":"in-progress","label":"help-wanted","createdAt":"2025-10-21T19:11:54Z","updatedAt":"2026-09-09T22:58:25Z"},{"n":2839,"title":"KEP-2839: Kubeflow Dynamic LLM Trainer Framework","state":"in-progress","label":"beginner","createdAt":"2025-09-19T15:09:19Z","updatedAt":"2026-09-02T15:10:35Z"}]},"responseWindow":{"hours":[2,1,0,0,1,0,0,0,0,0,4,5,12,12,33,11,17,6,9,7,3,6,1,3,15,1,1,0,0,0,3,9,8,3,0,3,13,17,23,4,9,22,15,17,4,4,2,1,7,2,0,1,0,4,0,1,5,0,0,3,16,15,16,6,10,13,31,22,11,3,6,1,0,2,2,0,0,1,1,6,4,3,2,2,2,8,11,9,15,7,23,21,25,2,1,1,7,11,8,2,3,0,0,5,2,10,3,5,6,12,22,4,10,20,29,12,15,9,8,15,29,0,17,0,2,0,1,1,0,3,0,0,0,2,3,2,6,3,1,1,18,4,0,0,0,0,0,0,0,0,0,0,3,3,2,0,3,1,7,5,0,2,10,8,0,0,4,0],"people":16,"replies":987},"activeMaintainers":19},"series":[{"week":"2025-10-12","opened":7,"merged":7,"answered7d":6,"activity":23},{"week":"2025-10-19","opened":2,"merged":2,"answered7d":1,"activity":10},{"week":"2025-10-26","opened":3,"merged":3,"answered7d":2,"activity":27},{"week":"2025-11-02","opened":4,"merged":4,"answered7d":4,"activity":47},{"week":"2025-11-09","opened":2,"merged":2,"answered7d":2,"activity":103},{"week":"2025-11-16","opened":2,"merged":1,"answered7d":1,"activity":30},{"week":"2025-11-23","opened":5,"merged":5,"answered7d":4,"activity":47},{"week":"2025-11-30","opened":5,"merged":2,"answered7d":4,"activity":9},{"week":"2025-12-07","opened":2,"merged":2,"answered7d":2,"activity":33},{"week":"2025-12-14","opened":2,"merged":1,"answered7d":2,"activity":19},{"week":"2025-12-21","opened":2,"merged":1,"answered7d":2,"activity":32},{"week":"2025-12-28","opened":0,"merged":0,"answered7d":0,"activity":9},{"week":"2026-01-04","opened":7,"merged":4,"answered7d":2,"activity":39},{"week":"2026-01-11","opened":5,"merged":1,"answered7d":2,"activity":68},{"week":"2026-01-18","opened":2,"merged":0,"answered7d":2,"activity":84},{"week":"2026-01-25","opened":5,"merged":4,"answered7d":3,"activity":69},{"week":"2026-02-01","opened":4,"merged":1,"answered7d":2,"activity":75},{"week":"2026-02-08","opened":6,"merged":3,"answered7d":5,"activity":83},{"week":"2026-02-15","opened":4,"merged":2,"answered7d":0,"activity":107},{"week":"2026-02-22","opened":5,"merged":2,"answered7d":3,"activity":87},{"week":"2026-03-01","opened":6,"merged":2,"answered7d":4,"activity":45},{"week":"2026-03-08","opened":15,"merged":10,"answered7d":6,"activity":122},{"week":"2026-03-15","opened":9,"merged":2,"answered7d":5,"activity":84},{"week":"2026-03-22","opened":6,"merged":2,"answered7d":2,"activity":35},{"week":"2026-03-29","opened":3,"merged":0,"answered7d":1,"activity":24},{"week":"2026-04-05","opened":3,"merged":2,"answered7d":1,"activity":18},{"week":"2026-04-12","opened":3,"merged":2,"answered7d":2,"activity":76},{"week":"2026-04-19","opened":3,"merged":0,"answered7d":2,"activity":75},{"week":"2026-04-26","opened":1,"merged":1,"answered7d":1,"activity":57},{"week":"2026-05-03","opened":3,"merged":3,"answered7d":3,"activity":73},{"week":"2026-05-10","opened":5,"merged":3,"answered7d":4,"activity":82},{"week":"2026-05-17","opened":8,"merged":5,"answered7d":6,"activity":55},{"week":"2026-05-24","opened":6,"merged":4,"answered7d":5,"activity":48},{"week":"2026-05-31","opened":1,"merged":0,"answered7d":0,"activity":51},{"week":"2026-06-07","opened":3,"merged":2,"answered7d":2,"activity":51},{"week":"2026-06-14","opened":3,"merged":2,"answered7d":3,"activity":71},{"week":"2026-06-21","opened":5,"merged":3,"answered7d":4,"activity":68},{"week":"2026-06-28","opened":14,"merged":4,"answered7d":7,"activity":132},{"week":"2026-07-05","opened":4,"merged":3,"answered7d":4,"activity":65},{"week":"2026-07-12","opened":10,"merged":2,"answered7d":5,"activity":209},{"week":"2026-07-19","opened":2,"merged":1,"answered7d":2,"activity":101},{"week":"2026-07-26","opened":7,"merged":3,"answered7d":3,"activity":54},{"week":"2026-08-02","opened":16,"merged":2,"answered7d":3,"activity":83},{"week":"2026-08-09","opened":16,"merged":10,"answered7d":12,"activity":96},{"week":"2026-08-16","opened":13,"merged":2,"answered7d":8,"activity":127},{"week":"2026-08-23","opened":15,"merged":7,"answered7d":8,"activity":137},{"week":"2026-08-30","opened":5,"merged":0,"answered7d":2,"activity":47},{"week":"2026-09-06","opened":9,"merged":2,"answered7d":3,"activity":65},{"week":"2026-09-13","opened":4,"merged":2,"answered7d":1,"activity":34},{"week":"2026-09-20","opened":16,"merged":1,"answered7d":5,"activity":48},{"week":"2026-09-27","opened":13,"merged":4,"answered7d":9,"activity":61},{"week":"2026-10-04","opened":15,"merged":2,"answered7d":8,"activity":155}],"trend":{"flag":"steady","recentMedianHours":150.74583333333334,"previousMedianHours":162.09444444444443,"recentN":48,"previousN":42,"openedThisWeek":15,"openedLastWeek":13},"programs":[{"program":"gsoc","slug":"kubeflow","name":"Kubeflow","years":[2024,2025,2026]}]}