dyff-schema 0.5.1__tar.gz → 0.6.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of dyff-schema might be problematic. Click here for more details.

Files changed (55) hide show
  1. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/.gitlab-ci.yml +1 -1
  2. {dyff_schema-0.5.1/dyff_schema.egg-info → dyff_schema-0.6.0}/PKG-INFO +1 -1
  3. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/platform.py +22 -1
  4. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/requests.py +22 -10
  5. {dyff_schema-0.5.1 → dyff_schema-0.6.0/dyff_schema.egg-info}/PKG-INFO +1 -1
  6. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/.gitignore +0 -0
  7. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/.licenserc.yaml +0 -0
  8. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/.pre-commit-config.yaml +0 -0
  9. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/.prettierignore +0 -0
  10. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/.secrets.baseline +0 -0
  11. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/CODE_OF_CONDUCT.md +0 -0
  12. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/LICENSE +0 -0
  13. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/NOTICE +0 -0
  14. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/README.md +0 -0
  15. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/__init__.py +0 -0
  16. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/adapters.py +0 -0
  17. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/base.py +0 -0
  18. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/copydoc.py +0 -0
  19. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/dataset/__init__.py +0 -0
  20. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/dataset/arrow.py +0 -0
  21. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/dataset/binary.py +0 -0
  22. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/dataset/classification.py +0 -0
  23. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/dataset/text.py +0 -0
  24. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/dataset/vision.py +0 -0
  25. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/ids.py +0 -0
  26. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/io/__init__.py +0 -0
  27. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/io/vllm.py +0 -0
  28. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/platform.py +0 -0
  29. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/py.typed +0 -0
  30. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/quantity.py +0 -0
  31. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/requests.py +0 -0
  32. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/test.py +0 -0
  33. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/__init__.py +0 -0
  34. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/__init__.py +0 -0
  35. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/adapters.py +0 -0
  36. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/base.py +0 -0
  37. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/dataset/__init__.py +0 -0
  38. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/dataset/arrow.py +0 -0
  39. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/dataset/binary.py +0 -0
  40. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/dataset/classification.py +0 -0
  41. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/dataset/text.py +0 -0
  42. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/dataset/vision.py +0 -0
  43. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/io/__init__.py +0 -0
  44. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/io/vllm.py +0 -0
  45. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/test.py +0 -0
  46. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/v0/r1/version.py +0 -0
  47. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff/schema/version.py +0 -0
  48. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff_schema.egg-info/SOURCES.txt +0 -0
  49. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff_schema.egg-info/dependency_links.txt +0 -0
  50. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff_schema.egg-info/requires.txt +0 -0
  51. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/dyff_schema.egg-info/top_level.txt +0 -0
  52. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/makefile +0 -0
  53. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/pyproject.toml +0 -0
  54. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/setup.cfg +0 -0
  55. {dyff_schema-0.5.1 → dyff_schema-0.6.0}/tests/test_import.py +0 -0
@@ -20,7 +20,7 @@ include:
20
20
  file:
21
21
  - prettier.yml
22
22
  - project: buildgarden/pipelines/python
23
- ref: 0.9.1
23
+ ref: 0.10.0
24
24
  file:
25
25
  - python-autoflake.yml
26
26
  - python-black.yml
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dyff-schema
3
- Version: 0.5.1
3
+ Version: 0.6.0
4
4
  Summary: Data models for the Dyff AI auditing platform.
5
5
  Author-email: Digital Safety Research Institute <contact@dsri.org>
6
6
  License: Apache-2.0
@@ -1097,6 +1097,16 @@ class InferenceSessionAndToken(DyffSchemaBaseModel):
1097
1097
  token: str
1098
1098
 
1099
1099
 
1100
+ class InferenceSessionReference(DyffSchemaBaseModel):
1101
+ session: str = pydantic.Field(
1102
+ description="The ID of a running inference session.",
1103
+ )
1104
+
1105
+ interface: InferenceInterface = pydantic.Field(
1106
+ description="How to move data in and out of the service."
1107
+ )
1108
+
1109
+
1100
1110
  class DatasetFilter(DyffSchemaBaseModel):
1101
1111
  """A rule for restrcting which instances in a Dataset are returned."""
1102
1112
 
@@ -1134,10 +1144,20 @@ class Evaluation(DyffEntity, EvaluationBase):
1134
1144
  kind: Literal["Evaluation"] = Entities.Evaluation.value
1135
1145
 
1136
1146
  inferenceSession: InferenceSessionSpec = pydantic.Field(
1137
- description="Specification of the InferenceSession that will perform inference for the evaluation.",
1147
+ description="Specification of the InferenceSession that will perform"
1148
+ " inference for the evaluation.",
1149
+ )
1150
+
1151
+ inferenceSessionReference: Optional[str] = pydantic.Field(
1152
+ default=None,
1153
+ description="ID of a running inference session that will be used"
1154
+ " for the evaluation instead of starting a new one.",
1138
1155
  )
1139
1156
 
1140
1157
  def dependencies(self) -> list[str]:
1158
+ # TODO: It would be nice if the session could be a dependency,
1159
+ # so that the client doesn't start until the session is ready, but
1160
+ # dyff-orchestrator can't handle dependencies on sessions currently.
1141
1161
  return [self.dataset, self.inferenceSession.inferenceService.id]
1142
1162
 
1143
1163
  def resource_allocation(self) -> Optional[ResourceAllocation]:
@@ -1867,6 +1887,7 @@ __all__ = [
1867
1887
  "InferenceSession",
1868
1888
  "InferenceSessionAndToken",
1869
1889
  "InferenceSessionBase",
1890
+ "InferenceSessionReference",
1870
1891
  "InferenceSessionSpec",
1871
1892
  "Label",
1872
1893
  "LabelKey",
@@ -73,10 +73,27 @@ class EvaluationCreateRequest(DyffEntityCreateRequest, EvaluationBase):
73
73
  """A description of how to run an InferenceService on a Dataset to obtain a set of
74
74
  evaluation results."""
75
75
 
76
- inferenceSession: EvaluationInferenceSessionRequest = pydantic.Field(
76
+ inferenceSession: Optional[EvaluationInferenceSessionRequest] = pydantic.Field(
77
+ default=None,
77
78
  description="Specification of the InferenceSession that will perform inference for the evaluation.",
78
79
  )
79
80
 
81
+ inferenceSessionReference: Optional[str] = pydantic.Field(
82
+ default=None,
83
+ description="The ID of a running inference session that will be used"
84
+ " for the evaluation, instead of starting a new one.",
85
+ )
86
+
87
+ @pydantic.root_validator
88
+ def check_session_exactly_one(cls, values):
89
+ session = values.get("inferenceSession") is not None
90
+ session_ref = values.get("inferenceSessionReference") is not None
91
+ if not (session ^ session_ref):
92
+ raise ValueError(
93
+ "must specify exactly one of {inferenceSession, inferenceSessionReference}"
94
+ )
95
+ return values
96
+
80
97
 
81
98
  class MethodCreateRequest(DyffEntityCreateRequest, MethodBase):
82
99
  pass
@@ -141,16 +158,12 @@ class DyffEntityQueryRequest(DyffSchemaBaseModel):
141
158
 
142
159
 
143
160
  class _AnalysisProductQueryRequest(DyffEntityQueryRequest):
144
- analysis: Optional[str] = pydantic.Field(default=None)
145
- method: Optional[str] = pydantic.Field(default=None)
146
- methodName: Optional[str] = pydantic.Field(default=None)
147
- inputsAnyOf: Optional[str] = pydantic.Field(default=None)
148
-
149
-
150
- class AnalysisQueryRequest(DyffEntityQueryRequest):
151
161
  method: Optional[str] = pydantic.Field(default=None)
152
162
  methodName: Optional[str] = pydantic.Field(default=None)
153
- methodOutputKind: Optional[str] = pydantic.Field(default=None)
163
+ dataset: Optional[str] = pydantic.Field(default=None)
164
+ evaluation: Optional[str] = pydantic.Field(default=None)
165
+ inferenceService: Optional[str] = pydantic.Field(default=None)
166
+ model: Optional[str] = pydantic.Field(default=None)
154
167
  inputsAnyOf: Optional[str] = pydantic.Field(default=None)
155
168
 
156
169
 
@@ -215,7 +228,6 @@ class SafetyCaseQueryRequest(_AnalysisProductQueryRequest):
215
228
 
216
229
  __all__ = [
217
230
  "AnalysisCreateRequest",
218
- "AnalysisQueryRequest",
219
231
  "AuditQueryRequest",
220
232
  "DyffEntityCreateRequest",
221
233
  "DyffEntityQueryRequest",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dyff-schema
3
- Version: 0.5.1
3
+ Version: 0.6.0
4
4
  Summary: Data models for the Dyff AI auditing platform.
5
5
  Author-email: Digital Safety Research Institute <contact@dsri.org>
6
6
  License: Apache-2.0
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes