Run a wandb sweep agent.
Calls wandb.agent(sweep_id, count=count, project=project). After this returns, call wandb_config_get to read the sampled hyperparameters, run your training loop, then call wandb_finish.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| character(len=*), | intent(in) | :: | sweep_id |
Sweep ID returned by wandb_sweep. |
||
| character(len=*), | intent(in) | :: | project |
wandb project name. |
||
| integer, | intent(in), | optional | :: | count |
Number of runs to execute (0 = until sweep is done). |
|
| character(len=*), | intent(in), | optional | :: | entity |
Optional wandb entity/team. |
subroutine wandb_agent(sweep_id, project, count, entity) !! Run a wandb sweep agent. !! !! Calls wandb.agent(sweep_id, count=count, project=project). After this !! returns, call wandb_config_get to read the sampled hyperparameters, !! run your training loop, then call wandb_finish. !! !! @param sweep_id Sweep ID returned by wandb_sweep. !! @param project wandb project name. !! @param count Number of runs to execute (0 = until sweep is done). !! @param entity Optional wandb entity/team. character(len=*), intent(in) :: sweep_id character(len=*), intent(in) :: project integer, optional, intent(in) :: count character(len=*), optional, intent(in) :: entity character(len=:), allocatable :: c_entity integer(c_int) :: rc, c_count c_count = 0_c_int if(present(count)) c_count = int(count, c_int) if(present(entity))then c_entity = entity // c_null_char else c_entity = c_null_char end if rc = wandb_agent_c( & sweep_id // c_null_char, & project // c_null_char, & c_entity, & c_count & ) if(rc /= 0)then write(0,*) "[wf] WARNING: wandb_agent failed (rc=", rc, ")" end if end subroutine wandb_agent