Skip to content
This repository was archived by the owner on May 1, 2025. It is now read-only.

Commit 6f89b00

Browse files
committed
update
2 parents 587d6fb + 4d706f6 commit 6f89b00

24 files changed

+195
-61
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ conda activate codetf
8787

8888
2. Install from [PyPI](https://pypi.org/project/salesforce-codetf/):
8989
```bash
90-
pip install salesforce-codetf==1.0.2.1
90+
pip install salesforce-codetf
9191
```
9292

9393
3. Alternatively, build CodeTF from source:

codetf/common/__init__.py

Whitespace-only changes.

codetf/configs/inference/causal_lm.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ causallm-codegen-350M-multi-pretrained:
77
tokenizer_url: "Salesforce/codegen-350M-multi"
88
max_prediction_length: 512
99
causallm-codegen-350M-nl-pretrained:
10-
huggingface_url: "Salesforce/codegen-350-nl"
11-
tokenizer_url: "Salesforce/codegen-350-nl"
10+
huggingface_url: "Salesforce/codegen-350M-nl"
11+
tokenizer_url: "Salesforce/codegen-350M-nl"
1212
max_prediction_length: 512
1313
causallm-codegen-2B-mono-pretrained:
1414
huggingface_url: "Salesforce/codegen-2B-mono"

codetf/configs/inference/codet5.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -140,20 +140,20 @@ codet5-plus-770M-python-pretrained:
140140
max_prediction_length: 512
141141
beam_size: 5
142142
trust_remote_code: False
143-
device_map: True
143+
device_map: False
144144
codet5-plus-770M-pretrained:
145145
huggingface_url: "Salesforce/codet5p-770m"
146146
tokenizer_url: "Salesforce/codet5p-770m"
147147
max_source_length: 512
148148
max_prediction_length: 512
149149
beam_size: 5
150150
trust_remote_code: False
151-
device_map: True
151+
device_map: False
152152
codet5-plus-220M-pretrained:
153153
huggingface_url: "Salesforce/codet5p-220m"
154154
tokenizer_url: "Salesforce/codet5p-220m"
155155
max_source_length: 512
156156
max_prediction_length: 512
157157
beam_size: 5
158158
trust_remote_code: False
159-
device_map: True
159+
device_map: False

codetf/configs/training/causal_lm.yaml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@ hyperparameters:
66
num_train_epochs: 10
77
auto_find_batch_size: True
88
batch_size: 4
9-
max_steps: 1000
10-
eval_steps: 100
11-
save_steps: 1000
129
logging_steps: 100
1310
per_device_train_batch_size: 8
1411
per_device_eval_batch_size: 8
@@ -30,3 +27,4 @@ hyperparameters:
3027
beam_size: 5
3128
max_grad_norm: 5.0
3229
adam_epsilon : 1e-06
30+
load_best_model_at_end: True

codetf/configs/training/codet5.yaml

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,6 @@ hyperparameters:
66
num_train_epochs: 1
77
auto_find_batch_size: True
88
batch_size: 4
9-
max_steps: 1000
10-
eval_steps: 100
11-
save_steps: 1000
129
logging_steps: 100
1310
per_device_train_batch_size: 8
1411
per_device_eval_batch_size: 8
@@ -30,6 +27,7 @@ hyperparameters:
3027
beam_size: 5
3128
max_grad_norm: 5.0
3229
adam_epsilon : 1e-06
30+
load_best_model_at_end: True
3331
lora:
3432
r: 8
3533
lora_alpha: 32

codetf/data_utility/codexglue_dataset.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ def load_codexglue_text_to_code_dataset(self, *args, **kwargs):
2525
dataset = load_dataset(dataset)
2626

2727
train = dataset["train"]
28+
train = train[:50]
2829
train_nl_tensors, _ = self.process_data(train["nl"])
2930
train_code_tensors, _ = self.process_data(train["code"])
3031

codetf/data_utility/human_eval_dataset.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,12 @@ class HumanEvalDataset(BaseDataset):
99
def __init__(self, tokenizer, max_length=512):
1010
super().__init__(tokenizer, max_length)
1111

12+
def get_reference(self, task):
13+
"""Builds the reference solution for the doc (sample from the test dataset)."""
14+
test_func = task["test"]
15+
entry_point = f"check({task['entry_point']})"
16+
return "\n" + test_func + "\n" + entry_point
17+
1218
def load(self):
1319
dataset = self.dataset_config["openai_humaneval"]
1420

@@ -22,9 +28,10 @@ def load(self):
2228
# without strip, the model generates commented codes ...
2329
prompts.append(self.tokenizer.eos_token + dataset[task_index]["prompt"].strip())
2430

25-
unit_test = dataset[task_index]["test"]
26-
unit_test = re.sub(r'METADATA = {[^}]*}', '', unit_test, flags=re.MULTILINE)
27-
references.append(unit_test)
31+
# unit_test = dataset[task_index]["test"]
32+
# unit_test = re.sub(r'METADATA = {[^}]*}', '', unit_test, flags=re.MULTILINE)
33+
reference = self.get_reference(dataset[task_index])
34+
references.append(reference)
2835

2936
prompt_token_ids, prompt_attention_masks = self.process_data(prompts, padding="max_length")
3037

codetf/data_utility/stackexchange_instruction_dataset.py

Whitespace-only changes.

codetf/models/__init__.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,13 @@ def load_model_pipeline(model_name, model_type="base", task="sum",
5151

5252
return model
5353

54+
def load_model_from_path(checkpoint_path, tokenizer_path, model_name, is_eval=True, load_in_8bit=False, load_in_4bit=False):
55+
model_cls = registry.get_model_class(model_name)
56+
model = model_cls.from_custom(checkpoint_path=checkpoint_path, tokenizer_path=tokenizer_path, load_in_8bit=load_in_8bit, load_in_4bit=load_in_4bit)
57+
if is_eval:
58+
model.eval()
59+
60+
return model
5461

5562
class ModelZoo:
5663
def __init__(self, config_files):

0 commit comments

Comments
 (0)