Skip to content
This repository was archived by the owner on Jun 3, 2025. It is now read-only.

Commit 46810d4

Browse files
authored
Remove server import for transformers pipelines to not require server dependencies (#277)
* Remove server import for transformers pipelines to not require server dependencies * fully classify pipelines import in transformers.server * address review comments
1 parent 0972a84 commit 46810d4

File tree

1 file changed

+26
-5
lines changed

1 file changed

+26
-5
lines changed

src/deepsparse/transformers/server.py

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,26 @@
1818

1919
from typing import Any, Dict, List, Optional, Tuple, Union
2020

21-
from pydantic import BaseModel, Field
22-
23-
from deepsparse.server.config import ServeModelConfig
2421
from deepsparse.tasks import SupportedTasks
25-
from deepsparse.transformers import Pipeline, pipeline
22+
from deepsparse.transformers.pipelines import Pipeline, pipeline
23+
24+
25+
try:
26+
from deepsparse.server.config import ServeModelConfig
27+
28+
deepsparse_server_err = None
29+
except Exception as _err:
30+
deepsparse_server_err = _err
31+
ServeModelConfig = object
32+
33+
try:
34+
from pydantic import BaseModel, Field
35+
36+
pydantic_import_err = None
37+
except Exception as _err:
38+
pydantic_import_err = _err
39+
BaseModel = object
40+
Field = dict
2641

2742

2843
__all__ = [
@@ -43,11 +58,17 @@ def create_pipeline_definitions(
4358
Create a pipeline definition and the supporting files for a given model config
4459
to use for serving in the DeepSparse inference server
4560
46-
:param model_config: the config describing the model and params for serving
61+
:param model_config: the server model config describing the model and params
4762
:return: a tuple containing (the pipeline to use for inference,
4863
the expected request body, the expected response body,
4964
any additional keyword args for use with the server)
5065
"""
66+
if deepsparse_server_err:
67+
raise deepsparse_server_err
68+
69+
if pydantic_import_err:
70+
raise pydantic_import_err
71+
5172
if SupportedTasks.nlp.question_answering.matches(model_config.task):
5273
request_model = QuestionAnsweringRequest
5374
response_model = Union[

0 commit comments

Comments
 (0)