amigo_sdk 0.11.0__py3-none-any.whl → 0.13.0__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 amigo_sdk might be problematic. Click here for more details.

amigo_sdk/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
- __version__ = "0.11.0"
1
+ __version__ = "0.13.0"
2
2
  from .sdk_client import AmigoClient, AsyncAmigoClient
3
3
 
4
4
  __all__ = ["__version__", "AmigoClient", "AsyncAmigoClient"]
@@ -1,6 +1,6 @@
1
1
  # generated by datamodel-codegen:
2
2
  # filename: <stdin>
3
- # timestamp: 2025-08-27T15:09:46+00:00
3
+ # timestamp: 2025-08-27T20:46:42+00:00
4
4
 
5
5
  from __future__ import annotations
6
6
 
@@ -8847,12 +8847,6 @@ class SendEmailSideEffect(BaseModel):
8847
8847
  )
8848
8848
 
8849
8849
 
8850
- class SideEffect(RootModel[Union[SendEmailSideEffect, EmitEventSideEffect]]):
8851
- root: Union[SendEmailSideEffect, EmitEventSideEffect] = Field(
8852
- ..., discriminator='type'
8853
- )
8854
-
8855
-
8856
8850
  class SideEffectStateNextState(AnnotationStateInputNextState):
8857
8851
  pass
8858
8852
 
@@ -8860,7 +8854,9 @@ class SideEffectStateNextState(AnnotationStateInputNextState):
8860
8854
  class SideEffectState(BaseModel):
8861
8855
  type: Literal['side-effect'] = Field(..., title='Type')
8862
8856
  next_state: Union[str, SideEffectStateNextState] = Field(..., title='Next State')
8863
- side_effect: SideEffect
8857
+ side_effect: Union[SendEmailSideEffect, EmitEventSideEffect] = Field(
8858
+ ..., discriminator='type'
8859
+ )
8864
8860
 
8865
8861
 
8866
8862
  class SideEffectStateTransitionLog(BaseModel):
@@ -8958,18 +8954,10 @@ class StateOrRefName(RootModel[str]):
8958
8954
  root: str = Field(..., pattern='^[A-Za-z0-9_]+$')
8959
8955
 
8960
8956
 
8961
- class StrippedNonemptyStringAZ(RootModel[str]):
8962
- root: str = Field(..., min_length=1, pattern='[A-Z_]+')
8963
-
8964
-
8965
8957
  class StrippedNonemptyStringWS(RootModel[str]):
8966
8958
  root: str = Field(..., min_length=1, pattern='^[\\w\\s]+$')
8967
8959
 
8968
8960
 
8969
- class StrippedNonemptyStringAZ09(RootModel[str]):
8970
- root: str = Field(..., min_length=1, pattern='^[a-z0-9_]+$')
8971
-
8972
-
8973
8961
  class Tag(BaseModel):
8974
8962
  key: str = Field(..., title='Key')
8975
8963
  value: Optional[str] = Field(..., title='Value')
@@ -9195,8 +9183,11 @@ class UnitTestRunSpecPersonaVersionInfo(RootModel[List]):
9195
9183
 
9196
9184
 
9197
9185
  class UpdateRequest(BaseModel):
9198
- name: StrippedNonemptyStringAZ = Field(
9199
- ..., description='The name of the environment variable to update.'
9186
+ name: str = Field(
9187
+ ...,
9188
+ description='The name of the environment variable to update.',
9189
+ min_length=1,
9190
+ pattern='[A-Z_]+',
9200
9191
  )
9201
9192
  value: str = Field(
9202
9193
  ...,
@@ -9210,14 +9201,6 @@ class UserDimensionOutput(BaseModel):
9210
9201
  tags: List[str] = Field(..., title='Tags')
9211
9202
 
9212
9203
 
9213
- class UserMessageAudioConfig(
9214
- RootModel[Union[MP3UserMessageAudioConfig, PCMUserMessageAudioConfig]]
9215
- ):
9216
- root: Union[MP3UserMessageAudioConfig, PCMUserMessageAudioConfig] = Field(
9217
- ..., discriminator='type'
9218
- )
9219
-
9220
-
9221
9204
  class UserMessageAvailableEvent(BaseModel):
9222
9205
  type: Literal['user-message-available'] = Field(
9223
9206
  'user-message-available', title='Type'
@@ -9334,10 +9317,6 @@ class WebhookDestination(BaseModel):
9334
9317
  )
9335
9318
 
9336
9319
 
9337
- class WebhookType(RootModel[Literal['conversation-post-processing-complete']]):
9338
- root: Literal['conversation-post-processing-complete']
9339
-
9340
-
9341
9320
  class WorkingMemory(BaseModel):
9342
9321
  content: str = Field(..., description='The content of the memory.', title='Content')
9343
9322
  context: str = Field(..., description='The context of the memory.', title='Context')
@@ -9464,10 +9443,6 @@ class AmigoLibPydanticBaseModelStrippedNonemptyString2(
9464
9443
  pass
9465
9444
 
9466
9445
 
9467
- class AmigoLibPydanticBaseModelStrippedNonemptyString3(RootModel[str]):
9468
- root: str = Field(..., max_length=256, min_length=1)
9469
-
9470
-
9471
9446
  class AmigoLibPydanticBaseModelStrippedNonemptyString4(RootModel[str]):
9472
9447
  root: str = Field(..., max_length=3, min_length=1)
9473
9448
 
@@ -9541,8 +9516,10 @@ class ConversationGenerateConversationStarterRequest(BaseModel):
9541
9516
  le=10,
9542
9517
  title='Max Count',
9543
9518
  )
9544
- generation_instructions: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
9545
- ..., description='The instruction for the conversation starter generation.'
9519
+ generation_instructions: str = Field(
9520
+ ...,
9521
+ description='The instruction for the conversation starter generation.',
9522
+ min_length=1,
9546
9523
  )
9547
9524
 
9548
9525
 
@@ -9580,7 +9557,7 @@ class DynamicBehaviorSetCreateDynamicBehaviorSetRequestInitialVersionInjectInstr
9580
9557
  BaseModel
9581
9558
  ):
9582
9559
  type: Literal['inject-instruction'] = Field(..., title='Type')
9583
- instruction: AmigoLibPydanticBaseModelStrippedNonemptyString1
9560
+ instruction: str = Field(..., min_length=1)
9584
9561
  overrides_instructions: bool = Field(
9585
9562
  ...,
9586
9563
  description='During injection, whether the original instruction of the state is overriden with this instruction.',
@@ -9600,7 +9577,7 @@ class DynamicBehaviorSetCreateDynamicBehaviorSetVersionRequestInjectInstructionA
9600
9577
  BaseModel
9601
9578
  ):
9602
9579
  type: Literal['inject-instruction'] = Field(..., title='Type')
9603
- instruction: AmigoLibPydanticBaseModelStrippedNonemptyString1
9580
+ instruction: str = Field(..., min_length=1)
9604
9581
  overrides_instructions: bool = Field(..., title='Overrides Instructions')
9605
9582
 
9606
9583
 
@@ -9796,8 +9773,8 @@ class MetricUpdateMetricRequest(BaseModel):
9796
9773
 
9797
9774
 
9798
9775
  class OrganizationCreateAgentRequest(BaseModel):
9799
- agent_name: AmigoLibPydanticBaseModelStrippedNonemptyString3 = Field(
9800
- ..., description='The name of the new agent.'
9776
+ agent_name: str = Field(
9777
+ ..., description='The name of the new agent.', max_length=256, min_length=1
9801
9778
  )
9802
9779
 
9803
9780
 
@@ -10483,8 +10460,11 @@ class OrganizationCreateOrganizationResponse(BaseModel):
10483
10460
 
10484
10461
 
10485
10462
  class OrganizationCreateServiceHierarchicalStateMachineRequest(BaseModel):
10486
- state_machine_name: AmigoLibPydanticBaseModelStrippedNonemptyString3 = Field(
10487
- ..., description='The name of the new state machine.'
10463
+ state_machine_name: str = Field(
10464
+ ...,
10465
+ description='The name of the new state machine.',
10466
+ max_length=256,
10467
+ min_length=1,
10488
10468
  )
10489
10469
 
10490
10470
 
@@ -10703,8 +10683,8 @@ class ServiceUpdateServiceRequest(BaseModel):
10703
10683
 
10704
10684
 
10705
10685
  class SimulationCreateSimulationPersonaRequestInitialVersion(BaseModel):
10706
- background: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
10707
- ..., description='The background of the simulation persona.'
10686
+ background: str = Field(
10687
+ ..., description='The background of the simulation persona.', min_length=1
10708
10688
  )
10709
10689
  preferred_language: Optional[
10710
10690
  Union[IdentityInputDefaultSpokenLanguage, FieldNotSet]
@@ -10731,8 +10711,8 @@ class SimulationCreateSimulationPersonaResponse(BaseModel):
10731
10711
 
10732
10712
 
10733
10713
  class SimulationCreateSimulationPersonaVersionRequest(BaseModel):
10734
- background: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
10735
- ..., description='The background of the simulation persona.'
10714
+ background: str = Field(
10715
+ ..., description='The background of the simulation persona.', min_length=1
10736
10716
  )
10737
10717
  preferred_language: Optional[
10738
10718
  Union[IdentityInputDefaultSpokenLanguage, FieldNotSet]
@@ -10783,8 +10763,8 @@ class SimulationCreateSimulationUnitTestResponse(BaseModel):
10783
10763
 
10784
10764
 
10785
10765
  class SimulationCreateSimulationUnitTestSetRequest(BaseModel):
10786
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
10787
- ..., description='The name of the simulation unit test set.'
10766
+ name: str = Field(
10767
+ ..., description='The name of the simulation unit test set.', min_length=1
10788
10768
  )
10789
10769
  description: Optional[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
10790
10770
  ..., description='The description of the simulation unit test set.'
@@ -11052,12 +11032,14 @@ class SimulationUpdateSimulationUnitTestSetRequest(BaseModel):
11052
11032
 
11053
11033
 
11054
11034
  class ToolCreateToolRequest(BaseModel):
11055
- name: StrippedNonemptyStringAZ09 = Field(
11035
+ name: str = Field(
11056
11036
  ...,
11057
11037
  description='The name of the tool. It must be unique among all non-deprecated tools in the organization.',
11038
+ min_length=1,
11039
+ pattern='^[a-z0-9_]+$',
11058
11040
  )
11059
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
11060
- ..., description='A description of the tool.'
11041
+ description: str = Field(
11042
+ ..., description='A description of the tool.', min_length=1
11061
11043
  )
11062
11044
  tags: Dict[str, Optional[StrippedNonemptyStringWS]] = Field(
11063
11045
  ..., description='The tags of this tool.', title='Tags'
@@ -11288,7 +11270,7 @@ class WebhookDestinationCreateWebhookDestinationRequest(BaseModel):
11288
11270
  description='The URL to which the webhook will be sent. The URL must be in HTTPS.',
11289
11271
  title='Url',
11290
11272
  )
11291
- accepted_types: List[WebhookType] = Field(
11273
+ accepted_types: List[Literal['conversation-post-processing-complete']] = Field(
11292
11274
  ..., description='A list of webhook types to receive.', title='Accepted Types'
11293
11275
  )
11294
11276
  retry_attempts: Optional[int] = Field(
@@ -11352,10 +11334,12 @@ class WebhookDestinationUpdateWebhookDestinationRequest(BaseModel):
11352
11334
  description='The number of attempts to retry sending the webhook event in case of failure. If not specified, this field is not updated.',
11353
11335
  title='Retry Attempts',
11354
11336
  )
11355
- accepted_types: Optional[List[WebhookType]] = Field(
11356
- None,
11357
- description='A list of webhook types to receive. If not specified, this field is not updated.',
11358
- title='Accepted Types',
11337
+ accepted_types: Optional[List[Literal['conversation-post-processing-complete']]] = (
11338
+ Field(
11339
+ None,
11340
+ description='A list of webhook types to receive. If not specified, this field is not updated.',
11341
+ title='Accepted Types',
11342
+ )
11359
11343
  )
11360
11344
 
11361
11345
 
@@ -11648,7 +11632,7 @@ class GetConversationMessagesParametersQuery(BaseModel):
11648
11632
  [], description='The IDs of the messages to retrieve.', title='Id'
11649
11633
  )
11650
11634
  message_type: Optional[List[MessageType]] = Field(
11651
- ['external-event', 'user-message', 'agent-message'],
11635
+ ['agent-message', 'user-message', 'external-event'],
11652
11636
  description='The type of messages to retrieve.',
11653
11637
  title='Message Type',
11654
11638
  )
@@ -11689,7 +11673,9 @@ class InteractWithConversationParametersQuery(BaseModel):
11689
11673
  description='The format of the response that will be sent to the user.',
11690
11674
  title='Response Format',
11691
11675
  )
11692
- request_audio_config: Optional[UserMessageAudioConfig] = Field(
11676
+ request_audio_config: Optional[
11677
+ Union[MP3UserMessageAudioConfig, PCMUserMessageAudioConfig]
11678
+ ] = Field(
11693
11679
  None,
11694
11680
  description='Configuration for the user message audio. This is only required if `request_format` is set to `voice`.',
11695
11681
  title='Request Audio Config',
@@ -11992,9 +11978,10 @@ class SearchDynamicBehaviorSetsParametersQueryCreator(RootModel[List[str]]):
11992
11978
 
11993
11979
 
11994
11980
  class SearchDynamicBehaviorSetsParametersQuery(BaseModel):
11995
- query: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
11981
+ query: str = Field(
11996
11982
  ...,
11997
11983
  description='The query to search for. Any sets containing the terms in its name and the triggers of its latest version would be returned.',
11984
+ min_length=1,
11998
11985
  )
11999
11986
  is_active: Optional[bool] = Field(
12000
11987
  None,
@@ -12135,9 +12122,10 @@ class SearchMetricsParametersQueryCreator(RootModel[List[str]]):
12135
12122
 
12136
12123
 
12137
12124
  class SearchMetricsParametersQuery(BaseModel):
12138
- query: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
12125
+ query: str = Field(
12139
12126
  ...,
12140
12127
  description='The query to search for. Any metrics containing the terms in its name and description would be returned.',
12128
+ min_length=1,
12141
12129
  )
12142
12130
  applied_to_service: Optional[SearchMetricsParametersQueryAppliedToService] = Field(
12143
12131
  None,
@@ -12401,9 +12389,10 @@ class GetSimulationScenariosParametersQuery(BaseModel):
12401
12389
 
12402
12390
 
12403
12391
  class SearchSimulationPersonasParametersQuery(BaseModel):
12404
- query: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
12392
+ query: str = Field(
12405
12393
  ...,
12406
12394
  description='The query to search for. Any simulation personas containing the terms in its name and the background of its latest version would be returned.',
12395
+ min_length=1,
12407
12396
  )
12408
12397
  role: Optional[List[str]] = Field(
12409
12398
  [], description='The roles of the simulation personas.', title='Role'
@@ -12421,9 +12410,10 @@ class SearchSimulationPersonasParametersQuery(BaseModel):
12421
12410
 
12422
12411
 
12423
12412
  class SearchSimulationScenariosParametersQuery(BaseModel):
12424
- query: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
12413
+ query: str = Field(
12425
12414
  ...,
12426
12415
  description='The query to search for. Any simulation scenarios containing the terms in its name would be returned.',
12416
+ min_length=1,
12427
12417
  )
12428
12418
  creator: Optional[List[str]] = Field(
12429
12419
  [],
@@ -12558,9 +12548,10 @@ class SearchSimulationUnitTestsParametersQueryMetricIdItem(
12558
12548
 
12559
12549
 
12560
12550
  class SearchSimulationUnitTestsParametersQuery(BaseModel):
12561
- query: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
12551
+ query: str = Field(
12562
12552
  ...,
12563
12553
  description='The query to search for. Any simulation unit tests containing the terms in its name would be returned.',
12554
+ min_length=1,
12564
12555
  )
12565
12556
  creator: Optional[List[str]] = Field(
12566
12557
  [],
@@ -12668,9 +12659,10 @@ class SearchSimulationUnitTestSetsParametersQueryUnitTestIdItem(
12668
12659
 
12669
12660
 
12670
12661
  class SearchSimulationUnitTestSetsParametersQuery(BaseModel):
12671
- query: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
12662
+ query: str = Field(
12672
12663
  ...,
12673
12664
  description='The query to search for. Any simulation unit test sets containing the terms in its name or description would be returned.',
12665
+ min_length=1,
12674
12666
  )
12675
12667
  creator: Optional[List[str]] = Field(
12676
12668
  [],
@@ -12960,7 +12952,7 @@ class ActionStateTransitionLog(BaseModel):
12960
12952
 
12961
12953
  class AnnotationStateInput(BaseModel):
12962
12954
  type: Literal['annotation'] = Field(..., title='Type')
12963
- inner_thought: AmigoLibPydanticBaseModelStrippedNonemptyString1
12955
+ inner_thought: str = Field(..., min_length=1)
12964
12956
  next_state: Union[StateOrRefName, AnnotationStateInputNextState] = Field(
12965
12957
  ..., title='Next State'
12966
12958
  )
@@ -12980,12 +12972,6 @@ class CategoricalMetricValueInput(BaseModel):
12980
12972
  )
12981
12973
 
12982
12974
 
12983
- class Condition(RootModel[Union[EqualCondition, InCondition, NotEqualCondition]]):
12984
- root: Union[EqualCondition, InCondition, NotEqualCondition] = Field(
12985
- ..., discriminator='type'
12986
- )
12987
-
12988
-
12989
12975
  class DecisionStateOutput(BaseModel):
12990
12976
  type: Literal['decision'] = Field(..., title='Type')
12991
12977
  exit_conditions: List[ExitConditionOutput] = Field(
@@ -13051,8 +13037,11 @@ class DecisionStateTransitionLog(BaseModel):
13051
13037
 
13052
13038
 
13053
13039
  class DeleteRequest(BaseModel):
13054
- name: StrippedNonemptyStringAZ = Field(
13055
- ..., description='The name of the environment variable to delete.'
13040
+ name: str = Field(
13041
+ ...,
13042
+ description='The name of the environment variable to delete.',
13043
+ min_length=1,
13044
+ pattern='[A-Z_]+',
13056
13045
  )
13057
13046
 
13058
13047
 
@@ -13081,26 +13070,8 @@ class DynamicBehaviorSetVersion(BaseModel):
13081
13070
  action: AmigoLibMongoCollectionsDynamicBehaviorSetVersionAction
13082
13071
 
13083
13072
 
13084
- class EngageUserAgentActionEvent(
13085
- RootModel[
13086
- Union[
13087
- EngageUserDynamicBehaviorOverrideEvent,
13088
- EngageUserMessageFragmentGeneratedEvent,
13089
- ToolCallStartedEvent,
13090
- ToolCallEndedEvent,
13091
- ]
13092
- ]
13093
- ):
13094
- root: Union[
13095
- EngageUserDynamicBehaviorOverrideEvent,
13096
- EngageUserMessageFragmentGeneratedEvent,
13097
- ToolCallStartedEvent,
13098
- ToolCallEndedEvent,
13099
- ] = Field(..., discriminator='type')
13100
-
13101
-
13102
13073
  class ExitConditionInput(BaseModel):
13103
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1
13074
+ description: str = Field(..., min_length=1)
13104
13075
  next_state: Union[StateOrRefName, ExitConditionInputNextState] = Field(
13105
13076
  ..., title='Next State'
13106
13077
  )
@@ -13130,8 +13101,8 @@ class IdentityOutput(BaseModel):
13130
13101
 
13131
13102
  class InitialExternalEventConfigInput(BaseModel):
13132
13103
  type: Literal['external-event'] = Field(..., title='Type')
13133
- message: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
13134
- ..., description='The message of the initial external event.'
13104
+ message: str = Field(
13105
+ ..., description='The message of the initial external event.', min_length=1
13135
13106
  )
13136
13107
 
13137
13108
 
@@ -13143,17 +13114,12 @@ class InitialMessageConfigInput(
13143
13114
  )
13144
13115
 
13145
13116
 
13146
- class InitialMessageConfigOutput(
13147
- RootModel[Union[InitialUserMessageConfig, InitialExternalEventConfigOutput]]
13148
- ):
13149
- root: Union[InitialUserMessageConfig, InitialExternalEventConfigOutput] = Field(
13150
- ..., discriminator='type'
13151
- )
13152
-
13153
-
13154
13117
  class InsertRequest(BaseModel):
13155
- name: StrippedNonemptyStringAZ = Field(
13156
- ..., description='The name of the environment variable to insert.'
13118
+ name: str = Field(
13119
+ ...,
13120
+ description='The name of the environment variable to insert.',
13121
+ min_length=1,
13122
+ pattern='[A-Z_]+',
13157
13123
  )
13158
13124
  value: str = Field(
13159
13125
  ...,
@@ -13246,100 +13212,6 @@ class MessageInstance(BaseModel):
13246
13212
  )
13247
13213
 
13248
13214
 
13249
- class MetricTypeInput(
13250
- RootModel[
13251
- Union[
13252
- TotalActiveUserMetricInput,
13253
- TotalConversationCountMetricInput,
13254
- TotalMessageCountMetricInput,
13255
- ConversationByTimeMetricInput,
13256
- TotalARRMetricInput,
13257
- ]
13258
- ]
13259
- ):
13260
- root: Union[
13261
- TotalActiveUserMetricInput,
13262
- TotalConversationCountMetricInput,
13263
- TotalMessageCountMetricInput,
13264
- ConversationByTimeMetricInput,
13265
- TotalARRMetricInput,
13266
- ] = Field(..., discriminator='type')
13267
-
13268
-
13269
- class MetricTypeOutput(
13270
- RootModel[
13271
- Union[
13272
- TotalActiveUserMetricOutput,
13273
- TotalConversationCountMetricOutput,
13274
- TotalMessageCountMetricOutput,
13275
- ConversationByTimeMetricOutput,
13276
- TotalARRMetricOutput,
13277
- ]
13278
- ]
13279
- ):
13280
- root: Union[
13281
- TotalActiveUserMetricOutput,
13282
- TotalConversationCountMetricOutput,
13283
- TotalMessageCountMetricOutput,
13284
- ConversationByTimeMetricOutput,
13285
- TotalARRMetricOutput,
13286
- ] = Field(..., discriminator='type')
13287
-
13288
-
13289
- class MetricValueInput(
13290
- RootModel[
13291
- Union[NumericalMetricValue, CategoricalMetricValueInput, BooleanMetricValue]
13292
- ]
13293
- ):
13294
- root: Union[
13295
- NumericalMetricValue, CategoricalMetricValueInput, BooleanMetricValue
13296
- ] = Field(..., discriminator='type')
13297
-
13298
-
13299
- class MetricValueOutput(
13300
- RootModel[
13301
- Union[BooleanMetricValue, NumericalMetricValue, CategoricalMetricValueOutput]
13302
- ]
13303
- ):
13304
- root: Union[
13305
- BooleanMetricValue, NumericalMetricValue, CategoricalMetricValueOutput
13306
- ] = Field(..., discriminator='type')
13307
-
13308
-
13309
- class NavigateStateMachineAgentActionEvent(
13310
- RootModel[
13311
- Union[
13312
- NavigateStateMachineDynamicBehaviorOverrideEvent,
13313
- NavigateStateMachineActionStateActionSelectedEvent,
13314
- NavigateStateMachineExitConditionSelectedEvent,
13315
- NavigateStateMachineRecallStateDynamicQueriesGeneratedEvent,
13316
- NavigateStateMachineRecallStateStaticQueriesRetrievedEvent,
13317
- NavigateStateMachineRecallStateActiveMemoryRetrievedEvent,
13318
- NavigateStateMachineReflectionStatePromptRetrievedEvent,
13319
- NavigateStateMachineReflectionStateReflectionGeneratedEvent,
13320
- NavigateStateMachineAnnotationStateAnnotationRetrievedEvent,
13321
- NavigateStateMachineStateTransitionedEvent,
13322
- ToolCallStartedEvent,
13323
- ToolCallEndedEvent,
13324
- ]
13325
- ]
13326
- ):
13327
- root: Union[
13328
- NavigateStateMachineDynamicBehaviorOverrideEvent,
13329
- NavigateStateMachineActionStateActionSelectedEvent,
13330
- NavigateStateMachineExitConditionSelectedEvent,
13331
- NavigateStateMachineRecallStateDynamicQueriesGeneratedEvent,
13332
- NavigateStateMachineRecallStateStaticQueriesRetrievedEvent,
13333
- NavigateStateMachineRecallStateActiveMemoryRetrievedEvent,
13334
- NavigateStateMachineReflectionStatePromptRetrievedEvent,
13335
- NavigateStateMachineReflectionStateReflectionGeneratedEvent,
13336
- NavigateStateMachineAnnotationStateAnnotationRetrievedEvent,
13337
- NavigateStateMachineStateTransitionedEvent,
13338
- ToolCallStartedEvent,
13339
- ToolCallEndedEvent,
13340
- ] = Field(..., discriminator='type')
13341
-
13342
-
13343
13215
  class NumericalMetricSuccessCriterion(BaseModel):
13344
13216
  type: Literal['numerical'] = Field(..., title='Type')
13345
13217
  verb: Verb
@@ -13353,10 +13225,12 @@ class PermissionGrantInput(BaseModel):
13353
13225
  title='Action',
13354
13226
  )
13355
13227
  permission_name: str = Field(..., title='Permission Name')
13356
- conditions: Dict[str, Condition] = Field(
13357
- ...,
13358
- description='A dictionary of attribute name to condition that must be met for this grant to be applicable.',
13359
- title='Conditions',
13228
+ conditions: Dict[str, Union[EqualCondition, InCondition, NotEqualCondition]] = (
13229
+ Field(
13230
+ ...,
13231
+ description='A dictionary of attribute name to condition that must be met for this grant to be applicable.',
13232
+ title='Conditions',
13233
+ )
13360
13234
  )
13361
13235
  description: Optional[AmigoLibPydanticBaseModelStrippedNonemptyString1] = None
13362
13236
 
@@ -13370,10 +13244,12 @@ class PermissionGrantOutput(BaseModel):
13370
13244
  permission_name: str = Field(
13371
13245
  ..., description='The name of the permission.', title='Permission Name'
13372
13246
  )
13373
- conditions: Dict[str, Condition] = Field(
13374
- ...,
13375
- description='A dictionary of attribute name to condition that must be met for this grant to be applicable.',
13376
- title='Conditions',
13247
+ conditions: Dict[str, Union[EqualCondition, InCondition, NotEqualCondition]] = (
13248
+ Field(
13249
+ ...,
13250
+ description='A dictionary of attribute name to condition that must be met for this grant to be applicable.',
13251
+ title='Conditions',
13252
+ )
13377
13253
  )
13378
13254
  description: Optional[str] = Field(
13379
13255
  None, description='An optional explanation of this grant.', title='Description'
@@ -13454,10 +13330,10 @@ class ReflectionStateTransitionLog(BaseModel):
13454
13330
 
13455
13331
 
13456
13332
  class RelationshipToDeveloperInput(BaseModel):
13457
- ownership: AmigoLibPydanticBaseModelStrippedNonemptyString1
13458
- type: AmigoLibPydanticBaseModelStrippedNonemptyString1
13459
- conversation_visibility: AmigoLibPydanticBaseModelStrippedNonemptyString1
13460
- thought_visibility: AmigoLibPydanticBaseModelStrippedNonemptyString1
13333
+ ownership: str = Field(..., min_length=1)
13334
+ type: str = Field(..., min_length=1)
13335
+ conversation_visibility: str = Field(..., min_length=1)
13336
+ thought_visibility: str = Field(..., min_length=1)
13461
13337
 
13462
13338
 
13463
13339
  class RoleInstance(BaseModel):
@@ -13487,22 +13363,6 @@ class RoleInstance(BaseModel):
13487
13363
  )
13488
13364
 
13489
13365
 
13490
- class SelectDynamicBehaviorAgentActionEvent(
13491
- RootModel[
13492
- Union[
13493
- SelectDynamicBehaviorVectorGeneratedEvent,
13494
- SelectDynamicBehaviorRelevanceRetrievalCompletedEvent,
13495
- SelectDynamicBehaviorCompletedEvent,
13496
- ]
13497
- ]
13498
- ):
13499
- root: Union[
13500
- SelectDynamicBehaviorVectorGeneratedEvent,
13501
- SelectDynamicBehaviorRelevanceRetrievalCompletedEvent,
13502
- SelectDynamicBehaviorCompletedEvent,
13503
- ] = Field(..., discriminator='type')
13504
-
13505
-
13506
13366
  class SimulationPersonaInstance(BaseModel):
13507
13367
  id: str = Field(..., description='The ID of the simulation persona.', title='Id')
13508
13368
  name: str = Field(
@@ -13593,7 +13453,9 @@ class SimulationScenarioVersion(BaseModel):
13593
13453
  description='The instructions for the simulation scenario.',
13594
13454
  title='Instructions',
13595
13455
  )
13596
- initial_message_config: Optional[InitialMessageConfigOutput] = None
13456
+ initial_message_config: Optional[
13457
+ Union[InitialUserMessageConfig, InitialExternalEventConfigOutput]
13458
+ ] = None
13597
13459
 
13598
13460
 
13599
13461
  class SimulationUnitTestSet(BaseModel):
@@ -13672,52 +13534,6 @@ class SimulationUnitTestSetInstance(BaseModel):
13672
13534
  )
13673
13535
 
13674
13536
 
13675
- class State(
13676
- RootModel[
13677
- Union[
13678
- ActionStateOutput,
13679
- DecisionStateOutput,
13680
- RecallStateOutput,
13681
- AnnotationStateOutput,
13682
- ReflectionStateOutput,
13683
- SideEffectState,
13684
- ]
13685
- ]
13686
- ):
13687
- root: Union[
13688
- ActionStateOutput,
13689
- DecisionStateOutput,
13690
- RecallStateOutput,
13691
- AnnotationStateOutput,
13692
- ReflectionStateOutput,
13693
- SideEffectState,
13694
- ] = Field(..., discriminator='type')
13695
-
13696
-
13697
- class StateTransitionLog(
13698
- RootModel[
13699
- Union[
13700
- ActionStateTransitionLog,
13701
- DecisionStateTransitionLog,
13702
- RecallStateTransitionLog,
13703
- JumpbackStateTransitionLog,
13704
- AnnotationStateTransitionLog,
13705
- ReflectionStateTransitionLog,
13706
- SideEffectStateTransitionLog,
13707
- ]
13708
- ]
13709
- ):
13710
- root: Union[
13711
- ActionStateTransitionLog,
13712
- DecisionStateTransitionLog,
13713
- RecallStateTransitionLog,
13714
- JumpbackStateTransitionLog,
13715
- AnnotationStateTransitionLog,
13716
- ReflectionStateTransitionLog,
13717
- SideEffectStateTransitionLog,
13718
- ] = Field(..., discriminator='type')
13719
-
13720
-
13721
13537
  class SuccessCriterionDescriptionInput(
13722
13538
  RootModel[
13723
13539
  Union[
@@ -13734,22 +13550,6 @@ class SuccessCriterionDescriptionInput(
13734
13550
  ] = Field(..., discriminator='type')
13735
13551
 
13736
13552
 
13737
- class SuccessCriterionDescriptionOutput(
13738
- RootModel[
13739
- Union[
13740
- BooleanMetricSuccessCriterion,
13741
- NumericalMetricSuccessCriterion,
13742
- CategoricalMetricSuccessCriterionOutput,
13743
- ]
13744
- ]
13745
- ):
13746
- root: Union[
13747
- BooleanMetricSuccessCriterion,
13748
- NumericalMetricSuccessCriterion,
13749
- CategoricalMetricSuccessCriterionOutput,
13750
- ] = Field(..., discriminator='type')
13751
-
13752
-
13753
13553
  class ToolCallSpecInput(BaseModel):
13754
13554
  tool_id: str = Field(
13755
13555
  ...,
@@ -13762,9 +13562,10 @@ class ToolCallSpecInput(BaseModel):
13762
13562
  description='A [Python packaging version constraint](https://packaging.python.org/en/latest/specifications/version-specifiers/#id5) of the tool.',
13763
13563
  title='Version Constraint',
13764
13564
  )
13765
- additional_instruction: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
13565
+ additional_instruction: str = Field(
13766
13566
  ...,
13767
13567
  description="Additional instruction to be supplied to the LLM in addition to the tool's description.",
13568
+ min_length=1,
13768
13569
  )
13769
13570
 
13770
13571
 
@@ -13844,7 +13645,7 @@ class UnitTestRunResult(BaseModel):
13844
13645
 
13845
13646
 
13846
13647
  class UserDimensionInput(BaseModel):
13847
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1
13648
+ description: str = Field(..., min_length=1)
13848
13649
  tags: List[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
13849
13650
  ..., title='Tags'
13850
13651
  )
@@ -13966,26 +13767,6 @@ class WebhookDeliveryInstance(BaseModel):
13966
13767
  )
13967
13768
 
13968
13769
 
13969
- class SrcAppAmigoServiceConversationAction(
13970
- RootModel[
13971
- Union[
13972
- SelectDynamicBehaviorAgentActionEvent,
13973
- CheckIfActiveMemoryNeededAgentActionEvent,
13974
- ExtractActiveMemoriesAgentActionEvent,
13975
- NavigateStateMachineAgentActionEvent,
13976
- EngageUserAgentActionEvent,
13977
- ]
13978
- ]
13979
- ):
13980
- root: Union[
13981
- SelectDynamicBehaviorAgentActionEvent,
13982
- CheckIfActiveMemoryNeededAgentActionEvent,
13983
- ExtractActiveMemoriesAgentActionEvent,
13984
- NavigateStateMachineAgentActionEvent,
13985
- EngageUserAgentActionEvent,
13986
- ]
13987
-
13988
-
13989
13770
  class ConversationGetConversationMessagesResponse(BaseModel):
13990
13771
  messages: List[MessageInstance] = Field(
13991
13772
  ..., description='The retrieved messages.', title='Messages'
@@ -14016,7 +13797,17 @@ class ConversationGetInteractionInsightsResponse(BaseModel):
14016
13797
  description='The objective of the current state.',
14017
13798
  title='Current State Objective',
14018
13799
  )
14019
- state_transition_logs: List[StateTransitionLog] = Field(
13800
+ state_transition_logs: List[
13801
+ Union[
13802
+ ActionStateTransitionLog,
13803
+ DecisionStateTransitionLog,
13804
+ RecallStateTransitionLog,
13805
+ JumpbackStateTransitionLog,
13806
+ AnnotationStateTransitionLog,
13807
+ ReflectionStateTransitionLog,
13808
+ SideEffectStateTransitionLog,
13809
+ ]
13810
+ ] = Field(
14020
13811
  ...,
14021
13812
  description='The state transition log of the interaction.',
14022
13813
  title='State Transition Logs',
@@ -14130,12 +13921,13 @@ class DynamicBehaviorSetSearchDynamicBehaviorSetsResponse(BaseModel):
14130
13921
 
14131
13922
 
14132
13923
  class MetricCreateMetricRequest(BaseModel):
14133
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
13924
+ name: str = Field(
14134
13925
  ...,
14135
13926
  description='The name of the metric. Must be unique within the organization.',
13927
+ min_length=1,
14136
13928
  )
14137
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14138
- ..., description='The description of the metric.'
13929
+ description: str = Field(
13930
+ ..., description='The description of the metric.', min_length=1
14139
13931
  )
14140
13932
  applied_to_services: List[MetricCreateMetricRequestAppliedToService] = Field(
14141
13933
  ...,
@@ -14148,24 +13940,29 @@ class MetricCreateMetricRequest(BaseModel):
14148
13940
  tags: Dict[str, Optional[StrippedNonemptyStringWS]] = Field(
14149
13941
  ..., description='The tags of the metric.', title='Tags'
14150
13942
  )
14151
- metric_value: MetricValueInput
13943
+ metric_value: Union[
13944
+ NumericalMetricValue, CategoricalMetricValueInput, BooleanMetricValue
13945
+ ] = Field(..., discriminator='type')
14152
13946
 
14153
13947
 
14154
13948
  class OrganizationCreateOrganizationRequest(BaseModel):
14155
- org_name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14156
- ..., description='A human friendly name of the organization.'
13949
+ org_name: str = Field(
13950
+ ..., description='A human friendly name of the organization.', min_length=1
14157
13951
  )
14158
- title: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
13952
+ title: str = Field(
14159
13953
  ...,
14160
13954
  description='An advertising tagline for the services offered by this organization.',
13955
+ min_length=1,
14161
13956
  )
14162
- main_description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
13957
+ main_description: str = Field(
14163
13958
  ...,
14164
13959
  description='A description of the services offered by this organization that is displayed on the login page for the Amigo frontend for this organization.',
13960
+ min_length=1,
14165
13961
  )
14166
- sub_description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
13962
+ sub_description: str = Field(
14167
13963
  ...,
14168
13964
  description='Additional descriptions of the services offered by this organization that is displayed below `main_description` in a smaller font.',
13965
+ min_length=1,
14169
13966
  )
14170
13967
  user_dimensions: List[UserDimensionInput] = Field(
14171
13968
  ...,
@@ -14211,9 +14008,10 @@ class OrganizationCreateOrganizationRequest(BaseModel):
14211
14008
  title='Onboarding Instructions',
14212
14009
  )
14213
14010
  )
14214
- azure_devops_team_name: AmigoLibPydanticBaseModelStrippedNonemptyString2 = Field(
14011
+ azure_devops_team_name: str = Field(
14215
14012
  ...,
14216
14013
  description="The name of the Azure DevOps team to create (if it doesn't exist) for this organization. All orgs with the same Azure DevOps team name will share access to the same Azure DevOps resources, namely\nthe source code for tools.",
14014
+ min_length=1,
14217
14015
  )
14218
14016
 
14219
14017
 
@@ -14274,7 +14072,15 @@ class OrganizationGetApiKeysResponse(BaseModel):
14274
14072
 
14275
14073
 
14276
14074
  class OrganizationGetOrganizationMetricsRequest(BaseModel):
14277
- metrics: List[MetricTypeInput] = Field(
14075
+ metrics: List[
14076
+ Union[
14077
+ TotalActiveUserMetricInput,
14078
+ TotalConversationCountMetricInput,
14079
+ TotalMessageCountMetricInput,
14080
+ ConversationByTimeMetricInput,
14081
+ TotalARRMetricInput,
14082
+ ]
14083
+ ] = Field(
14278
14084
  ...,
14279
14085
  description='A list of metrics to compute. Each type of metric can only appear once.',
14280
14086
  min_length=1,
@@ -14283,7 +14089,15 @@ class OrganizationGetOrganizationMetricsRequest(BaseModel):
14283
14089
 
14284
14090
 
14285
14091
  class OrganizationGetOrganizationMetricsResponse(BaseModel):
14286
- metrics: List[MetricTypeOutput] = Field(
14092
+ metrics: List[
14093
+ Union[
14094
+ TotalActiveUserMetricOutput,
14095
+ TotalConversationCountMetricOutput,
14096
+ TotalMessageCountMetricOutput,
14097
+ ConversationByTimeMetricOutput,
14098
+ TotalARRMetricOutput,
14099
+ ]
14100
+ ] = Field(
14287
14101
  ...,
14288
14102
  description='The metrics that were requested, in the same order as they were requested.',
14289
14103
  title='Metrics',
@@ -14359,12 +14173,14 @@ class OrganizationModifyOrganizationRequest(BaseModel):
14359
14173
 
14360
14174
 
14361
14175
  class RoleCreateRoleRequest(BaseModel):
14362
- role_name: AmigoLibPydanticBaseModelStrippedNonemptyString3 = Field(
14176
+ role_name: str = Field(
14363
14177
  ...,
14364
14178
  description='The name of the role to create. The role must have a max length of 256 characters.',
14179
+ max_length=256,
14180
+ min_length=1,
14365
14181
  )
14366
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14367
- ..., description='A description about the role.'
14182
+ description: str = Field(
14183
+ ..., description='A description about the role.', min_length=1
14368
14184
  )
14369
14185
  permission_grants: List[PermissionGrantInput] = Field(
14370
14186
  ...,
@@ -14428,11 +14244,9 @@ class ServiceCreateServiceRequest(BaseModel):
14428
14244
  pattern='^[a-f0-9]{24}$',
14429
14245
  title='Agent Id',
14430
14246
  )
14431
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14432
- ..., description='The name of this service.'
14433
- )
14434
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14435
- ..., description='A description of this service.'
14247
+ name: str = Field(..., description='The name of this service.', min_length=1)
14248
+ description: str = Field(
14249
+ ..., description='A description of this service.', min_length=1
14436
14250
  )
14437
14251
  is_active: bool = Field(
14438
14252
  ...,
@@ -14453,11 +14267,11 @@ class ServiceUpsertServiceVersionSetRequest(BaseModel):
14453
14267
 
14454
14268
 
14455
14269
  class SimulationCreateSimulationPersonaRequest(BaseModel):
14456
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14457
- ..., description='The name of the simulation persona.'
14270
+ name: str = Field(
14271
+ ..., description='The name of the simulation persona.', min_length=1
14458
14272
  )
14459
- role: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14460
- ..., description='The role of the simulation persona.'
14273
+ role: str = Field(
14274
+ ..., description='The role of the simulation persona.', min_length=1
14461
14275
  )
14462
14276
  tags: Dict[str, Optional[StrippedNonemptyStringWS]] = Field(
14463
14277
  ...,
@@ -14470,13 +14284,15 @@ class SimulationCreateSimulationPersonaRequest(BaseModel):
14470
14284
 
14471
14285
 
14472
14286
  class SimulationCreateSimulationScenarioRequestInitialVersion(BaseModel):
14473
- objective: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14474
- ..., description='The objective of the simulation scenario.'
14287
+ objective: str = Field(
14288
+ ..., description='The objective of the simulation scenario.', min_length=1
14475
14289
  )
14476
- instructions: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14477
- ..., description='The instructions of the simulation scenario.'
14290
+ instructions: str = Field(
14291
+ ..., description='The instructions of the simulation scenario.', min_length=1
14478
14292
  )
14479
- initial_message_config: Optional[InitialMessageConfigInput] = Field(
14293
+ initial_message_config: Optional[
14294
+ Union[InitialUserMessageConfig, InitialExternalEventConfigInput]
14295
+ ] = Field(
14480
14296
  ...,
14481
14297
  description='The initial message configuration for the simulation scenario version. If not specified, an agent message opens the simulated conversation.',
14482
14298
  )
@@ -14488,9 +14304,13 @@ SimulationCreateSimulationScenarioVersionRequest = (
14488
14304
 
14489
14305
 
14490
14306
  class SimulationCreateSimulationUnitTestRequestSuccessCriterion(BaseModel):
14491
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1
14307
+ name: str = Field(..., min_length=1)
14492
14308
  metric_id: str = Field(..., pattern='^[a-f0-9]{24}$', title='Metric Id')
14493
- criterion: SuccessCriterionDescriptionInput
14309
+ criterion: Union[
14310
+ NumericalMetricSuccessCriterion,
14311
+ BooleanMetricSuccessCriterion,
14312
+ CategoricalMetricSuccessCriterionInput,
14313
+ ] = Field(..., discriminator='type')
14494
14314
 
14495
14315
 
14496
14316
  class SimulationGetSimulationPersonasResponse(BaseModel):
@@ -14655,12 +14475,10 @@ class ToolModifyToolEnvvarsRequest(BaseModel):
14655
14475
 
14656
14476
 
14657
14477
  class UserCreateInvitedUserRequest(BaseModel):
14658
- first_name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14659
- ..., description='The first name of the user.'
14660
- )
14661
- last_name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
14662
- ..., description='The last name of the user.'
14478
+ first_name: str = Field(
14479
+ ..., description='The first name of the user.', min_length=1
14663
14480
  )
14481
+ last_name: str = Field(..., description='The last name of the user.', min_length=1)
14664
14482
  email: EmailStr = Field(
14665
14483
  ...,
14666
14484
  description='The email of the user. This email uniquely identifies the user in the organization.',
@@ -14720,7 +14538,7 @@ class WebhookDestinationGetWebhookDeliveriesResponse(BaseModel):
14720
14538
 
14721
14539
  class ActionStateInput(BaseModel):
14722
14540
  type: Literal['action'] = Field(..., title='Type')
14723
- objective: AmigoLibPydanticBaseModelStrippedNonemptyString1
14541
+ objective: str = Field(..., min_length=1)
14724
14542
  actions: List[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
14725
14543
  ..., min_length=1, title='Actions'
14726
14544
  )
@@ -14798,9 +14616,35 @@ class Conversation(BaseModel):
14798
14616
 
14799
14617
  class CurrentAgentActionEvent(BaseModel):
14800
14618
  type: Literal['current-agent-action'] = Field('current-agent-action', title='Type')
14801
- action: SrcAppAmigoServiceConversationAction = Field(
14802
- ..., description='The type of action the agent is performing right now.'
14803
- )
14619
+ action: Union[
14620
+ CheckIfActiveMemoryNeededAgentActionEvent,
14621
+ ExtractActiveMemoriesAgentActionEvent,
14622
+ Union[
14623
+ SelectDynamicBehaviorVectorGeneratedEvent,
14624
+ SelectDynamicBehaviorRelevanceRetrievalCompletedEvent,
14625
+ SelectDynamicBehaviorCompletedEvent,
14626
+ ],
14627
+ Union[
14628
+ NavigateStateMachineDynamicBehaviorOverrideEvent,
14629
+ NavigateStateMachineActionStateActionSelectedEvent,
14630
+ NavigateStateMachineExitConditionSelectedEvent,
14631
+ NavigateStateMachineRecallStateDynamicQueriesGeneratedEvent,
14632
+ NavigateStateMachineRecallStateStaticQueriesRetrievedEvent,
14633
+ NavigateStateMachineRecallStateActiveMemoryRetrievedEvent,
14634
+ NavigateStateMachineReflectionStatePromptRetrievedEvent,
14635
+ NavigateStateMachineReflectionStateReflectionGeneratedEvent,
14636
+ NavigateStateMachineAnnotationStateAnnotationRetrievedEvent,
14637
+ NavigateStateMachineStateTransitionedEvent,
14638
+ ToolCallStartedEvent,
14639
+ ToolCallEndedEvent,
14640
+ ],
14641
+ Union[
14642
+ EngageUserDynamicBehaviorOverrideEvent,
14643
+ EngageUserMessageFragmentGeneratedEvent,
14644
+ ToolCallStartedEvent,
14645
+ ToolCallEndedEvent,
14646
+ ],
14647
+ ] = Field(..., description='The type of action the agent is performing right now.')
14804
14648
 
14805
14649
 
14806
14650
  class DecisionStateInput(BaseModel):
@@ -14809,28 +14653,14 @@ class DecisionStateInput(BaseModel):
14809
14653
  decision_guidelines: List[AmigoLibPydanticBaseModelStrippedNonemptyString1] = Field(
14810
14654
  ..., title='Decision Guidelines'
14811
14655
  )
14812
- objective: AmigoLibPydanticBaseModelStrippedNonemptyString1
14656
+ objective: str = Field(..., min_length=1)
14813
14657
  tool_call_specs: List[ToolCallSpecInput] = Field(..., title='Tool Call Specs')
14814
14658
 
14815
14659
 
14816
- class EvaluationSource(
14817
- RootModel[
14818
- Union[
14819
- PostSessionEvaluationSource,
14820
- ManualEvaluationSource,
14821
- SimulationEvaluationSource,
14822
- ]
14823
- ]
14824
- ):
14825
- root: Union[
14826
- PostSessionEvaluationSource, ManualEvaluationSource, SimulationEvaluationSource
14827
- ] = Field(..., discriminator='type')
14828
-
14829
-
14830
14660
  class IdentityInput(BaseModel):
14831
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1
14832
- role: AmigoLibPydanticBaseModelStrippedNonemptyString1
14833
- developed_by: AmigoLibPydanticBaseModelStrippedNonemptyString1
14661
+ name: str = Field(..., min_length=1)
14662
+ role: str = Field(..., min_length=1)
14663
+ developed_by: str = Field(..., min_length=1)
14834
14664
  default_spoken_language: IdentityInputDefaultSpokenLanguage = Field(
14835
14665
  ..., title='Default Spoken Language'
14836
14666
  )
@@ -14863,8 +14693,12 @@ class Metric(BaseModel):
14863
14693
  updated_by: AmigoLibMongoCollectionsMetricMetricUserInfo = Field(
14864
14694
  ..., description='The user who last updated the metric.'
14865
14695
  )
14866
- metric_value: MetricValueOutput = Field(
14867
- ..., description='The type of value that this metric is measuring.'
14696
+ metric_value: Union[
14697
+ BooleanMetricValue, NumericalMetricValue, CategoricalMetricValueOutput
14698
+ ] = Field(
14699
+ ...,
14700
+ description='The type of value that this metric is measuring.',
14701
+ discriminator='type',
14868
14702
  )
14869
14703
  is_deleted: bool = Field(
14870
14704
  ..., description='Whether the metric has been deleted.', title='Is Deleted'
@@ -14891,7 +14725,9 @@ class MetricEvaluationResultInstance(BaseModel):
14891
14725
  description='The justification for the result of the metric evaluation.',
14892
14726
  title='Justification',
14893
14727
  )
14894
- source: EvaluationSource
14728
+ source: Union[
14729
+ PostSessionEvaluationSource, ManualEvaluationSource, SimulationEvaluationSource
14730
+ ] = Field(..., discriminator='type')
14895
14731
  timestamp: AwareDatetime = Field(
14896
14732
  ...,
14897
14733
  description='The time at which the metric evaluation result was created.',
@@ -14925,8 +14761,12 @@ class MetricInstance(BaseModel):
14925
14761
  updated_by: AmigoLibMongoCollectionsMetricMetricUserInfo = Field(
14926
14762
  ..., description='The user who last updated the metric.'
14927
14763
  )
14928
- metric_value: MetricValueOutput = Field(
14929
- ..., description='The type of value that this metric is measuring.'
14764
+ metric_value: Union[
14765
+ BooleanMetricValue, NumericalMetricValue, CategoricalMetricValueOutput
14766
+ ] = Field(
14767
+ ...,
14768
+ description='The type of value that this metric is measuring.',
14769
+ discriminator='type',
14930
14770
  )
14931
14771
  is_deleted: bool = Field(
14932
14772
  ..., description='Whether the metric has been deleted.', title='Is Deleted'
@@ -14940,14 +14780,20 @@ class MetricToEvaluate(BaseModel):
14940
14780
  description='The name of the success criterion.',
14941
14781
  title='Success Criterion Name',
14942
14782
  )
14943
- success_criterion: SuccessCriterionDescriptionOutput = Field(
14944
- ..., description='The description of the success criterion.'
14783
+ success_criterion: Union[
14784
+ BooleanMetricSuccessCriterion,
14785
+ NumericalMetricSuccessCriterion,
14786
+ CategoricalMetricSuccessCriterionOutput,
14787
+ ] = Field(
14788
+ ...,
14789
+ description='The description of the success criterion.',
14790
+ discriminator='type',
14945
14791
  )
14946
14792
 
14947
14793
 
14948
14794
  class ReflectionStateInput(BaseModel):
14949
14795
  type: Literal['reflection'] = Field(..., title='Type')
14950
- problem: AmigoLibPydanticBaseModelStrippedNonemptyString1
14796
+ problem: str = Field(..., min_length=1)
14951
14797
  word_limit: int = Field(..., gt=0, title='Word Limit')
14952
14798
  next_state: Union[StateOrRefName, ReflectionStateInputNextState] = Field(
14953
14799
  ..., title='Next State'
@@ -14980,9 +14826,17 @@ class ServiceHierarchicalStateMachineInstance(BaseModel):
14980
14826
  description: str = Field(
14981
14827
  ..., description='A description of the state machine.', title='Description'
14982
14828
  )
14983
- states: Dict[str, State] = Field(
14984
- ..., description='The states in this state machine.', title='States'
14985
- )
14829
+ states: Dict[
14830
+ str,
14831
+ Union[
14832
+ ActionStateOutput,
14833
+ DecisionStateOutput,
14834
+ RecallStateOutput,
14835
+ AnnotationStateOutput,
14836
+ ReflectionStateOutput,
14837
+ SideEffectState,
14838
+ ],
14839
+ ] = Field(..., description='The states in this state machine.', title='States')
14986
14840
  new_user_initial_state: str = Field(
14987
14841
  ...,
14988
14842
  description='The state a new user will be in when a session starts. This must be an action state.',
@@ -15048,7 +14902,11 @@ class ServiceInstance(BaseModel):
15048
14902
  class SuccessCriterionOutput(BaseModel):
15049
14903
  name: str = Field(..., title='Name')
15050
14904
  metric_id: str = Field(..., title='Metric Id')
15051
- criterion: SuccessCriterionDescriptionOutput
14905
+ criterion: Union[
14906
+ BooleanMetricSuccessCriterion,
14907
+ NumericalMetricSuccessCriterion,
14908
+ CategoricalMetricSuccessCriterionOutput,
14909
+ ] = Field(..., discriminator='type')
15052
14910
 
15053
14911
 
15054
14912
  class UnitTestRunSpec(BaseModel):
@@ -15140,8 +14998,8 @@ class ConversationGetConversationsResponse(BaseModel):
15140
14998
 
15141
14999
 
15142
15000
  class DynamicBehaviorSetCreateDynamicBehaviorSetRequest(BaseModel):
15143
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
15144
- ..., description='The name of the dynamic behavior set.'
15001
+ name: str = Field(
15002
+ ..., description='The name of the dynamic behavior set.', min_length=1
15145
15003
  )
15146
15004
  tags: Dict[str, Optional[StrippedNonemptyStringWS]] = Field(
15147
15005
  ...,
@@ -15241,8 +15099,10 @@ class OrganizationCreateAgentVersionRequest(BaseModel):
15241
15099
 
15242
15100
 
15243
15101
  class OrganizationCreateServiceHierarchicalStateMachineVersionRequest(BaseModel):
15244
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
15245
- ..., description='A description of the service hierarchical state machine.'
15102
+ description: str = Field(
15103
+ ...,
15104
+ description='A description of the service hierarchical state machine.',
15105
+ min_length=1,
15246
15106
  )
15247
15107
  states: Dict[
15248
15108
  str,
@@ -15258,17 +15118,20 @@ class OrganizationCreateServiceHierarchicalStateMachineVersionRequest(BaseModel)
15258
15118
  description='The internal states in this service hierarchical state machine.',
15259
15119
  title='States',
15260
15120
  )
15261
- new_user_initial_state: StateOrRefName = Field(
15121
+ new_user_initial_state: str = Field(
15262
15122
  ...,
15263
15123
  description='The state a new user will be in when a session starts. This must be an action state, and must be an internal state.',
15124
+ pattern='^[A-Za-z0-9_]+$',
15264
15125
  )
15265
- returning_user_initial_state: StateOrRefName = Field(
15126
+ returning_user_initial_state: str = Field(
15266
15127
  ...,
15267
15128
  description='The state a returning user will be in when a session starts. This must be an action state, and must be an internal state.',
15129
+ pattern='^[A-Za-z0-9_]+$',
15268
15130
  )
15269
- terminal_state: StateOrRefName = Field(
15131
+ terminal_state: str = Field(
15270
15132
  ...,
15271
15133
  description='The state the user will be in when the session ends. This must be an action state, and must be an internal state.',
15134
+ pattern='^[A-Za-z0-9_]+$',
15272
15135
  )
15273
15136
  references: Dict[str, List] = Field(
15274
15137
  ...,
@@ -15353,8 +15216,8 @@ class ServiceGetServicesResponse(BaseModel):
15353
15216
 
15354
15217
 
15355
15218
  class SimulationCreateSimulationScenarioRequest(BaseModel):
15356
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
15357
- ..., description='The name of the simulation scenario.'
15219
+ name: str = Field(
15220
+ ..., description='The name of the simulation scenario.', min_length=1
15358
15221
  )
15359
15222
  tags: Dict[str, Optional[StrippedNonemptyStringWS]] = Field(
15360
15223
  ...,
@@ -15367,11 +15230,9 @@ class SimulationCreateSimulationScenarioRequest(BaseModel):
15367
15230
 
15368
15231
 
15369
15232
  class SimulationCreateSimulationUnitTestRequest(BaseModel):
15370
- name: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
15371
- ..., description='The name of the unit test.'
15372
- )
15373
- description: AmigoLibPydanticBaseModelStrippedNonemptyString1 = Field(
15374
- ..., description='A description of the unit test.'
15233
+ name: str = Field(..., description='The name of the unit test.', min_length=1)
15234
+ description: str = Field(
15235
+ ..., description='A description of the unit test.', min_length=1
15375
15236
  )
15376
15237
  service_id: str = Field(
15377
15238
  ...,
@@ -15469,24 +15330,6 @@ class SimulationUpdateSimulationUnitTestRequest(BaseModel):
15469
15330
  )
15470
15331
 
15471
15332
 
15472
- class ConversationEvent(
15473
- RootModel[
15474
- Union[
15475
- InteractionCompleteEvent,
15476
- EndSessionEvent,
15477
- NewMessageEvent,
15478
- CurrentAgentActionEvent,
15479
- ]
15480
- ]
15481
- ):
15482
- root: Union[
15483
- InteractionCompleteEvent,
15484
- EndSessionEvent,
15485
- NewMessageEvent,
15486
- CurrentAgentActionEvent,
15487
- ]
15488
-
15489
-
15490
15333
  class SimulationUnitTest(BaseModel):
15491
15334
  field_id: str = Field(
15492
15335
  ..., alias='_id', description='The ID of the document.', title='Id'
@@ -15624,9 +15467,29 @@ class SimulationUnitTestSetRunInstance(BaseModel):
15624
15467
 
15625
15468
 
15626
15469
  class ConversationInteractWithConversationResponse(
15627
- RootModel[Union[ConversationEvent, UserMessageAvailableEvent, ErrorEvent]]
15470
+ RootModel[
15471
+ Union[
15472
+ UserMessageAvailableEvent,
15473
+ ErrorEvent,
15474
+ Union[
15475
+ InteractionCompleteEvent,
15476
+ EndSessionEvent,
15477
+ NewMessageEvent,
15478
+ CurrentAgentActionEvent,
15479
+ ],
15480
+ ]
15481
+ ]
15628
15482
  ):
15629
- root: Union[ConversationEvent, UserMessageAvailableEvent, ErrorEvent]
15483
+ root: Union[
15484
+ UserMessageAvailableEvent,
15485
+ ErrorEvent,
15486
+ Union[
15487
+ InteractionCompleteEvent,
15488
+ EndSessionEvent,
15489
+ NewMessageEvent,
15490
+ CurrentAgentActionEvent,
15491
+ ],
15492
+ ]
15630
15493
 
15631
15494
 
15632
15495
  class SimulationGetSimulationUnitTestSetRunsResponse(BaseModel):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: amigo_sdk
3
- Version: 0.11.0
3
+ Version: 0.13.0
4
4
  Summary: Amigo AI Python SDK
5
5
  Author: Amigo AI
6
6
  License-File: LICENSE
@@ -1,4 +1,4 @@
1
- amigo_sdk/__init__.py,sha256=MNEge8Pwx6KfzTaKsnEQdwJ4t9xpa5JWOMZude9UL70,139
1
+ amigo_sdk/__init__.py,sha256=Gotwa33IYVSetovnPkZ5-a_87rxrMBJM9jukQN7S7TA,139
2
2
  amigo_sdk/_retry_utils.py,sha256=kFjw9Wqye6MB5-B4rjLxsbSNcfYBIztcollIoncd1hY,2142
3
3
  amigo_sdk/auth.py,sha256=WaM9PcEcnaC6CzNsgRKueHkdSAxNbRylzpR_3Q6guQ0,1765
4
4
  amigo_sdk/config.py,sha256=0eZIo-hcJ8ODftKAr-mwB-FGJxGO5PT5T4dRpyWPqAg,1491
@@ -6,13 +6,13 @@ amigo_sdk/errors.py,sha256=RkRyF5eAASd8fIOS6YvL9rLDvLAYWqHfpHSCR7jqvl4,4840
6
6
  amigo_sdk/http_client.py,sha256=v25UoUbXcMeHTnfJMcrl8RSSwCVkKUL1Jv-0HoXP1B4,13507
7
7
  amigo_sdk/models.py,sha256=V-G6iL43_ZNOPDcatCJCSszGWGz-nzp_RSyGNm-rBAc,45
8
8
  amigo_sdk/sdk_client.py,sha256=Kr9M9o66pOLu0T2VDvqdYMmPZzgKJyTELu7BSPgGrYQ,6152
9
- amigo_sdk/generated/model.py,sha256=1iw7NL8cMOWN8KcYP_P3oai0JMWgwhjSWVEZAb2BWy4,427233
9
+ amigo_sdk/generated/model.py,sha256=TomeWEPPm_Nut_-2MdIEnr-VFKpsn5c00fsd675rvG8,421774
10
10
  amigo_sdk/resources/conversation.py,sha256=5PkJOvLKqnriSS9K9hKw2VRPxRLTuABEbCyPy1fz1r0,14817
11
11
  amigo_sdk/resources/organization.py,sha256=yX4UlOHNegRzFW4gCJrCxjiLCAGnGegasjviR1yad_Q,1211
12
12
  amigo_sdk/resources/service.py,sha256=SiwEHXCQk4r1b_tGv47M08VuB7RALDHJQzWlpuD937g,1571
13
13
  amigo_sdk/resources/user.py,sha256=i4t5aVzBI37KwAtLKSDWTMwf4D4KQdSDoUiblFe1u7o,3529
14
- amigo_sdk-0.11.0.dist-info/METADATA,sha256=blllxaFKFVLxLkoEmft0TnniC8_6Qg_yEi_Xwgc2uO4,8350
15
- amigo_sdk-0.11.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
16
- amigo_sdk-0.11.0.dist-info/entry_points.txt,sha256=ivKZ8S9W6SH796zUDHeM-qHodrwmkmUItophi-jJWK0,82
17
- amigo_sdk-0.11.0.dist-info/licenses/LICENSE,sha256=tx3FiTVbGxwBUOxQbNh05AAQlC2jd5hGvNpIkSfVbCo,1062
18
- amigo_sdk-0.11.0.dist-info/RECORD,,
14
+ amigo_sdk-0.13.0.dist-info/METADATA,sha256=bwyr5lGoirJ-5azoJTDGgEgcAbAVsGWpLMldZmMKkMY,8350
15
+ amigo_sdk-0.13.0.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
16
+ amigo_sdk-0.13.0.dist-info/entry_points.txt,sha256=ivKZ8S9W6SH796zUDHeM-qHodrwmkmUItophi-jJWK0,82
17
+ amigo_sdk-0.13.0.dist-info/licenses/LICENSE,sha256=tx3FiTVbGxwBUOxQbNh05AAQlC2jd5hGvNpIkSfVbCo,1062
18
+ amigo_sdk-0.13.0.dist-info/RECORD,,