MCPcopy Create free account
hub / github.com/OpenDriveLab/ReSim / process_fn

Function process_fn

SwissArmyTransformer/tests/test_jsonlds.py:15–32  ·  view source on GitHub ↗
(src, seq_len)

Source from the content-addressed store, hash-verified

13'--iterable-dataset', '--split','1', '--num-workers', '0'])
14
15def process_fn(src, seq_len):
16 tokenizer = AutoTokenizer.from_pretrained("/mnt/shared/official_pretrains/hf_home/chatglm2-6b", trust_remote_code=True, local_files_only=True)
17
18 buffered_token_ids = None
19 eos_id = torch.tensor([tokenizer.eos_token_id])
20
21 for x in src:
22 type_id = 0 if 'code' in x else 1
23 txt = x['code'] if 'code' in x else x['content']
24 tokenized_ids = torch.tensor(tokenizer.encode(txt))
25 if buffered_token_ids is None:
26 buffered_token_ids = tokenized_ids
27 else:
28 buffered_token_ids = torch.cat((buffered_token_ids, eos_id, tokenized_ids), dim=0)
29 # yield per seq_len
30 while buffered_token_ids.shape[0] >= seq_len:
31 yield {'txt': buffered_token_ids[:seq_len], 'type_id': type_id}
32 buffered_token_ids = buffered_token_ids[seq_len:]
33
34def create_func(path, args):
35 return JsonlIterableDataset(path, partial(process_fn, seq_len=512), seed=1, shuffle_buffer=1)

Callers

nothing calls this directly

Calls 2

from_pretrainedMethod · 0.45
encodeMethod · 0.45

Tested by

no test coverage detected