codemie-sdk-python 0.1.37__tar.gz → 0.1.38__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 codemie-sdk-python might be problematic. Click here for more details.

Files changed (29) hide show
  1. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/PKG-INFO +1 -1
  2. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/pyproject.toml +1 -1
  3. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/__init__.py +1 -1
  4. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/assistant.py +19 -0
  5. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/common.py +3 -0
  6. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/assistant.py +30 -0
  7. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/README.md +0 -0
  8. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/auth/__init__.py +0 -0
  9. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/auth/credentials.py +0 -0
  10. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/client/__init__.py +0 -0
  11. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/client/client.py +0 -0
  12. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/exceptions.py +0 -0
  13. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/datasource.py +0 -0
  14. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/integration.py +0 -0
  15. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/llm.py +0 -0
  16. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/task.py +0 -0
  17. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/user.py +0 -0
  18. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/workflow.py +0 -0
  19. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/models/workflow_state.py +0 -0
  20. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/datasource.py +0 -0
  21. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/integration.py +0 -0
  22. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/llm.py +0 -0
  23. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/task.py +0 -0
  24. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/user.py +0 -0
  25. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/workflow.py +0 -0
  26. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/workflow_execution.py +0 -0
  27. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/services/workflow_execution_state.py +0 -0
  28. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/utils/__init__.py +0 -0
  29. {codemie_sdk_python-0.1.37 → codemie_sdk_python-0.1.38}/src/codemie_sdk/utils/http.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: codemie-sdk-python
3
- Version: 0.1.37
3
+ Version: 0.1.38
4
4
  Summary: CodeMie SDK for Python
5
5
  Author: Vadym Vlasenko
6
6
  Author-email: vadym_vlasenko@epam.com
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "codemie-sdk-python"
3
- version = "0.1.37"
3
+ version = "0.1.38"
4
4
  description = "CodeMie SDK for Python"
5
5
  authors = [
6
6
  "Vadym Vlasenko <vadym_vlasenko@epam.com>",
@@ -19,5 +19,5 @@ Basic usage:
19
19
 
20
20
  from .client.client import CodeMieClient
21
21
 
22
- __version__ = "0.1.11"
22
+ __version__ = "0.1.19"
23
23
  __all__ = ["CodeMieClient"]
@@ -41,6 +41,7 @@ class ContextType(str, Enum):
41
41
 
42
42
  KNOWLEDGE_BASE = "knowledge_base"
43
43
  CODE = "code"
44
+ PROVIDER = "provider"
44
45
 
45
46
 
46
47
  class Context(BaseModel):
@@ -89,6 +90,9 @@ class SystemPromptHistory(BaseModel):
89
90
  class AssistantBase(BaseModel):
90
91
  """Base model for assistant with common fields."""
91
92
 
93
+ def __getitem__(self, key):
94
+ return getattr(self, key)
95
+
92
96
  model_config = ConfigDict(extra="ignore")
93
97
 
94
98
  id: Optional[str] = None
@@ -127,6 +131,9 @@ class Assistant(AssistantBase):
127
131
  class AssistantRequestBase(AssistantBase):
128
132
  """Base model for assistant requests with common request fields."""
129
133
 
134
+ def __getitem__(self, key):
135
+ return getattr(self, key)
136
+
130
137
  model_config = ConfigDict(extra="ignore", use_enum_values=True)
131
138
 
132
139
  system_prompt: str
@@ -244,3 +251,15 @@ class BaseModelResponse(BaseModel):
244
251
  populate_by_name = True
245
252
  # Preserve alias on export
246
253
  alias_generator = None
254
+
255
+
256
+ class EnvVars(BaseModel):
257
+ azure_openai_url: Optional[str] = None
258
+ azure_openai_api_key: Optional[str] = None
259
+ openai_api_type: Optional[str] = None
260
+ openai_api_version: Optional[str] = None
261
+ models_env: Optional[str] = None
262
+
263
+
264
+ class ExportAssistantPayload(BaseModel):
265
+ env_vars: Optional[EnvVars] = None
@@ -14,6 +14,9 @@ class TokensUsage(BaseModel):
14
14
  class User(BaseModel):
15
15
  """Model representing the User."""
16
16
 
17
+ def __getitem__(self, key):
18
+ return getattr(self, key)
19
+
17
20
  model_config = ConfigDict(extra="ignore")
18
21
 
19
22
  user_id: str = Field(None)
@@ -14,6 +14,8 @@ from ..models.assistant import (
14
14
  AssistantChatRequest,
15
15
  BaseModelResponse,
16
16
  AssistantBase,
17
+ Context,
18
+ ExportAssistantPayload,
17
19
  )
18
20
  from ..models.common import PaginationParams
19
21
  from ..utils import ApiRequestHandler
@@ -122,6 +124,17 @@ class AssistantService:
122
124
  "/v1/assistants/tools", List[ToolKitDetails], wrap_response=False
123
125
  )
124
126
 
127
+ def get_context(self, project_name: str) -> List[Context]:
128
+ """Get list of available contexts.
129
+
130
+ Args: project_name: Name of the project to retrieve context for
131
+
132
+ Returns:
133
+ All available assistants context
134
+ """
135
+ params = {"project_name": project_name}
136
+ return self._api.get("/v1/assistants/context", List[Context], params=params)
137
+
125
138
  def delete(self, assistant_id: str) -> dict:
126
139
  """Delete an assistant by ID.
127
140
 
@@ -183,3 +196,20 @@ class AssistantService:
183
196
  response = self._api.post_multipart("/v1/files/", dict, files=files)
184
197
 
185
198
  return response
199
+
200
+ def export(self, assistant_id: str, request: ExportAssistantPayload):
201
+ """Export an assistant.
202
+
203
+ Args:
204
+ assistant_id: ID of the assistant to export
205
+ request: Export request details
206
+
207
+ Returns:
208
+ input stream of the exported assistant file"""
209
+
210
+ return self._api.post(
211
+ f"/v1/assistants/id/{assistant_id}/export",
212
+ response_model=Any,
213
+ stream=True,
214
+ json_data=request.model_dump(exclude_none=True),
215
+ )