1. 14 Sep, 2023 3 commits
    • Joshua Lochner's avatar
      [Whisper] Fix word-level timestamps for audio < 30 seconds (#25607) · 95fe0f5d
      Joshua Lochner authored
      
      
      * Fix word-level timestamps for audio < 30 seconds
      
      * Fix code quality
      
      * fix unit tests
      
      * Fix unit tests
      
      * Fix unit test
      
      * temp: print out result
      
      * temp: set max diff to None
      
      * fix unit tests
      
      * fix typo
      
      * Fix typo
      Co-authored-by: default avatarArthur <48595927+ArthurZucker@users.noreply.github.com>
      
      * Use generation config for `num_frames`
      
      * fix docs
      
      * Move `num_frames` to kwargs
      
      * compute stride/attn_mask once
      
      * mark test as slow
      
      ---------
      Co-authored-by: default avatarArthur <48595927+ArthurZucker@users.noreply.github.com>
      Co-authored-by: default avatarsanchit-gandhi <sanchit@huggingface.co>
      95fe0f5d
    • Sanchit Gandhi's avatar
      [MusicGen] Add sampling rate to config (#26136) · 44a0490d
      Sanchit Gandhi authored
      
      
      * [MusicGen] Add sampling rate to config
      
      * remove tiny
      
      * make property
      
      * Update tests/pipelines/test_pipelines_text_to_audio.py
      Co-authored-by: default avatarArthur <48595927+ArthurZucker@users.noreply.github.com>
      
      * style
      
      ---------
      Co-authored-by: default avatarArthur <48595927+ArthurZucker@users.noreply.github.com>
      44a0490d
    • Matt's avatar
      Overhaul Conversation class and prompt templating (#25323) · 866df66f
      Matt authored
      
      
      * First commit while I figure this out
      
      * make fixup
      
      * Remove unused method
      
      * Store prompt attrib
      
      * Fix prompt argument for tests
      
      * Make same changes in fast tokenizer
      
      * Remove global prompts from fast tokenizer too
      
      * stash commit
      
      * stash commit
      
      * Migrate PromptConfig to its True Final Location
      
      * Replace Conversation entirely with the new class
      
      * Import/dependency fixes
      
      * Import/dependency fixes
      
      * Change format for lots of default prompts
      
      * More default prompt fixups
      
      * Revert llama old methods so we can compare
      
      * Fix some default configs
      
      * Fix some default configs
      
      * Fix misspelled kwarg
      
      * Fixes for Blenderbot
      
      * make fixup
      
      * little rebase cleanup
      
      * Add basic documentation
      
      * Quick doc fix
      
      * Truncate docstring for now
      
      * Add handling for the case when messages is a single string
      
      * Quick llama merges
      
      * Update conversational pipeline and tests
      
      * Add a couple of legacy properties for backward compatibility
      
      * More legacy handling
      
      * Add docstring for build_conversation_input_ids
      
      * Restructure PromptConfig
      
      * Let's start T E M P L A T I N G
      
      * Refactor all default configs to use templates instead
      
      * Revert changes to the special token properties since we don't need them anymore
      
      * More class templates
      
      * Make the sandbox even sandier
      
      * Everything replaced with pure templating
      
      * Remove docs for PromptConfig
      
      * Add testing and optional requirement boilerplate
      
      * Fix imports and make fixup
      
      * Fix LLaMA tests and add Conversation docstring
      
      * Finally get LLaMA working with the template system
      
      * Finally get LLaMA working with the template system
      
      * make fixup
      
      * make fixup
      
      * fmt-off for the long lists of test tokens
      
      * Rename method to apply_chat_template for now
      
      * Start on documentation
      
      * Make chat_template a property that reads through to the default if it's not set
      
      * Expand docs
      
      * Expand chat templating doc some more
      
      * trim/lstrip blocks by default and update doc
      
      * Few doc tweaks
      
      * rebase cleanup
      
      * Clarify docstring
      
      * rebase cleanup
      
      * rebase cleanup
      
      * make fixup
      
      * Quick doc edit
      
      * Reformat the standard template to match ChatML
      
      * Re-add PEFT check
      
      * Update docs/source/en/chat_templating.md
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      
      * Add apply_chat_template to the tokenizer doc
      
      * make fixup
      
      * Add doc links
      
      * Fix chat links
      
      * Fix chat links
      
      * Explain system messages in the doc
      
      * Add chat template test
      
      * Proper save-loading for chat template attribute
      
      * Add test skips for layout models
      
      * Remove _build_conversation_input_ids, add default_chat_template to code_llama
      
      * Make sure all LLaMA models are using the latest template
      
      * Remove default_system_prompt block in code_llama because it has no default prompt
      
      * Update ConversationPipeline preprocess
      
      * Add correct #Copied from links to the default_chat_templates
      
      * Remove unneeded type checking line
      
      * Add a dummy mark_processsed method
      
      * Reorganize Conversation to have **deprecated_kwargs
      
      * Update chat_templating.md
      
      * Quick fix to LLAMA tests
      
      * Small doc tweaks
      
      * Add proper docstrings and "copied from" statements to all default chat templates
      
      * Merge use_default_system_prompt support for code_llama too
      
      * Improve clarity around self.chat_template
      
      * Docstring fix
      
      * Fix blenderbot default template
      
      * More doctest fix
      
      * Break out some tokenizer kwargs
      
      * Update doc to explain default templates
      
      * Quick tweaks to tokenizer args
      
      * Cleanups for tokenizer args
      
      * Add note about cacheing
      
      * Quick tweak to the chat-templating doc
      
      * Update the LLaMA template with error checking and correct system message embedding
      
      * make fixup
      
      * make fixup
      
      * add requires_jinja
      
      * Cleanup to expected output formatting
      
      * Add cacheing
      
      * Fix typo in llama default template
      
      * Update LLaMA tests
      
      * Update documentation
      
      * Improved legacy handling in the Conversation class
      
      * Update Jinja template with proper error handling
      
      * Quick bugfix
      
      * Proper exception raising
      
      * Change cacheing behaviour so it doesn't try to pickle an entire Jinja env
      
      * make fixup
      
      * rebase cleanup
      
      ---------
      Co-authored-by: default avatarPatrick von Platen <patrick.v.platen@gmail.com>
      866df66f
  2. 05 Sep, 2023 2 commits
  3. 01 Sep, 2023 1 commit
  4. 31 Aug, 2023 1 commit
  5. 30 Aug, 2023 1 commit
    • Juan Pizarro's avatar
      Add Blip2 model in VQA pipeline (#25532) · 09dc9951
      Juan Pizarro authored
      * Add Blip2 model in VQA pipeline
      
      * use require_torch_gpu for test_large_model_pt_blip2
      
      * use can_generate in vqa pipeline
      
      * test Blip2ForConditionalGeneration using float16
      
      * remove custom can_generate from Blip2ForConditionalGeneration
      09dc9951
  6. 24 Aug, 2023 1 commit
  7. 18 Aug, 2023 1 commit
  8. 17 Aug, 2023 1 commit
    • Yoach Lacombe's avatar
      Add Text-To-Speech pipeline (#24952) · b8f69d0d
      Yoach Lacombe authored
      
      
      * add AutoModelForTextToSpeech class
      
      * add TTS pipeline and tessting
      
      * add docstrings to text_to_speech pipeline
      
      * fix torch dependency
      
      * corrector 'processor is None' case in Pipeline
      
      * correct repo id
      
      * modify text-to-speech -> text-to-audio
      
      * remove processor
      
      * rename text_to_speech pipelines files to text_audio
      
      * add textToWaveform and textToSpectrogram instead of textToAudio classes
      
      * update TTS pipeline to the bare minimum
      
      * update tests TTS pipeline
      
      * make style and erase useless import torch in TTS pipeline tests
      
      * modify how to check if generate or forward in TTS pipeline
      
      * remove unnecessary extra new lines
      
      * Apply suggestions from code review
      Co-authored-by: default avatarSanchit Gandhi <93869735+sanchit-gandhi@users.noreply.github.com>
      
      * refactor input_texts -> text_inputs
      
      * correct docstrings of TTS.__call__
      
      * correct the shape of generated waveform
      
      * take care of Bark tokenizer special case
      
      * correct run_pipeline_test TTS
      
      * make style
      
      * update TTS docstrings
      
      * address Sylvain nit refactors
      
      * make style
      
      * refactor into one liners
      
      * correct squeeze
      
      * correct way to test if forward or generate
      
      * Update output audio waveform shape
      
      * make style
      
      * correct import
      
      * modify how the TTS pipeline test if a model can generate
      
      * align shape output of TTS pipeline with consistent shape
      
      ---------
      Co-authored-by: default avatarSanchit Gandhi <93869735+sanchit-gandhi@users.noreply.github.com>
      b8f69d0d
  9. 16 Aug, 2023 1 commit
  10. 08 Aug, 2023 1 commit
  11. 28 Jul, 2023 1 commit
  12. 18 Jul, 2023 2 commits
  13. 17 Jul, 2023 1 commit
  14. 13 Jul, 2023 1 commit
  15. 26 Jun, 2023 1 commit
  16. 23 Jun, 2023 1 commit
  17. 22 Jun, 2023 1 commit
  18. 21 Jun, 2023 1 commit
    • Matthijs Hollemans's avatar
      add word-level timestamps to Whisper (#23205) · cd927a47
      Matthijs Hollemans authored
      * let's go!
      
      * initial implementation of token-level timestamps
      
      * only return a single timestamp per token
      
      * remove token probabilities
      
      * fix return type
      
      * fix doc comment
      
      * strip special tokens
      
      * rename
      
      * revert to not stripping special tokens
      
      * only support models that have alignment_heads
      
      * add integration test
      
      * consistently name it token-level timestamps
      
      * small DTW tweak
      
      * initial support for ASR pipeline
      
      * fix pipeline doc comments
      
      * resolve token timestamps in pipeline with chunking
      
      * change warning when no final timestamp is found
      
      * return word-level timestamps
      
      * fixup
      
      * fix bug that skipped final word in each chunk
      
      * fix failing unit tests
      
      * merge punctuations into the words
      
      * also return word tokens
      
      * also return token indices
      
      * add (failing) unit test for combine_tokens_into_words
      
      * make combine_tokens_into_words private
      
      * restore OpenAI's punctuation rules
      
      * add pipeline tests
      
      * make requested changes
      
      * PR review changes
      
      * fix failing pipeline test
      
      * small stuff from PR
      
      * only return words and their timestamps, not segments
      
      * move alignment_heads into generation config
      
      * forgot to set alignment_heads in pipeline tests
      
      * tiny comment fix
      
      * grr
      cd927a47
  19. 20 Jun, 2023 1 commit
  20. 14 Jun, 2023 1 commit
  21. 09 Jun, 2023 1 commit
  22. 22 May, 2023 1 commit
  23. 18 May, 2023 1 commit
  24. 04 May, 2023 1 commit
  25. 24 Apr, 2023 1 commit
  26. 21 Apr, 2023 1 commit
  27. 20 Apr, 2023 1 commit
  28. 17 Apr, 2023 1 commit
  29. 04 Apr, 2023 1 commit
  30. 23 Mar, 2023 2 commits
  31. 22 Mar, 2023 1 commit
    • Luc CAILLIAU's avatar
      Chunkable token classification pipeline (#21771) · d62e7d88
      Luc CAILLIAU authored
      
      
      * Chunkable classification pipeline 
      
      The TokenClassificationPipeline is now able to process sequences longer than 512. No matter the framework, the model, the tokenizer. We just have to pass process_all=True and a stride number (optional). The behavior remains the same if you don't pass these optional parameters. For overlapping parts when using stride above 0, we consider only the max scores for each overlapped token in all chunks where the token is.
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * update with latest black format
      
      * update black format
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * format correction
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update comments
      
      * Update src/transformers/pipelines/token_classification.py
      Co-authored-by: default avatarNicolas Patry <patry.nicolas@protonmail.com>
      
      * Update token_classification.py
      
      Correct spaces, remove process_all and keep only stride. If stride is provided, the pipeline is applied to the whole text.
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update chunk aggregation
      
      Update the chunk aggregation strategy based on entities aggregation.
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      Remove unnecessary pop from outputs dict
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update token_classification.py
      
      * Update src/transformers/pipelines/token_classification.py
      Co-authored-by: default avatarSylvain Gugger <35901082+sgugger@users.noreply.github.com>
      
      * add chunking tests
      
      * correct formating
      
      * correct formatting
      
      * correct model id for test chunking
      
      * update scores with nested simplify
      
      * Update test_pipelines_token_classification.py
      
      * Update test_pipelines_token_classification.py
      
      * update model to a tiny one
      
      * Update test_pipelines_token_classification.py
      
      * Adding smaller test for chunking.
      
      * Fixup
      
      * Update token_classification.py
      
      * Update src/transformers/pipelines/token_classification.py
      Co-authored-by: default avatarSylvain Gugger <35901082+sgugger@users.noreply.github.com>
      
      * Update src/transformers/pipelines/token_classification.py
      Co-authored-by: default avatarSylvain Gugger <35901082+sgugger@users.noreply.github.com>
      
      ---------
      Co-authored-by: default avatarNicolas Patry <patry.nicolas@protonmail.com>
      Co-authored-by: default avatarSylvain Gugger <35901082+sgugger@users.noreply.github.com>
      d62e7d88
  32. 16 Mar, 2023 1 commit
  33. 15 Mar, 2023 1 commit
  34. 09 Mar, 2023 1 commit
  35. 08 Mar, 2023 1 commit