Skip to content

Commit 696a306

Browse files
committed
Fix doc for slicing and transformations
1 parent 8638241 commit 696a306

File tree

4 files changed

+23
-14
lines changed

4 files changed

+23
-14
lines changed

giskard/core/core.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ def _get_plugin_method_full_name(func):
7777

7878
def create_test_function_id(func):
7979
from giskard.ml_worker.testing.registry.registry import plugins_root
80+
8081
is_relative = Path(inspect.getfile(func)).is_relative_to(plugins_root)
8182
if is_relative:
8283
full_name = _get_plugin_method_full_name(func)
@@ -273,6 +274,13 @@ def extract_code(self, callable_obj):
273274
logger.info(f"Failed to extract test function code {self.full_name}: %s" % e)
274275
return code
275276

277+
@staticmethod
278+
def default_doc(description: str) -> str:
279+
doc = CallableDocumentation()
280+
doc.description = description
281+
doc.parameters = {}
282+
return json.dumps(doc.to_dict())
283+
276284
@staticmethod
277285
def extract_doc(func) -> Optional[str]:
278286
if not func.__doc__:

giskard/scanner/robustness/text_transformations.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ def __init__(self, column):
2626
self.meta.name = self.name
2727
self.meta.display_name = self.name
2828
self.meta.tags = ["pickle", "scan"]
29-
self.meta.doc = "Automatically generated transformation function"
29+
self.meta.doc = self.meta.default_doc("Automatically generated transformation function")
3030

3131
def __str__(self):
3232
return self.name

giskard/slicing/slice.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
# @TODO: simplify this module, don’t need this complexity.
2+
from typing import Callable, Dict, List, Sequence
3+
24
import itertools
35
import operator
46
import re
@@ -8,7 +10,6 @@
810

911
import numpy as np
1012
import pandas as pd
11-
from typing import Callable, Sequence, List, Dict
1213

1314
from ..core.core import DatasetProcessFunctionMeta, DatasetProcessFunctionType
1415
from ..ml_worker.testing.registry.slicing_function import SlicingFunction
@@ -304,7 +305,7 @@ def __init__(self, query: Query):
304305
self.meta.name = str(self)
305306
self.meta.display_name = str(self)
306307
self.meta.tags = ["pickle", "scan"]
307-
self.meta.doc = '{"description": "Automatically generated slicing function.", "parameters": {}}'
308+
self.meta.doc = self.meta.default_doc("Automatically generated slicing function")
308309
self.meta.uuid = str(uuid.uuid5(uuid.NAMESPACE_OID, self.meta.name))
309310

310311
def execute(self, data: pd.DataFrame):

giskard/slicing/text_slicer.py

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
1-
import os
2-
import copy
31
from typing import Optional, Sequence
42

3+
import copy
4+
import os
5+
56
import numpy as np
67
import pandas as pd
78

8-
from ..ml_worker.testing.registry.registry import get_object_uuid
9-
10-
from ..core.core import DatasetProcessFunctionMeta
11-
12-
from .base import BaseSlicer
13-
from .slice import Query, QueryBasedSliceFunction, ContainsWord
14-
from .utils import get_slicer
159
from ..client.python_utils import warning
10+
from ..core.core import DatasetProcessFunctionMeta
1611
from ..datasets.base import Dataset
12+
from ..ml_worker.testing.registry.registry import get_object_uuid
1713
from ..ml_worker.testing.registry.slicing_function import SlicingFunction
1814
from ..slicing.category_slicer import CategorySlicer
15+
from .base import BaseSlicer
16+
from .slice import ContainsWord, Query, QueryBasedSliceFunction
17+
from .utils import get_slicer
1918

2019

2120
class TextSlicer(BaseSlicer):
@@ -162,7 +161,8 @@ class VectorizerError(ValueError):
162161

163162

164163
def _make_vectorizer(data: pd.Series, tfidf=False, **kwargs):
165-
from sklearn.feature_extraction.text import TfidfVectorizer, CountVectorizer
164+
from sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer
165+
166166
from .stop_words import sw_en, sw_fr
167167

168168
raw_stopwords = sw_en + sw_fr
@@ -195,7 +195,7 @@ def __init__(self, query: Query, feature: str, provider: str):
195195
self.meta.name = str(self)
196196
self.meta.display_name = str(self)
197197
self.meta.tags = ["pickle", "scan"]
198-
self.meta.doc = "Automatically generated slicing function"
198+
self.meta.doc = self.meta.default_doc("Automatically generated slicing function")
199199

200200
def execute(self, dataset: Dataset) -> pd.DataFrame:
201201
metadata = dataset.column_meta[self.feature, self.provider]

0 commit comments

Comments
 (0)