MCPcopy Create free account
hub / github.com/ml-explore/mlx-examples / evaluate

Function evaluate

lora/lora.py:225–240  ·  view source on GitHub ↗
(model, dataset, loss, tokenizer, batch_size, num_batches)

Source from the content-addressed store, hash-verified

223
224
225def evaluate(model, dataset, loss, tokenizer, batch_size, num_batches):
226 all_losses = []
227 ntokens = 0
228
229 # num_batches can be -1 to indicate the entire set
230 index_iterator = iter(range(num_batches)) if num_batches != -1 else iter(int, 1)
231
232 for it, batch in zip(
233 index_iterator,
234 iterate_batches(dataset, tokenizer, batch_size),
235 ):
236 losses, toks = loss(model, *batch)
237 all_losses.append((losses * toks).item())
238 ntokens += toks.item()
239
240 return np.sum(all_losses) / ntokens
241
242
243def train(model, train_set, val_set, optimizer, loss, tokenizer, args):

Callers 2

trainFunction · 0.85
lora.pyFile · 0.85

Calls 2

lossFunction · 0.85
iterate_batchesFunction · 0.70

Tested by

no test coverage detected