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

apply_chat_template: consistent behaviour for return_assistant_tokens_mask=True return_tensors=True #35582

Conversation

mrsndmn
Copy link
Contributor

@mrsndmn mrsndmn commented Jan 9, 2025

What does this PR do?

This PR fixes the simultaneous use of flags return_assistant_tokens_mask, return_tensors, in apply_chat_template method.

Is related to #28950 and corresponding PR #30650

Before fix

output = tokenizer.apply_chat_template(
    conversations,
    tokenize=True,
    padding=True,
    return_dict=True,
    return_assistant_tokens_mask=True,
    return_tensors='pt',
)

assert isinstance(output['attention_mask'], torch.Tensor)  # ok
assert isinstance(output['assistant_masks'], torch.Tensor) # not ok: type of `output['assistant_masks']` is `List`

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.

@yonigottesman @amyeroberts @Rocketknight1

@mrsndmn mrsndmn force-pushed the apply_chat_template_return_assistant_masks_return_tensors branch from 406d7bf to d79b446 Compare January 9, 2025 13:05
@mrsndmn mrsndmn force-pushed the apply_chat_template_return_assistant_masks_return_tensors branch from eb47736 to 7349d16 Compare January 9, 2025 13:47
@mrsndmn
Copy link
Contributor Author

mrsndmn commented Jan 26, 2025

Hi! Take a look, please

@Rocketknight1
Copy link
Member

Hi @mrsndmn, I'm sorry we missed this PR! @yonigottesman can you take a look? It's okay if you don't have time - just let me know and I can take it instead

@mrsndmn
Copy link
Contributor Author

mrsndmn commented Feb 3, 2025

Hey @yonigottesman, just checking in — did you have a chance to look at this PR? No rush, but let me know if you need anything from me!

Copy link
Collaborator

@ArthurZucker ArthurZucker left a comment

Choose a reason for hiding this comment

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

LGTM let's merge 🤗

@ArthurZucker ArthurZucker merged commit 2ba040a into huggingface:main Feb 4, 2025
23 checks passed
elvircrn pushed a commit to elvircrn/transformers that referenced this pull request Feb 13, 2025
…_mask=True return_tensors=True (huggingface#35582)

* apply_chat_template: consistent return_tensors behaviour with return_assistant_tokens_mask flag

* test_chat_template_return_assistant_tokens_mask: support tokenizers with no attention mask

* test_chat_template_return_assistant_tokens_mask: skip tokenizers with no padding token

* test_chat_template_return_assistant_tokens_mask: force tokenizer padding_side=right

---------

Co-authored-by: Eduard Allakhverdov <goncharova@airi.net>
Co-authored-by: d.tarasov <d.tarasov@airi.net>
sbucaille pushed a commit to sbucaille/transformers that referenced this pull request Feb 16, 2025
…_mask=True return_tensors=True (huggingface#35582)

* apply_chat_template: consistent return_tensors behaviour with return_assistant_tokens_mask flag

* test_chat_template_return_assistant_tokens_mask: support tokenizers with no attention mask

* test_chat_template_return_assistant_tokens_mask: skip tokenizers with no padding token

* test_chat_template_return_assistant_tokens_mask: force tokenizer padding_side=right

---------

Co-authored-by: Eduard Allakhverdov <goncharova@airi.net>
Co-authored-by: d.tarasov <d.tarasov@airi.net>
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.

3 participants