microsoft / microsoft/KBLaM

Questions concerning train.py and its parameters

Open
#51 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Jupyter Notebook
Stars
1.5k
Forks
125
Avg merge
22d 8m
Merged PRs (30d)
1

Description

  1. Running training with the following call does not store the final model:

python train.py --dataset_dir ../datasets --train_dataset enron --N 120000 --B 20 --total_steps 601 --encoder_spec OAI --use_oai_embd --key_embd_src key --use_data_aug --use_cached_embd --hf_token MYTOKEN

Which argument needs to be given to store the trained model?

  1. What is the meaning semantics of key_embd_src?

In the paper you are talking about name-property-value triple.
I understand that the key is composed from the name embedding and the property embedding.

I understand that with key_embd_src == "key" key_embd is set to the embedding of name but is the value_embd is set according to the construction in the paper to the embedding of property? Or as its name suggests to the embedding of the value part of the knowledge triple?

What is then the meaning of key_embd_src == "answer" resp. key_embd_src == "question" mean?

  1. The enron and synthetic datasets consists of entries for

    • name
    • description_type
    • description_type
    • Q
    • A
    • key_string
    • (extended_q)
    • (extended_a)
      Which parts are used for the name-property-value pairs? How are they related to the former
      query?
  2. As I could figure out from the code of train.py, the latter two related to the
    argument "use_extended_qa" and a corresponding dataset is loaded in line 857 + 858

if use_extended_qa: dataset = json.load(open(os.path.join(dataset_dir, f"{dataset_name}_augmented.json")))

But the corresponding file "synthetic_augmented.json" is missing in the datasets directory
Does it suffice to copy the file and rename it accordingly?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review train.py, including the training invocation and dataset-loading lines 857-858, then inspect the datasets directory and the referenced synthetic_augmented.json file. Done means documenting the model-saving argument, key_embd_src meanings, dataset field usage, and whether the missing augmented file is expected or needs a separate fix.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
documentation, machine-learning
Issue type
Documentation
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.