smallestai 4.0.0__py3-none-any.whl → 4.0.1__py3-none-any.whl
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 smallestai might be problematic. Click here for more details.
- smallestai/__init__.py +34 -44
- smallestai/atoms/__init__.py +249 -123
- smallestai/atoms/api/__init__.py +0 -1
- smallestai/atoms/api/agent_templates_api.py +26 -26
- smallestai/atoms/api/agents_api.py +1316 -190
- smallestai/atoms/api/calls_api.py +29 -29
- smallestai/atoms/api/campaigns_api.py +165 -165
- smallestai/atoms/api/knowledge_base_api.py +290 -290
- smallestai/atoms/api/logs_api.py +13 -13
- smallestai/atoms/api/organization_api.py +13 -13
- smallestai/atoms/api/user_api.py +13 -13
- smallestai/atoms/atoms_client.py +77 -49
- smallestai/atoms/models/__init__.py +103 -43
- smallestai/atoms/models/agent_agent_id_webhook_subscriptions_delete200_response.py +89 -0
- smallestai/atoms/models/{get_agent_templates200_response.py → agent_agent_id_webhook_subscriptions_get200_response.py} +7 -7
- smallestai/atoms/models/agent_agent_id_webhook_subscriptions_get404_response.py +89 -0
- smallestai/atoms/models/agent_agent_id_webhook_subscriptions_post201_response.py +89 -0
- smallestai/atoms/models/agent_agent_id_webhook_subscriptions_post400_response.py +89 -0
- smallestai/atoms/models/agent_agent_id_webhook_subscriptions_post_request.py +97 -0
- smallestai/atoms/models/agent_dto.py +8 -6
- smallestai/atoms/models/agent_dto_language.py +17 -3
- smallestai/atoms/models/agent_dto_language_switching.py +95 -0
- smallestai/atoms/models/agent_dto_synthesizer.py +1 -1
- smallestai/atoms/models/{create_agent_from_template200_response.py → agent_from_template_post200_response.py} +4 -4
- smallestai/atoms/models/{get_agents200_response.py → agent_get200_response.py} +7 -7
- smallestai/atoms/models/{get_agents200_response_data.py → agent_get200_response_data.py} +9 -13
- smallestai/atoms/models/{delete_agent200_response.py → agent_id_delete200_response.py} +4 -4
- smallestai/atoms/models/{get_agent_by_id200_response.py → agent_id_get200_response.py} +4 -4
- smallestai/atoms/models/{update_agent200_response.py → agent_id_patch200_response.py} +4 -4
- smallestai/atoms/models/{update_agent_request.py → agent_id_patch_request.py} +17 -15
- smallestai/atoms/models/{update_agent_request_language.py → agent_id_patch_request_language.py} +14 -10
- smallestai/atoms/models/agent_id_patch_request_language_switching.py +96 -0
- smallestai/atoms/models/{update_agent_request_synthesizer.py → agent_id_patch_request_synthesizer.py} +6 -6
- smallestai/atoms/models/{update_agent_request_synthesizer_voice_config.py → agent_id_patch_request_synthesizer_voice_config.py} +27 -27
- smallestai/atoms/models/{update_agent_request_synthesizer_voice_config_one_of.py → agent_id_patch_request_synthesizer_voice_config_one_of.py} +4 -4
- smallestai/atoms/models/{update_agent_request_synthesizer_voice_config_one_of1.py → agent_id_patch_request_synthesizer_voice_config_one_of1.py} +4 -4
- smallestai/atoms/models/{get_campaign_by_id200_response.py → agent_id_workflow_get200_response.py} +7 -7
- smallestai/atoms/models/agent_id_workflow_get200_response_data.py +105 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_edges_inner.py +127 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_edges_inner_data.py +91 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_edges_inner_marker_end.py +91 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_nodes_inner.py +114 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_nodes_inner_data.py +115 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_nodes_inner_data_variables.py +97 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_nodes_inner_data_variables_data_inner.py +91 -0
- smallestai/atoms/models/agent_id_workflow_get200_response_data_nodes_inner_position.py +89 -0
- smallestai/atoms/models/agent_id_workflow_get404_response.py +89 -0
- smallestai/atoms/models/agent_template_get200_response.py +97 -0
- smallestai/atoms/models/{get_agent_templates200_response_data_inner.py → agent_template_get200_response_data_inner.py} +6 -6
- smallestai/atoms/models/{get_campaigns200_response.py → audience_get200_response.py} +7 -7
- smallestai/atoms/models/{create_campaign201_response_data.py → audience_get200_response_data_inner.py} +16 -18
- smallestai/atoms/models/audience_id_delete200_response.py +89 -0
- smallestai/atoms/models/audience_id_delete400_response.py +89 -0
- smallestai/atoms/models/{get_current_user200_response.py → audience_id_get200_response.py} +7 -7
- smallestai/atoms/models/audience_id_get400_response.py +89 -0
- smallestai/atoms/models/audience_id_get403_response.py +89 -0
- smallestai/atoms/models/audience_id_get404_response.py +89 -0
- smallestai/atoms/models/audience_id_members_delete200_response.py +93 -0
- smallestai/atoms/models/audience_id_members_delete200_response_data.py +87 -0
- smallestai/atoms/models/audience_id_members_delete_request.py +87 -0
- smallestai/atoms/models/audience_id_members_get200_response.py +93 -0
- smallestai/atoms/models/audience_id_members_get200_response_data.py +101 -0
- smallestai/atoms/models/{get_campaigns200_response_data_inner_audience.py → audience_id_members_get200_response_data_members_inner.py} +8 -8
- smallestai/atoms/models/audience_id_members_get400_response.py +89 -0
- smallestai/atoms/models/audience_id_members_get500_response.py +89 -0
- smallestai/atoms/models/audience_id_members_post200_response.py +97 -0
- smallestai/atoms/models/audience_id_members_post200_response_data_inner.py +93 -0
- smallestai/atoms/models/audience_id_members_post200_response_data_inner_data.py +89 -0
- smallestai/atoms/models/audience_id_members_post400_response.py +89 -0
- smallestai/atoms/models/audience_id_members_post403_response.py +89 -0
- smallestai/atoms/models/audience_id_members_post_request.py +87 -0
- smallestai/atoms/models/audience_id_members_search_get200_response.py +93 -0
- smallestai/atoms/models/audience_id_members_search_get200_response_data.py +101 -0
- smallestai/atoms/models/audience_id_members_search_get200_response_data_search_info.py +103 -0
- smallestai/atoms/models/audience_id_members_search_get400_response.py +89 -0
- smallestai/atoms/models/audience_id_members_search_get500_response.py +89 -0
- smallestai/atoms/models/{create_campaign201_response.py → audience_post200_response.py} +7 -7
- smallestai/atoms/models/audience_post200_response_data.py +104 -0
- smallestai/atoms/models/audience_post400_response.py +89 -0
- smallestai/atoms/models/campaign_get200_response.py +93 -0
- smallestai/atoms/models/campaign_get200_response_data.py +87 -0
- smallestai/atoms/models/{get_campaigns_request.py → campaign_get_request.py} +4 -4
- smallestai/atoms/models/campaign_id_get200_response.py +93 -0
- smallestai/atoms/models/{get_campaign_by_id200_response_data.py → campaign_id_get200_response_data.py} +4 -4
- smallestai/atoms/models/campaign_post201_response.py +89 -0
- smallestai/atoms/models/{create_campaign_request.py → campaign_post_request.py} +4 -4
- smallestai/atoms/models/{start_outbound_call200_response.py → conversation_id_get200_response.py} +7 -7
- smallestai/atoms/models/{get_conversation_logs200_response_data.py → conversation_id_get200_response_data.py} +4 -4
- smallestai/atoms/models/conversation_outbound_post200_response.py +93 -0
- smallestai/atoms/models/{start_outbound_call200_response_data.py → conversation_outbound_post200_response_data.py} +4 -4
- smallestai/atoms/models/{start_outbound_call_request.py → conversation_outbound_post_request.py} +4 -4
- smallestai/atoms/models/create_agent_request.py +10 -6
- smallestai/atoms/models/create_agent_request_language.py +11 -7
- smallestai/atoms/models/create_agent_request_language_synthesizer_voice_config.py +24 -24
- smallestai/atoms/models/{knowledge_base_dto.py → knowledge_base.py} +15 -8
- smallestai/atoms/models/{knowledge_base_item_dto.py → knowledge_base_item.py} +19 -17
- smallestai/atoms/models/{get_knowledge_bases200_response.py → knowledgebase_get200_response.py} +7 -7
- smallestai/atoms/models/{get_knowledge_base_by_id200_response.py → knowledgebase_id_get200_response.py} +7 -7
- smallestai/atoms/models/{get_knowledge_base_items200_response.py → knowledgebase_id_items_get200_response.py} +7 -7
- smallestai/atoms/models/{upload_text_to_knowledge_base_request.py → knowledgebase_id_items_upload_text_post_request.py} +4 -4
- smallestai/atoms/models/{create_knowledge_base201_response.py → knowledgebase_post201_response.py} +4 -4
- smallestai/atoms/models/{create_knowledge_base_request.py → knowledgebase_post_request.py} +4 -4
- smallestai/atoms/models/{get_organization200_response.py → organization_get200_response.py} +7 -7
- smallestai/atoms/models/{get_organization200_response_data.py → organization_get200_response_data.py} +10 -10
- smallestai/atoms/models/{get_organization200_response_data_members_inner.py → organization_get200_response_data_members_inner.py} +4 -4
- smallestai/atoms/models/{get_organization200_response_data_subscription.py → organization_get200_response_data_subscription.py} +4 -4
- smallestai/atoms/models/product_phone_numbers_get200_response.py +97 -0
- smallestai/atoms/models/product_phone_numbers_get200_response_data_inner.py +100 -0
- smallestai/atoms/models/product_phone_numbers_get200_response_data_inner_attributes.py +89 -0
- smallestai/atoms/models/user_get200_response.py +93 -0
- smallestai/atoms/models/{get_current_user200_response_data.py → user_get200_response_data.py} +4 -4
- smallestai/atoms/models/webhook.py +124 -0
- smallestai/atoms/models/{get_campaigns200_response_data_inner_agent.py → webhook_agent.py} +8 -6
- smallestai/atoms/models/webhook_event.py +98 -0
- smallestai/atoms/models/webhook_get200_response.py +93 -0
- smallestai/atoms/models/webhook_get200_response_data.py +140 -0
- smallestai/atoms/models/webhook_id_delete404_response.py +89 -0
- smallestai/atoms/models/webhook_post201_response.py +89 -0
- smallestai/atoms/models/webhook_post_request.py +99 -0
- smallestai/atoms/models/webhook_post_request_events_inner.py +99 -0
- smallestai/atoms/models/webhook_subscription.py +108 -0
- smallestai/atoms/models/webhook_subscription_populated.py +112 -0
- {smallestai-4.0.0.dist-info → smallestai-4.0.1.dist-info}/METADATA +2 -2
- smallestai-4.0.1.dist-info/RECORD +147 -0
- smallestai/atoms/models/get_campaigns200_response_data_inner.py +0 -118
- smallestai/atoms/models/get_conversation_logs200_response.py +0 -93
- smallestai-4.0.0.dist-info/RECORD +0 -87
- {smallestai-4.0.0.dist-info → smallestai-4.0.1.dist-info}/WHEEL +0 -0
- {smallestai-4.0.0.dist-info → smallestai-4.0.1.dist-info}/licenses/LICENSE +0 -0
- {smallestai-4.0.0.dist-info → smallestai-4.0.1.dist-info}/top_level.txt +0 -0
|
@@ -19,16 +19,16 @@ import json
|
|
|
19
19
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, StrictBool
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from smallestai.atoms.models.
|
|
22
|
+
from smallestai.atoms.models.agent_get200_response_data import AgentGet200ResponseData
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
25
|
|
|
26
|
-
class
|
|
26
|
+
class AgentGet200Response(BaseModel):
|
|
27
27
|
"""
|
|
28
|
-
|
|
28
|
+
AgentGet200Response
|
|
29
29
|
""" # noqa: E501
|
|
30
30
|
status: Optional[StrictBool] = None
|
|
31
|
-
data: Optional[
|
|
31
|
+
data: Optional[AgentGet200ResponseData] = None
|
|
32
32
|
__properties: ClassVar[List[str]] = ["status", "data"]
|
|
33
33
|
|
|
34
34
|
model_config = ConfigDict(
|
|
@@ -49,7 +49,7 @@ class GetAgents200Response(BaseModel):
|
|
|
49
49
|
|
|
50
50
|
@classmethod
|
|
51
51
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
52
|
-
"""Create an instance of
|
|
52
|
+
"""Create an instance of AgentGet200Response from a JSON string"""
|
|
53
53
|
return cls.from_dict(json.loads(json_str))
|
|
54
54
|
|
|
55
55
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -77,7 +77,7 @@ class GetAgents200Response(BaseModel):
|
|
|
77
77
|
|
|
78
78
|
@classmethod
|
|
79
79
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
80
|
-
"""Create an instance of
|
|
80
|
+
"""Create an instance of AgentGet200Response from a dict"""
|
|
81
81
|
if obj is None:
|
|
82
82
|
return None
|
|
83
83
|
|
|
@@ -86,7 +86,7 @@ class GetAgents200Response(BaseModel):
|
|
|
86
86
|
|
|
87
87
|
_obj = cls.model_validate({
|
|
88
88
|
"status": obj.get("status"),
|
|
89
|
-
"data":
|
|
89
|
+
"data": AgentGet200ResponseData.from_dict(obj["data"]) if obj.get("data") is not None else None
|
|
90
90
|
})
|
|
91
91
|
return _obj
|
|
92
92
|
|
|
@@ -17,21 +17,19 @@ import pprint
|
|
|
17
17
|
import re # noqa: F401
|
|
18
18
|
import json
|
|
19
19
|
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field,
|
|
21
|
-
from typing import Any, ClassVar, Dict, List, Optional
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
|
22
22
|
from smallestai.atoms.models.agent_dto import AgentDTO
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
25
|
|
|
26
|
-
class
|
|
26
|
+
class AgentGet200ResponseData(BaseModel):
|
|
27
27
|
"""
|
|
28
|
-
|
|
28
|
+
AgentGet200ResponseData
|
|
29
29
|
""" # noqa: E501
|
|
30
30
|
agents: Optional[List[AgentDTO]] = None
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
is_search_results: Optional[StrictBool] = Field(default=None, description="Whether the results are from a search query", alias="isSearchResults")
|
|
34
|
-
__properties: ClassVar[List[str]] = ["agents", "totalCount", "hasMore", "isSearchResults"]
|
|
31
|
+
total: Optional[Union[StrictFloat, StrictInt]] = Field(default=None, description="Total number of agents")
|
|
32
|
+
__properties: ClassVar[List[str]] = ["agents", "total"]
|
|
35
33
|
|
|
36
34
|
model_config = ConfigDict(
|
|
37
35
|
populate_by_name=True,
|
|
@@ -51,7 +49,7 @@ class GetAgents200ResponseData(BaseModel):
|
|
|
51
49
|
|
|
52
50
|
@classmethod
|
|
53
51
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
54
|
-
"""Create an instance of
|
|
52
|
+
"""Create an instance of AgentGet200ResponseData from a JSON string"""
|
|
55
53
|
return cls.from_dict(json.loads(json_str))
|
|
56
54
|
|
|
57
55
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -83,7 +81,7 @@ class GetAgents200ResponseData(BaseModel):
|
|
|
83
81
|
|
|
84
82
|
@classmethod
|
|
85
83
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
|
-
"""Create an instance of
|
|
84
|
+
"""Create an instance of AgentGet200ResponseData from a dict"""
|
|
87
85
|
if obj is None:
|
|
88
86
|
return None
|
|
89
87
|
|
|
@@ -92,9 +90,7 @@ class GetAgents200ResponseData(BaseModel):
|
|
|
92
90
|
|
|
93
91
|
_obj = cls.model_validate({
|
|
94
92
|
"agents": [AgentDTO.from_dict(_item) for _item in obj["agents"]] if obj.get("agents") is not None else None,
|
|
95
|
-
"
|
|
96
|
-
"hasMore": obj.get("hasMore"),
|
|
97
|
-
"isSearchResults": obj.get("isSearchResults")
|
|
93
|
+
"total": obj.get("total")
|
|
98
94
|
})
|
|
99
95
|
return _obj
|
|
100
96
|
|
|
@@ -22,9 +22,9 @@ from typing import Any, ClassVar, Dict, List, Optional
|
|
|
22
22
|
from typing import Optional, Set
|
|
23
23
|
from typing_extensions import Self
|
|
24
24
|
|
|
25
|
-
class
|
|
25
|
+
class AgentIdDelete200Response(BaseModel):
|
|
26
26
|
"""
|
|
27
|
-
|
|
27
|
+
AgentIdDelete200Response
|
|
28
28
|
""" # noqa: E501
|
|
29
29
|
status: Optional[StrictBool] = None
|
|
30
30
|
__properties: ClassVar[List[str]] = ["status"]
|
|
@@ -47,7 +47,7 @@ class DeleteAgent200Response(BaseModel):
|
|
|
47
47
|
|
|
48
48
|
@classmethod
|
|
49
49
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
50
|
-
"""Create an instance of
|
|
50
|
+
"""Create an instance of AgentIdDelete200Response from a JSON string"""
|
|
51
51
|
return cls.from_dict(json.loads(json_str))
|
|
52
52
|
|
|
53
53
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -72,7 +72,7 @@ class DeleteAgent200Response(BaseModel):
|
|
|
72
72
|
|
|
73
73
|
@classmethod
|
|
74
74
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
75
|
-
"""Create an instance of
|
|
75
|
+
"""Create an instance of AgentIdDelete200Response from a dict"""
|
|
76
76
|
if obj is None:
|
|
77
77
|
return None
|
|
78
78
|
|
|
@@ -23,9 +23,9 @@ from smallestai.atoms.models.agent_dto import AgentDTO
|
|
|
23
23
|
from typing import Optional, Set
|
|
24
24
|
from typing_extensions import Self
|
|
25
25
|
|
|
26
|
-
class
|
|
26
|
+
class AgentIdGet200Response(BaseModel):
|
|
27
27
|
"""
|
|
28
|
-
|
|
28
|
+
AgentIdGet200Response
|
|
29
29
|
""" # noqa: E501
|
|
30
30
|
status: Optional[StrictBool] = None
|
|
31
31
|
data: Optional[AgentDTO] = None
|
|
@@ -49,7 +49,7 @@ class GetAgentById200Response(BaseModel):
|
|
|
49
49
|
|
|
50
50
|
@classmethod
|
|
51
51
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
52
|
-
"""Create an instance of
|
|
52
|
+
"""Create an instance of AgentIdGet200Response from a JSON string"""
|
|
53
53
|
return cls.from_dict(json.loads(json_str))
|
|
54
54
|
|
|
55
55
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -77,7 +77,7 @@ class GetAgentById200Response(BaseModel):
|
|
|
77
77
|
|
|
78
78
|
@classmethod
|
|
79
79
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
80
|
-
"""Create an instance of
|
|
80
|
+
"""Create an instance of AgentIdGet200Response from a dict"""
|
|
81
81
|
if obj is None:
|
|
82
82
|
return None
|
|
83
83
|
|
|
@@ -22,9 +22,9 @@ from typing import Any, ClassVar, Dict, List, Optional
|
|
|
22
22
|
from typing import Optional, Set
|
|
23
23
|
from typing_extensions import Self
|
|
24
24
|
|
|
25
|
-
class
|
|
25
|
+
class AgentIdPatch200Response(BaseModel):
|
|
26
26
|
"""
|
|
27
|
-
|
|
27
|
+
AgentIdPatch200Response
|
|
28
28
|
""" # noqa: E501
|
|
29
29
|
status: Optional[StrictBool] = None
|
|
30
30
|
data: Optional[StrictStr] = Field(default=None, description="The ID of the updated agent")
|
|
@@ -48,7 +48,7 @@ class UpdateAgent200Response(BaseModel):
|
|
|
48
48
|
|
|
49
49
|
@classmethod
|
|
50
50
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
51
|
-
"""Create an instance of
|
|
51
|
+
"""Create an instance of AgentIdPatch200Response from a JSON string"""
|
|
52
52
|
return cls.from_dict(json.loads(json_str))
|
|
53
53
|
|
|
54
54
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -73,7 +73,7 @@ class UpdateAgent200Response(BaseModel):
|
|
|
73
73
|
|
|
74
74
|
@classmethod
|
|
75
75
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
76
|
-
"""Create an instance of
|
|
76
|
+
"""Create an instance of AgentIdPatch200Response from a dict"""
|
|
77
77
|
if obj is None:
|
|
78
78
|
return None
|
|
79
79
|
|
|
@@ -19,24 +19,25 @@ import json
|
|
|
19
19
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
-
from smallestai.atoms.models.
|
|
23
|
-
from smallestai.atoms.models.
|
|
22
|
+
from smallestai.atoms.models.agent_id_patch_request_language import AgentIdPatchRequestLanguage
|
|
23
|
+
from smallestai.atoms.models.agent_id_patch_request_synthesizer import AgentIdPatchRequestSynthesizer
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
26
|
|
|
27
|
-
class
|
|
27
|
+
class AgentIdPatchRequest(BaseModel):
|
|
28
28
|
"""
|
|
29
|
-
|
|
29
|
+
AgentIdPatchRequest
|
|
30
30
|
""" # noqa: E501
|
|
31
31
|
name: Optional[StrictStr] = None
|
|
32
32
|
description: Optional[StrictStr] = None
|
|
33
|
-
language: Optional[
|
|
34
|
-
synthesizer: Optional[
|
|
33
|
+
language: Optional[AgentIdPatchRequestLanguage] = None
|
|
34
|
+
synthesizer: Optional[AgentIdPatchRequestSynthesizer] = None
|
|
35
35
|
global_knowledge_base_id: Optional[StrictStr] = Field(default=None, alias="globalKnowledgeBaseId")
|
|
36
|
-
slm_model: Optional[StrictStr] = Field(default='electron
|
|
36
|
+
slm_model: Optional[StrictStr] = Field(default='electron', alias="slmModel")
|
|
37
37
|
default_variables: Optional[Dict[str, Any]] = Field(default=None, description="The default variables to use for the agent. These variables will be used if no variables are provided when initiating a conversation with the agent.", alias="defaultVariables")
|
|
38
|
+
global_prompt: Optional[StrictStr] = Field(default=None, description="Set global instructions for your agent's personality, role, and behavior throughout conversations", alias="globalPrompt")
|
|
38
39
|
telephony_product_id: Optional[StrictStr] = Field(default=None, description="The telephony product ID of the agent. This is the product ID of the telephony product that will be used to make the outbound call. You can buy telephone number and assign it to the agent.", alias="telephonyProductId")
|
|
39
|
-
__properties: ClassVar[List[str]] = ["name", "description", "language", "synthesizer", "globalKnowledgeBaseId", "slmModel", "defaultVariables", "telephonyProductId"]
|
|
40
|
+
__properties: ClassVar[List[str]] = ["name", "description", "language", "synthesizer", "globalKnowledgeBaseId", "slmModel", "defaultVariables", "globalPrompt", "telephonyProductId"]
|
|
40
41
|
|
|
41
42
|
@field_validator('slm_model')
|
|
42
43
|
def slm_model_validate_enum(cls, value):
|
|
@@ -44,8 +45,8 @@ class UpdateAgentRequest(BaseModel):
|
|
|
44
45
|
if value is None:
|
|
45
46
|
return value
|
|
46
47
|
|
|
47
|
-
if value not in set(['electron
|
|
48
|
-
raise ValueError("must be one of enum values ('electron
|
|
48
|
+
if value not in set(['electron', 'gpt-4o']):
|
|
49
|
+
raise ValueError("must be one of enum values ('electron', 'gpt-4o')")
|
|
49
50
|
return value
|
|
50
51
|
|
|
51
52
|
model_config = ConfigDict(
|
|
@@ -66,7 +67,7 @@ class UpdateAgentRequest(BaseModel):
|
|
|
66
67
|
|
|
67
68
|
@classmethod
|
|
68
69
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
69
|
-
"""Create an instance of
|
|
70
|
+
"""Create an instance of AgentIdPatchRequest from a JSON string"""
|
|
70
71
|
return cls.from_dict(json.loads(json_str))
|
|
71
72
|
|
|
72
73
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -97,7 +98,7 @@ class UpdateAgentRequest(BaseModel):
|
|
|
97
98
|
|
|
98
99
|
@classmethod
|
|
99
100
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
100
|
-
"""Create an instance of
|
|
101
|
+
"""Create an instance of AgentIdPatchRequest from a dict"""
|
|
101
102
|
if obj is None:
|
|
102
103
|
return None
|
|
103
104
|
|
|
@@ -107,11 +108,12 @@ class UpdateAgentRequest(BaseModel):
|
|
|
107
108
|
_obj = cls.model_validate({
|
|
108
109
|
"name": obj.get("name"),
|
|
109
110
|
"description": obj.get("description"),
|
|
110
|
-
"language":
|
|
111
|
-
"synthesizer":
|
|
111
|
+
"language": AgentIdPatchRequestLanguage.from_dict(obj["language"]) if obj.get("language") is not None else None,
|
|
112
|
+
"synthesizer": AgentIdPatchRequestSynthesizer.from_dict(obj["synthesizer"]) if obj.get("synthesizer") is not None else None,
|
|
112
113
|
"globalKnowledgeBaseId": obj.get("globalKnowledgeBaseId"),
|
|
113
|
-
"slmModel": obj.get("slmModel") if obj.get("slmModel") is not None else 'electron
|
|
114
|
+
"slmModel": obj.get("slmModel") if obj.get("slmModel") is not None else 'electron',
|
|
114
115
|
"defaultVariables": obj.get("defaultVariables"),
|
|
116
|
+
"globalPrompt": obj.get("globalPrompt"),
|
|
115
117
|
"telephonyProductId": obj.get("telephonyProductId")
|
|
116
118
|
})
|
|
117
119
|
return _obj
|
smallestai/atoms/models/{update_agent_request_language.py → agent_id_patch_request_language.py}
RENAMED
|
@@ -17,17 +17,18 @@ import pprint
|
|
|
17
17
|
import re # noqa: F401
|
|
18
18
|
import json
|
|
19
19
|
|
|
20
|
-
from pydantic import BaseModel, ConfigDict, Field,
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictStr, field_validator
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional
|
|
22
|
+
from smallestai.atoms.models.agent_id_patch_request_language_switching import AgentIdPatchRequestLanguageSwitching
|
|
22
23
|
from typing import Optional, Set
|
|
23
24
|
from typing_extensions import Self
|
|
24
25
|
|
|
25
|
-
class
|
|
26
|
+
class AgentIdPatchRequestLanguage(BaseModel):
|
|
26
27
|
"""
|
|
27
28
|
Language configuration for the agent. You can enable or disable language switching for the agent. This will be used to determine the language of the agent.
|
|
28
29
|
""" # noqa: E501
|
|
29
|
-
enabled: Optional[StrictStr] = Field(default=
|
|
30
|
-
switching: Optional[
|
|
30
|
+
enabled: Optional[StrictStr] = Field(default='en', description="The language of the agent. You can choose from the list of supported languages.")
|
|
31
|
+
switching: Optional[AgentIdPatchRequestLanguageSwitching] = None
|
|
31
32
|
__properties: ClassVar[List[str]] = ["enabled", "switching"]
|
|
32
33
|
|
|
33
34
|
@field_validator('enabled')
|
|
@@ -36,8 +37,8 @@ class UpdateAgentRequestLanguage(BaseModel):
|
|
|
36
37
|
if value is None:
|
|
37
38
|
return value
|
|
38
39
|
|
|
39
|
-
if value not in set(['en', 'hi']):
|
|
40
|
-
raise ValueError("must be one of enum values ('en', 'hi')")
|
|
40
|
+
if value not in set(['en', 'hi', 'ta', 'kn']):
|
|
41
|
+
raise ValueError("must be one of enum values ('en', 'hi', 'ta', 'kn')")
|
|
41
42
|
return value
|
|
42
43
|
|
|
43
44
|
model_config = ConfigDict(
|
|
@@ -58,7 +59,7 @@ class UpdateAgentRequestLanguage(BaseModel):
|
|
|
58
59
|
|
|
59
60
|
@classmethod
|
|
60
61
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
61
|
-
"""Create an instance of
|
|
62
|
+
"""Create an instance of AgentIdPatchRequestLanguage from a JSON string"""
|
|
62
63
|
return cls.from_dict(json.loads(json_str))
|
|
63
64
|
|
|
64
65
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -79,11 +80,14 @@ class UpdateAgentRequestLanguage(BaseModel):
|
|
|
79
80
|
exclude=excluded_fields,
|
|
80
81
|
exclude_none=True,
|
|
81
82
|
)
|
|
83
|
+
# override the default output from pydantic by calling `to_dict()` of switching
|
|
84
|
+
if self.switching:
|
|
85
|
+
_dict['switching'] = self.switching.to_dict()
|
|
82
86
|
return _dict
|
|
83
87
|
|
|
84
88
|
@classmethod
|
|
85
89
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
86
|
-
"""Create an instance of
|
|
90
|
+
"""Create an instance of AgentIdPatchRequestLanguage from a dict"""
|
|
87
91
|
if obj is None:
|
|
88
92
|
return None
|
|
89
93
|
|
|
@@ -91,8 +95,8 @@ class UpdateAgentRequestLanguage(BaseModel):
|
|
|
91
95
|
return cls.model_validate(obj)
|
|
92
96
|
|
|
93
97
|
_obj = cls.model_validate({
|
|
94
|
-
"enabled": obj.get("enabled"),
|
|
95
|
-
"switching":
|
|
98
|
+
"enabled": obj.get("enabled") if obj.get("enabled") is not None else 'en',
|
|
99
|
+
"switching": AgentIdPatchRequestLanguageSwitching.from_dict(obj["switching"]) if obj.get("switching") is not None else None
|
|
96
100
|
})
|
|
97
101
|
return _obj
|
|
98
102
|
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
Agent Management API
|
|
5
|
+
|
|
6
|
+
API for managing agents, their templates, and call logs
|
|
7
|
+
|
|
8
|
+
The version of the OpenAPI document: 1.0.0
|
|
9
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
10
|
+
|
|
11
|
+
Do not edit the class manually.
|
|
12
|
+
""" # noqa: E501
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
from __future__ import annotations
|
|
16
|
+
import pprint
|
|
17
|
+
import re # noqa: F401
|
|
18
|
+
import json
|
|
19
|
+
|
|
20
|
+
from pydantic import BaseModel, ConfigDict, Field, StrictBool
|
|
21
|
+
from typing import Any, ClassVar, Dict, List, Optional, Union
|
|
22
|
+
from typing_extensions import Annotated
|
|
23
|
+
from typing import Optional, Set
|
|
24
|
+
from typing_extensions import Self
|
|
25
|
+
|
|
26
|
+
class AgentIdPatchRequestLanguageSwitching(BaseModel):
|
|
27
|
+
"""
|
|
28
|
+
Language switching configuration for the agent. If enabled, the agent will be able to switch between languages based on the user's language.
|
|
29
|
+
""" # noqa: E501
|
|
30
|
+
is_enabled: Optional[StrictBool] = Field(default=False, description="Whether to enable language switching for the agent", alias="isEnabled")
|
|
31
|
+
min_words_for_detection: Optional[Union[Annotated[float, Field(le=10, strict=True, ge=1)], Annotated[int, Field(le=10, strict=True, ge=1)]]] = Field(default=2, description="Minimum number of words required for language detection", alias="minWordsForDetection")
|
|
32
|
+
strong_signal_threshold: Optional[Union[Annotated[float, Field(le=0.9, strict=True, ge=0.1)], Annotated[int, Field(le=0, strict=True, ge=1)]]] = Field(default=0.7, description="Threshold for strong language signal detection (0.1 to 0.9)", alias="strongSignalThreshold")
|
|
33
|
+
weak_signal_threshold: Optional[Union[Annotated[float, Field(le=0.9, strict=True, ge=0.1)], Annotated[int, Field(le=0, strict=True, ge=1)]]] = Field(default=0.3, description="Threshold for weak language signal detection (0.1 to 0.9)", alias="weakSignalThreshold")
|
|
34
|
+
min_consecutive_for_weak_threshold_switch: Optional[Union[Annotated[float, Field(le=5, strict=True, ge=1)], Annotated[int, Field(le=5, strict=True, ge=1)]]] = Field(default=2, description="Minimum consecutive detections required for weak threshold language switch", alias="minConsecutiveForWeakThresholdSwitch")
|
|
35
|
+
__properties: ClassVar[List[str]] = ["isEnabled", "minWordsForDetection", "strongSignalThreshold", "weakSignalThreshold", "minConsecutiveForWeakThresholdSwitch"]
|
|
36
|
+
|
|
37
|
+
model_config = ConfigDict(
|
|
38
|
+
populate_by_name=True,
|
|
39
|
+
validate_assignment=True,
|
|
40
|
+
protected_namespaces=(),
|
|
41
|
+
)
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
def to_str(self) -> str:
|
|
45
|
+
"""Returns the string representation of the model using alias"""
|
|
46
|
+
return pprint.pformat(self.model_dump(by_alias=True))
|
|
47
|
+
|
|
48
|
+
def to_json(self) -> str:
|
|
49
|
+
"""Returns the JSON representation of the model using alias"""
|
|
50
|
+
# TODO: pydantic v2: use .model_dump_json(by_alias=True, exclude_unset=True) instead
|
|
51
|
+
return json.dumps(self.to_dict())
|
|
52
|
+
|
|
53
|
+
@classmethod
|
|
54
|
+
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
55
|
+
"""Create an instance of AgentIdPatchRequestLanguageSwitching from a JSON string"""
|
|
56
|
+
return cls.from_dict(json.loads(json_str))
|
|
57
|
+
|
|
58
|
+
def to_dict(self) -> Dict[str, Any]:
|
|
59
|
+
"""Return the dictionary representation of the model using alias.
|
|
60
|
+
|
|
61
|
+
This has the following differences from calling pydantic's
|
|
62
|
+
`self.model_dump(by_alias=True)`:
|
|
63
|
+
|
|
64
|
+
* `None` is only added to the output dict for nullable fields that
|
|
65
|
+
were set at model initialization. Other fields with value `None`
|
|
66
|
+
are ignored.
|
|
67
|
+
"""
|
|
68
|
+
excluded_fields: Set[str] = set([
|
|
69
|
+
])
|
|
70
|
+
|
|
71
|
+
_dict = self.model_dump(
|
|
72
|
+
by_alias=True,
|
|
73
|
+
exclude=excluded_fields,
|
|
74
|
+
exclude_none=True,
|
|
75
|
+
)
|
|
76
|
+
return _dict
|
|
77
|
+
|
|
78
|
+
@classmethod
|
|
79
|
+
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
80
|
+
"""Create an instance of AgentIdPatchRequestLanguageSwitching from a dict"""
|
|
81
|
+
if obj is None:
|
|
82
|
+
return None
|
|
83
|
+
|
|
84
|
+
if not isinstance(obj, dict):
|
|
85
|
+
return cls.model_validate(obj)
|
|
86
|
+
|
|
87
|
+
_obj = cls.model_validate({
|
|
88
|
+
"isEnabled": obj.get("isEnabled") if obj.get("isEnabled") is not None else False,
|
|
89
|
+
"minWordsForDetection": obj.get("minWordsForDetection") if obj.get("minWordsForDetection") is not None else 2,
|
|
90
|
+
"strongSignalThreshold": obj.get("strongSignalThreshold") if obj.get("strongSignalThreshold") is not None else 0.7,
|
|
91
|
+
"weakSignalThreshold": obj.get("weakSignalThreshold") if obj.get("weakSignalThreshold") is not None else 0.3,
|
|
92
|
+
"minConsecutiveForWeakThresholdSwitch": obj.get("minConsecutiveForWeakThresholdSwitch") if obj.get("minConsecutiveForWeakThresholdSwitch") is not None else 2
|
|
93
|
+
})
|
|
94
|
+
return _obj
|
|
95
|
+
|
|
96
|
+
|
|
@@ -20,15 +20,15 @@ import json
|
|
|
20
20
|
from pydantic import BaseModel, ConfigDict, Field, StrictFloat, StrictInt, field_validator
|
|
21
21
|
from typing import Any, ClassVar, Dict, List, Optional, Union
|
|
22
22
|
from typing_extensions import Annotated
|
|
23
|
-
from smallestai.atoms.models.
|
|
23
|
+
from smallestai.atoms.models.agent_id_patch_request_synthesizer_voice_config import AgentIdPatchRequestSynthesizerVoiceConfig
|
|
24
24
|
from typing import Optional, Set
|
|
25
25
|
from typing_extensions import Self
|
|
26
26
|
|
|
27
|
-
class
|
|
27
|
+
class AgentIdPatchRequestSynthesizer(BaseModel):
|
|
28
28
|
"""
|
|
29
29
|
Synthesizer configuration for the agent. You can configure the synthesizer to use different voices and models. Currently we support 3 types of models for the synthesizer. Waves, Waves Lightning Large and Waves Lightning Large Voice Clone. You can clone your voice using waves platform https://waves.smallest.ai/voice-clone and use the voiceId for this field and select the model as waves_lightning_large_voice_clone to use your cloned voice. When updating the synthesizer configuration to voice clone model, you have to provide model and voiceId and gender all are required fields but when selecting the model as waves or waves and waves_lightning_large, you have to provide only model field and voiceId.
|
|
30
30
|
""" # noqa: E501
|
|
31
|
-
voice_config: Optional[
|
|
31
|
+
voice_config: Optional[AgentIdPatchRequestSynthesizerVoiceConfig] = Field(default=None, alias="voiceConfig")
|
|
32
32
|
speed: Optional[Union[StrictFloat, StrictInt]] = 1.2
|
|
33
33
|
consistency: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = 0.5
|
|
34
34
|
similarity: Optional[Union[Annotated[float, Field(le=1, strict=True, ge=0)], Annotated[int, Field(le=1, strict=True, ge=0)]]] = 0
|
|
@@ -63,7 +63,7 @@ class UpdateAgentRequestSynthesizer(BaseModel):
|
|
|
63
63
|
|
|
64
64
|
@classmethod
|
|
65
65
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
66
|
-
"""Create an instance of
|
|
66
|
+
"""Create an instance of AgentIdPatchRequestSynthesizer from a JSON string"""
|
|
67
67
|
return cls.from_dict(json.loads(json_str))
|
|
68
68
|
|
|
69
69
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -91,7 +91,7 @@ class UpdateAgentRequestSynthesizer(BaseModel):
|
|
|
91
91
|
|
|
92
92
|
@classmethod
|
|
93
93
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
94
|
-
"""Create an instance of
|
|
94
|
+
"""Create an instance of AgentIdPatchRequestSynthesizer from a dict"""
|
|
95
95
|
if obj is None:
|
|
96
96
|
return None
|
|
97
97
|
|
|
@@ -99,7 +99,7 @@ class UpdateAgentRequestSynthesizer(BaseModel):
|
|
|
99
99
|
return cls.model_validate(obj)
|
|
100
100
|
|
|
101
101
|
_obj = cls.model_validate({
|
|
102
|
-
"voiceConfig":
|
|
102
|
+
"voiceConfig": AgentIdPatchRequestSynthesizerVoiceConfig.from_dict(obj["voiceConfig"]) if obj.get("voiceConfig") is not None else None,
|
|
103
103
|
"speed": obj.get("speed") if obj.get("speed") is not None else 1.2,
|
|
104
104
|
"consistency": obj.get("consistency") if obj.get("consistency") is not None else 0.5,
|
|
105
105
|
"similarity": obj.get("similarity") if obj.get("similarity") is not None else 0,
|
|
@@ -17,24 +17,24 @@ import json
|
|
|
17
17
|
import pprint
|
|
18
18
|
from pydantic import BaseModel, ConfigDict, Field, StrictStr, ValidationError, field_validator
|
|
19
19
|
from typing import Any, List, Optional
|
|
20
|
-
from smallestai.atoms.models.
|
|
21
|
-
from smallestai.atoms.models.
|
|
20
|
+
from smallestai.atoms.models.agent_id_patch_request_synthesizer_voice_config_one_of import AgentIdPatchRequestSynthesizerVoiceConfigOneOf
|
|
21
|
+
from smallestai.atoms.models.agent_id_patch_request_synthesizer_voice_config_one_of1 import AgentIdPatchRequestSynthesizerVoiceConfigOneOf1
|
|
22
22
|
from pydantic import StrictStr, Field
|
|
23
23
|
from typing import Union, List, Set, Optional, Dict
|
|
24
24
|
from typing_extensions import Literal, Self
|
|
25
25
|
|
|
26
|
-
|
|
26
|
+
AGENTIDPATCHREQUESTSYNTHESIZERVOICECONFIG_ONE_OF_SCHEMAS = ["AgentIdPatchRequestSynthesizerVoiceConfigOneOf", "AgentIdPatchRequestSynthesizerVoiceConfigOneOf1"]
|
|
27
27
|
|
|
28
|
-
class
|
|
28
|
+
class AgentIdPatchRequestSynthesizerVoiceConfig(BaseModel):
|
|
29
29
|
"""
|
|
30
|
-
|
|
30
|
+
AgentIdPatchRequestSynthesizerVoiceConfig
|
|
31
31
|
"""
|
|
32
|
-
# data type:
|
|
33
|
-
oneof_schema_1_validator: Optional[
|
|
34
|
-
# data type:
|
|
35
|
-
oneof_schema_2_validator: Optional[
|
|
36
|
-
actual_instance: Optional[Union[
|
|
37
|
-
one_of_schemas: Set[str] = { "
|
|
32
|
+
# data type: AgentIdPatchRequestSynthesizerVoiceConfigOneOf
|
|
33
|
+
oneof_schema_1_validator: Optional[AgentIdPatchRequestSynthesizerVoiceConfigOneOf] = None
|
|
34
|
+
# data type: AgentIdPatchRequestSynthesizerVoiceConfigOneOf1
|
|
35
|
+
oneof_schema_2_validator: Optional[AgentIdPatchRequestSynthesizerVoiceConfigOneOf1] = None
|
|
36
|
+
actual_instance: Optional[Union[AgentIdPatchRequestSynthesizerVoiceConfigOneOf, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1]] = None
|
|
37
|
+
one_of_schemas: Set[str] = { "AgentIdPatchRequestSynthesizerVoiceConfigOneOf", "AgentIdPatchRequestSynthesizerVoiceConfigOneOf1" }
|
|
38
38
|
|
|
39
39
|
model_config = ConfigDict(
|
|
40
40
|
validate_assignment=True,
|
|
@@ -54,25 +54,25 @@ class UpdateAgentRequestSynthesizerVoiceConfig(BaseModel):
|
|
|
54
54
|
|
|
55
55
|
@field_validator('actual_instance')
|
|
56
56
|
def actual_instance_must_validate_oneof(cls, v):
|
|
57
|
-
instance =
|
|
57
|
+
instance = AgentIdPatchRequestSynthesizerVoiceConfig.model_construct()
|
|
58
58
|
error_messages = []
|
|
59
59
|
match = 0
|
|
60
|
-
# validate data type:
|
|
61
|
-
if not isinstance(v,
|
|
62
|
-
error_messages.append(f"Error! Input type `{type(v)}` is not `
|
|
60
|
+
# validate data type: AgentIdPatchRequestSynthesizerVoiceConfigOneOf
|
|
61
|
+
if not isinstance(v, AgentIdPatchRequestSynthesizerVoiceConfigOneOf):
|
|
62
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `AgentIdPatchRequestSynthesizerVoiceConfigOneOf`")
|
|
63
63
|
else:
|
|
64
64
|
match += 1
|
|
65
|
-
# validate data type:
|
|
66
|
-
if not isinstance(v,
|
|
67
|
-
error_messages.append(f"Error! Input type `{type(v)}` is not `
|
|
65
|
+
# validate data type: AgentIdPatchRequestSynthesizerVoiceConfigOneOf1
|
|
66
|
+
if not isinstance(v, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1):
|
|
67
|
+
error_messages.append(f"Error! Input type `{type(v)}` is not `AgentIdPatchRequestSynthesizerVoiceConfigOneOf1`")
|
|
68
68
|
else:
|
|
69
69
|
match += 1
|
|
70
70
|
if match > 1:
|
|
71
71
|
# more than 1 match
|
|
72
|
-
raise ValueError("Multiple matches found when setting `actual_instance` in
|
|
72
|
+
raise ValueError("Multiple matches found when setting `actual_instance` in AgentIdPatchRequestSynthesizerVoiceConfig with oneOf schemas: AgentIdPatchRequestSynthesizerVoiceConfigOneOf, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1. Details: " + ", ".join(error_messages))
|
|
73
73
|
elif match == 0:
|
|
74
74
|
# no match
|
|
75
|
-
raise ValueError("No match found when setting `actual_instance` in
|
|
75
|
+
raise ValueError("No match found when setting `actual_instance` in AgentIdPatchRequestSynthesizerVoiceConfig with oneOf schemas: AgentIdPatchRequestSynthesizerVoiceConfigOneOf, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1. Details: " + ", ".join(error_messages))
|
|
76
76
|
else:
|
|
77
77
|
return v
|
|
78
78
|
|
|
@@ -87,25 +87,25 @@ class UpdateAgentRequestSynthesizerVoiceConfig(BaseModel):
|
|
|
87
87
|
error_messages = []
|
|
88
88
|
match = 0
|
|
89
89
|
|
|
90
|
-
# deserialize data into
|
|
90
|
+
# deserialize data into AgentIdPatchRequestSynthesizerVoiceConfigOneOf
|
|
91
91
|
try:
|
|
92
|
-
instance.actual_instance =
|
|
92
|
+
instance.actual_instance = AgentIdPatchRequestSynthesizerVoiceConfigOneOf.from_json(json_str)
|
|
93
93
|
match += 1
|
|
94
94
|
except (ValidationError, ValueError) as e:
|
|
95
95
|
error_messages.append(str(e))
|
|
96
|
-
# deserialize data into
|
|
96
|
+
# deserialize data into AgentIdPatchRequestSynthesizerVoiceConfigOneOf1
|
|
97
97
|
try:
|
|
98
|
-
instance.actual_instance =
|
|
98
|
+
instance.actual_instance = AgentIdPatchRequestSynthesizerVoiceConfigOneOf1.from_json(json_str)
|
|
99
99
|
match += 1
|
|
100
100
|
except (ValidationError, ValueError) as e:
|
|
101
101
|
error_messages.append(str(e))
|
|
102
102
|
|
|
103
103
|
if match > 1:
|
|
104
104
|
# more than 1 match
|
|
105
|
-
raise ValueError("Multiple matches found when deserializing the JSON string into
|
|
105
|
+
raise ValueError("Multiple matches found when deserializing the JSON string into AgentIdPatchRequestSynthesizerVoiceConfig with oneOf schemas: AgentIdPatchRequestSynthesizerVoiceConfigOneOf, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1. Details: " + ", ".join(error_messages))
|
|
106
106
|
elif match == 0:
|
|
107
107
|
# no match
|
|
108
|
-
raise ValueError("No match found when deserializing the JSON string into
|
|
108
|
+
raise ValueError("No match found when deserializing the JSON string into AgentIdPatchRequestSynthesizerVoiceConfig with oneOf schemas: AgentIdPatchRequestSynthesizerVoiceConfigOneOf, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1. Details: " + ", ".join(error_messages))
|
|
109
109
|
else:
|
|
110
110
|
return instance
|
|
111
111
|
|
|
@@ -119,7 +119,7 @@ class UpdateAgentRequestSynthesizerVoiceConfig(BaseModel):
|
|
|
119
119
|
else:
|
|
120
120
|
return json.dumps(self.actual_instance)
|
|
121
121
|
|
|
122
|
-
def to_dict(self) -> Optional[Union[Dict[str, Any],
|
|
122
|
+
def to_dict(self) -> Optional[Union[Dict[str, Any], AgentIdPatchRequestSynthesizerVoiceConfigOneOf, AgentIdPatchRequestSynthesizerVoiceConfigOneOf1]]:
|
|
123
123
|
"""Returns the dict representation of the actual instance"""
|
|
124
124
|
if self.actual_instance is None:
|
|
125
125
|
return None
|
|
@@ -22,9 +22,9 @@ from typing import Any, ClassVar, Dict, List, Optional
|
|
|
22
22
|
from typing import Optional, Set
|
|
23
23
|
from typing_extensions import Self
|
|
24
24
|
|
|
25
|
-
class
|
|
25
|
+
class AgentIdPatchRequestSynthesizerVoiceConfigOneOf(BaseModel):
|
|
26
26
|
"""
|
|
27
|
-
|
|
27
|
+
AgentIdPatchRequestSynthesizerVoiceConfigOneOf
|
|
28
28
|
""" # noqa: E501
|
|
29
29
|
model: Optional[StrictStr] = Field(default=None, description="We currently support 3 types of models for the synthesizer. Waves, Waves Lightning Large and Waves Lightning Large Voice Clone. You can clone your voice using waves platform and use the voiceId for this field and select the model as waves_lightning_large_voice_clone to use your cloned voice.")
|
|
30
30
|
voice_id: Optional[StrictStr] = Field(default=None, alias="voiceId")
|
|
@@ -69,7 +69,7 @@ class UpdateAgentRequestSynthesizerVoiceConfigOneOf(BaseModel):
|
|
|
69
69
|
|
|
70
70
|
@classmethod
|
|
71
71
|
def from_json(cls, json_str: str) -> Optional[Self]:
|
|
72
|
-
"""Create an instance of
|
|
72
|
+
"""Create an instance of AgentIdPatchRequestSynthesizerVoiceConfigOneOf from a JSON string"""
|
|
73
73
|
return cls.from_dict(json.loads(json_str))
|
|
74
74
|
|
|
75
75
|
def to_dict(self) -> Dict[str, Any]:
|
|
@@ -94,7 +94,7 @@ class UpdateAgentRequestSynthesizerVoiceConfigOneOf(BaseModel):
|
|
|
94
94
|
|
|
95
95
|
@classmethod
|
|
96
96
|
def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
|
|
97
|
-
"""Create an instance of
|
|
97
|
+
"""Create an instance of AgentIdPatchRequestSynthesizerVoiceConfigOneOf from a dict"""
|
|
98
98
|
if obj is None:
|
|
99
99
|
return None
|
|
100
100
|
|