Skip to content
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

Softcapping for gemma2. #2273

Merged
merged 4 commits into from
Jul 22, 2024
Merged

Softcapping for gemma2. #2273

merged 4 commits into from
Jul 22, 2024

Conversation

Narsil
Copy link
Collaborator

@Narsil Narsil commented Jul 22, 2024

What does this PR do?

Fixes # (issue)

Before submitting

  • This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
  • Did you read the contributor guideline,
    Pull Request section?
  • Was this discussed/approved via a Github issue or the forum? Please add a link
    to it if that's the case.
  • Did you make sure to update the documentation with your changes? Here are the
    documentation guidelines, and
    here are tips on formatting docstrings.
  • Did you write any new necessary tests?

Who can review?

Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
members/contributors who may be interested in your PR.

danieldk
danieldk previously approved these changes Jul 22, 2024
Copy link
Member

@danieldk danieldk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, one small comment.

@@ -925,7 +925,11 @@ def __init__(
assert self.num_kv_heads > 0

if head_size is None:
self.head_size = config.hidden_size // config.num_attention_heads
if getattr(config, "head_dim", None):
# hidden_size / num_attention_heads is wrong in `google/gemma-2-9b-it`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can pass the head dim to FlashCausalLM, similar to deepseek v2:

Avoids cluttering this constructor with too much model-specific stuff.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed, you are correct (I'm still quite confused about those numbers in the config tho, I think it's because of how they fused qkv.).

danieldk
danieldk previously approved these changes Jul 22, 2024
@Narsil Narsil merged commit 6aeb669 into main Jul 22, 2024
7 of 8 checks passed
@Narsil Narsil deleted the gemma2 branch July 22, 2024 16:27
ErikKaum pushed a commit that referenced this pull request Jul 25, 2024
* Softcapping for gemma2.

* Less clutter.

* No access to transformers config, only config_dict here.

* 0.0 is the null value in the C++ API.
ErikKaum pushed a commit that referenced this pull request Jul 26, 2024
* Softcapping for gemma2.

* Less clutter.

* No access to transformers config, only config_dict here.

* 0.0 is the null value in the C++ API.
yuanwu2017 pushed a commit to yuanwu2017/tgi-gaudi that referenced this pull request Sep 26, 2024
* Softcapping for gemma2.

* Less clutter.

* No access to transformers config, only config_dict here.

* 0.0 is the null value in the C++ API.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants