aidial-sdk 0.41.0.dev2__tar.gz → 0.41.0.dev4__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.
Files changed (60) hide show
  1. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/PKG-INFO +5 -5
  2. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/README.md +2 -2
  3. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/choice.py +13 -0
  4. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/chunks.py +21 -0
  5. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/request.py +1 -0
  6. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/pyproject.toml +3 -3
  7. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/LICENSE +0 -0
  8. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/__init__.py +0 -0
  9. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/_errors.py +0 -0
  10. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/_pydantic/__init__.py +0 -0
  11. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/_pydantic/_compat.py +0 -0
  12. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/_pydantic/_model_config.py +0 -0
  13. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/application.py +0 -0
  14. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/__init__.py +0 -0
  15. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/_cache.py +0 -0
  16. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/_types.py +0 -0
  17. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/base.py +0 -0
  18. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/choice_base.py +0 -0
  19. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/enums.py +0 -0
  20. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/form.py +0 -0
  21. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/function_call.py +0 -0
  22. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/function_tool_call.py +0 -0
  23. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/response.py +0 -0
  24. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/chat_completion/stage.py +0 -0
  25. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/__init__.py +0 -0
  26. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/_headers.py +0 -0
  27. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/configuration.py +0 -0
  28. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/from_request_mixin.py +0 -0
  29. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/rate.py +0 -0
  30. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/tokenize.py +0 -0
  31. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/deployment/truncate_prompt.py +0 -0
  32. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/embeddings/__init__.py +0 -0
  33. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/embeddings/base.py +0 -0
  34. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/embeddings/request.py +0 -0
  35. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/embeddings/response.py +0 -0
  36. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/exceptions.py +0 -0
  37. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/header_propagator.py +0 -0
  38. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/py.typed +0 -0
  39. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/pydantic/v2.py +0 -0
  40. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/pydantic_v1/__init__.py +0 -0
  41. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/telemetry/__init__.py +0 -0
  42. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/telemetry/init.py +0 -0
  43. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/telemetry/types.py +0 -0
  44. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/__init__.py +0 -0
  45. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_attachment.py +0 -0
  46. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_cancel_scope.py +0 -0
  47. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_content_stream.py +0 -0
  48. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_disconnect_middleware.py +0 -0
  49. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_indexed_list.py +0 -0
  50. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_json_log_formatter.py +0 -0
  51. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_logging.py +0 -0
  52. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/_reflection.py +0 -0
  53. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/env.py +0 -0
  54. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/errors.py +0 -0
  55. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/json.py +0 -0
  56. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/log_config.py +0 -0
  57. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/logging.py +0 -0
  58. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/merge_chunks.py +0 -0
  59. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/pydantic.py +0 -0
  60. {aidial_sdk-0.41.0.dev2 → aidial_sdk-0.41.0.dev4}/aidial_sdk/utils/streaming.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aidial-sdk
3
- Version: 0.41.0.dev2
3
+ Version: 0.41.0.dev4
4
4
  Summary: Framework to create applications and model adapters for AI DIAL
5
5
  License-Expression: Apache-2.0
6
6
  License-File: LICENSE
@@ -32,8 +32,8 @@ Requires-Dist: prometheus-client (>=0.17.1,<1.0) ; extra == "telemetry"
32
32
  Requires-Dist: pydantic (>=1.10.17,<3)
33
33
  Requires-Dist: uvicorn (>=0.19,<1.0)
34
34
  Requires-Dist: wrapt (>=1.10,<3)
35
- Project-URL: Documentation, https://epam-rail.com/dial_api
36
- Project-URL: Homepage, https://epam-rail.com
35
+ Project-URL: Documentation, https://dialx.ai/dial_api
36
+ Project-URL: Homepage, https://dialx.ai
37
37
  Project-URL: Repository, https://github.com/epam/ai-dial-sdk
38
38
  Description-Content-Type: text/markdown
39
39
 
@@ -76,9 +76,9 @@ Description-Content-Type: text/markdown
76
76
 
77
77
  ## Overview
78
78
 
79
- Framework to create applications and model adapters for [AI DIAL](https://epam-rail.com).
79
+ Framework to create applications and model adapters for [AI DIAL](https://dialx.ai).
80
80
 
81
- Applications and model adapters implemented using this framework will be compatible with [AI DIAL API](https://epam-rail.com/dial_api) that was designed based on [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference).
81
+ Applications and model adapters implemented using this framework will be compatible with [AI DIAL API](https://dialx.ai/dial_api) that was designed based on [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference).
82
82
 
83
83
  ---
84
84
 
@@ -37,9 +37,9 @@
37
37
 
38
38
  ## Overview
39
39
 
40
- Framework to create applications and model adapters for [AI DIAL](https://epam-rail.com).
40
+ Framework to create applications and model adapters for [AI DIAL](https://dialx.ai).
41
41
 
42
- Applications and model adapters implemented using this framework will be compatible with [AI DIAL API](https://epam-rail.com/dial_api) that was designed based on [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference).
42
+ Applications and model adapters implemented using this framework will be compatible with [AI DIAL API](https://dialx.ai/dial_api) that was designed based on [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference).
43
43
 
44
44
  ---
45
45
 
@@ -11,6 +11,7 @@ from aidial_sdk.chat_completion.chunks import (
11
11
  ContentChunk,
12
12
  EndChoiceChunk,
13
13
  FormSchemaChunk,
14
+ ReasoningContentChunk,
14
15
  StartChoiceChunk,
15
16
  StateChunk,
16
17
  )
@@ -96,6 +97,18 @@ class Choice(ChoiceBase):
96
97
  self.send_chunk(ContentChunk(content, self._index))
97
98
  self._last_finish_reason = FinishReason.STOP
98
99
 
100
+ def append_reasoning_content(self, content: str) -> None:
101
+ if not self._opened:
102
+ raise runtime_error(
103
+ "Trying to append reasoning content to an unopened choice"
104
+ )
105
+ if self._closed:
106
+ raise runtime_error(
107
+ "Trying to append reasoning content to a closed choice"
108
+ )
109
+
110
+ self.send_chunk(ReasoningContentChunk(content, self._index))
111
+
99
112
  @property
100
113
  def content_stream(self) -> ContentStream:
101
114
  return ContentStream(self)
@@ -96,6 +96,27 @@ class ContentChunk(BaseChunk):
96
96
  }
97
97
 
98
98
 
99
+ class ReasoningContentChunk(BaseChunk):
100
+ content: str
101
+ choice_index: int
102
+
103
+ def __init__(self, content: str, choice_index: int):
104
+ self.content = content
105
+ self.choice_index = choice_index
106
+
107
+ def to_dict(self):
108
+ return {
109
+ "choices": [
110
+ {
111
+ "index": self.choice_index,
112
+ "finish_reason": None,
113
+ "delta": {"reasoning_content": self.content},
114
+ }
115
+ ],
116
+ "usage": None,
117
+ }
118
+
119
+
99
120
  class FunctionToolCallChunk(BaseChunk):
100
121
  choice_index: int
101
122
  call_index: int
@@ -152,6 +152,7 @@ class Message(ExtraAllowModel):
152
152
  tool_call_id: StrictStr | None = None
153
153
  function_call: FunctionCall | None = None
154
154
  refusal: StrictStr | None = None
155
+ reasoning_content: StrictStr | None = None
155
156
 
156
157
  def text(self) -> str:
157
158
  """
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "aidial-sdk"
3
- version = "0.41.0.dev2"
3
+ version = "0.41.0.dev4"
4
4
  description = "Framework to create applications and model adapters for AI DIAL"
5
5
  authors = [{ name = "EPAM RAIL", email = "SpecialEPM-DIALDevTeam@epam.com" }]
6
6
  license = "Apache-2.0"
@@ -14,8 +14,8 @@ dependencies = [
14
14
  ]
15
15
 
16
16
  [project.urls]
17
- Homepage = "https://epam-rail.com"
18
- Documentation = "https://epam-rail.com/dial_api"
17
+ Homepage = "https://dialx.ai"
18
+ Documentation = "https://dialx.ai/dial_api"
19
19
  Repository = "https://github.com/epam/ai-dial-sdk"
20
20
 
21
21
  [project.optional-dependencies]