Skip to content

Commit 1fe554b

Browse files
authored
treat do_lower_case in the same way as the sentence-transformers library (#11815)
Signed-off-by: Max de Bayser <[email protected]>
1 parent 615e4a5 commit 1fe554b

File tree

5 files changed

+13
-5
lines changed

5 files changed

+13
-5
lines changed

tests/entrypoints/openai/test_serving_chat.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,7 @@ class MockModelConfig:
3535
logits_processor_pattern = None
3636
diff_sampling_param: Optional[dict] = None
3737
allowed_local_media_path: str = ""
38+
encoder_config = None
3839

3940
def get_diff_sampling_param(self):
4041
return self.diff_sampling_param or {}

tests/models/embedding/language/test_embedding.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
# [Encoder-only]
1616
pytest.param("BAAI/bge-base-en-v1.5",
1717
marks=[pytest.mark.core_model, pytest.mark.cpu_model]),
18+
pytest.param("sentence-transformers/all-MiniLM-L12-v2"),
1819
pytest.param("intfloat/multilingual-e5-large"),
1920
# [Encoder-decoder]
2021
pytest.param("intfloat/e5-mistral-7b-instruct",

vllm/entrypoints/openai/serving_engine.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,11 @@ def _normalize_prompt_text_to_input(
160160
truncate_prompt_tokens: Optional[Annotated[int, Field(ge=1)]],
161161
add_special_tokens: bool,
162162
) -> TextTokensPrompt:
163+
if (self.model_config.encoder_config is not None
164+
and self.model_config.encoder_config.get(
165+
"do_lower_case", False)):
166+
prompt = prompt.lower()
167+
163168
if truncate_prompt_tokens is None:
164169
encoded = tokenizer(prompt, add_special_tokens=add_special_tokens)
165170
else:

vllm/inputs/preprocess.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -190,6 +190,12 @@ def _tokenize_prompt(
190190
# on the task and language of their request. Also needed to avoid
191191
# appending an EOS token to the prompt which disrupts generation.
192192
add_special_tokens = False
193+
194+
if (self.model_config.encoder_config is not None
195+
and self.model_config.encoder_config.get(
196+
"do_lower_case", False)):
197+
prompt = prompt.lower()
198+
193199
return tokenizer.encode(request_id=request_id,
194200
prompt=prompt,
195201
lora_request=lora_request,

vllm/transformers_utils/tokenizer_group/__init__.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -26,11 +26,6 @@ def init_tokenizer_from_configs(model_config: ModelConfig,
2626
trust_remote_code=model_config.trust_remote_code,
2727
revision=model_config.tokenizer_revision)
2828

29-
if (model_config.encoder_config is not None
30-
and "do_lower_case" in model_config.encoder_config):
31-
init_kwargs["do_lower_case"] = model_config.encoder_config[
32-
"do_lower_case"]
33-
3429
return get_tokenizer_group(parallel_config.tokenizer_pool_config,
3530
**init_kwargs)
3631

0 commit comments

Comments
 (0)