Skip to content

Make the model config override the pretrained config #170

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
4 tasks done
jlamypoirier opened this issue Mar 6, 2025 · 0 comments · Fixed by #211
Closed
4 tasks done

Make the model config override the pretrained config #170

jlamypoirier opened this issue Mar 6, 2025 · 0 comments · Fixed by #211
Assignees
Labels
enhancement New feature or request

Comments

@jlamypoirier
Copy link
Collaborator

🎯 Goal (What & Why)

Currently, a pretrained config overrides an arbitrary part of the user-specified config. This causes a lot of troubles:

I suggest flipping things around so the specified model config overrides the pretrained config. This should give us the behaviour we want in most cases:

  • Pretrained config, no base model config: All architecture parameters are imported, and so are relevant non-architecture parameters (ex. window_size). Other non-architecture parameters take the Fast-LLM default.
  • Pretrained config, base model config with non-architecture parameters: Parameters explicitly specified in the base model config are taken, others are as above.
  • Pretrained config, base model config with architecture parameters: We probably want to enforce matching values, and raise an error for any mismatch. (This would be an improvement because right now wrong values are silently ignored.)
  • No pretrained config: Same as before.

🚀 Execution Plan

We can use Fast-LLM's override mechanism as in #168.
However, we'll also need to adapt the update mechanism to get the behaviour we want for nested configs.
It could also be difficult to achieve backward compatibility.

📌 Acceptance Criteria (Must-Haves for Completion)

  • Things should work as described above

🛠️ Project Management

  • Assign the project to the Fast-LLM project.
  • Set the Estimate field (in days) in the GitHub project.
  • Use the Size field to categorize the PR size (Small/Medium/Large).
  • Assign an owner when opening the issue.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
1 participant