Skip to content

Commit fec0a18

Browse files
Removes duplicate outlines processors
Format files
1 parent 7cbd9ec commit fec0a18

File tree

3 files changed

+21
-210
lines changed

3 files changed

+21
-210
lines changed

tests/entrypoints/openai/test_guided_processors.py

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,17 @@
22
# tests/test_guided_decoding directory.
33
import pytest
44
import torch
5+
from outlines.processors import JSONLogitsProcessor, RegexLogitsProcessor
56
from transformers import AutoTokenizer
67

78
from vllm.entrypoints.openai.protocol import CompletionRequest
89
from vllm.model_executor.guided_decoding import (
910
get_guided_decoding_logits_processor)
10-
from vllm.model_executor.guided_decoding.outlines_logits_processors import (
11-
JSONLogitsProcessor, RegexLogitsProcessor)
1211

1312

1413
def test_guided_logits_processors(sample_regex, sample_json_schema):
1514
"""Basic unit test for RegexLogitsProcessor and JSONLogitsProcessor."""
16-
tokenizer = AutoTokenizer.from_pretrained('HuggingFaceH4/zephyr-7b-beta')
15+
tokenizer = AutoTokenizer.from_pretrained("HuggingFaceH4/zephyr-7b-beta", )
1716
regex_LP = RegexLogitsProcessor(sample_regex, tokenizer)
1817
json_LP = JSONLogitsProcessor(sample_json_schema,
1918
tokenizer,
@@ -41,10 +40,10 @@ def test_guided_logits_processors(sample_regex, sample_json_schema):
4140
@pytest.mark.parametrize("backend", ["outlines", "lm-format-enforcer"])
4241
async def test_guided_logits_processor_black_box(backend: str, sample_regex,
4342
sample_json_schema):
44-
tokenizer = AutoTokenizer.from_pretrained('HuggingFaceH4/zephyr-7b-beta')
43+
tokenizer = AutoTokenizer.from_pretrained("HuggingFaceH4/zephyr-7b-beta")
4544
token_ids = tokenizer.encode(
4645
f"Give an example IPv4 address with this regex: {sample_regex}")
47-
regex_request = CompletionRequest(model='test',
46+
regex_request = CompletionRequest(model="test",
4847
prompt=token_ids,
4948
guided_regex=sample_regex)
5049
regex_lp = await get_guided_decoding_logits_processor(
@@ -59,7 +58,7 @@ async def test_guided_logits_processor_black_box(backend: str, sample_regex,
5958
token_ids = tokenizer.encode(
6059
f"Give an employee profile that fits this schema: {sample_json_schema}"
6160
)
62-
json_request = CompletionRequest(model='test',
61+
json_request = CompletionRequest(model="test",
6362
prompt=token_ids,
6463
guided_json=sample_json_schema)
6564
json_lp = await get_guided_decoding_logits_processor(

vllm/model_executor/guided_decoding/outlines_decoding.py

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@
55
from re import escape as regex_escape
66
from typing import Tuple, Union
77

8+
from outlines.processors import (CFGLogitsProcessor, JSONLogitsProcessor,
9+
RegexLogitsProcessor)
810
from pydantic import BaseModel
911
from transformers import PreTrainedTokenizerBase
1012

1113
from vllm.entrypoints.openai.protocol import (ChatCompletionRequest,
1214
CompletionRequest)
13-
from vllm.model_executor.guided_decoding.outlines_logits_processors import (
14-
CFGLogitsProcessor, JSONLogitsProcessor, RegexLogitsProcessor)
1515

1616

1717
class GuidedDecodingMode(Enum):
@@ -52,8 +52,8 @@ class GuidedDecodingMode(Enum):
5252

5353

5454
async def get_outlines_guided_decoding_logits_processor(
55-
request: Union[CompletionRequest,
56-
ChatCompletionRequest], tokenizer: PreTrainedTokenizerBase
55+
request: Union[CompletionRequest, ChatCompletionRequest],
56+
tokenizer: PreTrainedTokenizerBase,
5757
) -> Union[JSONLogitsProcessor, RegexLogitsProcessor, CFGLogitsProcessor,
5858
None]:
5959
"""
@@ -72,9 +72,14 @@ async def get_outlines_guided_decoding_logits_processor(
7272
max_workers=2)
7373
loop = asyncio.get_running_loop()
7474

75-
return await loop.run_in_executor(global_thread_pool,
76-
_get_logits_processor, guide, tokenizer,
77-
mode, request.guided_whitespace_pattern)
75+
return await loop.run_in_executor(
76+
global_thread_pool,
77+
_get_logits_processor,
78+
guide,
79+
tokenizer,
80+
mode,
81+
request.guided_whitespace_pattern,
82+
)
7883

7984

8085
def _get_guide_and_mode(
@@ -110,8 +115,10 @@ def _get_guide_and_mode(
110115

111116

112117
def _get_logits_processor(
113-
guide: str, tokenizer: PreTrainedTokenizerBase, mode: GuidedDecodingMode,
114-
whitespace_pattern: Union[str, None]
118+
guide: str,
119+
tokenizer: PreTrainedTokenizerBase,
120+
mode: GuidedDecodingMode,
121+
whitespace_pattern: Union[str, None],
115122
) -> Union[JSONLogitsProcessor, RegexLogitsProcessor, CFGLogitsProcessor]:
116123
if mode == GuidedDecodingMode.JSON:
117124
return JSONLogitsProcessor(guide, tokenizer, whitespace_pattern)

vllm/model_executor/guided_decoding/outlines_logits_processors.py

Lines changed: 0 additions & 195 deletions
This file was deleted.

0 commit comments

Comments
 (0)