From 44291437dbd02baa6b8cc4f993bfbf99d2864bed Mon Sep 17 00:00:00 2001 From: Buildkite CI Date: Fri, 23 Oct 2026 17:10:21 +0000 Subject: [PATCH 1/2] chore: sync generated SDK from upstream @ 8b1d1aa7 Generated upstream and copied here. Do not edit in this repository; changes are overwritten by the next sync. --- .speakeasy/connector-id-or-name-overlay.yaml | 11 + .speakeasy/gen.lock | 956 +++++++++++- .speakeasy/gen.yaml | 2 +- .speakeasy/workflow.lock | 10 +- MIGRATION.md | 15 - README-PYPI.md | 20 +- README.md | 9 +- RELEASES.md | 76 + docs/models/annotation.md | 29 + docs/models/audioagentcreaterequest.md | 10 +- docs/models/audiottsconfig.md | 9 +- docs/models/code.md | 31 + .../models/countresponseinputtokensrequest.md | 20 + .../countresponseinputtokensrequesteffort.md | 19 + .../countresponseinputtokensrequestformat.md | 23 + .../countresponseinputtokensrequestinput1.md | 41 + .../countresponseinputtokensrequestinput2.md | 17 + ...ttokensrequestresponsesformatjsonobject.md | 9 + ...seinputtokensrequestresponsesformattext.md | 9 + ...uestresponsesformattextjsonschemaconfig.md | 13 + ...okensrequestresponsessupportedreasoning.md | 8 + ...seinputtokensrequestresponsestextconfig.md | 10 + ...okensrequestresponsestoolchoicefunction.md | 10 + .../countresponseinputtokensrequesttool.md | 17 + ...esponseinputtokensrequesttoolchoiceenum.md | 15 + ...sponseinputtokensrequesttoolchoiceunion.md | 17 + ...ountresponseinputtokensrequestverbosity.md | 15 + .../countresponseinputtokensresponse.md | 10 + docs/models/createresponserequest.md | 31 + docs/models/createresponserequesteffort.md | 19 + docs/models/createresponserequestformat.md | 23 + docs/models/createresponserequestinput1.md | 41 + docs/models/createresponserequestinput2.md | 17 + ...esponserequestresponsesformatjsonobject.md | 9 + ...reateresponserequestresponsesformattext.md | 9 + ...uestresponsesformattextjsonschemaconfig.md | 13 + ...ponserequestresponsessupportedreasoning.md | 8 + ...reateresponserequestresponsestextconfig.md | 10 + ...ponserequestresponsestoolchoicefunction.md | 10 + docs/models/createresponserequesttool.md | 17 + .../createresponserequesttoolchoiceenum.md | 15 + .../createresponserequesttoolchoiceunion.md | 17 + docs/models/createresponserequestverbosity.md | 15 + docs/models/createresponseresponse.md | 38 + docs/models/createresponseresponseoutput.md | 23 + ...onseresponseresponsessupportedreasoning.md | 8 + ...eateresponseresponseresponsestextconfig.md | 10 + docs/models/createresponseresponsestatus.md | 18 + docs/models/createresponseresponsetool.md | 17 + .../createresponseresponsetoolchoiceenum.md | 15 + .../createresponseresponsetoolchoiceunion.md | 17 + .../createresponsev1responsespostresponse.md | 17 + docs/models/{format_.md => formatenum.md} | 6 +- docs/models/ipaphoneme.md | 27 + docs/models/keywordretriever.md | 3 + docs/models/ocrtableobject.md | 2 +- docs/models/operator.md | 14 + docs/models/promptcacheretention.md | 14 + docs/models/publicauthenticationmethod.md | 18 +- docs/models/reason.md | 14 + ...esponsesannotationcontainerfilecitation.md | 14 + .../models/responsesannotationfilecitation.md | 12 + docs/models/responsesannotationfilepath.md | 11 + docs/models/responsesannotationurlcitation.md | 13 + docs/models/responsescallerdirect.md | 9 + docs/models/responsescallerprogram.md | 10 + docs/models/responsescompletedevent.md | 11 + docs/models/responsescontent.md | 10 + docs/models/responsescontentpartaddedevent.md | 14 + .../responsescontentpartaddedeventpart.md | 23 + docs/models/responsescontentpartdoneevent.md | 14 + .../responsescontentpartdoneeventpart.md | 23 + docs/models/responsescreatedevent.md | 11 + docs/models/responsescustomtool.md | 14 + .../responsescustomtoolallowedcaller.md | 14 + docs/models/responsescustomtoolformat.md | 17 + docs/models/responseseasyinputmessage.md | 12 + .../responseseasyinputmessagecontent1.md | 23 + .../responseseasyinputmessagecontent2.md | 17 + docs/models/responseseasyinputmessagephase.md | 14 + docs/models/responseseasyinputmessagerole.md | 16 + docs/models/responseserror.md | 10 + docs/models/responseserrorevent.md | 13 + docs/models/responsesfailedevent.md | 11 + ...esponsesfunctioncallargumentsdeltaevent.md | 13 + ...responsesfunctioncallargumentsdoneevent.md | 14 + docs/models/responsesfunctioncalloutput.md | 14 + .../responsesfunctioncalloutputcaller.md | 17 + ...responsesfunctioncalloutputcallerdirect.md | 9 + ...esponsesfunctioncalloutputcallerprogram.md | 10 + .../responsesfunctioncalloutputoutput1.md | 23 + .../responsesfunctioncalloutputoutput2.md | 17 + .../responsesfunctioncalloutputstatus.md | 15 + docs/models/responsesfunctiontool.md | 16 + .../responsesfunctiontoolallowedcaller.md | 14 + docs/models/responsesfunctiontoolcall.md | 16 + .../models/responsesfunctiontoolcallcaller.md | 17 + .../models/responsesfunctiontoolcallstatus.md | 15 + docs/models/responsesgrammar.md | 11 + docs/models/responsesincompletedetails.md | 9 + docs/models/responsesincompleteevent.md | 11 + docs/models/responsesinprogressevent.md | 11 + docs/models/responsesinputfile.md | 15 + docs/models/responsesinputfilecontent.md | 15 + .../models/responsesinputfilecontentdetail.md | 15 + ...lecontentresponsespromptcachebreakpoint.md | 9 + docs/models/responsesinputfiledetail.md | 15 + ...inputfileresponsespromptcachebreakpoint.md | 9 + docs/models/responsesinputimage.md | 13 + docs/models/responsesinputimagecontent.md | 13 + .../responsesinputimagecontentdetail.md | 16 + ...gecontentresponsespromptcachebreakpoint.md | 9 + docs/models/responsesinputimagedetail.md | 16 + ...nputimageresponsespromptcachebreakpoint.md | 9 + docs/models/responsesinputtext.md | 11 + docs/models/responsesinputtextcontent.md | 11 + ...xtcontentresponsespromptcachebreakpoint.md | 9 + ...inputtextresponsespromptcachebreakpoint.md | 9 + docs/models/responsesinputtokensdetails.md | 10 + docs/models/responsesmessage.md | 12 + docs/models/responsesmessagecontent.md | 23 + docs/models/responsesmessagerole.md | 15 + docs/models/responsesmessagestatus.md | 15 + docs/models/responsesnamespacetool.md | 12 + docs/models/responsesnamespacetooltool.md | 17 + docs/models/responsesoutputitemaddedevent.md | 12 + .../responsesoutputitemaddedeventitem.md | 23 + docs/models/responsesoutputitemdoneevent.md | 12 + .../responsesoutputitemdoneeventitem.md | 23 + docs/models/responsesoutputmessage.md | 14 + docs/models/responsesoutputmessagecontent.md | 17 + docs/models/responsesoutputmessagephase.md | 14 + docs/models/responsesoutputmessagestatus.md | 15 + docs/models/responsesoutputrefusal.md | 10 + docs/models/responsesoutputtext.md | 12 + docs/models/responsesoutputtextlogprob.md | 12 + .../responsesoutputtextlogprobtoplogprob.md | 11 + docs/models/responsesoutputtokensdetails.md | 9 + docs/models/responsespartreasoningtext.md | 10 + docs/models/responsesreasoningitem.md | 14 + docs/models/responsesreasoningitemstatus.md | 15 + .../responsesreasoningtextdeltaevent.md | 14 + .../models/responsesreasoningtextdoneevent.md | 14 + docs/models/responsesstreamframe.md | 9 + docs/models/responsesstreamframedata.md | 101 ++ docs/models/responsessummary.md | 10 + .../responsessupportedreasoningeffort.md | 19 + docs/models/responsestext.md | 9 + docs/models/responsestextconfigformat.md | 23 + ...nsestextconfigresponsesformatjsonobject.md | 9 + .../responsestextconfigresponsesformattext.md | 9 + ...nfigresponsesformattextjsonschemaconfig.md | 13 + docs/models/responsestextconfigverbosity.md | 15 + docs/models/responsestextdeltaevent.md | 15 + docs/models/responsestextdeltaeventlogprob.md | 11 + ...esponsestextdeltaeventlogprobtoplogprob.md | 10 + docs/models/responsestextdoneevent.md | 15 + docs/models/responsestextdoneeventlogprob.md | 11 + ...responsestextdoneeventlogprobtoplogprob.md | 10 + docs/models/responsestoolchoicefunction.md | 10 + docs/models/responsestoolfunction.md | 16 + .../responsestoolfunctionallowedcaller.md | 14 + docs/models/responsesusage.md | 13 + docs/models/servicetier.md | 17 + docs/models/syntax.md | 14 + docs/models/truncation.md | 14 + docs/sdks/audioagents/README.md | 14 +- docs/sdks/managedindexes/README.md | 1 + docs/sdks/responses/README.md | 145 ++ pyproject.toml | 2 +- src/mistralai/client/_version.py | 4 +- src/mistralai/client/audio_agents.py | 28 +- src/mistralai/client/models/__init__.py | 920 +++++++++++- .../client/models/audioagentcreaterequest.py | 10 +- src/mistralai/client/models/audiottsconfig.py | 24 +- .../models/countresponseinputtokensrequest.py | 540 +++++++ .../countresponseinputtokensresponse.py | 46 + .../create_response_v1_responses_postop.py | 35 + .../client/models/createresponserequest.py | 599 ++++++++ .../client/models/createresponseresponse.py | 753 ++++++++++ src/mistralai/client/models/ipaphoneme.py | 27 + .../client/models/keywordretriever.py | 21 +- src/mistralai/client/models/ocrtableobject.py | 6 +- .../models/publicauthenticationmethod.py | 17 +- ...esponsesannotationcontainerfilecitation.py | 58 + .../models/responsesannotationfilecitation.py | 51 + .../models/responsesannotationfilepath.py | 46 + .../models/responsesannotationurlcitation.py | 54 + .../client/models/responsescompletedevent.py | 53 + .../client/models/responsescontent.py | 45 + .../models/responsescontentpartaddedevent.py | 83 + .../models/responsescontentpartdoneevent.py | 83 + .../client/models/responsescreatedevent.py | 53 + .../client/models/responsescustomtool.py | 185 +++ .../models/responseseasyinputmessage.py | 131 ++ .../client/models/responseserrorevent.py | 84 ++ .../client/models/responsesfailedevent.py | 53 + ...esponsesfunctioncallargumentsdeltaevent.py | 55 + ...responsesfunctioncallargumentsdoneevent.py | 58 + .../models/responsesfunctioncalloutput.py | 167 ++ ...responsesfunctioncalloutputcallerdirect.py | 40 + ...esponsesfunctioncalloutputcallerprogram.py | 43 + .../client/models/responsesfunctiontool.py | 123 ++ .../models/responsesfunctiontoolcall.py | 178 +++ .../client/models/responsesincompleteevent.py | 53 + .../client/models/responsesinprogressevent.py | 53 + .../client/models/responsesinputfile.py | 149 ++ .../models/responsesinputfilecontent.py | 149 ++ .../client/models/responsesinputimage.py | 128 ++ .../models/responsesinputimagecontent.py | 132 ++ .../client/models/responsesinputtext.py | 112 ++ .../models/responsesinputtextcontent.py | 112 ++ .../models/responsesinputtokensdetails.py | 32 + .../client/models/responsesmessage.py | 119 ++ .../client/models/responsesnamespacetool.py | 62 + .../models/responsesoutputitemaddedevent.py | 80 + .../models/responsesoutputitemdoneevent.py | 80 + .../client/models/responsesoutputmessage.py | 119 ++ .../client/models/responsesoutputrefusal.py | 43 + .../client/models/responsesoutputtext.py | 127 ++ .../models/responsesoutputtextlogprob.py | 48 + .../responsesoutputtextlogprobtoplogprob.py | 41 + .../models/responsesoutputtokensdetails.py | 29 + .../models/responsespartreasoningtext.py | 45 + .../client/models/responsesreasoningitem.py | 102 ++ .../responsesreasoningtextdeltaevent.py | 58 + .../models/responsesreasoningtextdoneevent.py | 58 + .../client/models/responsesstreamframe.py | 119 ++ .../client/models/responsessummary.py | 45 + .../client/models/responsestextdeltaevent.py | 65 + .../models/responsestextdeltaeventlogprob.py | 77 + ...esponsestextdeltaeventlogprobtoplogprob.py | 64 + .../client/models/responsestextdoneevent.py | 65 + .../models/responsestextdoneeventlogprob.py | 77 + ...responsestextdoneeventlogprobtoplogprob.py | 64 + .../models/responsestoolchoicefunction.py | 43 + .../client/models/responsestoolfunction.py | 125 ++ src/mistralai/client/responses.py | 1337 +++++++++++++++++ src/mistralai/client/sdk.py | 4 + uv.lock | 2 +- 240 files changed, 12171 insertions(+), 152 deletions(-) create mode 100644 .speakeasy/connector-id-or-name-overlay.yaml create mode 100644 docs/models/annotation.md create mode 100644 docs/models/code.md create mode 100644 docs/models/countresponseinputtokensrequest.md create mode 100644 docs/models/countresponseinputtokensrequesteffort.md create mode 100644 docs/models/countresponseinputtokensrequestformat.md create mode 100644 docs/models/countresponseinputtokensrequestinput1.md create mode 100644 docs/models/countresponseinputtokensrequestinput2.md create mode 100644 docs/models/countresponseinputtokensrequestresponsesformatjsonobject.md create mode 100644 docs/models/countresponseinputtokensrequestresponsesformattext.md create mode 100644 docs/models/countresponseinputtokensrequestresponsesformattextjsonschemaconfig.md create mode 100644 docs/models/countresponseinputtokensrequestresponsessupportedreasoning.md create mode 100644 docs/models/countresponseinputtokensrequestresponsestextconfig.md create mode 100644 docs/models/countresponseinputtokensrequestresponsestoolchoicefunction.md create mode 100644 docs/models/countresponseinputtokensrequesttool.md create mode 100644 docs/models/countresponseinputtokensrequesttoolchoiceenum.md create mode 100644 docs/models/countresponseinputtokensrequesttoolchoiceunion.md create mode 100644 docs/models/countresponseinputtokensrequestverbosity.md create mode 100644 docs/models/countresponseinputtokensresponse.md create mode 100644 docs/models/createresponserequest.md create mode 100644 docs/models/createresponserequesteffort.md create mode 100644 docs/models/createresponserequestformat.md create mode 100644 docs/models/createresponserequestinput1.md create mode 100644 docs/models/createresponserequestinput2.md create mode 100644 docs/models/createresponserequestresponsesformatjsonobject.md create mode 100644 docs/models/createresponserequestresponsesformattext.md create mode 100644 docs/models/createresponserequestresponsesformattextjsonschemaconfig.md create mode 100644 docs/models/createresponserequestresponsessupportedreasoning.md create mode 100644 docs/models/createresponserequestresponsestextconfig.md create mode 100644 docs/models/createresponserequestresponsestoolchoicefunction.md create mode 100644 docs/models/createresponserequesttool.md create mode 100644 docs/models/createresponserequesttoolchoiceenum.md create mode 100644 docs/models/createresponserequesttoolchoiceunion.md create mode 100644 docs/models/createresponserequestverbosity.md create mode 100644 docs/models/createresponseresponse.md create mode 100644 docs/models/createresponseresponseoutput.md create mode 100644 docs/models/createresponseresponseresponsessupportedreasoning.md create mode 100644 docs/models/createresponseresponseresponsestextconfig.md create mode 100644 docs/models/createresponseresponsestatus.md create mode 100644 docs/models/createresponseresponsetool.md create mode 100644 docs/models/createresponseresponsetoolchoiceenum.md create mode 100644 docs/models/createresponseresponsetoolchoiceunion.md create mode 100644 docs/models/createresponsev1responsespostresponse.md rename docs/models/{format_.md => formatenum.md} (71%) create mode 100644 docs/models/operator.md create mode 100644 docs/models/promptcacheretention.md create mode 100644 docs/models/reason.md create mode 100644 docs/models/responsesannotationcontainerfilecitation.md create mode 100644 docs/models/responsesannotationfilecitation.md create mode 100644 docs/models/responsesannotationfilepath.md create mode 100644 docs/models/responsesannotationurlcitation.md create mode 100644 docs/models/responsescallerdirect.md create mode 100644 docs/models/responsescallerprogram.md create mode 100644 docs/models/responsescompletedevent.md create mode 100644 docs/models/responsescontent.md create mode 100644 docs/models/responsescontentpartaddedevent.md create mode 100644 docs/models/responsescontentpartaddedeventpart.md create mode 100644 docs/models/responsescontentpartdoneevent.md create mode 100644 docs/models/responsescontentpartdoneeventpart.md create mode 100644 docs/models/responsescreatedevent.md create mode 100644 docs/models/responsescustomtool.md create mode 100644 docs/models/responsescustomtoolallowedcaller.md create mode 100644 docs/models/responsescustomtoolformat.md create mode 100644 docs/models/responseseasyinputmessage.md create mode 100644 docs/models/responseseasyinputmessagecontent1.md create mode 100644 docs/models/responseseasyinputmessagecontent2.md create mode 100644 docs/models/responseseasyinputmessagephase.md create mode 100644 docs/models/responseseasyinputmessagerole.md create mode 100644 docs/models/responseserror.md create mode 100644 docs/models/responseserrorevent.md create mode 100644 docs/models/responsesfailedevent.md create mode 100644 docs/models/responsesfunctioncallargumentsdeltaevent.md create mode 100644 docs/models/responsesfunctioncallargumentsdoneevent.md create mode 100644 docs/models/responsesfunctioncalloutput.md create mode 100644 docs/models/responsesfunctioncalloutputcaller.md create mode 100644 docs/models/responsesfunctioncalloutputcallerdirect.md create mode 100644 docs/models/responsesfunctioncalloutputcallerprogram.md create mode 100644 docs/models/responsesfunctioncalloutputoutput1.md create mode 100644 docs/models/responsesfunctioncalloutputoutput2.md create mode 100644 docs/models/responsesfunctioncalloutputstatus.md create mode 100644 docs/models/responsesfunctiontool.md create mode 100644 docs/models/responsesfunctiontoolallowedcaller.md create mode 100644 docs/models/responsesfunctiontoolcall.md create mode 100644 docs/models/responsesfunctiontoolcallcaller.md create mode 100644 docs/models/responsesfunctiontoolcallstatus.md create mode 100644 docs/models/responsesgrammar.md create mode 100644 docs/models/responsesincompletedetails.md create mode 100644 docs/models/responsesincompleteevent.md create mode 100644 docs/models/responsesinprogressevent.md create mode 100644 docs/models/responsesinputfile.md create mode 100644 docs/models/responsesinputfilecontent.md create mode 100644 docs/models/responsesinputfilecontentdetail.md create mode 100644 docs/models/responsesinputfilecontentresponsespromptcachebreakpoint.md create mode 100644 docs/models/responsesinputfiledetail.md create mode 100644 docs/models/responsesinputfileresponsespromptcachebreakpoint.md create mode 100644 docs/models/responsesinputimage.md create mode 100644 docs/models/responsesinputimagecontent.md create mode 100644 docs/models/responsesinputimagecontentdetail.md create mode 100644 docs/models/responsesinputimagecontentresponsespromptcachebreakpoint.md create mode 100644 docs/models/responsesinputimagedetail.md create mode 100644 docs/models/responsesinputimageresponsespromptcachebreakpoint.md create mode 100644 docs/models/responsesinputtext.md create mode 100644 docs/models/responsesinputtextcontent.md create mode 100644 docs/models/responsesinputtextcontentresponsespromptcachebreakpoint.md create mode 100644 docs/models/responsesinputtextresponsespromptcachebreakpoint.md create mode 100644 docs/models/responsesinputtokensdetails.md create mode 100644 docs/models/responsesmessage.md create mode 100644 docs/models/responsesmessagecontent.md create mode 100644 docs/models/responsesmessagerole.md create mode 100644 docs/models/responsesmessagestatus.md create mode 100644 docs/models/responsesnamespacetool.md create mode 100644 docs/models/responsesnamespacetooltool.md create mode 100644 docs/models/responsesoutputitemaddedevent.md create mode 100644 docs/models/responsesoutputitemaddedeventitem.md create mode 100644 docs/models/responsesoutputitemdoneevent.md create mode 100644 docs/models/responsesoutputitemdoneeventitem.md create mode 100644 docs/models/responsesoutputmessage.md create mode 100644 docs/models/responsesoutputmessagecontent.md create mode 100644 docs/models/responsesoutputmessagephase.md create mode 100644 docs/models/responsesoutputmessagestatus.md create mode 100644 docs/models/responsesoutputrefusal.md create mode 100644 docs/models/responsesoutputtext.md create mode 100644 docs/models/responsesoutputtextlogprob.md create mode 100644 docs/models/responsesoutputtextlogprobtoplogprob.md create mode 100644 docs/models/responsesoutputtokensdetails.md create mode 100644 docs/models/responsespartreasoningtext.md create mode 100644 docs/models/responsesreasoningitem.md create mode 100644 docs/models/responsesreasoningitemstatus.md create mode 100644 docs/models/responsesreasoningtextdeltaevent.md create mode 100644 docs/models/responsesreasoningtextdoneevent.md create mode 100644 docs/models/responsesstreamframe.md create mode 100644 docs/models/responsesstreamframedata.md create mode 100644 docs/models/responsessummary.md create mode 100644 docs/models/responsessupportedreasoningeffort.md create mode 100644 docs/models/responsestext.md create mode 100644 docs/models/responsestextconfigformat.md create mode 100644 docs/models/responsestextconfigresponsesformatjsonobject.md create mode 100644 docs/models/responsestextconfigresponsesformattext.md create mode 100644 docs/models/responsestextconfigresponsesformattextjsonschemaconfig.md create mode 100644 docs/models/responsestextconfigverbosity.md create mode 100644 docs/models/responsestextdeltaevent.md create mode 100644 docs/models/responsestextdeltaeventlogprob.md create mode 100644 docs/models/responsestextdeltaeventlogprobtoplogprob.md create mode 100644 docs/models/responsestextdoneevent.md create mode 100644 docs/models/responsestextdoneeventlogprob.md create mode 100644 docs/models/responsestextdoneeventlogprobtoplogprob.md create mode 100644 docs/models/responsestoolchoicefunction.md create mode 100644 docs/models/responsestoolfunction.md create mode 100644 docs/models/responsestoolfunctionallowedcaller.md create mode 100644 docs/models/responsesusage.md create mode 100644 docs/models/servicetier.md create mode 100644 docs/models/syntax.md create mode 100644 docs/models/truncation.md create mode 100644 docs/sdks/responses/README.md create mode 100644 src/mistralai/client/models/countresponseinputtokensrequest.py create mode 100644 src/mistralai/client/models/countresponseinputtokensresponse.py create mode 100644 src/mistralai/client/models/create_response_v1_responses_postop.py create mode 100644 src/mistralai/client/models/createresponserequest.py create mode 100644 src/mistralai/client/models/createresponseresponse.py create mode 100644 src/mistralai/client/models/responsesannotationcontainerfilecitation.py create mode 100644 src/mistralai/client/models/responsesannotationfilecitation.py create mode 100644 src/mistralai/client/models/responsesannotationfilepath.py create mode 100644 src/mistralai/client/models/responsesannotationurlcitation.py create mode 100644 src/mistralai/client/models/responsescompletedevent.py create mode 100644 src/mistralai/client/models/responsescontent.py create mode 100644 src/mistralai/client/models/responsescontentpartaddedevent.py create mode 100644 src/mistralai/client/models/responsescontentpartdoneevent.py create mode 100644 src/mistralai/client/models/responsescreatedevent.py create mode 100644 src/mistralai/client/models/responsescustomtool.py create mode 100644 src/mistralai/client/models/responseseasyinputmessage.py create mode 100644 src/mistralai/client/models/responseserrorevent.py create mode 100644 src/mistralai/client/models/responsesfailedevent.py create mode 100644 src/mistralai/client/models/responsesfunctioncallargumentsdeltaevent.py create mode 100644 src/mistralai/client/models/responsesfunctioncallargumentsdoneevent.py create mode 100644 src/mistralai/client/models/responsesfunctioncalloutput.py create mode 100644 src/mistralai/client/models/responsesfunctioncalloutputcallerdirect.py create mode 100644 src/mistralai/client/models/responsesfunctioncalloutputcallerprogram.py create mode 100644 src/mistralai/client/models/responsesfunctiontool.py create mode 100644 src/mistralai/client/models/responsesfunctiontoolcall.py create mode 100644 src/mistralai/client/models/responsesincompleteevent.py create mode 100644 src/mistralai/client/models/responsesinprogressevent.py create mode 100644 src/mistralai/client/models/responsesinputfile.py create mode 100644 src/mistralai/client/models/responsesinputfilecontent.py create mode 100644 src/mistralai/client/models/responsesinputimage.py create mode 100644 src/mistralai/client/models/responsesinputimagecontent.py create mode 100644 src/mistralai/client/models/responsesinputtext.py create mode 100644 src/mistralai/client/models/responsesinputtextcontent.py create mode 100644 src/mistralai/client/models/responsesinputtokensdetails.py create mode 100644 src/mistralai/client/models/responsesmessage.py create mode 100644 src/mistralai/client/models/responsesnamespacetool.py create mode 100644 src/mistralai/client/models/responsesoutputitemaddedevent.py create mode 100644 src/mistralai/client/models/responsesoutputitemdoneevent.py create mode 100644 src/mistralai/client/models/responsesoutputmessage.py create mode 100644 src/mistralai/client/models/responsesoutputrefusal.py create mode 100644 src/mistralai/client/models/responsesoutputtext.py create mode 100644 src/mistralai/client/models/responsesoutputtextlogprob.py create mode 100644 src/mistralai/client/models/responsesoutputtextlogprobtoplogprob.py create mode 100644 src/mistralai/client/models/responsesoutputtokensdetails.py create mode 100644 src/mistralai/client/models/responsespartreasoningtext.py create mode 100644 src/mistralai/client/models/responsesreasoningitem.py create mode 100644 src/mistralai/client/models/responsesreasoningtextdeltaevent.py create mode 100644 src/mistralai/client/models/responsesreasoningtextdoneevent.py create mode 100644 src/mistralai/client/models/responsesstreamframe.py create mode 100644 src/mistralai/client/models/responsessummary.py create mode 100644 src/mistralai/client/models/responsestextdeltaevent.py create mode 100644 src/mistralai/client/models/responsestextdeltaeventlogprob.py create mode 100644 src/mistralai/client/models/responsestextdeltaeventlogprobtoplogprob.py create mode 100644 src/mistralai/client/models/responsestextdoneevent.py create mode 100644 src/mistralai/client/models/responsestextdoneeventlogprob.py create mode 100644 src/mistralai/client/models/responsestextdoneeventlogprobtoplogprob.py create mode 100644 src/mistralai/client/models/responsestoolchoicefunction.py create mode 100644 src/mistralai/client/models/responsestoolfunction.py create mode 100644 src/mistralai/client/responses.py diff --git a/.speakeasy/connector-id-or-name-overlay.yaml b/.speakeasy/connector-id-or-name-overlay.yaml new file mode 100644 index 000000000..21d4b11c0 --- /dev/null +++ b/.speakeasy/connector-id-or-name-overlay.yaml @@ -0,0 +1,11 @@ +overlay: 1.0.0 +info: + title: Keep connector ID-or-name parameters as strings + version: 1.0.0 +actions: + - target: $.paths..[?(@.name == 'connector_id_or_name')].schema.anyOf + description: Connector names are not UUIDs, so this parameter cannot be UUID-only. + remove: true + - target: $.paths..[?(@.name == 'connector_id_or_name')].schema + update: + type: string diff --git a/.speakeasy/gen.lock b/.speakeasy/gen.lock index ac4fb0373..df3554e66 100644 --- a/.speakeasy/gen.lock +++ b/.speakeasy/gen.lock @@ -1,19 +1,19 @@ lockVersion: 2.0.0 id: 2d045ec7-2ebb-4f4d-ad25-40953b132161 management: - docChecksum: 87c8d5590c1a1b31479d90e81d6433e6 + docChecksum: 051d36e73e3eda60c3b88458ada77493 docVersion: 1.0.0 speakeasyVersion: 1.796.4 generationVersion: 2.935.1 - releaseVersion: 3.3.0 - configChecksum: 37cbec4776979cb3399bee11ea1e071c + releaseVersion: 3.4.0 + configChecksum: c9a33d38ad2af6c8e6163af50adc0eb2 repoURL: https://github.com/mistralai/client-python.git installationURL: https://github.com/mistralai/client-python.git published: true persistentEdits: - generation_id: 79a798ea-3942-414f-be75-25385fc753f9 - pristine_commit_hash: 848ae744d2707385f91379aa9e7a98b32fe3d34f - pristine_tree_hash: c164428c4af8855af14f3b5af4214fdbf4cd4e13 + generation_id: c228931a-c755-41d1-8eb2-78a71f5964c7 + pristine_commit_hash: b06a7552c40236b64d6de9a6f8331cbb76dc1de0 + pristine_tree_hash: f2b370f791e3a3d3215fc473116a4fb99a05ab2d features: python: acceptHeaders: 3.0.0 @@ -316,6 +316,10 @@ trackedFiles: id: 836ee95557bf last_write_checksum: sha1:289e87b83032fde7c3fafd92ae1e925e4e0b9055 pristine_git_object: 23f45709694e7e5880472a12b4b28ab9a394689d + docs/models/annotation.md: + id: faab6b24438b + last_write_checksum: sha1:bc13cfc795ffa8c6837583fd6271b0629938fa0b + pristine_git_object: ef774862c90abef20d8bc28d49e7cdea219867d2 docs/models/annotations.md: id: f3368d2e0511 last_write_checksum: sha1:73f778ca0babe08d41cd2f5567d1bcd43c009fa3 @@ -386,8 +390,8 @@ trackedFiles: pristine_git_object: 9ed5c50cc074ca87a085962c88ad22e0614466af docs/models/audioagentcreaterequest.md: id: fa5d94d3d3df - last_write_checksum: sha1:64f447d42b4567dbad06b0c1497d5d83048f23d1 - pristine_git_object: cca5a8160b3c6f8975e9287016967cc5d11ba3f3 + last_write_checksum: sha1:04de61b989c970f536aad0f902e8cb838ad2c1aa + pristine_git_object: fb23a4f7879a1155a46ec75a35c976dc80fe80e3 docs/models/audioagentlistpage.md: id: 43ec41af67cc last_write_checksum: sha1:ac6fe26481e8e28dab12d578b3cc695da03636da @@ -506,8 +510,8 @@ trackedFiles: pristine_git_object: 72fcdd4abfbaadf89d2523707ce87aee4a4d8be9 docs/models/audiottsconfig.md: id: 14e57142c1e5 - last_write_checksum: sha1:93fd50e4a55ec13616305c4869604665ce15727b - pristine_git_object: 300c38a49c0a0081bf44e72cdfd88cfccac7721c + last_write_checksum: sha1:c45bc461f8ec53af8de3db846d77c4fda031a260 + pristine_git_object: d091c90e5a56256abea296f012ec7d05e7b5b818 docs/models/audioturnconfig.md: id: 90e62973619a last_write_checksum: sha1:8dc7104a70aebdc92d3ac125e43f2af2eff21ddf @@ -776,6 +780,10 @@ trackedFiles: id: ee000ce4eb5e last_write_checksum: sha1:ab362889c4f33fca58c6341c5aabc0357a963926 pristine_git_object: f2b45bc58f58ba7fd4dc0e3778fd65de60073888 + docs/models/code.md: + id: 2fcb3964c9c0 + last_write_checksum: sha1:2fe32ad47b5714514aa40ba48e4f46eb3d9e5bda + pristine_git_object: 1b115e0e245708d19fecaf803273a998ddabf1a6 docs/models/codeinterpretertool.md: id: f009740c6e54 last_write_checksum: sha1:a2114d61a98a48b4365a77c0c75c06ca834367ad @@ -1140,6 +1148,70 @@ trackedFiles: id: 57ef89d3ab83 last_write_checksum: sha1:d92408ad37d7261b0f83588e6216871074a50225 pristine_git_object: 57e260335959c605a0b9b4eaa8bf1f8272f73ae0 + docs/models/countresponseinputtokensrequest.md: + id: e830932461bc + last_write_checksum: sha1:6bf37bb3fd5d98983a307a7f8203c729909c5660 + pristine_git_object: d51922e982bb17ca9f1c945584fce43fcaacc999 + docs/models/countresponseinputtokensrequesteffort.md: + id: 42be28efd21d + last_write_checksum: sha1:228583af2054859bfe9f6a14a35ead090f35e155 + pristine_git_object: 9205c9de8f4697b52e3a28310e74e103816f4d8b + docs/models/countresponseinputtokensrequestformat.md: + id: 223126ae41d2 + last_write_checksum: sha1:69a77df02cc9277877693ac9fa105a8e682ce1ad + pristine_git_object: 2fb0da6c892f95651ad30cbc2d3758f5940c36d5 + docs/models/countresponseinputtokensrequestinput1.md: + id: 27090b7ec860 + last_write_checksum: sha1:3b90bbac493ab6050cc72ad3aa0f4cc37578c7a3 + pristine_git_object: 592945840528c6a1fd69be95a791f94d2033d0ff + docs/models/countresponseinputtokensrequestinput2.md: + id: bd5f8496bab6 + last_write_checksum: sha1:31783debf37b55955e0cdc269576f3703b3d4fcd + pristine_git_object: b6dde4bd6e669a24bb9af2433d9d9205d12e2c64 + docs/models/countresponseinputtokensrequestresponsesformatjsonobject.md: + id: 91f85a8aec40 + last_write_checksum: sha1:998c05c8ca8fd4595390b7a46d42e33bec112e43 + pristine_git_object: 5156372a41f94a192c8852bc7a76825ab6269d20 + docs/models/countresponseinputtokensrequestresponsesformattext.md: + id: 91730c63aa99 + last_write_checksum: sha1:072217e7a52ad0fd1bd04ce0cccb53d4de3bca96 + pristine_git_object: 76481ed47e3fd14b4068a4ffefd1f77ace699eef + docs/models/countresponseinputtokensrequestresponsesformattextjsonschemaconfig.md: + id: e5bbbfd750a8 + last_write_checksum: sha1:c9f35e7774cb25333315984f083ee7aba6303210 + pristine_git_object: ba2d3813361f4a89e242e63024c975de65c523e2 + docs/models/countresponseinputtokensrequestresponsessupportedreasoning.md: + id: 54aa18c5e3a2 + last_write_checksum: sha1:6a8ce5b1358fabc76091f9c3a86966f15db68c6d + pristine_git_object: cd2a77bc6cbba1c41ae830d69a5303c9bcc6c0cc + docs/models/countresponseinputtokensrequestresponsestextconfig.md: + id: a9fe94763f75 + last_write_checksum: sha1:358d68cbf4fe62016d325be00b621fc0b57bc9bf + pristine_git_object: 6c8d73659e53b229dc5858c330d482dc18209784 + docs/models/countresponseinputtokensrequestresponsestoolchoicefunction.md: + id: 0cb3c2732a95 + last_write_checksum: sha1:fbbcf8ea34a387c838e2cd3c1a252f2b44d3ac8c + pristine_git_object: edcd928ea6a084b31471c377afcc09fc3c78ae36 + docs/models/countresponseinputtokensrequesttool.md: + id: 24b2338b86cd + last_write_checksum: sha1:8ee5b4258dde9b6426a10c4de103d6b1de5faa1a + pristine_git_object: 3bd0cc5dc8579730285ac31308d33748a14b038a + docs/models/countresponseinputtokensrequesttoolchoiceenum.md: + id: 266c68a521c5 + last_write_checksum: sha1:a20494811369e69497cb3c3623040798b27e5434 + pristine_git_object: d9f05037eb1e397ce232ef423ca7298d9fa14397 + docs/models/countresponseinputtokensrequesttoolchoiceunion.md: + id: aeb983aa73cb + last_write_checksum: sha1:13d54ad87c0d6338c3360a7afa6a969d9084abd0 + pristine_git_object: 6fe3189c36a4ed9596859505019e59e0e7f8f5a3 + docs/models/countresponseinputtokensrequestverbosity.md: + id: a867869f3bcf + last_write_checksum: sha1:ca7d958d8f3a27ce8ffc1467166a00932d4cb5d6 + pristine_git_object: 6d77d70e58b9bff402bd0f41ea128a4027e87df4 + docs/models/countresponseinputtokensresponse.md: + id: ec06e8aa1f4c + last_write_checksum: sha1:da192f9be8712c1746cca07993ef04463762699f + pristine_git_object: 4e76aecfbbbb1634fd24f7785bdcee134137c020 docs/models/createagentrequest.md: id: 9484bab389c1 last_write_checksum: sha1:5c24b11438c77dbbdb3a6e5275952889e4da7cb9 @@ -1240,6 +1312,102 @@ trackedFiles: id: 4608ebc5e4af last_write_checksum: sha1:d0050833b12d7f25d71639e1b9bbf90283b50812 pristine_git_object: a948c04d0a04cf03da244f6327b703e6358e394f + docs/models/createresponserequest.md: + id: 174769e25f6d + last_write_checksum: sha1:dece8709edf6f41d97c3311b12496ee571c3e60e + pristine_git_object: fc7311fde87fa22d79374445d6ab452010cc35c2 + docs/models/createresponserequesteffort.md: + id: 24b27bb263e5 + last_write_checksum: sha1:8d81f487282da3bc14608abf51521862915750e8 + pristine_git_object: 08edb6cd4d3ae73e79118ac05c88fc93507e197c + docs/models/createresponserequestformat.md: + id: bc241fa79cbd + last_write_checksum: sha1:09540eceb936dc0809c1143b579f7a3570256985 + pristine_git_object: 0ad65ce7c53827fc7bbfe78d1341d267d28c15cf + docs/models/createresponserequestinput1.md: + id: 2fa4efe8a957 + last_write_checksum: sha1:1d0660feb153b434ad8f875035cc0fe521b9f4a6 + pristine_git_object: 8788016cd03900f67f75f4ee88681d569f88b3a4 + docs/models/createresponserequestinput2.md: + id: 3b10e3b878bc + last_write_checksum: sha1:c61e9c04207113861d15b800412116685483d310 + pristine_git_object: 833a89608cb28793b466c4891bbbf3cfa44c987b + docs/models/createresponserequestresponsesformatjsonobject.md: + id: c2e0d45fe192 + last_write_checksum: sha1:ce56412ed42385cc9438f2fe4383b0da5237edbd + pristine_git_object: bc0dff0fc9f23a78a44d28c4fd3d63259ff09cf7 + docs/models/createresponserequestresponsesformattext.md: + id: 7bf987604a4e + last_write_checksum: sha1:d72402ebb16b3320ebb84ad721d4504b94831882 + pristine_git_object: 9e5c3a46617c0f6d9d43ad04b6b8a1bcbfd63de0 + docs/models/createresponserequestresponsesformattextjsonschemaconfig.md: + id: d818e75c790c + last_write_checksum: sha1:3fcf1cb6ee62638918407a7e9ea827a9a219fe61 + pristine_git_object: c64a78fad1cf76ca805b4d072de04fe3b9171dd5 + docs/models/createresponserequestresponsessupportedreasoning.md: + id: 0b5a2e8c5d7d + last_write_checksum: sha1:95570ba524b787db9462ea50066d93abb795f0f2 + pristine_git_object: 02b4363d0cd352fc9c2d2b7da7b0af490f86d9ec + docs/models/createresponserequestresponsestextconfig.md: + id: 4f10424fdc2b + last_write_checksum: sha1:33a2c3a1bdffaf621922b65376f9007bf32553a0 + pristine_git_object: 39f046f9d25cc770f633dbace849c647d9741cf3 + docs/models/createresponserequestresponsestoolchoicefunction.md: + id: 99032ec1fff5 + last_write_checksum: sha1:24f01ebab8b671ac5289e514e03d6d259a6f14d6 + pristine_git_object: 170b4df2c65d64b25278aac89c76047020ba2892 + docs/models/createresponserequesttool.md: + id: 0410baf9d5ee + last_write_checksum: sha1:43f94c108d4ebca1a2d624ee40bfb1bdc4436ea6 + pristine_git_object: acb4fa4971507508cac45fc4c20e49145270210d + docs/models/createresponserequesttoolchoiceenum.md: + id: 40d7bf28589a + last_write_checksum: sha1:1bb92d4d26c6e325b9ffd98584205290c9140b96 + pristine_git_object: 1adebfb9f511495d836d2d08ec6360303a01ca17 + docs/models/createresponserequesttoolchoiceunion.md: + id: 24e6061b950a + last_write_checksum: sha1:d6351874d99de47d3f0f8d259fce668b72ce48c2 + pristine_git_object: 77d1528610c79215a23ca1dff289e7614cf95547 + docs/models/createresponserequestverbosity.md: + id: e220abc686bf + last_write_checksum: sha1:cc362a8465c55c39a2d81a5cd57f538a6181a23e + pristine_git_object: 993b6d7c5937eeec6274318ee3a58eeb4f07b78e + docs/models/createresponseresponse.md: + id: 8b9744e448db + last_write_checksum: sha1:11016cd5d2dc0b4e8323bcb2804feca99492c042 + pristine_git_object: ef880cb3981ddb073c197dec130c5fd7da846eaf + docs/models/createresponseresponseoutput.md: + id: 2dcb60e6c8d8 + last_write_checksum: sha1:c7d0dfef25e015541aa9e71a29fd0a0f979aef7f + pristine_git_object: a88779bf0edc8a7f45a1a1c0a7d78d8bd26e7d11 + docs/models/createresponseresponseresponsessupportedreasoning.md: + id: 3031f1ac401c + last_write_checksum: sha1:b34e6c143489e6d24cb36c289a08481eda467402 + pristine_git_object: ce80ba7b1d9eb3c43da03fc35a5b1e7ca4314781 + docs/models/createresponseresponseresponsestextconfig.md: + id: 42c78d2d45b2 + last_write_checksum: sha1:35bac77e9af6523bd68ece5429b1855cf7baf115 + pristine_git_object: 87597c68464e32876ff521670d4fd9f6447c8bb2 + docs/models/createresponseresponsestatus.md: + id: 258ad5f41c8a + last_write_checksum: sha1:bd55fc9621f52c90768d83ddecbc1d80c768c3b0 + pristine_git_object: 9fb42185193ca1684ad0bb41144aa1bf80f7f555 + docs/models/createresponseresponsetool.md: + id: 31ab32a03564 + last_write_checksum: sha1:43904380c30f06f6a2127e415a5effa6390aedab + pristine_git_object: e50354d1b5f64849eeae28bac8fedc490c930eaa + docs/models/createresponseresponsetoolchoiceenum.md: + id: e8e5fd445b4d + last_write_checksum: sha1:4970283e4a302adcf17abffda8c24ed2ab63f5d0 + pristine_git_object: e21dd2bcd153ac8ad12e73c90852867966c031a4 + docs/models/createresponseresponsetoolchoiceunion.md: + id: 583d247de74a + last_write_checksum: sha1:5e6282945cede35649969f1df57c4118daf30a28 + pristine_git_object: af0090fcea6b9f6359e9a7644f17f29fd5871efe + docs/models/createresponsev1responsespostresponse.md: + id: c0b2750dbd9a + last_write_checksum: sha1:0bf1b32e495b32388946e1bb7e5cb06a73782fe6 + pristine_git_object: f5adb0874e69523431cba84cf80ff34e3dfdc38f docs/models/createserviceaccountrequest.md: id: 60e3fe6bce5e last_write_checksum: sha1:7e907c3dc7e2869e51fa6c0c40a940d714c747ae @@ -1872,10 +2040,10 @@ trackedFiles: id: f5a3b29cfec4 last_write_checksum: sha1:21dd27ba7e1199644f357fac5eea058bdd843eef pristine_git_object: d77a7d5daf610487319cf120222f33658f5d96f7 - docs/models/format_.md: - id: a17c22228eda - last_write_checksum: sha1:72d2d0549cd18ea564007a268c13bfd1eba219ec - pristine_git_object: 5bf1ed0cfa19f2edd4c6a1a7c66c7f093043a700 + docs/models/formatenum.md: + id: 4d443dc702e0 + last_write_checksum: sha1:2c7497e3339a0b9fbb975ec6f7e9ea58c1c39260 + pristine_git_object: 561f6248a0efdc9012214354580b9e47bf4dc9bf docs/models/formelicitationcapability.md: id: eb5880cc2f5d last_write_checksum: sha1:75ff20864860833f9c7f60cb36148205b85bb1e4 @@ -2474,8 +2642,8 @@ trackedFiles: pristine_git_object: 6f68d3f633b07e2c04c8d5bf8fc6eda9a853c976 docs/models/ipaphoneme.md: id: 0c4021a50326 - last_write_checksum: sha1:a674cf60900be0859c785872f8ee1f55c00a7de4 - pristine_git_object: c2a0fcb4f4d97cd5fa8652e29d2155cfc008ae1a + last_write_checksum: sha1:b5ff51a698776fbcbc8cfd745743339d0fb372ce + pristine_git_object: 8c34fde8da80bd64639a26cb55d5f1f89a24cc4f docs/models/jobsapiroutesbatchcancelbatchjobrequest.md: id: 798cb1ca1385 last_write_checksum: sha1:67e8bda117608aee0e09a702a1ef8a4b03c40b68 @@ -2614,8 +2782,8 @@ trackedFiles: pristine_git_object: f76b86aed2bdf889181a1a7922ce83d0654cbb6c docs/models/keywordretriever.md: id: 6ee7aba8d363 - last_write_checksum: sha1:93d993c6ab785f6eaa93433db429c25e377bb3b5 - pristine_git_object: 37ae2b6c0340466ac0e5a650a3546b5d6226f8fc + last_write_checksum: sha1:42c19a72c6d531db7bd7acf3dd357f118082ea66 + pristine_git_object: 068c8206ce32ce4cd18175682adf6cc5e0a3228e docs/models/keywordretrieverfilter.md: id: 3d0460c874e0 last_write_checksum: sha1:2880aa294c7db44ab0cc225ab06e82e1e9ea2935 @@ -3358,8 +3526,8 @@ trackedFiles: pristine_git_object: 0d5f962abc3ed8368816e98b6caa551e7e1f000b docs/models/ocrtableobject.md: id: c967796380e6 - last_write_checksum: sha1:deb1715d618330b4f791b7237955e697d26c6bc2 - pristine_git_object: 2da8f6105dd83d7f4d067c74298316ab512c9c3f + last_write_checksum: sha1:7663106ab41143da2f54cbfb36b3fafb1aad3c87 + pristine_git_object: a3381b6e3210e9c17c38e3add7d3fc36dd63982f docs/models/ocrtextblock.md: id: ec731e2067f3 last_write_checksum: sha1:6960cd4611007d4d2f607256d5307bceddfadb29 @@ -3376,6 +3544,10 @@ trackedFiles: id: 5258de4242cb last_write_checksum: sha1:858c8e3e3d2e6d588ac18623a6fe9fb83f3d70d3 pristine_git_object: 9e2452d77020c65a220e09bce21bf68a4a1b6ee5 + docs/models/operator.md: + id: 1b6d3fc58add + last_write_checksum: sha1:75e19fc8da4d7427f61372f06e200c73387099d6 + pristine_git_object: b56ab1b664dd14ed9fc155cdce289305f5cd3800 docs/models/optimization.md: id: 7adf987697ce last_write_checksum: sha1:aa299f3d726fdd105334240badbd9eaac5e8425e @@ -3632,6 +3804,10 @@ trackedFiles: id: 5e744dafa422 last_write_checksum: sha1:5cf7f3fe5281246d4256f1eed9c296e8efa15804 pristine_git_object: e59e8b8e71f0e010295814b20be7e05d31cc4e24 + docs/models/promptcacheretention.md: + id: 8d46434eaedb + last_write_checksum: sha1:80e55410e979f88b234d6427d7fa1430320fd032 + pristine_git_object: 916e1f89a1f321aee0723867d6c8fbc113017e74 docs/models/promptdefinition.md: id: c7a742519661 last_write_checksum: sha1:a709d3be4a71ae0cf0d76ee29237ad690a2c8f12 @@ -3694,8 +3870,8 @@ trackedFiles: pristine_git_object: 66cd6dc29e6a94856302a7c1bf624efaaab6a082 docs/models/publicauthenticationmethod.md: id: abfb51fdf794 - last_write_checksum: sha1:3395306a5245f70d1ec38d4a601fecdf2a278966 - pristine_git_object: 242bf66278965e436d7e51296d5e7f041dc6225a + last_write_checksum: sha1:363eecccd4e36444523c213b0e2e34b9563d97e2 + pristine_git_object: ee8c090d6043ddfd765d2fc0a49a6430dbf84823 docs/models/publicresourcevisibility.md: id: abc1ee88de49 last_write_checksum: sha1:dc1b9f19be4c8c25b97bc505950c7a6096e8b1d1 @@ -3784,6 +3960,10 @@ trackedFiles: id: 3ddd5a95510a last_write_checksum: sha1:7bbbfa5e6aa37b46a7e5af5069c76e28ea68c7c9 pristine_git_object: db590af90bbce2d0a9c4c2295a8fca8d52094486 + docs/models/reason.md: + id: 087688da6fd4 + last_write_checksum: sha1:d41cab1c280dfa2965031d7f6bf81f3ccad75126 + pristine_git_object: fb2fa9a9774e2951aa4c2885d6b6bf786ddaa411 docs/models/reasoningeffort.md: id: c8fd630d3f07 last_write_checksum: sha1:ebfd30ba28d245cd62a6aaae59749eb1d5bfa990 @@ -3920,10 +4100,422 @@ trackedFiles: id: 6143ec73bdd6 last_write_checksum: sha1:6bae62cbb18559065a53f0acdacb1f72f513467e pristine_git_object: ffbc1473d39c8266bb6b05b37677c98ca1d10858 + docs/models/responsesannotationcontainerfilecitation.md: + id: 4660e769d91e + last_write_checksum: sha1:f20d5b2c09b2990eec8e0b79628cb7c2dfc09ff7 + pristine_git_object: d72e21d354b347371e9df6a444a9152d1ef0c01f + docs/models/responsesannotationfilecitation.md: + id: 22dc53ef5e63 + last_write_checksum: sha1:ccc05d3929f668d9487c9837bd96a733f7a9f74e + pristine_git_object: a353ca03d012998ba3028f59ae57c10bae83e954 + docs/models/responsesannotationfilepath.md: + id: 8d16dff919fb + last_write_checksum: sha1:8683fe9f806b6c91c269657fc42b5621bfdaa7b0 + pristine_git_object: 9b06eab91cf03756d0245e498fdb82901834ff48 + docs/models/responsesannotationurlcitation.md: + id: d8305e952e3d + last_write_checksum: sha1:65418cb9d343a503c51a90bc7e6e61b6fec29435 + pristine_git_object: 29f74953e85332bcd686378aa990b904d2fe670b + docs/models/responsescallerdirect.md: + id: b8cf77558b3d + last_write_checksum: sha1:adc366789b056784bea77f685ef820253031e7d9 + pristine_git_object: 7e94774334ca5bc37967608346f2664c3f65b0c4 + docs/models/responsescallerprogram.md: + id: a39844cd9262 + last_write_checksum: sha1:cb2893d5a590b70d175a949581ce3fd76c2b8b25 + pristine_git_object: 4fa526d630a9a9b01df9265d17b5906820e7ac93 + docs/models/responsescompletedevent.md: + id: "437273265722" + last_write_checksum: sha1:647d4b4993e1433b92633416460968a7c1e50e0e + pristine_git_object: 50607d8e394ae57949336edff3103ba468f421e3 + docs/models/responsescontent.md: + id: 5c1d0417dec9 + last_write_checksum: sha1:afa6f480a8c62f23a54c57a7b19ff90a3fc851f0 + pristine_git_object: ff29ea097b1ea3ff431360ec078c5c90881be1a1 + docs/models/responsescontentpartaddedevent.md: + id: 4c34742a0d97 + last_write_checksum: sha1:1b938b8c162292cfdea8318b88d91d181ef05b2b + pristine_git_object: 26298a89dcdf2a75e6c375181e5d630790999c0b + docs/models/responsescontentpartaddedeventpart.md: + id: e139b024ca3b + last_write_checksum: sha1:76de44904e93fe6b29e2b591ae2452872b3ac6b1 + pristine_git_object: 4e1320e9552e674631442d30a23d838c7a5c6528 + docs/models/responsescontentpartdoneevent.md: + id: ba4850157cc4 + last_write_checksum: sha1:2b6a0876d0881db462209b49a6889460e73309f1 + pristine_git_object: d05e5223f4a5dfce9adcead8041a512540ea6387 + docs/models/responsescontentpartdoneeventpart.md: + id: 4c2e469c3a70 + last_write_checksum: sha1:ca09303c4203f5659aafa6bf50f3a896098f8517 + pristine_git_object: 8de71efc3ea7eb19a288da138f670a55574b55d8 + docs/models/responsescreatedevent.md: + id: b2d9b70bd6cf + last_write_checksum: sha1:87a536722f86b56c27d91f59c3929567c9bc2254 + pristine_git_object: fa86bb07df85b3e0532c4296bc9dbe85ef00243f + docs/models/responsescustomtool.md: + id: 352af67e6e30 + last_write_checksum: sha1:1792d779e0236b9294c64fb3a01de20792427ca6 + pristine_git_object: 8cd9e5b70ac880c6266812e9edd9b08dc543a53e + docs/models/responsescustomtoolallowedcaller.md: + id: 7382a0a05adc + last_write_checksum: sha1:18ea9c403c3249b7d6dc273bf59967857291e2b7 + pristine_git_object: ea64b2bf3e0a97fc12b9ea29bfe24e8beee7508e + docs/models/responsescustomtoolformat.md: + id: ea72ae817e15 + last_write_checksum: sha1:344fcb1fb283916746e6c6544405a5b98dd8fcb0 + pristine_git_object: 7486392346e5ec4225b449cb47c866600301b06f + docs/models/responseseasyinputmessage.md: + id: 17b8b36afebb + last_write_checksum: sha1:89b7bd4c29a023006de93dc6a4278ddaedb88c7b + pristine_git_object: 1d89f1e2846528c2821262a2208bc53ce756b8c5 + docs/models/responseseasyinputmessagecontent1.md: + id: af732c1a5db2 + last_write_checksum: sha1:368e52c96311ef60877cbae44ec6f91ec25dd257 + pristine_git_object: 00b4a421b70effb96d59b444d9547a995f06d1d1 + docs/models/responseseasyinputmessagecontent2.md: + id: 5bcd4f22dd72 + last_write_checksum: sha1:692c47363274d8e638f26ba7cd3f912a3ef51e25 + pristine_git_object: 2331ce7158c20913d0cd64da0df8e159e0d1d767 + docs/models/responseseasyinputmessagephase.md: + id: 6ad8228adf9e + last_write_checksum: sha1:faf0119bb8eb5c287598253d14eb7ced8bc3255e + pristine_git_object: c3440b5677d15011da8e19e787b4aaaa986d54c0 + docs/models/responseseasyinputmessagerole.md: + id: 52329f303fbd + last_write_checksum: sha1:db7bc5c9e9e737f454688f381b81159382ff04ea + pristine_git_object: 1697ad6b779f52c109102519f02d2b39d7bc199f + docs/models/responseserror.md: + id: e966e9984890 + last_write_checksum: sha1:af7f33eb64952abc405b9c19bd4f9c2b22dcf919 + pristine_git_object: bcc49981e8938e1b526a26eb174da4dff0a6abef + docs/models/responseserrorevent.md: + id: d9d40e518c3c + last_write_checksum: sha1:7d2cc11531fc3e6b4498872282846bbbd4bc7522 + pristine_git_object: 4ee0e47aa54b0daf67d54d4375a6ce07cad1b415 + docs/models/responsesfailedevent.md: + id: 5d14bfc27890 + last_write_checksum: sha1:17010a9b4c2ae2a7819ca148bb2d3ca1151cbb40 + pristine_git_object: 8d812148a98a7ebae4bc74c35bfff5ec1b9ea9ce + docs/models/responsesfunctioncallargumentsdeltaevent.md: + id: a018db2d4393 + last_write_checksum: sha1:4e4fe7a62439aee0077a5a92355367448065e0f4 + pristine_git_object: 7b1bcd57d57de2d2f425c931fcdabdc76d88cd36 + docs/models/responsesfunctioncallargumentsdoneevent.md: + id: d5bbd0ff83ea + last_write_checksum: sha1:03e30987c52a4772cb09a031075213685f5d4f09 + pristine_git_object: 226f769dc81b727e8f0854c05c142b3486c8c1cc + docs/models/responsesfunctioncalloutput.md: + id: 4b8757750985 + last_write_checksum: sha1:5bbf5fbb3e3c91fcc3a521c3796d1631c3d4b8ee + pristine_git_object: 8e664dc225ba4436183468ebbfce3482e37c6367 + docs/models/responsesfunctioncalloutputcaller.md: + id: d0baa059e647 + last_write_checksum: sha1:18b3a92f4aeb16f3ae286c7150d3b7a643d79b2d + pristine_git_object: 03e892f080019113e35c1280f1e56b92973db53c + docs/models/responsesfunctioncalloutputcallerdirect.md: + id: 6fa0aca37dc7 + last_write_checksum: sha1:300523578caa6ddba57561979c6aadb4e1a4cfa8 + pristine_git_object: d2f62249787d171374cb3c4a91e7a5b77c0d7f96 + docs/models/responsesfunctioncalloutputcallerprogram.md: + id: e86b68ef9712 + last_write_checksum: sha1:5215370541f785ebe89ec4c7972f081968f4a86e + pristine_git_object: cbfbbe6f35425efe837a113d57d81d1891a40e32 + docs/models/responsesfunctioncalloutputoutput1.md: + id: 465b2d2d5220 + last_write_checksum: sha1:e028d60bf27606b486fd92278c4063bc5d4da0f4 + pristine_git_object: 66f55be20902b52ffc2438a856d7fb81bfc4b690 + docs/models/responsesfunctioncalloutputoutput2.md: + id: 9343ef1f44f7 + last_write_checksum: sha1:6bb18aa32cc29ea394b736184eb2ac90ba60f922 + pristine_git_object: 62616d5fa0becabc45ca373304602526739f3b1e + docs/models/responsesfunctioncalloutputstatus.md: + id: 6c662596d2b0 + last_write_checksum: sha1:c2c7d47664a1b57c6f480d032cd86d6cdcbf0e24 + pristine_git_object: e8a205201341cca70bc6b2ced86aaf50903ece02 + docs/models/responsesfunctiontool.md: + id: 5c9bc8b996bc + last_write_checksum: sha1:c16769121f175d57f4bb6f57cc2ff8de51ab2ee2 + pristine_git_object: 849d1389a2ec0b2ff06445a69578a4cf057ab810 + docs/models/responsesfunctiontoolallowedcaller.md: + id: 03c370e9e632 + last_write_checksum: sha1:366dbc28207cd7e3cea45586097d2115c51c3163 + pristine_git_object: 549387be912fb62739a6eff22558abdaae472118 + docs/models/responsesfunctiontoolcall.md: + id: e4cb195a5d51 + last_write_checksum: sha1:491acb09b2166444e4907e732e817175888e11b4 + pristine_git_object: a94f3c67fb07cf146d1b1e03231a0a673b298a32 + docs/models/responsesfunctiontoolcallcaller.md: + id: 379619b97652 + last_write_checksum: sha1:73ab23542fe5e0a577cd4583630568099fd5aeaf + pristine_git_object: b6b02cac6cdf192fe4351ef57d7189519f119095 + docs/models/responsesfunctiontoolcallstatus.md: + id: 27740d30b1c2 + last_write_checksum: sha1:95776cdb18980fca3d2e4f00d5e0f0b575cc9976 + pristine_git_object: 1c73d89dcf2c51a9ed76733acee2a7167474700d + docs/models/responsesgrammar.md: + id: f598beea1249 + last_write_checksum: sha1:a05c912f3b1068030b481c4d2ff11f8eb77842ff + pristine_git_object: 25c4656a56726decd029aa6c74b50af7426dc61e + docs/models/responsesincompletedetails.md: + id: c93da284a8ee + last_write_checksum: sha1:eb5395f86483a48ae975ad122facc663a09ceaa9 + pristine_git_object: f605c439119e0d0c5c3058099ea621f643e91330 + docs/models/responsesincompleteevent.md: + id: e38fcb1ef0f2 + last_write_checksum: sha1:0d7473d1be133dc559508f8422698adee14b54ec + pristine_git_object: 396c6f02e77dc31593f46b8b98519c8dd9a2e2d0 + docs/models/responsesinprogressevent.md: + id: 0452357e6076 + last_write_checksum: sha1:a2015a4c5a67c55b9604ac755e97649a3116ede2 + pristine_git_object: 4fa2f4c88993a3613748ee24b2f6e153678b1a64 + docs/models/responsesinputfile.md: + id: a2684051b9b2 + last_write_checksum: sha1:a2a3e99140189d4b3b8011dd53b805397410a2d1 + pristine_git_object: 087a4bde3935816a9dc470f5d06d6b2587b4c968 + docs/models/responsesinputfilecontent.md: + id: 094652541cad + last_write_checksum: sha1:acab23a91bc681379ca57545540e6d2a05c66a8c + pristine_git_object: d44afd4fb4a3b1653b872ea3591af24791d9c210 + docs/models/responsesinputfilecontentdetail.md: + id: 14a51c397561 + last_write_checksum: sha1:cce87f140d68a08bd8afe08fdca696103650b290 + pristine_git_object: bf348a542ff7ee0215e51ff5e359b699713181d0 + docs/models/responsesinputfilecontentresponsespromptcachebreakpoint.md: + id: db81a4667772 + last_write_checksum: sha1:3763d66826122ebae110451db3306e1d2106cee0 + pristine_git_object: a6ff9e70d97c9cd36ea65144f95232f934ea8cac + docs/models/responsesinputfiledetail.md: + id: 81de058ca30d + last_write_checksum: sha1:3ef30515ca642a78d698a38904697ab2d1e7be06 + pristine_git_object: 06436bf69e24b51e6152b157c97728664d36f6ba + docs/models/responsesinputfileresponsespromptcachebreakpoint.md: + id: a646418e0e38 + last_write_checksum: sha1:b927aeae789c991bc95649c06ae27f86d777285f + pristine_git_object: f95ce09289b045d911961ebc11d7e8cee4dad2d5 + docs/models/responsesinputimage.md: + id: 9de7bb8f007b + last_write_checksum: sha1:dd92674c1714d73eac04f3725efc7f44cf19ece2 + pristine_git_object: 2d03c3a4a5cf6c5adab47fc7d7980f6d65f7cd15 + docs/models/responsesinputimagecontent.md: + id: a8ab60e815d8 + last_write_checksum: sha1:05973a51ea713fadd7bb8124aabb1fac70c07150 + pristine_git_object: b03f8361eccdc0ee55fd3a5e6c935e984630834e + docs/models/responsesinputimagecontentdetail.md: + id: 1ca9b4e947cf + last_write_checksum: sha1:eebb41d7ec6749bd805d9bae531dc4c2cd9f91ae + pristine_git_object: acec0ac411ce26811d1a2cf1a944a1b3828d2fc2 + docs/models/responsesinputimagecontentresponsespromptcachebreakpoint.md: + id: 0b5f2bad4e19 + last_write_checksum: sha1:39a04fb5994bd2f418dabff84423bfc8ab3baddb + pristine_git_object: 6ba15ded3503ffdabdfbeb458e945006c6226183 + docs/models/responsesinputimagedetail.md: + id: 43afde7e3e3e + last_write_checksum: sha1:b98940480d501dc954f454951027951c0ace457c + pristine_git_object: 6d6bd60fca829e07cd89fe5e2c18a13e08cdfc44 + docs/models/responsesinputimageresponsespromptcachebreakpoint.md: + id: d09f563e2b23 + last_write_checksum: sha1:5d2ec465936ecb5f16c793ed8278915dd08c0dfe + pristine_git_object: d0ab75dec387d8c64bf206aad5eb048fd6bd53ea + docs/models/responsesinputtext.md: + id: d480b8ac5178 + last_write_checksum: sha1:4bc03af64330a8a533d93ef771becdacc644652f + pristine_git_object: 5168ae8648f198fbbbba6eb0163a6529aaf79cd8 + docs/models/responsesinputtextcontent.md: + id: 2a729b690edf + last_write_checksum: sha1:20d4f4a04915bba78cf24018150f0aecf9896940 + pristine_git_object: 293261bd7434b40ff8fc3118901889e28c42c71a + docs/models/responsesinputtextcontentresponsespromptcachebreakpoint.md: + id: 3fa64bacb5e8 + last_write_checksum: sha1:722e1f328ad86c6f137b0d85d991fa878292947b + pristine_git_object: a18aa4fa680b75212959b868f907f7a94a68edea + docs/models/responsesinputtextresponsespromptcachebreakpoint.md: + id: ffedb7d2f3ad + last_write_checksum: sha1:723ba160b6588eeca55336969f7415f46a819662 + pristine_git_object: 5e8e499e5ea968cfd4480ab59a631054f8c43a5c + docs/models/responsesinputtokensdetails.md: + id: 648fd41e9ef4 + last_write_checksum: sha1:b57f016349923479d07efd967711781edc925a80 + pristine_git_object: 1c446a7c5877747c8565a723021077aaccc67b69 + docs/models/responsesmessage.md: + id: fcc69671b08e + last_write_checksum: sha1:92703f6eeb6d4d1ddaa42212ca7e0a2f0a4b04ce + pristine_git_object: bc4b4e1f3054fba826f452b561a8e595ac4a624d + docs/models/responsesmessagecontent.md: + id: 0986eb81d0f5 + last_write_checksum: sha1:87429def40217358e076ef9807c1811a01553681 + pristine_git_object: c9b8b8d6b5ecd98f8bdb948e1f4dc9ea215a18e5 + docs/models/responsesmessagerole.md: + id: 2f691b0451d9 + last_write_checksum: sha1:73e27cbae61fdb937bce0024c4833a12e77a91b3 + pristine_git_object: dee2375bb4d9d474deaee97057d66bdac388acf6 + docs/models/responsesmessagestatus.md: + id: 7d380d63d723 + last_write_checksum: sha1:76f799f0f7b7e85b88c685cbf51339ecccbef48c + pristine_git_object: aaf7b220a7ad6e1f04238fb19abad9b1b8eebda3 + docs/models/responsesnamespacetool.md: + id: 8776b5db20c2 + last_write_checksum: sha1:72b5088c7baa5295aa216e79d0e976ac0522beee + pristine_git_object: 0699a45104aa3c48987baab7e18cf15e6d564202 + docs/models/responsesnamespacetooltool.md: + id: d55ca851f660 + last_write_checksum: sha1:5a500e8e16a08d5725f6c7be405aabb8c355f71a + pristine_git_object: d36549f76099ba6b47c023270269792d788f30f5 + docs/models/responsesoutputitemaddedevent.md: + id: 52dcb674f6de + last_write_checksum: sha1:d683dc874cfdabd1274c7170bf0333ba7a75226b + pristine_git_object: e09fa382937247f0eb81e7fb1dc6a9584a36d107 + docs/models/responsesoutputitemaddedeventitem.md: + id: 1daa5972baee + last_write_checksum: sha1:3a5d51f2b510071e9f561ee5d4b44146f880c394 + pristine_git_object: c974ab90acf8cbe14fa38bdc0d9821d62a4423ac + docs/models/responsesoutputitemdoneevent.md: + id: 216058db111e + last_write_checksum: sha1:383afd248dc5fe4fbe04c11c4fc7616a0e5f63d6 + pristine_git_object: 8e00afe2334ae14e5d6b21c528f08bae69056aef + docs/models/responsesoutputitemdoneeventitem.md: + id: 246e6dd6908c + last_write_checksum: sha1:9c4c3ae7e32839763f9ec6cebb18f786e8c86efd + pristine_git_object: 68a7303e30454455f6e1ab5b11deeba4e6e0e23f + docs/models/responsesoutputmessage.md: + id: 9c59afc78069 + last_write_checksum: sha1:64f3c443b59f6df2cd4dc4524d6894156ffcb3ed + pristine_git_object: d6344074a93dd49b20c35d07aa713502d97f924c + docs/models/responsesoutputmessagecontent.md: + id: c1adbb0eac4e + last_write_checksum: sha1:2c22d3b4b8ba25008a88d4568d9899ad4595d878 + pristine_git_object: d486fbba5ad24a7d841fdf57ed6355e985d0447b + docs/models/responsesoutputmessagephase.md: + id: 8de100d54597 + last_write_checksum: sha1:acce3cb09394acdbd23e16ad0e18812db8c39576 + pristine_git_object: b83278726db95e0124e0ef22ed15c74f2a8255c9 + docs/models/responsesoutputmessagestatus.md: + id: d02c81a9f197 + last_write_checksum: sha1:25da3893c1190e7d67fecf15d43a79ac82ce12a0 + pristine_git_object: 74a8a0491f634e830b74bdf62019ada0fc5adc83 + docs/models/responsesoutputrefusal.md: + id: 29121dcb3815 + last_write_checksum: sha1:262c539966a28a114267817823fe6b9e3109d9fb + pristine_git_object: 304f30c8f7a9df9a3d813276a1addbb87d5c7e70 + docs/models/responsesoutputtext.md: + id: 2b2dea3bccab + last_write_checksum: sha1:58e708e31481e82e32cb39efc9279926e4febd7b + pristine_git_object: 77a1f4f630cdd57178df7d94edbc7ae961e8b61a + docs/models/responsesoutputtextlogprob.md: + id: 5a9e85d229fe + last_write_checksum: sha1:194e1b3967a5f533a9e1fe7bbe07914a5a1f6a8f + pristine_git_object: c58031349b899c7ba0eeee9978612be418856edb + docs/models/responsesoutputtextlogprobtoplogprob.md: + id: a2fb2872da87 + last_write_checksum: sha1:b9eb8839c09488f590b3f9124384fbd9ce6bfbdc + pristine_git_object: e5603d9f115772574d1b4907d2c1c6933620d3dd + docs/models/responsesoutputtokensdetails.md: + id: 0d725035f397 + last_write_checksum: sha1:f59b1e9ddc226b18972bbae1556ad3d71da59728 + pristine_git_object: 024f16f7b695d1776309fdb6929467ac507cdbc9 + docs/models/responsespartreasoningtext.md: + id: 45dfdcd36009 + last_write_checksum: sha1:abfdcbfc6443adc28e2289d5139f4421a96ff9fd + pristine_git_object: f7c818d1dd3e60f03ca8958d8764c50e476bce18 + docs/models/responsesreasoningitem.md: + id: 85f596c06732 + last_write_checksum: sha1:8902240e1971bcb7099b0c0369d35dd310722145 + pristine_git_object: 48442125360bd1d301ebf717084a4b008a6e1752 + docs/models/responsesreasoningitemstatus.md: + id: 196960e7ec1e + last_write_checksum: sha1:4e67d29c34e9f965274e8eb048659a937b21237d + pristine_git_object: 50fc29847dbe02db14e7e9a51f79d196997c4ed1 + docs/models/responsesreasoningtextdeltaevent.md: + id: 851713206fe7 + last_write_checksum: sha1:aa861f849f1d44f92d526089723045e4c7d8b9c4 + pristine_git_object: 4c71983cedccd04de51bfb60372da1f55352e82f + docs/models/responsesreasoningtextdoneevent.md: + id: 4883c86b2f19 + last_write_checksum: sha1:85481c8ef744921437b9bd54650074e09c5202b5 + pristine_git_object: d1258d12549a27a392a86878ceb3fc3d6a89dcf2 + docs/models/responsesstreamframe.md: + id: 3ec18c1c4236 + last_write_checksum: sha1:7c223e1990135c4f534c4a754925d21dd6113e96 + pristine_git_object: 39d65524d272b974b07a8fef6b2dca6a0a3b2ff3 + docs/models/responsesstreamframedata.md: + id: 5a981d042d5f + last_write_checksum: sha1:b7cb30eb13320edc81086168d0a5615b239c378a + pristine_git_object: c0a12616b65dc209a2c4e1ddb05405ccfca1deff + docs/models/responsessummary.md: + id: 22c5a7fa1bf0 + last_write_checksum: sha1:a008c59c9cc773c69447263ac1352c2f10a79a7f + pristine_git_object: 3afa8b470199b5e344c49fb459c9a7abd11e9ddb + docs/models/responsessupportedreasoningeffort.md: + id: 1a5b128d6056 + last_write_checksum: sha1:cf087208875f6a38405be645a99884507d6a658d + pristine_git_object: a41a109bc73c38a7bc057d43a5e791c36f787f7e docs/models/responsestartedevent.md: id: 88e3b9f0aa8d last_write_checksum: sha1:156f38bbe8278f9c03117135938e7cbdae3038b9 pristine_git_object: e2f421af866690b34c2d9fa4595a63e9172a65f5 + docs/models/responsestext.md: + id: 01818176193f + last_write_checksum: sha1:a63f2a482c3214f32b3f00a99e2f0193e95ccd4d + pristine_git_object: 1da1b04e58b37781fd5156d75ac65066a04c5b78 + docs/models/responsestextconfigformat.md: + id: 9684a88d61ee + last_write_checksum: sha1:cd85ccc8f6cde0ec18b6ccb1d923b01a2913e217 + pristine_git_object: 1d18de2579db77fb3f88f50913cd06bf35bd2141 + docs/models/responsestextconfigresponsesformatjsonobject.md: + id: 53bee82ea63f + last_write_checksum: sha1:c98ae9c978f205345a2d7c3f27129a0347539bc0 + pristine_git_object: b4d695fa1010d9b8ea0645e98b453f8eebcb5451 + docs/models/responsestextconfigresponsesformattext.md: + id: 065a39c8b65e + last_write_checksum: sha1:58151a99a97319f487bca0d70b3a29c7a2bd7ce4 + pristine_git_object: 9d6ffb9f524987c3d94488de5504c6b628ef4403 + docs/models/responsestextconfigresponsesformattextjsonschemaconfig.md: + id: 22b01aed026f + last_write_checksum: sha1:cb8ac2d0165deb6dce9418c151955fdcd294c5b6 + pristine_git_object: c0b2b264124e97fc50439eaa195ec81dc6c9b0da + docs/models/responsestextconfigverbosity.md: + id: 96f927c3799f + last_write_checksum: sha1:d1d755cf069221c16fcdbc40d165171be42b1ab7 + pristine_git_object: 616df015a3ae665e8a7f28e7beeb38b80b11ce29 + docs/models/responsestextdeltaevent.md: + id: 2520c62d6f9b + last_write_checksum: sha1:c889c197f6c91683f36fe39309013ab14efef5ce + pristine_git_object: 5284e23e6ba1e060027e5c13cb44ca7203b071cd + docs/models/responsestextdeltaeventlogprob.md: + id: 86019d3f933e + last_write_checksum: sha1:cc0430a22bbd85117b347be0512035d35f82c375 + pristine_git_object: 83584d610787260f2c3a252dd34c7b7981810674 + docs/models/responsestextdeltaeventlogprobtoplogprob.md: + id: 3c8c33f54033 + last_write_checksum: sha1:febf36c9d6cdd095c3f1a47e505010192c569672 + pristine_git_object: 2e198f930099e211953d71d67369e0cf5bdbd88d + docs/models/responsestextdoneevent.md: + id: 37d496aa8717 + last_write_checksum: sha1:f483851c032e8599a1f09a16275f053d54ea9b13 + pristine_git_object: c8340347a1ade2f28664dba9f818c1278c6e185c + docs/models/responsestextdoneeventlogprob.md: + id: 8d283b029bf4 + last_write_checksum: sha1:890d12c840aef4e52a137e2eb100a6f0cf2cf7b1 + pristine_git_object: dd01cf03338d7c142e3c78c05ee2aec34616bd30 + docs/models/responsestextdoneeventlogprobtoplogprob.md: + id: ca3fb9be3ec2 + last_write_checksum: sha1:90b7a4ff2e0597a28d8814ffd0ed70ca06e1f913 + pristine_git_object: ede46d3f7b53c26a7ee2dec2ac61eebccec46de2 + docs/models/responsestoolchoicefunction.md: + id: d6d0826ae469 + last_write_checksum: sha1:a814f563ad31a93745a2dd50065886fbf1242a1c + pristine_git_object: ab7319f7527c11328e8f85acdc7ef04d59146d69 + docs/models/responsestoolfunction.md: + id: f204705ebc7e + last_write_checksum: sha1:2632a7ef32ce9e4433287d9df0ee1187e987f246 + pristine_git_object: dccb34f33be2ca1b9bd7581b3e8845328bb9e9f4 + docs/models/responsestoolfunctionallowedcaller.md: + id: 99b4dc788f58 + last_write_checksum: sha1:19e66676881f3030c01e1c0f6ac908ed7f77e26d + pristine_git_object: ef15e18a24c24a2a0b9a3d32f816c8126171985e + docs/models/responsesusage.md: + id: 8a285d9b95fd + last_write_checksum: sha1:d218ebcc041ea8a7603a1233302cc2abee48a77e + pristine_git_object: c3fc448a560aee8403f37ee785b8ebf84f6af21a docs/models/responsev1conversationsget.md: id: 48d4a45780a9 last_write_checksum: sha1:8e75db359f0d640a27498d20c2ea6d561c318d7e @@ -4180,6 +4772,10 @@ trackedFiles: id: 46e1849bc2cb last_write_checksum: sha1:a78aff2e42ba377695d850a90a80987adfcba865 pristine_git_object: ef043e1e11dbfc81638c568c0b23b5d17477cf7c + docs/models/servicetier.md: + id: 55f1c798ada1 + last_write_checksum: sha1:b1936f88b3a4f3bb37e1f036cb08a8e8409a06a1 + pristine_git_object: 0c35cf78d961032600d842dd56788bcb221248cd docs/models/setmanagedindexsummaryv1contextsearchindexesindexnamesummaryfieldlanguageputlanguage.md: id: e46ae85d083b last_write_checksum: sha1:324dd13d69ba89b9308ab55d1e8d3f9ef9462d65 @@ -4520,6 +5116,10 @@ trackedFiles: id: 000f0770e0f9 last_write_checksum: sha1:d4f83b4d7cb9cc32239d5a4021db16012be5fd02 pristine_git_object: 8ea0a553e251491f80774d4d908ee84ad5ca43e9 + docs/models/syntax.md: + id: b5f23261fcd5 + last_write_checksum: sha1:e5cded692150dcae0d1418193a8fa8fa3d2a1d2b + pristine_git_object: 1b8107cdd59683d96c5f8c1b315081be08943e16 docs/models/systemfilter.md: id: d3e44a243b49 last_write_checksum: sha1:a47e6751800487e680386de0be5ec55a005c1c36 @@ -4908,6 +5508,10 @@ trackedFiles: id: 6398ea20f152 last_write_checksum: sha1:3ccfe5613e51fb139cb37a31f03cb3d64a8439db pristine_git_object: 5ddbf9a7ca7502b8d58df20eb28f5d8a4cc5962c + docs/models/truncation.md: + id: 075cd6c561df + last_write_checksum: sha1:f1313c40232729f3b275736c78c1f42e63d14659 + pristine_git_object: 3dc0230a4d1539de51a5db4adbcb14f33a5a54ab docs/models/turbinemeta.md: id: 1f7f944fef63 last_write_checksum: sha1:38dd2a9a68f8b938dbf6c3c43470e5986204bf08 @@ -5618,8 +6222,8 @@ trackedFiles: pristine_git_object: cb950f4bb9a3949fe3c6af4b24f921684e688794 docs/sdks/audioagents/README.md: id: cc93a1f62aa8 - last_write_checksum: sha1:cdc58d8bab6f0640410ac6bbd6ad68a4b6853ad1 - pristine_git_object: fe12aa23b87ed78c6cab6645f002029ea5c7fefd + last_write_checksum: sha1:25d4076707e67a380c98b69eba87a40311ac52b5 + pristine_git_object: 44bae8e597c46da341a70c4138ea43b3f300df7b docs/sdks/audiosessions/README.md: id: 15f4b946eb88 last_write_checksum: sha1:b0dcc61dc6269d4ae44310d10afac724ea52bd05 @@ -5722,8 +6326,8 @@ trackedFiles: pristine_git_object: da7cb5a91dd8982dea2b38e1fbc000ec233396c9 docs/sdks/managedindexes/README.md: id: 24213eb90409 - last_write_checksum: sha1:83eb016d9c0e31913e9bd88c4d51ed8e04a0525e - pristine_git_object: 40ece668cf1b86a6db8592d97a49906bb8588198 + last_write_checksum: sha1:cd58854022bb4373cbbafbbb899a6e83c49135a1 + pristine_git_object: 86c00374f68c20a26daa9a04a23ccab87af2a4a0 docs/sdks/metrics/README.md: id: a8545d964e21 last_write_checksum: sha1:826a1a941e7687218cd0670e4fdb1f7a65118464 @@ -5744,6 +6348,10 @@ trackedFiles: id: 9ecc8ee669a5 last_write_checksum: sha1:73bdf3ff4e98863534439cd1b37b455a27cf4cd7 pristine_git_object: 2d91fb004b26a78a2ae3b9c45ca002ae791ec1a4 + docs/sdks/responses/README.md: + id: e717bad14f63 + last_write_checksum: sha1:bbb28ae6474972ec1c70479ce688eef6e27e1457 + pristine_git_object: 397ab7b2c69a8c61ad45e653f7c81c5144201dec docs/sdks/schedules/README.md: id: 2f28c809a225 last_write_checksum: sha1:ed27d25b618632207500e122efa02e948d7f9b38 @@ -5826,8 +6434,8 @@ trackedFiles: pristine_git_object: 5052bb072d14c65419bf49bdc1a47500cb03ae56 src/mistralai/client/_version.py: id: cc807b30de19 - last_write_checksum: sha1:ff97bc17cf94b5e71a13ca7a5a2413961d8d01dd - pristine_git_object: 23f05ba812e76cfe2f4e9d1e6ef0483a47cb5613 + last_write_checksum: sha1:ee69c7e4fa48a355dcae3138142b12af547419cc + pristine_git_object: 27666c0e050ebdd6273c43e8c6c773185ef32e55 src/mistralai/client/accesses.py: id: 76fc53bfcf59 last_write_checksum: sha1:414c7375fcd63266d196840fa8d1274d60aae2dc @@ -5842,8 +6450,8 @@ trackedFiles: pristine_git_object: f3ce69ba7ac66727a9fe9bb7e526f14a0ed3367d src/mistralai/client/audio_agents.py: id: 51d0d033a222 - last_write_checksum: sha1:f714e3b21f2633b586b9faf2c67acce131ac2efa - pristine_git_object: 4be6199590a64fa308e3d1e7906de8a06e0b1fed + last_write_checksum: sha1:821781f7939a513d740d18c5ed71d685e2daa627 + pristine_git_object: 16a3da1ca274072e0e3f982f9c41a95a2b5535c7 src/mistralai/client/audio_sessions.py: id: bf6a566f1a89 last_write_checksum: sha1:2aa2bb989208aede1e0fa1c27f96b57d0f59edc6 @@ -5998,8 +6606,8 @@ trackedFiles: pristine_git_object: 41d7f799e8a2afa860b4193f7752e094f1c624b2 src/mistralai/client/models/__init__.py: id: e0e8dad92725 - last_write_checksum: sha1:0d17469a0c166bdaaf7680b3559ef833c77aa46c - pristine_git_object: b90801f9c199c5c0badf7a00e31614a221632b33 + last_write_checksum: sha1:5ed9fa555fef2f9d62f14e1498d40cf9ccf6ebfc + pristine_git_object: 67090a69a82505390159fc39af19be1cf24609ef src/mistralai/client/models/accepteddocumentresponse.py: id: f529b784daff last_write_checksum: sha1:2eb3c7dc0d7165987aefda841b1ceada6698c15d @@ -6234,8 +6842,8 @@ trackedFiles: pristine_git_object: 80959faf45e78e41dd2a097c2d0c8d1b675c8469 src/mistralai/client/models/audioagentcreaterequest.py: id: 94f9e5d0a948 - last_write_checksum: sha1:77886a991069d78460975a6ca7d5e959d85f8ac2 - pristine_git_object: 282146b8ef8e1c438ba70169b2032576df1d0704 + last_write_checksum: sha1:e47b5f81187cf724f83ccba7e962e8bf3187aad0 + pristine_git_object: 20fd5ab912bbd96e48a8845128230f1bbdd01865 src/mistralai/client/models/audioagentlistpage.py: id: 7c04e2e3c717 last_write_checksum: sha1:bff7d55d7df5aec1853f2da9a969f09d33a0993f @@ -6346,8 +6954,8 @@ trackedFiles: pristine_git_object: 4d257ce66b0cd7be46df2bf3ab4541f1c2af00ff src/mistralai/client/models/audiottsconfig.py: id: 50e13d2df4fd - last_write_checksum: sha1:b3b4f403e08fe2978ef531df4092f7c5ed147370 - pristine_git_object: 66701ec6550ad82539b190790cb45d3d9f328164 + last_write_checksum: sha1:466caa54ef5ca26fd6688c311ac9310bda636c59 + pristine_git_object: 1038ddc6af749fcfc8bb5f1389c51d015fb85a13 src/mistralai/client/models/audioturnconfig.py: id: abb464aaa77e last_write_checksum: sha1:5edbb5a21a0fa477cbafd04f281e3577a532708b @@ -6780,6 +7388,14 @@ trackedFiles: id: 6685e3b50b50 last_write_checksum: sha1:6889ada77c34d3e813dce0a0890c3615b7ce9da6 pristine_git_object: a933d13120d5f6b69200deeea103307fb70ae681 + src/mistralai/client/models/countresponseinputtokensrequest.py: + id: b1b31f639ec5 + last_write_checksum: sha1:b6179cfb045d6c0d0ee7d29df25c43bb376491b3 + pristine_git_object: 6fd6c937fce1c1916bec816650bd0852d0e66b03 + src/mistralai/client/models/countresponseinputtokensresponse.py: + id: 3fce32611172 + last_write_checksum: sha1:69c673c8b0a9c09725e553e09b703c84713326a5 + pristine_git_object: 1d4931a57d88cced3024e1d587a4da9d8f7c42ea src/mistralai/client/models/create_client_session_v1_client_sessions_postop.py: id: 6faae4a19392 last_write_checksum: sha1:b8cc5e230543063f49cb9c8097a7223fc45e29d0 @@ -6792,6 +7408,10 @@ trackedFiles: id: 992fa61cb760 last_write_checksum: sha1:f683766e5961cf0008d8d2250c6ad5ed8caa0f1f pristine_git_object: 6fc52a79049ca2d595f1cfc102340dca272cbdd2 + src/mistralai/client/models/create_response_v1_responses_postop.py: + id: e4948a66cc0b + last_write_checksum: sha1:31cf4a68e393c871d9d4019865a4e7dd8df87764 + pristine_git_object: 50b8eb0a2a97d5b68e9b736d05f7a8e89ec21ed1 src/mistralai/client/models/createagentrequest.py: id: 442629bd914b last_write_checksum: sha1:5e338fed7de77b4b43859cb2dde038695c2d217f @@ -6860,6 +7480,14 @@ trackedFiles: id: 9183c3301002 last_write_checksum: sha1:c2623ac1fbf5a099f3e2fcdf1d10b4e204726bdd pristine_git_object: 3eb05f2e539531a61bf699b0206794192d5c548a + src/mistralai/client/models/createresponserequest.py: + id: 33db5f551761 + last_write_checksum: sha1:3898c621a3e2659d1cd66d9c981ecc986af7644e + pristine_git_object: 6b41ab15ea62d82a45d6c8aebe966e2d9e77e4c0 + src/mistralai/client/models/createresponseresponse.py: + id: 051afdc07f90 + last_write_checksum: sha1:cc78d8e22deb9aeb15a616ff104d8e8c48063464 + pristine_git_object: b9b509e10935a5616d5b2aa41f98c491bfb5fbb3 src/mistralai/client/models/createserviceaccountrequest.py: id: fb57eff2a21c last_write_checksum: sha1:8bc137060b0b87447ac7eb2aad0698147dbe6c05 @@ -7930,8 +8558,8 @@ trackedFiles: pristine_git_object: 8f1d21b9411676ec90913a213a36b60b2ef66fbe src/mistralai/client/models/ipaphoneme.py: id: f0a0ede454b1 - last_write_checksum: sha1:ecc90ff1e32c815de5de98e79d08a8bb386def49 - pristine_git_object: 368037138538c4c453e716445861af3eeaa91a52 + last_write_checksum: sha1:a7e5d5da58874bcc1cc116867c564c823aed6203 + pristine_git_object: 419cdf58e53e3181493acb4e559692d6f1ed387c src/mistralai/client/models/jobs_api_routes_batch_cancel_batch_jobop.py: id: b56cb6c17c95 last_write_checksum: sha1:e5e2c422bb211bb4af3e8c1a4b48e491d0fdf5a4 @@ -8054,8 +8682,8 @@ trackedFiles: pristine_git_object: 9c1a2b29c5a3a4c40b1db545567c47d4e7f0daa5 src/mistralai/client/models/keywordretriever.py: id: 2512f4df7d0f - last_write_checksum: sha1:901267858b32a83f62f1042c5299ca3bebc9261d - pristine_git_object: 6b6711064f5bdf7beec24b7e5d550a486a91e8a9 + last_write_checksum: sha1:e2b091ac246ba7388de28e8bc68ed370660fa1fb + pristine_git_object: bf04279a6ac2fe0a1460e22b1ac37c651f9f3359 src/mistralai/client/models/libraries_delete_v1op.py: id: b2e8bbd19baa last_write_checksum: sha1:566db1febc40c73476af31a27201a208b64bc32a @@ -8670,8 +9298,8 @@ trackedFiles: pristine_git_object: 098b361063e88f8ecff1ee5fb57f8759f3af6939 src/mistralai/client/models/ocrtableobject.py: id: d74dd0d2ddac - last_write_checksum: sha1:4e4fbd94bdceb877cd4e5018c1cf09ae92aea750 - pristine_git_object: 28ede149de09521f9e4e6f8a655cc4060a7b0631 + last_write_checksum: sha1:d2d86ca50ce0032d22f26645cb5c176116389491 + pristine_git_object: f6c42852b6db62b85d1ad9241bd8a1a7322f0160 src/mistralai/client/models/ocrtextblock.py: id: d329f1be53f7 last_write_checksum: sha1:f354cce3f61b9d80122494dc10df08c4c7c9e6b9 @@ -8954,8 +9582,8 @@ trackedFiles: pristine_git_object: 351b143bdb518dd4f7d69135bd72757b71a321ff src/mistralai/client/models/publicauthenticationmethod.py: id: 545ab7f24523 - last_write_checksum: sha1:807d319155daee31d2fd8df6800303c3a1d3524e - pristine_git_object: 7bf2a9e57f3315dd434ac7f87026bd3cbd0c0bb4 + last_write_checksum: sha1:4c339453e4492e00587bbe8508827a0e2c99eb77 + pristine_git_object: 17897d11e082d71c520172daec5f4d842dc7dbf5 src/mistralai/client/models/publicresourcevisibility.py: id: a11aef93fd11 last_write_checksum: sha1:aa519329b00c5b53789ee5d855b2cd6fe9b342d8 @@ -9124,10 +9752,222 @@ trackedFiles: id: c4462a05fb08 last_write_checksum: sha1:863c7ec4c567d8f0c4e6305b47896424726e71be pristine_git_object: b98cd0984a31bb9aaeaacb5c717776ac06819e8b + src/mistralai/client/models/responsesannotationcontainerfilecitation.py: + id: aee13a8cd518 + last_write_checksum: sha1:bf7541f57dda268f5348ff84f367d9765e636650 + pristine_git_object: 39d6de7c3b57453dc9d5d2a41f33636b52c98373 + src/mistralai/client/models/responsesannotationfilecitation.py: + id: fcd6a147159a + last_write_checksum: sha1:99680e0873b2b04caed7d69d1377c679034ce3d4 + pristine_git_object: 4845f641820654fea8f9ac7bcb461cafa702c5dc + src/mistralai/client/models/responsesannotationfilepath.py: + id: ff64786550b2 + last_write_checksum: sha1:4bb8e1859d37e0d652e4746ec22bcfa3d54bb6da + pristine_git_object: ab2ffd9d75cd16da9cca00b4a673ac491628696b + src/mistralai/client/models/responsesannotationurlcitation.py: + id: f6aa82338f50 + last_write_checksum: sha1:b1fcfd894f0592407398b4db22993c590449fcb6 + pristine_git_object: 2d5b769236ca183334b88f4218169ddd304ca11a + src/mistralai/client/models/responsescompletedevent.py: + id: 4e362bd019f6 + last_write_checksum: sha1:de8f0ed1a388479436ad6f1ab55551e383a55d6a + pristine_git_object: aebff22434443076b9b00f9c74d5524e8b26aeff + src/mistralai/client/models/responsescontent.py: + id: 6af0c7a040d8 + last_write_checksum: sha1:5c1d6678283374fbbef4eed0927c060d253315e0 + pristine_git_object: 664c59da0dffeaeaa16ecb3ffffab37fe87031b2 + src/mistralai/client/models/responsescontentpartaddedevent.py: + id: 3696e85af267 + last_write_checksum: sha1:96ad1e654bd6b9de0915e68b9e030fc6f2b51aad + pristine_git_object: 1927dff7796476b789bd64b08edc0c7e9b029518 + src/mistralai/client/models/responsescontentpartdoneevent.py: + id: e0d2f514869f + last_write_checksum: sha1:103bd877041e0952139c79c50489f59169156430 + pristine_git_object: b1511a9478e559b53c8a183fc91d8d2e7279f2df + src/mistralai/client/models/responsescreatedevent.py: + id: 1fb856ff219d + last_write_checksum: sha1:b814048b11368d41afd8ff30da9abc362e05ca64 + pristine_git_object: 5c02bba1d4b9c621722d225cc7a22e89461ad02c + src/mistralai/client/models/responsescustomtool.py: + id: 2f783ce43e41 + last_write_checksum: sha1:b65b3997427ee2e1d7b2222ba13beeec30c333cc + pristine_git_object: c7d7aa47cfdb983f4d3d3f003a788ad0f59204a5 + src/mistralai/client/models/responseseasyinputmessage.py: + id: cfc08d6792c5 + last_write_checksum: sha1:80f348c682c0c7081774a1fc70026575d51a6d62 + pristine_git_object: e3557f636c32e8ed93a909f67725910b1a635d44 + src/mistralai/client/models/responseserrorevent.py: + id: e66df46e4172 + last_write_checksum: sha1:56d35b0a3c1152cdd0813f86eb99e84507073772 + pristine_git_object: 2ef69d7d20f10035334cfce498b27d8ec9e127d3 + src/mistralai/client/models/responsesfailedevent.py: + id: eabce7f16d32 + last_write_checksum: sha1:2454bcdb2f71e07ecb5df080a9dbc9546845170c + pristine_git_object: 4fd5454dc821ddcf899e6c2a77fe2f1aeb8454f8 + src/mistralai/client/models/responsesfunctioncallargumentsdeltaevent.py: + id: 523e120c018f + last_write_checksum: sha1:4381002d5f0e3644fb1f558fe22ee8362cc7f8e5 + pristine_git_object: 3d272ef9f22482439ef8083f557bbcbefdcb4f36 + src/mistralai/client/models/responsesfunctioncallargumentsdoneevent.py: + id: 66a716828f92 + last_write_checksum: sha1:997faea071cfa3dc17f7551324505b822b74af08 + pristine_git_object: 352f938d7cf122bc002cdf66854fc36a294b58ea + src/mistralai/client/models/responsesfunctioncalloutput.py: + id: "7074567864e0" + last_write_checksum: sha1:91e4dd89009282a99b6600a05a32d8caf9659507 + pristine_git_object: bb75de029d6706d8d79e29c6cd353d5251fc5cac + src/mistralai/client/models/responsesfunctioncalloutputcallerdirect.py: + id: 3e0c7d7f9763 + last_write_checksum: sha1:e32c73c573574b015f943e9bbb71dba146e002c6 + pristine_git_object: 5fa650ab3b58bf7df242ba14e83e4096eafaf067 + src/mistralai/client/models/responsesfunctioncalloutputcallerprogram.py: + id: 24520192ed18 + last_write_checksum: sha1:a929f2a8ef603eeb83c0bef01dd10d5ca0ea65a2 + pristine_git_object: 2bb4af158dd201d165ddd4a5df9df56d543d0e23 + src/mistralai/client/models/responsesfunctiontool.py: + id: bebfb545b8cd + last_write_checksum: sha1:073888b20cfb49583ccb0dad1e65a2d5f318dd9a + pristine_git_object: 2d29e2a69479b120f96b11d4d8458bc502a9a144 + src/mistralai/client/models/responsesfunctiontoolcall.py: + id: 9ec446cc1e72 + last_write_checksum: sha1:1dfcf4fed31bbcf71b247ca2f53c18ef1af183f1 + pristine_git_object: c72582e60f73c2aed943a42ac0ea3c4d214bd206 + src/mistralai/client/models/responsesincompleteevent.py: + id: 111becf70f98 + last_write_checksum: sha1:2de08093430c12e3e47607f2137038391f9cf2f4 + pristine_git_object: 92e4073683e88bd1ac2e7873648ce4a6fa9695ca + src/mistralai/client/models/responsesinprogressevent.py: + id: a1646ce75932 + last_write_checksum: sha1:351e80efe02a92800171ae6aee62133dfb0819bc + pristine_git_object: 6efb7d18a16ed8ee7846ab392f130e3e9e14760c + src/mistralai/client/models/responsesinputfile.py: + id: 14df1858242b + last_write_checksum: sha1:7f5e0eea736c3a35184e5c124793a14c02c532c6 + pristine_git_object: e6e0b4dd577459577cf73e658eecbf244d9d609c + src/mistralai/client/models/responsesinputfilecontent.py: + id: 3566f041f0a2 + last_write_checksum: sha1:bd57694bb1865ede65c9c781f19cfb4b92fcf0f2 + pristine_git_object: 9c8ff673002105117dae8fc514fca406d0bf404f + src/mistralai/client/models/responsesinputimage.py: + id: a295a04110ae + last_write_checksum: sha1:28a0d2d921045df6d09968d6e1afe6c23debb028 + pristine_git_object: ecf070c7bad4331e0f03b949994098955f7665ef + src/mistralai/client/models/responsesinputimagecontent.py: + id: 2982538cb32e + last_write_checksum: sha1:b0af6afb43e8314c7f77ea6d3a9a8f83fac6261e + pristine_git_object: 23109a67dbfbb1750044c3f003fedad3046470be + src/mistralai/client/models/responsesinputtext.py: + id: 3e5dddaf31e5 + last_write_checksum: sha1:55fe2d0f726cd5f4b1bcb614c97729ca7c518706 + pristine_git_object: 478be8018c5b7cda9ee0918cc74f748b18a06ba2 + src/mistralai/client/models/responsesinputtextcontent.py: + id: a32deda3dfce + last_write_checksum: sha1:990b58f6b54f79cc9c2666f038da3ea8f8d5ce42 + pristine_git_object: d85a064d6e7a32926b2c10a2d09529d565b520c4 + src/mistralai/client/models/responsesinputtokensdetails.py: + id: 24b256668bdb + last_write_checksum: sha1:d8a316edcdc26b79057e92ed0cd25d162b419286 + pristine_git_object: 2575297270dd5f16dd83f466f485ed35f521ac68 + src/mistralai/client/models/responsesmessage.py: + id: eaa5c3a67ebf + last_write_checksum: sha1:7e825ebe29b77883d5047bb40bad12525bd147d5 + pristine_git_object: c49d7b993894c813cd3c11def79dcf4840cc26e9 + src/mistralai/client/models/responsesnamespacetool.py: + id: 9fc8f7db573e + last_write_checksum: sha1:dcaf7320c1d4b6b5f51b1ae41a9e861e69ba902a + pristine_git_object: bd669ba68ac1ad8c77d8d8b20e09fca051e97053 + src/mistralai/client/models/responsesoutputitemaddedevent.py: + id: 2af702a12362 + last_write_checksum: sha1:2e29b70828b6beacce196b733f28be0ca2705a09 + pristine_git_object: cc215740c676159b326547f9a603de6c5c87eccc + src/mistralai/client/models/responsesoutputitemdoneevent.py: + id: e4008b18aa82 + last_write_checksum: sha1:afcb03a0914ebf91066ebd08b6525330b86ad450 + pristine_git_object: f510193f9d6e40a4d1ead1d3d64c1aea7ad90bf3 + src/mistralai/client/models/responsesoutputmessage.py: + id: 7fd5017fc00a + last_write_checksum: sha1:5080804af952e379d4fedfcb756b1409a61611c9 + pristine_git_object: 4eb372a153fe8b6ca8b5c1b87b1f8fff9a7943f0 + src/mistralai/client/models/responsesoutputrefusal.py: + id: 04cf05939ca6 + last_write_checksum: sha1:51103b57a6056e147ab30a439a03064dee356f07 + pristine_git_object: ca1e3d9b358ab477397d62fbe25f618c1d3870dd + src/mistralai/client/models/responsesoutputtext.py: + id: 6a2b48848b81 + last_write_checksum: sha1:e7b4f56d1f7d56bd1d7ef07cc7559c1df8a18379 + pristine_git_object: 4d6c9569cbd26ccfe9f93c7451218bf9df213bf5 + src/mistralai/client/models/responsesoutputtextlogprob.py: + id: faacfe38b5c8 + last_write_checksum: sha1:2937a61ecc72771b98bdce50d5198fd4ad1d5e79 + pristine_git_object: 64b733a2153630510d52f3bb5cda3d5f2365603b + src/mistralai/client/models/responsesoutputtextlogprobtoplogprob.py: + id: 48180526f7ac + last_write_checksum: sha1:2861d4c1b9ed168e34da1a827020c1635607c221 + pristine_git_object: 48179e896243b0a9c62cbcc30638dd871436c074 + src/mistralai/client/models/responsesoutputtokensdetails.py: + id: 7cc7ebfe0b09 + last_write_checksum: sha1:5127a7fc305eb4930bd41008c414be451fd70edc + pristine_git_object: 0c4ba65596bd6a2bdb83582c38b7ff553d9ff5ba + src/mistralai/client/models/responsespartreasoningtext.py: + id: 6dacb5c6f824 + last_write_checksum: sha1:28de2a8be1aa2f5a04043fe11764a504a072bbbd + pristine_git_object: b70f9864e7a35a601316429808350b1b95d3b1a6 + src/mistralai/client/models/responsesreasoningitem.py: + id: 7eec53f7880b + last_write_checksum: sha1:8fa907f06ecd6a5c2e6e8324c656273bbe3d262b + pristine_git_object: da8d3ef29883892f911d8628fb8eac5fd3ef104b + src/mistralai/client/models/responsesreasoningtextdeltaevent.py: + id: bcff65d6c3a0 + last_write_checksum: sha1:b0c748f0d397b2980c973d0003fae1bfe4782f1d + pristine_git_object: e99c912178edaf7511cad011c6eeb0f981f5500a + src/mistralai/client/models/responsesreasoningtextdoneevent.py: + id: 6f06af429151 + last_write_checksum: sha1:3152c3c59242224cd2a8992834bc4f31a1a98542 + pristine_git_object: 34ab9a409155fdb2320ce8fae2e1661e0d37150f + src/mistralai/client/models/responsesstreamframe.py: + id: aa9dd1831c10 + last_write_checksum: sha1:05b775f69a769882a1c91c2b3799552203610d9c + pristine_git_object: 452d54dafe95e65c45ae107c531b85e8d25b317e + src/mistralai/client/models/responsessummary.py: + id: da5d41517328 + last_write_checksum: sha1:beb33095d5df376292d61ce01f4cf55aa4676727 + pristine_git_object: aad3da7f28c3b4ed3dede0a9e02a1643d3a61160 src/mistralai/client/models/responsestartedevent.py: id: 24f54ee8b0f2 last_write_checksum: sha1:20e5f34b3e10f5ddd56547a0ad7750b87f90464d pristine_git_object: a8e5ac60cf49aa717338b96f929d82083a1e3a8a + src/mistralai/client/models/responsestextdeltaevent.py: + id: b8d1e34a71f1 + last_write_checksum: sha1:d10b8d671f1489712be33ed2b3375baa0345c750 + pristine_git_object: 5ac9761fe47cb951afb7608914afe8ea93ff7882 + src/mistralai/client/models/responsestextdeltaeventlogprob.py: + id: 01c638bb253d + last_write_checksum: sha1:2c2e02c41b1aa02beedf692be38388cb15cca8f3 + pristine_git_object: 6950258b4117837d2cdcaefed1217a61bf6b46ee + src/mistralai/client/models/responsestextdeltaeventlogprobtoplogprob.py: + id: e959428df610 + last_write_checksum: sha1:1ac7f6339ad53cefe19ef4f1340a15fa5ce052e4 + pristine_git_object: 877662d53052028c62fd4aaeb56b7c7d21345af3 + src/mistralai/client/models/responsestextdoneevent.py: + id: 4058285bffa8 + last_write_checksum: sha1:8f6b07944b03f1e4e6fc9a65432610df7ebda155 + pristine_git_object: 7ecab7e7e7ec9fb7abf209c26b434b414dd9e1c4 + src/mistralai/client/models/responsestextdoneeventlogprob.py: + id: 0a6a03fcdd76 + last_write_checksum: sha1:f6278dba8190abc2ca8215f0324ece4b3ce462e6 + pristine_git_object: 3749de6c9dc1cbd6b0b70ab73e8e3367baf4b8a1 + src/mistralai/client/models/responsestextdoneeventlogprobtoplogprob.py: + id: 1e851c7dd5f3 + last_write_checksum: sha1:e07d1a772986b19e5b5465c35bd50d109373af70 + pristine_git_object: 76e0ef8e7453f3d5b5019d39328257291463fbfb + src/mistralai/client/models/responsestoolchoicefunction.py: + id: 9e1681cc0fb6 + last_write_checksum: sha1:f48d15bc2dbd7959725da6268f56eff56546f03e + pristine_git_object: efede3a7f96807b22affa2eccd8ba33f166b3f1e + src/mistralai/client/models/responsestoolfunction.py: + id: 2861e6d7e10e + last_write_checksum: sha1:4c9a0fbbb84810c11268dcb75feb5aa18a932e10 + pristine_git_object: 5a4125e0b0c14f3f74b9366c176055d0938c7750 src/mistralai/client/models/restart_deployment_v1_workflows_deployments_name_restart_postop.py: id: a24431d44971 last_write_checksum: sha1:633a4b28567e7205d75b841a8503f01a86ed3032 @@ -10536,14 +11376,18 @@ trackedFiles: id: c7d2f50ccd96 last_write_checksum: sha1:5f57d6e98bcb1146d8bc39962354a2a18bd0243d pristine_git_object: 86590cfc75df6b6a11740d9b5838210dc24c3862 + src/mistralai/client/responses.py: + id: f13063987d29 + last_write_checksum: sha1:e82eb824722b223249a382a8cfd1517a653cd0d3 + pristine_git_object: f3bbe0f3711461745776e199dc8dd6b999b221f5 src/mistralai/client/schedules.py: id: d3b4fe452390 last_write_checksum: sha1:51fa9f8828bfb1e06bf72a0fc403b9ee9e226be8 pristine_git_object: d162c754cf8d8a5ffb6afc4510dad6c243d9c3c9 src/mistralai/client/sdk.py: id: 48edbcb38d7e - last_write_checksum: sha1:6372600d8a80971c1d8a474659dc7b3254c8c6bf - pristine_git_object: 01d27d12020ef478e07e5ca0c413d48ae925f96e + last_write_checksum: sha1:ebc08a75cd9d43fe71949f97cb6e963b00a694a1 + pristine_git_object: 92b83fa683514eac53868f200009dd5f82e7a2aa src/mistralai/client/sdkconfiguration.py: id: b7dd68a0235e last_write_checksum: sha1:48e972ef8320f040615c204729cecbbabb28e1b0 @@ -14899,7 +15743,7 @@ examples: create_agent_v1_audio_agents_post: speakeasy-default-create-agent-v1-audio-agents-post: requestBody: - application/json: {"name": ""} + application/json: {"name": "", "configuration": {}} responses: "200": application/json: {"id": "bf05177f-3012-45fa-b40e-875454db1b3c", "owner_id": "", "created_at": "2026-09-05T04:20:05.296Z", "updated_at": "2026-05-03T14:46:57.904Z"} @@ -15038,7 +15882,7 @@ examples: path: index_name: "" requestBody: - application/json: {"retriever": {"top_k": 20, "type": "rrf", "retrievers": [{"top_k": 20, "type": "keyword", "query": ""}], "rank_constant": 60}} + application/json: {"retriever": {"top_k": 20, "type": "rrf", "retrievers": [{"top_k": 20, "type": "keyword", "query": "", "operator": "or"}], "rank_constant": 60}} responses: "200": application/json: {"hits": []} @@ -15126,9 +15970,23 @@ examples: application/json: "" "422": application/json: {} + create_response_v1_responses_post: + speakeasy-default-create-response-v1-responses-post: + requestBody: + application/json: {"model": "V90", "input": [], "parallel_tool_calls": true, "truncation": "disabled", "background": false, "stream": false, "store": false, "top_logprobs": 0} + responses: + "200": + application/json: {"id": "", "created_at": 8425.94, "instructions": null, "model": "Challenger", "object": "response", "output": [{"id": "", "content": [{"annotations": [{"file_id": "", "index": 48310, "type": "file_path"}], "text": "", "type": "output_text"}], "role": "assistant", "status": "completed", "type": "message", "phase": null}], "parallel_tool_calls": false, "temperature": null, "tool_choice": "required", "tools": [], "top_p": null, "background": null, "completed_at": null, "max_output_tokens": null, "max_tool_calls": null, "previous_response_id": null, "prompt_cache_key": null, "prompt_cache_retention": null, "safety_identifier": null, "service_tier": null, "status": null, "top_logprobs": null, "truncation": null, "user": null} + count_input_tokens_v1_responses_input_tokens_post: + speakeasy-default-count-input-tokens-v1-responses-input-tokens-post: + requestBody: + application/json: {"model": "Corvette", "input": "", "parallel_tool_calls": true, "truncation": "disabled"} + responses: + "200": + application/json: {"input_tokens": 363814, "object": "response.input_tokens"} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Python SDK Changes:\n* `mistral.chat.complete()`: \n * `request` **Changed** (Breaking ⚠️)\n * `response.choices[].message.tool_calls[].type` **Changed** (Breaking ⚠️)\n* `mistral.fim.complete()`: `response.choices[].message.tool_calls[].type` **Changed** (Breaking ⚠️)\n* `mistral.beta.libraries.accesses.update_or_create()`: \n * `request.share_with_type.enum(org)` **Removed** (Breaking ⚠️)\n* `mistral.beta.libraries.accesses.delete()`: \n * `request.share_with_type.enum(org)` **Removed** (Breaking ⚠️)\n* `mistral.beta.connectors.create()`: `response` **Changed** (Breaking ⚠️)\n* `mistral.beta.connectors.list()`: `response.items[]` **Changed** (Breaking ⚠️)\n* `mistral.beta.connectors.get()`: `response` **Changed** (Breaking ⚠️)\n* `mistral.beta.connectors.update()`: `response` **Changed** (Breaking ⚠️)\n* `mistral.audio.agents.list_versions()`: `response.data[].configuration.tts` **Changed** (Breaking ⚠️)\n* `mistral.agents.complete()`: \n * `request` **Changed** (Breaking ⚠️)\n * `response.choices[].message.tool_calls[].type` **Changed** (Breaking ⚠️)\n* `mistral.audio.agents.update()`: \n * `request.configuration.tts` **Changed** (Breaking ⚠️)\n * `response.configuration.tts` **Changed** (Breaking ⚠️)\n* `mistral.audio.agents.get()`: `response.configuration.tts` **Changed** (Breaking ⚠️)\n* `mistral.audio.agents.create()`: \n * `request.configuration.tts` **Changed** (Breaking ⚠️)\n * `response.configuration.tts` **Changed** (Breaking ⚠️)\n* `mistral.classifiers.moderate_chat()`: \n * `request.inputs.union(Array<>)[].union(assistant).tool_calls[].type` **Changed** (Breaking ⚠️)\n* `mistral.classifiers.classify_chat()`: \n * `request.input.union(InstructRequest).messages[].union(assistant).tool_calls[].type` **Changed** (Breaking ⚠️)\n* `mistral.audio.agents.list()`: `response.data[].configuration.tts` **Changed** (Breaking ⚠️)\n* `mistral.audio.sessions.create()`: `request.tts` **Changed** (Breaking ⚠️)\n* `mistral.audio.transcriptions.complete()`: `request.speaker_references` **Added**\n* `mistral.models.retrieve()`: `response.union(base)` **Changed**\n* `mistral.beta.rag.managed_indexes.get_index_summary()`: **Added**\n* `mistral.beta.rag.managed_indexes.set_index_summary()`: **Added**\n* `mistral.models.list()`: `response.data[].union(base)` **Changed**\n" +releaseNotes: "## Python SDK Changes:\n* `mistral.audio.agents.create()`: \n * `request.configuration` **Changed** (Breaking ⚠️)\n * `response.configuration.tts.expressiveness` **Added**\n* `mistral.beta.connectors.get_authentication_methods()`: `response.[].has_default_credentials` **Changed**\n* `mistral.beta.connectors.list()`: `response.items[].union(mcp).supported_auth_methods[].has_default_credentials` **Changed**\n* `mistral.responses.count_input_tokens()`: **Added**\n* `mistral.beta.connectors.get()`: `response.union(mcp).supported_auth_methods[].has_default_credentials` **Changed**\n* `mistral.beta.connectors.update()`: `response.union(mcp).supported_auth_methods[].has_default_credentials` **Changed**\n* `mistral.beta.rag.managed_indexes.search()`: \n * `request.retriever.union(rrf).retrievers[].union(keyword).operator` **Added**\n* `mistral.audio.sessions.create()`: \n * `request.tts.expressiveness` **Added**\n* `mistral.audio.agents.list()`: `response.data[].configuration.tts.expressiveness` **Added**\n* `mistral.beta.connectors.create()`: `response.union(mcp).supported_auth_methods[].has_default_credentials` **Changed**\n* `mistral.audio.agents.get()`: `response.configuration.tts.expressiveness` **Added**\n* `mistral.audio.agents.update()`: \n * `request.configuration.tts.expressiveness` **Added**\n * `response.configuration.tts.expressiveness` **Added**\n* `mistral.audio.agents.list_versions()`: `response.data[].configuration.tts.expressiveness` **Added**\n" generatedFiles: - .gitattributes - .vscode/settings.json diff --git a/.speakeasy/gen.yaml b/.speakeasy/gen.yaml index 77fdaa045..01dcfc886 100644 --- a/.speakeasy/gen.yaml +++ b/.speakeasy/gen.yaml @@ -32,7 +32,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false python: - version: 3.3.0 + version: 3.4.0 additionalDependencies: dev: pytest: ^8.2.2 diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index bc1643743..52d4d1f15 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -16,8 +16,8 @@ sources: - speakeasy-mistralai-gcp-sdk-26292830187-1 mistral-openapi: sourceNamespace: mistral-openapi - sourceRevisionDigest: sha256:737a06c43b796b229aef805b4ed327462a1a4138338150f67c7850f29f4af2fa - sourceBlobDigest: sha256:8d3f6691a81272f7b3de1464ba815f35bf3bf4b8040c896c253ef1fb7438ab70 + sourceRevisionDigest: sha256:cc03b93412f5e7072bea736360fce0720b21e706fb88f56bd3aa9e29ea24a0e2 + sourceBlobDigest: sha256:369553bf2c9a9e8df35362fdc5a6e98a13289d81526308b8fb81329d3ed5969f tags: - latest - 1.0.0 @@ -39,10 +39,10 @@ targets: mistralai-sdk: source: mistral-openapi sourceNamespace: mistral-openapi - sourceRevisionDigest: sha256:737a06c43b796b229aef805b4ed327462a1a4138338150f67c7850f29f4af2fa - sourceBlobDigest: sha256:8d3f6691a81272f7b3de1464ba815f35bf3bf4b8040c896c253ef1fb7438ab70 + sourceRevisionDigest: sha256:cc03b93412f5e7072bea736360fce0720b21e706fb88f56bd3aa9e29ea24a0e2 + sourceBlobDigest: sha256:369553bf2c9a9e8df35362fdc5a6e98a13289d81526308b8fb81329d3ed5969f codeSamplesNamespace: mistral-openapi-python-code-samples - codeSamplesRevisionDigest: sha256:31edb14c43e740b30ffa7b8cba090f5469526b63e94ffac9a6b60e1375319557 + codeSamplesRevisionDigest: sha256:13425153af07d2dc140f58a1ffb6ff82ccfac8efb15bfb2496771139113844f2 workflow: workflowVersion: 1.0.0 speakeasyVersion: 1.796.4 diff --git a/MIGRATION.md b/MIGRATION.md index 629163254..099839d1a 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -23,21 +23,6 @@ The SDK depends on `httpx2` instead of `httpx`, and the `agents` extra on `mcp>= - `mistral.beta.connectors.http_client()` returns an `httpx2.AsyncClient`. - MCP results use MCP 2.2 field names, e.g. `structured_content` instead of `structuredContent`. -## Service-Account Authentication - -`Mistral()` reads a service-account token from the file at `MISTRAL_SA_TOKEN_PATH` when one is configured. Credentials resolve in this order: - -1. An `Authorization` header you set yourself, through `http_headers` or per request -2. An explicit `api_key` or `security` passed to the client -3. The token file at `MISTRAL_SA_TOKEN_PATH` -4. `MISTRAL_API_KEY` - -Set both `MISTRAL_SA_TOKEN_PATH` and `MISTRAL_API_KEY` and the token file wins, so an environment carrying both authenticates as the service account where v2 used the API key. - -The file is re-read on every request so rotation is picked up without a restart. If `MISTRAL_SA_TOKEN_PATH` is set but the file is missing, unreadable or empty, every request that would otherwise use the token file or `MISTRAL_API_KEY` raises `ServiceAccountTokenError`, with no fallback; unset the variable rather than leaving it pointing at a path that does not exist. An explicit `api_key` or `security` short-circuits the lookup, so it is unaffected. - -The token is sent to whatever `server_url` the client is configured with. `MistralAzure` and `MistralGCP` do not read it. - ## Chat and Agents Completions `chat.complete`, `chat.stream`, `agents.complete` and `agents.stream` no longer accept the `web_search`, `web_search_premium` and `code_interpreter` tools. Use them through the Conversations API (`beta.conversations`) or an agent created with `beta.agents.create`, where `WebSearchTool`, `WebSearchPremiumTool` and `CodeInterpreterTool` remain available. diff --git a/README-PYPI.md b/README-PYPI.md index 3458c4eda..16d007d8f 100644 --- a/README-PYPI.md +++ b/README-PYPI.md @@ -1,12 +1,8 @@ # Mistral Python Client -## New: Voice Agents +## Migrating from v1 -Build live voice agents with the SDK. `client.audio.sessions.init()` opens a real-time, bidirectional voice session with speech-to-text, text-to-speech and tool calls, and `client.audio.agents` saves agent configurations to reuse across sessions. Install the extra with `pip install "mistralai[voice-agents]"`, then see [Voice Agents](#voice-agents) below and the [voice agents guide](https://github.com/mistralai/client-python/blob/main/src/mistralai/extra/voice_agents/README.md). - -## Migrating to v3 - -This is v3 of the SDK. If you are upgrading from v2, check the [migration guide](https://github.com/mistralai/client-python/blob/main/MIGRATION.md) for the breaking changes and how to update your code. It also covers upgrading from v1 to v2. +If you are upgrading from v1 to v2, check the [migration guide](https://github.com/mistralai/client-python/blob/main/MIGRATION.md) for details on breaking changes and how to update your code. ## API Key Setup @@ -44,8 +40,7 @@ Mistral AI API: Our Chat Completion and Embeddings APIs specification. Create yo ## Table of Contents * [Mistral Python Client](#mistral-python-client) - * [New: Voice Agents](#new-voice-agents) - * [Migrating to v3](#migrating-to-v3) + * [Migrating from v1](#migrating-from-v1) * [API Key Setup](#api-key-setup) * [SDK Installation](#sdk-installation) * [SDK Example Usage](#sdk-example-usage) @@ -847,6 +842,11 @@ print(res.choices[0].message.content) * [create](https://github.com/mistralai/client-python/blob/main/docs/sdks/realtimesessions/README.md#create) - Create Client Session +### [Responses](https://github.com/mistralai/client-python/blob/main/docs/sdks/responses/README.md) + +* [create](https://github.com/mistralai/client-python/blob/main/docs/sdks/responses/README.md#create) - Create Response +* [count_input_tokens](https://github.com/mistralai/client-python/blob/main/docs/sdks/responses/README.md#count_input_tokens) - Count Input Tokens + ### [Workflows](https://github.com/mistralai/client-python/blob/main/docs/sdks/workflows/README.md) * [get_workflows](https://github.com/mistralai/client-python/blob/main/docs/sdks/workflows/README.md#get_workflows) - Get Workflows @@ -1171,8 +1171,8 @@ with Mistral( **Inherit from [`MistralError`](https://github.com/mistralai/client-python/blob/main/src/mistralai/client/errors/mistralerror.py)**: -* [`HTTPValidationError`](https://github.com/mistralai/client-python/blob/main/src/mistralai/client/errors/httpvalidationerror.py): Validation Error. Status code `422`. Applicable to 178 of 288 methods.* -* [`ObservabilityError`](https://github.com/mistralai/client-python/blob/main/src/mistralai/client/errors/observabilityerror.py): Bad Request - Invalid request parameters or data. Applicable to 65 of 288 methods.* +* [`HTTPValidationError`](https://github.com/mistralai/client-python/blob/main/src/mistralai/client/errors/httpvalidationerror.py): Validation Error. Status code `422`. Applicable to 178 of 290 methods.* +* [`ObservabilityError`](https://github.com/mistralai/client-python/blob/main/src/mistralai/client/errors/observabilityerror.py): Bad Request - Invalid request parameters or data. Applicable to 65 of 290 methods.* * [`ResponseValidationError`](https://github.com/mistralai/client-python/blob/main/src/mistralai/client/errors/responsevalidationerror.py): Type mismatch between the response data and the expected Pydantic model. Provides access to the Pydantic validation error via the `cause` attribute. diff --git a/README.md b/README.md index 9622faaa0..35a28878d 100644 --- a/README.md +++ b/README.md @@ -842,6 +842,11 @@ print(res.choices[0].message.content) * [create](docs/sdks/realtimesessions/README.md#create) - Create Client Session +### [Responses](docs/sdks/responses/README.md) + +* [create](docs/sdks/responses/README.md#create) - Create Response +* [count_input_tokens](docs/sdks/responses/README.md#count_input_tokens) - Count Input Tokens + ### [Workflows](docs/sdks/workflows/README.md) * [get_workflows](docs/sdks/workflows/README.md#get_workflows) - Get Workflows @@ -1166,8 +1171,8 @@ with Mistral( **Inherit from [`MistralError`](./src/mistralai/client/errors/mistralerror.py)**: -* [`HTTPValidationError`](./src/mistralai/client/errors/httpvalidationerror.py): Validation Error. Status code `422`. Applicable to 178 of 288 methods.* -* [`ObservabilityError`](./src/mistralai/client/errors/observabilityerror.py): Bad Request - Invalid request parameters or data. Applicable to 65 of 288 methods.* +* [`HTTPValidationError`](./src/mistralai/client/errors/httpvalidationerror.py): Validation Error. Status code `422`. Applicable to 178 of 290 methods.* +* [`ObservabilityError`](./src/mistralai/client/errors/observabilityerror.py): Bad Request - Invalid request parameters or data. Applicable to 65 of 290 methods.* * [`ResponseValidationError`](./src/mistralai/client/errors/responsevalidationerror.py): Type mismatch between the response data and the expected Pydantic model. Provides access to the Pydantic validation error via the `cause` attribute. diff --git a/RELEASES.md b/RELEASES.md index 5847cbf0d..20d472ceb 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1505,3 +1505,79 @@ Based on: - [python v3.3.0] . ### Releases - [PyPI v3.3.0] https://pypi.org/project/mistralai/3.3.0 - . + +## 2026-10-23 17:08:24 +### Generated SDK baseline differences +The published SDK or generator baseline differs from the baseline used by the OpenAPI changelog. + +
+Generated surface details + +#### Stable compatibility changes +Now required on an existing stable model (2): +- `AudioAgentCreateRequest.configuration` +- `Mistral.responses` +#### Stable type changes +Changed types or signatures on the stable surface (4): +- `AudioAgentCreateRequest.configuration: OptionalNullable[AudioAgentConfigurationRequest] -> AudioAgentConfigurationRequest` +- `AudioAgentCreateRequestTypedDict.configuration: NotRequired[Nullable[AudioAgentConfigurationRequestTypedDict]] -> AudioAgentConfigurationRequestTypedDict` +- `OCRTableObject.format_: Annotated[Format, pydantic.Field(alias='format')] -> Annotated[FormatEnum, pydantic.Field(alias='format')]` +- `OCRTableObjectTypedDict.format_: Format -> FormatEnum` +#### Beta surface changes +Changed types or signatures in beta (2): +- `PublicAuthenticationMethod.has_default_credentials: bool -> Annotated[Optional[bool], pydantic.Field(deprecated='warning: ** DEPRECATED ** - This will be removed in a future release, please migrate away from it as soon as possible.')]` +- `PublicAuthenticationMethodTypedDict.has_default_credentials: bool -> NotRequired[bool]` +
+ +### API changes +#### Breaking changes + +- `sdk.audio.agents.create()` now requires `configuration`, a `models.AudioAgentConfigurationRequest`. It can no longer be omitted or passed as `None`. +- `models.Format`, the type of `OCRTableObject.format_`, is renamed to `models.FormatEnum`. Imports of `Format` from `mistralai.client.models` must switch to `FormatEnum`. + +#### New: Responses API + +`sdk.responses.create()` generates a model response from text or image input. The output can contain text, reasoning and function calls. It is stateless: for multi-turn conversations, send the full history in `input`, including earlier output items and function results. + +- Required: `model` and `input`, either a string or a list of messages, output messages, function calls, function call outputs and reasoning items. +- Optional: `instructions`, `tools` (function and namespace tools; only client-executed function tools are supported), `tool_choice` (`"none"`, `"auto"` (default), `"required"` or a specific function), `parallel_tool_calls` (default `True`), `reasoning`, `text` (output `format` and `verbosity`), `max_output_tokens`, `max_tool_calls`, `temperature`, `top_p`, `metadata` and `prompt_cache_key`. +- Accepted only at fixed values: `truncation="disabled"`, `background=False`, `store=False` and `top_logprobs=0`. `previous_response_id`, `conversation`, `prompt` and `moderation` must be `None`. Responses are not stored. +- `stream=True` returns an `EventStream[models.ResponsesStreamFrame]` instead of a `models.CreateResponseResponse`. +- `models.CreateResponseResponse` includes `id`, `status`, `output`, `usage`, `error`, `incomplete_details`, `service_tier` (`"auto"`, `"default"`, `"flex"`, `"scale"` or `"priority"`), `truncation` (`"auto"` or `"disabled"`) and `prompt_cache_retention` (`"in_memory"` or `"24h"`). +- Errors, in `error` and in error stream frames, are a `models.ResponsesError` with `message` and `code` (`models.Code`): `server_error`, `rate_limit_exceeded`, `invalid_prompt`, `bio_policy`, `vector_store_timeout`, or one of 14 image errors: `invalid_image`, `invalid_image_format`, `invalid_base64_image`, `invalid_image_url`, `image_too_large`, `image_too_small`, `image_parse_error`, `image_content_policy_violation`, `invalid_image_mode`, `image_file_too_large`, `unsupported_image_media_type`, `empty_image_file`, `failed_to_download_image` and `image_file_not_found`. `status` is `"completed"`, `"failed"`, `"in_progress"`, `"cancelled"`, `"queued"` or `"incomplete"`, and `incomplete_details.reason` (`models.Reason`) is `"max_output_tokens"` or `"content_filter"`. + +`sdk.responses.count_input_tokens()` counts the input tokens of a Responses request without generating a response, including the conversation, instructions and tool definitions. It takes the same `model`, `input`, `instructions`, `tools`, `tool_choice`, `parallel_tool_calls`, `reasoning` and `text` as `create()`, and returns `models.CountResponseInputTokensResponse` with `input_tokens`. + +#### New fields + +- Keyword retrievers in `sdk.beta.rag.managed_indexes.search()`, alone or inside an `rrf` retriever, take an `operator` (`models.Operator`). `"or"`, the default, matches chunks containing any of the query's words. `"and"` matches only chunks containing all of them, the previous behaviour. +- `models.AudioTTSConfig`, the `tts` configuration of `sdk.audio.agents.create()`, `update()` and `sdk.audio.sessions.create()`, takes an optional `expressiveness`, a number from 1 to 5. + +#### Deprecated fields + +- `has_default_credentials` on connector authentication methods is deprecated and always `false`: connector-level default credentials were removed. It is returned by `sdk.beta.connectors.create()`, `list()`, `get()`, `update()` and `get_authentication_methods()`. Responses may now omit it, and the SDK reads a missing value as `false`. + +#### Added operations + +Stable: + +- `sdk.responses.create()` +- `sdk.responses.count_input_tokens()` + + +#### Schema changes + +- Added request field `expressiveness` in `sdk.audio.agents.create()`, `sdk.audio.sessions.create()`, and `sdk.audio.agents.update()`. +- Added response field `expressiveness` across audio agents (5 operations). +- Changed response field `has_default_credentials` across beta connectors (5 operations). +- Added request field `operator` in `sdk.beta.rag.managed_indexes.search()`. +- Added request enum values `ʁ`, `r`, `ɑ̃`, `ʀ`, `x`, `y`, `ɔ̃`, `ɐ`, `œ`, `ɛ̃`, `ʝ`, `ɲ`, `ts`, `ɥ`, `ʏ`, `ø`, `β`, `ɦ`, `pf`, `ʎ`, `ɣ`, `ɳ`, `ɔʏ`, `œ̃`, `ɟʝ`, `ɬ`, and `q` in `sdk.audio.speech.complete()`. + +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.796.4 (2.935.1) https://github.com/speakeasy-api/speakeasy +### Generated +- [python v3.4.0] . +### Releases +- [PyPI v3.4.0] https://pypi.org/project/mistralai/3.4.0 - . diff --git a/docs/models/annotation.md b/docs/models/annotation.md new file mode 100644 index 000000000..ef774862c --- /dev/null +++ b/docs/models/annotation.md @@ -0,0 +1,29 @@ +# Annotation + + +## Supported Types + +### `models.ResponsesAnnotationFileCitation` + +```python +value: models.ResponsesAnnotationFileCitation = /* values here */ +``` + +### `models.ResponsesAnnotationURLCitation` + +```python +value: models.ResponsesAnnotationURLCitation = /* values here */ +``` + +### `models.ResponsesAnnotationContainerFileCitation` + +```python +value: models.ResponsesAnnotationContainerFileCitation = /* values here */ +``` + +### `models.ResponsesAnnotationFilePath` + +```python +value: models.ResponsesAnnotationFilePath = /* values here */ +``` + diff --git a/docs/models/audioagentcreaterequest.md b/docs/models/audioagentcreaterequest.md index cca5a8160..fb23a4f78 100644 --- a/docs/models/audioagentcreaterequest.md +++ b/docs/models/audioagentcreaterequest.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | -| `name` | *str* | :heavy_check_mark: | N/A | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | -| `configuration` | [OptionalNullable[models.AudioAgentConfigurationRequest]](../models/audioagentconfigurationrequest.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------ | +| `name` | *str* | :heavy_check_mark: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `configuration` | [models.AudioAgentConfigurationRequest](../models/audioagentconfigurationrequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/audiottsconfig.md b/docs/models/audiottsconfig.md index 300c38a49..d091c90e5 100644 --- a/docs/models/audiottsconfig.md +++ b/docs/models/audiottsconfig.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------ | ------------------ | ------------------ | ------------------ | -| `model` | *Optional[str]* | :heavy_minus_sign: | N/A | -| `voice_id` | *Optional[str]* | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------- | ------------------------- | ------------------------- | ------------------------- | +| `model` | *Optional[str]* | :heavy_minus_sign: | N/A | +| `voice_id` | *Optional[str]* | :heavy_minus_sign: | N/A | +| `expressiveness` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/code.md b/docs/models/code.md new file mode 100644 index 000000000..1b115e0e2 --- /dev/null +++ b/docs/models/code.md @@ -0,0 +1,31 @@ +# Code + +## Example Usage + +```python +from mistralai.client.models import Code +value: Code = "server_error" +``` + + +## Values + +- `"server_error"` +- `"rate_limit_exceeded"` +- `"invalid_prompt"` +- `"bio_policy"` +- `"vector_store_timeout"` +- `"invalid_image"` +- `"invalid_image_format"` +- `"invalid_base64_image"` +- `"invalid_image_url"` +- `"image_too_large"` +- `"image_too_small"` +- `"image_parse_error"` +- `"image_content_policy_violation"` +- `"invalid_image_mode"` +- `"image_file_too_large"` +- `"unsupported_image_media_type"` +- `"empty_image_file"` +- `"failed_to_download_image"` +- `"image_file_not_found"` diff --git a/docs/models/countresponseinputtokensrequest.md b/docs/models/countresponseinputtokensrequest.md new file mode 100644 index 000000000..d51922e98 --- /dev/null +++ b/docs/models/countresponseinputtokensrequest.md @@ -0,0 +1,20 @@ +# CountResponseInputTokensRequest + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `model` | *str* | :heavy_check_mark: | N/A | +| `input` | [models.CountResponseInputTokensRequestInput2](../models/countresponseinputtokensrequestinput2.md) | :heavy_check_mark: | N/A | +| `instructions` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `parallel_tool_calls` | *Optional[bool]* | :heavy_minus_sign: | N/A | +| `previous_response_id` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `truncation` | *Optional[Literal["disabled"]]* | :heavy_minus_sign: | N/A | +| `tools` | List[[models.CountResponseInputTokensRequestTool](../models/countresponseinputtokensrequesttool.md)] | :heavy_minus_sign: | N/A | +| `tool_choice` | [Optional[models.CountResponseInputTokensRequestToolChoiceUnion]](../models/countresponseinputtokensrequesttoolchoiceunion.md) | :heavy_minus_sign: | N/A | +| `reasoning` | [OptionalNullable[models.CountResponseInputTokensRequestResponsesSupportedReasoning]](../models/countresponseinputtokensrequestresponsessupportedreasoning.md) | :heavy_minus_sign: | N/A | +| `conversation` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `prompt` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `text` | [OptionalNullable[models.CountResponseInputTokensRequestResponsesTextConfig]](../models/countresponseinputtokensrequestresponsestextconfig.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequesteffort.md b/docs/models/countresponseinputtokensrequesteffort.md new file mode 100644 index 000000000..9205c9de8 --- /dev/null +++ b/docs/models/countresponseinputtokensrequesteffort.md @@ -0,0 +1,19 @@ +# CountResponseInputTokensRequestEffort + +## Example Usage + +```python +from mistralai.client.models import CountResponseInputTokensRequestEffort +value: CountResponseInputTokensRequestEffort = "none" +``` + + +## Values + +- `"none"` +- `"minimal"` +- `"low"` +- `"medium"` +- `"high"` +- `"xhigh"` +- `"max"` diff --git a/docs/models/countresponseinputtokensrequestformat.md b/docs/models/countresponseinputtokensrequestformat.md new file mode 100644 index 000000000..2fb0da6c8 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestformat.md @@ -0,0 +1,23 @@ +# CountResponseInputTokensRequestFormat + + +## Supported Types + +### `models.CountResponseInputTokensRequestResponsesFormatText` + +```python +value: models.CountResponseInputTokensRequestResponsesFormatText = /* values here */ +``` + +### `models.CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig` + +```python +value: models.CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig = /* values here */ +``` + +### `models.CountResponseInputTokensRequestResponsesFormatJSONObject` + +```python +value: models.CountResponseInputTokensRequestResponsesFormatJSONObject = /* values here */ +``` + diff --git a/docs/models/countresponseinputtokensrequestinput1.md b/docs/models/countresponseinputtokensrequestinput1.md new file mode 100644 index 000000000..592945840 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestinput1.md @@ -0,0 +1,41 @@ +# CountResponseInputTokensRequestInput1 + + +## Supported Types + +### `models.ResponsesEasyInputMessage` + +```python +value: models.ResponsesEasyInputMessage = /* values here */ +``` + +### `models.ResponsesMessage` + +```python +value: models.ResponsesMessage = /* values here */ +``` + +### `models.ResponsesOutputMessage` + +```python +value: models.ResponsesOutputMessage = /* values here */ +``` + +### `models.ResponsesFunctionToolCall` + +```python +value: models.ResponsesFunctionToolCall = /* values here */ +``` + +### `models.ResponsesFunctionCallOutput` + +```python +value: models.ResponsesFunctionCallOutput = /* values here */ +``` + +### `models.ResponsesReasoningItem` + +```python +value: models.ResponsesReasoningItem = /* values here */ +``` + diff --git a/docs/models/countresponseinputtokensrequestinput2.md b/docs/models/countresponseinputtokensrequestinput2.md new file mode 100644 index 000000000..b6dde4bd6 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestinput2.md @@ -0,0 +1,17 @@ +# CountResponseInputTokensRequestInput2 + + +## Supported Types + +### `str` + +```python +value: str = /* values here */ +``` + +### `List[models.CountResponseInputTokensRequestInput1]` + +```python +value: List[models.CountResponseInputTokensRequestInput1] = /* values here */ +``` + diff --git a/docs/models/countresponseinputtokensrequestresponsesformatjsonobject.md b/docs/models/countresponseinputtokensrequestresponsesformatjsonobject.md new file mode 100644 index 000000000..5156372a4 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestresponsesformatjsonobject.md @@ -0,0 +1,9 @@ +# CountResponseInputTokensRequestResponsesFormatJSONObject + + +## Fields + +| Field | Type | Required | Description | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `type` | *Literal["json_object"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequestresponsesformattext.md b/docs/models/countresponseinputtokensrequestresponsesformattext.md new file mode 100644 index 000000000..76481ed47 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestresponsesformattext.md @@ -0,0 +1,9 @@ +# CountResponseInputTokensRequestResponsesFormatText + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `type` | *Literal["text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequestresponsesformattextjsonschemaconfig.md b/docs/models/countresponseinputtokensrequestresponsesformattextjsonschemaconfig.md new file mode 100644 index 000000000..ba2d38133 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestresponsesformattextjsonschemaconfig.md @@ -0,0 +1,13 @@ +# CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig + + +## Fields + +| Field | Type | Required | Description | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `name` | *str* | :heavy_check_mark: | N/A | +| `schema_` | Dict[str, *Any*] | :heavy_check_mark: | N/A | +| `type` | *Literal["json_schema"]* | :heavy_check_mark: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequestresponsessupportedreasoning.md b/docs/models/countresponseinputtokensrequestresponsessupportedreasoning.md new file mode 100644 index 000000000..cd2a77bc6 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestresponsessupportedreasoning.md @@ -0,0 +1,8 @@ +# CountResponseInputTokensRequestResponsesSupportedReasoning + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `effort` | [OptionalNullable[models.CountResponseInputTokensRequestEffort]](../models/countresponseinputtokensrequesteffort.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequestresponsestextconfig.md b/docs/models/countresponseinputtokensrequestresponsestextconfig.md new file mode 100644 index 000000000..6c8d73659 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestresponsestextconfig.md @@ -0,0 +1,10 @@ +# CountResponseInputTokensRequestResponsesTextConfig + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| `format_` | [OptionalNullable[models.CountResponseInputTokensRequestFormat]](../models/countresponseinputtokensrequestformat.md) | :heavy_minus_sign: | N/A | +| `verbosity` | [OptionalNullable[models.CountResponseInputTokensRequestVerbosity]](../models/countresponseinputtokensrequestverbosity.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequestresponsestoolchoicefunction.md b/docs/models/countresponseinputtokensrequestresponsestoolchoicefunction.md new file mode 100644 index 000000000..edcd928ea --- /dev/null +++ b/docs/models/countresponseinputtokensrequestresponsestoolchoicefunction.md @@ -0,0 +1,10 @@ +# CountResponseInputTokensRequestResponsesToolChoiceFunction + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["function"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/countresponseinputtokensrequesttool.md b/docs/models/countresponseinputtokensrequesttool.md new file mode 100644 index 000000000..3bd0cc5dc --- /dev/null +++ b/docs/models/countresponseinputtokensrequesttool.md @@ -0,0 +1,17 @@ +# CountResponseInputTokensRequestTool + + +## Supported Types + +### `models.ResponsesFunctionTool` + +```python +value: models.ResponsesFunctionTool = /* values here */ +``` + +### `models.ResponsesNamespaceTool` + +```python +value: models.ResponsesNamespaceTool = /* values here */ +``` + diff --git a/docs/models/countresponseinputtokensrequesttoolchoiceenum.md b/docs/models/countresponseinputtokensrequesttoolchoiceenum.md new file mode 100644 index 000000000..d9f05037e --- /dev/null +++ b/docs/models/countresponseinputtokensrequesttoolchoiceenum.md @@ -0,0 +1,15 @@ +# CountResponseInputTokensRequestToolChoiceEnum + +## Example Usage + +```python +from mistralai.client.models import CountResponseInputTokensRequestToolChoiceEnum +value: CountResponseInputTokensRequestToolChoiceEnum = "none" +``` + + +## Values + +- `"none"` +- `"auto"` +- `"required"` diff --git a/docs/models/countresponseinputtokensrequesttoolchoiceunion.md b/docs/models/countresponseinputtokensrequesttoolchoiceunion.md new file mode 100644 index 000000000..6fe3189c3 --- /dev/null +++ b/docs/models/countresponseinputtokensrequesttoolchoiceunion.md @@ -0,0 +1,17 @@ +# CountResponseInputTokensRequestToolChoiceUnion + + +## Supported Types + +### `models.CountResponseInputTokensRequestToolChoiceEnum` + +```python +value: models.CountResponseInputTokensRequestToolChoiceEnum = /* values here */ +``` + +### `models.CountResponseInputTokensRequestResponsesToolChoiceFunction` + +```python +value: models.CountResponseInputTokensRequestResponsesToolChoiceFunction = /* values here */ +``` + diff --git a/docs/models/countresponseinputtokensrequestverbosity.md b/docs/models/countresponseinputtokensrequestverbosity.md new file mode 100644 index 000000000..6d77d70e5 --- /dev/null +++ b/docs/models/countresponseinputtokensrequestverbosity.md @@ -0,0 +1,15 @@ +# CountResponseInputTokensRequestVerbosity + +## Example Usage + +```python +from mistralai.client.models import CountResponseInputTokensRequestVerbosity +value: CountResponseInputTokensRequestVerbosity = "low" +``` + + +## Values + +- `"low"` +- `"medium"` +- `"high"` diff --git a/docs/models/countresponseinputtokensresponse.md b/docs/models/countresponseinputtokensresponse.md new file mode 100644 index 000000000..4e76aecfb --- /dev/null +++ b/docs/models/countresponseinputtokensresponse.md @@ -0,0 +1,10 @@ +# CountResponseInputTokensResponse + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------- | ---------------------------------- | ---------------------------------- | ---------------------------------- | +| `input_tokens` | *int* | :heavy_check_mark: | N/A | +| `object` | *Literal["response.input_tokens"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequest.md b/docs/models/createresponserequest.md new file mode 100644 index 000000000..fc7311fde --- /dev/null +++ b/docs/models/createresponserequest.md @@ -0,0 +1,31 @@ +# CreateResponseRequest + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | +| `model` | *str* | :heavy_check_mark: | N/A | +| `input` | [models.CreateResponseRequestInput2](../models/createresponserequestinput2.md) | :heavy_check_mark: | N/A | +| `instructions` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `parallel_tool_calls` | *Optional[bool]* | :heavy_minus_sign: | N/A | +| `previous_response_id` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `truncation` | *Optional[Literal["disabled"]]* | :heavy_minus_sign: | N/A | +| `tools` | List[[models.CreateResponseRequestTool](../models/createresponserequesttool.md)] | :heavy_minus_sign: | N/A | +| `tool_choice` | [Optional[models.CreateResponseRequestToolChoiceUnion]](../models/createresponserequesttoolchoiceunion.md) | :heavy_minus_sign: | N/A | +| `reasoning` | [OptionalNullable[models.CreateResponseRequestResponsesSupportedReasoning]](../models/createresponserequestresponsessupportedreasoning.md) | :heavy_minus_sign: | N/A | +| `conversation` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `prompt` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `text` | [OptionalNullable[models.CreateResponseRequestResponsesTextConfig]](../models/createresponserequestresponsestextconfig.md) | :heavy_minus_sign: | N/A | +| `background` | *Optional[Literal[False]]* | :heavy_minus_sign: | N/A | +| `stream` | *Optional[bool]* | :heavy_minus_sign: | N/A | +| `store` | *OptionalNullable[Literal[False]]* | :heavy_minus_sign: | N/A | +| `max_output_tokens` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `temperature` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `top_p` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `metadata` | Dict[str, *str*] | :heavy_minus_sign: | N/A | +| `prompt_cache_key` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `max_tool_calls` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `moderation` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `top_logprobs` | *OptionalNullable[Literal[0]]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequesteffort.md b/docs/models/createresponserequesteffort.md new file mode 100644 index 000000000..08edb6cd4 --- /dev/null +++ b/docs/models/createresponserequesteffort.md @@ -0,0 +1,19 @@ +# CreateResponseRequestEffort + +## Example Usage + +```python +from mistralai.client.models import CreateResponseRequestEffort +value: CreateResponseRequestEffort = "none" +``` + + +## Values + +- `"none"` +- `"minimal"` +- `"low"` +- `"medium"` +- `"high"` +- `"xhigh"` +- `"max"` diff --git a/docs/models/createresponserequestformat.md b/docs/models/createresponserequestformat.md new file mode 100644 index 000000000..0ad65ce7c --- /dev/null +++ b/docs/models/createresponserequestformat.md @@ -0,0 +1,23 @@ +# CreateResponseRequestFormat + + +## Supported Types + +### `models.CreateResponseRequestResponsesFormatText` + +```python +value: models.CreateResponseRequestResponsesFormatText = /* values here */ +``` + +### `models.CreateResponseRequestResponsesFormatTextJSONSchemaConfig` + +```python +value: models.CreateResponseRequestResponsesFormatTextJSONSchemaConfig = /* values here */ +``` + +### `models.CreateResponseRequestResponsesFormatJSONObject` + +```python +value: models.CreateResponseRequestResponsesFormatJSONObject = /* values here */ +``` + diff --git a/docs/models/createresponserequestinput1.md b/docs/models/createresponserequestinput1.md new file mode 100644 index 000000000..8788016cd --- /dev/null +++ b/docs/models/createresponserequestinput1.md @@ -0,0 +1,41 @@ +# CreateResponseRequestInput1 + + +## Supported Types + +### `models.ResponsesEasyInputMessage` + +```python +value: models.ResponsesEasyInputMessage = /* values here */ +``` + +### `models.ResponsesMessage` + +```python +value: models.ResponsesMessage = /* values here */ +``` + +### `models.ResponsesOutputMessage` + +```python +value: models.ResponsesOutputMessage = /* values here */ +``` + +### `models.ResponsesFunctionToolCall` + +```python +value: models.ResponsesFunctionToolCall = /* values here */ +``` + +### `models.ResponsesFunctionCallOutput` + +```python +value: models.ResponsesFunctionCallOutput = /* values here */ +``` + +### `models.ResponsesReasoningItem` + +```python +value: models.ResponsesReasoningItem = /* values here */ +``` + diff --git a/docs/models/createresponserequestinput2.md b/docs/models/createresponserequestinput2.md new file mode 100644 index 000000000..833a89608 --- /dev/null +++ b/docs/models/createresponserequestinput2.md @@ -0,0 +1,17 @@ +# CreateResponseRequestInput2 + + +## Supported Types + +### `str` + +```python +value: str = /* values here */ +``` + +### `List[models.CreateResponseRequestInput1]` + +```python +value: List[models.CreateResponseRequestInput1] = /* values here */ +``` + diff --git a/docs/models/createresponserequestresponsesformatjsonobject.md b/docs/models/createresponserequestresponsesformatjsonobject.md new file mode 100644 index 000000000..bc0dff0fc --- /dev/null +++ b/docs/models/createresponserequestresponsesformatjsonobject.md @@ -0,0 +1,9 @@ +# CreateResponseRequestResponsesFormatJSONObject + + +## Fields + +| Field | Type | Required | Description | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `type` | *Literal["json_object"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequestresponsesformattext.md b/docs/models/createresponserequestresponsesformattext.md new file mode 100644 index 000000000..9e5c3a466 --- /dev/null +++ b/docs/models/createresponserequestresponsesformattext.md @@ -0,0 +1,9 @@ +# CreateResponseRequestResponsesFormatText + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `type` | *Literal["text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequestresponsesformattextjsonschemaconfig.md b/docs/models/createresponserequestresponsesformattextjsonschemaconfig.md new file mode 100644 index 000000000..c64a78fad --- /dev/null +++ b/docs/models/createresponserequestresponsesformattextjsonschemaconfig.md @@ -0,0 +1,13 @@ +# CreateResponseRequestResponsesFormatTextJSONSchemaConfig + + +## Fields + +| Field | Type | Required | Description | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `name` | *str* | :heavy_check_mark: | N/A | +| `schema_` | Dict[str, *Any*] | :heavy_check_mark: | N/A | +| `type` | *Literal["json_schema"]* | :heavy_check_mark: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequestresponsessupportedreasoning.md b/docs/models/createresponserequestresponsessupportedreasoning.md new file mode 100644 index 000000000..02b4363d0 --- /dev/null +++ b/docs/models/createresponserequestresponsessupportedreasoning.md @@ -0,0 +1,8 @@ +# CreateResponseRequestResponsesSupportedReasoning + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `effort` | [OptionalNullable[models.CreateResponseRequestEffort]](../models/createresponserequesteffort.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequestresponsestextconfig.md b/docs/models/createresponserequestresponsestextconfig.md new file mode 100644 index 000000000..39f046f9d --- /dev/null +++ b/docs/models/createresponserequestresponsestextconfig.md @@ -0,0 +1,10 @@ +# CreateResponseRequestResponsesTextConfig + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | +| `format_` | [OptionalNullable[models.CreateResponseRequestFormat]](../models/createresponserequestformat.md) | :heavy_minus_sign: | N/A | +| `verbosity` | [OptionalNullable[models.CreateResponseRequestVerbosity]](../models/createresponserequestverbosity.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequestresponsestoolchoicefunction.md b/docs/models/createresponserequestresponsestoolchoicefunction.md new file mode 100644 index 000000000..170b4df2c --- /dev/null +++ b/docs/models/createresponserequestresponsestoolchoicefunction.md @@ -0,0 +1,10 @@ +# CreateResponseRequestResponsesToolChoiceFunction + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["function"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponserequesttool.md b/docs/models/createresponserequesttool.md new file mode 100644 index 000000000..acb4fa497 --- /dev/null +++ b/docs/models/createresponserequesttool.md @@ -0,0 +1,17 @@ +# CreateResponseRequestTool + + +## Supported Types + +### `models.ResponsesFunctionTool` + +```python +value: models.ResponsesFunctionTool = /* values here */ +``` + +### `models.ResponsesNamespaceTool` + +```python +value: models.ResponsesNamespaceTool = /* values here */ +``` + diff --git a/docs/models/createresponserequesttoolchoiceenum.md b/docs/models/createresponserequesttoolchoiceenum.md new file mode 100644 index 000000000..1adebfb9f --- /dev/null +++ b/docs/models/createresponserequesttoolchoiceenum.md @@ -0,0 +1,15 @@ +# CreateResponseRequestToolChoiceEnum + +## Example Usage + +```python +from mistralai.client.models import CreateResponseRequestToolChoiceEnum +value: CreateResponseRequestToolChoiceEnum = "none" +``` + + +## Values + +- `"none"` +- `"auto"` +- `"required"` diff --git a/docs/models/createresponserequesttoolchoiceunion.md b/docs/models/createresponserequesttoolchoiceunion.md new file mode 100644 index 000000000..77d152861 --- /dev/null +++ b/docs/models/createresponserequesttoolchoiceunion.md @@ -0,0 +1,17 @@ +# CreateResponseRequestToolChoiceUnion + + +## Supported Types + +### `models.CreateResponseRequestToolChoiceEnum` + +```python +value: models.CreateResponseRequestToolChoiceEnum = /* values here */ +``` + +### `models.CreateResponseRequestResponsesToolChoiceFunction` + +```python +value: models.CreateResponseRequestResponsesToolChoiceFunction = /* values here */ +``` + diff --git a/docs/models/createresponserequestverbosity.md b/docs/models/createresponserequestverbosity.md new file mode 100644 index 000000000..993b6d7c5 --- /dev/null +++ b/docs/models/createresponserequestverbosity.md @@ -0,0 +1,15 @@ +# CreateResponseRequestVerbosity + +## Example Usage + +```python +from mistralai.client.models import CreateResponseRequestVerbosity +value: CreateResponseRequestVerbosity = "low" +``` + + +## Values + +- `"low"` +- `"medium"` +- `"high"` diff --git a/docs/models/createresponseresponse.md b/docs/models/createresponseresponse.md new file mode 100644 index 000000000..ef880cb39 --- /dev/null +++ b/docs/models/createresponseresponse.md @@ -0,0 +1,38 @@ +# CreateResponseResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | +| `id` | *str* | :heavy_check_mark: | N/A | +| `created_at` | *float* | :heavy_check_mark: | N/A | +| `error` | [OptionalNullable[models.ResponsesError]](../models/responseserror.md) | :heavy_minus_sign: | N/A | +| `incomplete_details` | [OptionalNullable[models.ResponsesIncompleteDetails]](../models/responsesincompletedetails.md) | :heavy_minus_sign: | N/A | +| `instructions` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `metadata` | Dict[str, *str*] | :heavy_minus_sign: | N/A | +| `model` | *str* | :heavy_check_mark: | N/A | +| `object` | *Literal["response"]* | :heavy_check_mark: | N/A | +| `output` | List[[models.CreateResponseResponseOutput](../models/createresponseresponseoutput.md)] | :heavy_check_mark: | N/A | +| `parallel_tool_calls` | *bool* | :heavy_check_mark: | N/A | +| `temperature` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `tool_choice` | [models.CreateResponseResponseToolChoiceUnion](../models/createresponseresponsetoolchoiceunion.md) | :heavy_check_mark: | N/A | +| `tools` | List[[models.CreateResponseResponseTool](../models/createresponseresponsetool.md)] | :heavy_check_mark: | N/A | +| `top_p` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `background` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `completed_at` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `max_output_tokens` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `max_tool_calls` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `previous_response_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `prompt_cache_key` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `prompt_cache_retention` | [OptionalNullable[models.PromptCacheRetention]](../models/promptcacheretention.md) | :heavy_minus_sign: | N/A | +| `reasoning` | [OptionalNullable[models.CreateResponseResponseResponsesSupportedReasoning]](../models/createresponseresponseresponsessupportedreasoning.md) | :heavy_minus_sign: | N/A | +| `safety_identifier` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `service_tier` | [OptionalNullable[models.ServiceTier]](../models/servicetier.md) | :heavy_minus_sign: | N/A | +| `status` | [OptionalNullable[models.CreateResponseResponseStatus]](../models/createresponseresponsestatus.md) | :heavy_minus_sign: | N/A | +| `text` | [OptionalNullable[models.CreateResponseResponseResponsesTextConfig]](../models/createresponseresponseresponsestextconfig.md) | :heavy_minus_sign: | N/A | +| `top_logprobs` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `truncation` | [OptionalNullable[models.Truncation]](../models/truncation.md) | :heavy_minus_sign: | N/A | +| `usage` | [OptionalNullable[models.ResponsesUsage]](../models/responsesusage.md) | :heavy_minus_sign: | N/A | +| `user` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponseresponseoutput.md b/docs/models/createresponseresponseoutput.md new file mode 100644 index 000000000..a88779bf0 --- /dev/null +++ b/docs/models/createresponseresponseoutput.md @@ -0,0 +1,23 @@ +# CreateResponseResponseOutput + + +## Supported Types + +### `models.ResponsesOutputMessage` + +```python +value: models.ResponsesOutputMessage = /* values here */ +``` + +### `models.ResponsesFunctionToolCall` + +```python +value: models.ResponsesFunctionToolCall = /* values here */ +``` + +### `models.ResponsesReasoningItem` + +```python +value: models.ResponsesReasoningItem = /* values here */ +``` + diff --git a/docs/models/createresponseresponseresponsessupportedreasoning.md b/docs/models/createresponseresponseresponsessupportedreasoning.md new file mode 100644 index 000000000..ce80ba7b1 --- /dev/null +++ b/docs/models/createresponseresponseresponsessupportedreasoning.md @@ -0,0 +1,8 @@ +# CreateResponseResponseResponsesSupportedReasoning + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `effort` | [OptionalNullable[models.ResponsesSupportedReasoningEffort]](../models/responsessupportedreasoningeffort.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponseresponseresponsestextconfig.md b/docs/models/createresponseresponseresponsestextconfig.md new file mode 100644 index 000000000..87597c684 --- /dev/null +++ b/docs/models/createresponseresponseresponsestextconfig.md @@ -0,0 +1,10 @@ +# CreateResponseResponseResponsesTextConfig + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | +| `format_` | [OptionalNullable[models.ResponsesTextConfigFormat]](../models/responsestextconfigformat.md) | :heavy_minus_sign: | N/A | +| `verbosity` | [OptionalNullable[models.ResponsesTextConfigVerbosity]](../models/responsestextconfigverbosity.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/createresponseresponsestatus.md b/docs/models/createresponseresponsestatus.md new file mode 100644 index 000000000..9fb421851 --- /dev/null +++ b/docs/models/createresponseresponsestatus.md @@ -0,0 +1,18 @@ +# CreateResponseResponseStatus + +## Example Usage + +```python +from mistralai.client.models import CreateResponseResponseStatus +value: CreateResponseResponseStatus = "completed" +``` + + +## Values + +- `"completed"` +- `"failed"` +- `"in_progress"` +- `"cancelled"` +- `"queued"` +- `"incomplete"` diff --git a/docs/models/createresponseresponsetool.md b/docs/models/createresponseresponsetool.md new file mode 100644 index 000000000..e50354d1b --- /dev/null +++ b/docs/models/createresponseresponsetool.md @@ -0,0 +1,17 @@ +# CreateResponseResponseTool + + +## Supported Types + +### `models.ResponsesFunctionTool` + +```python +value: models.ResponsesFunctionTool = /* values here */ +``` + +### `models.ResponsesNamespaceTool` + +```python +value: models.ResponsesNamespaceTool = /* values here */ +``` + diff --git a/docs/models/createresponseresponsetoolchoiceenum.md b/docs/models/createresponseresponsetoolchoiceenum.md new file mode 100644 index 000000000..e21dd2bcd --- /dev/null +++ b/docs/models/createresponseresponsetoolchoiceenum.md @@ -0,0 +1,15 @@ +# CreateResponseResponseToolChoiceEnum + +## Example Usage + +```python +from mistralai.client.models import CreateResponseResponseToolChoiceEnum +value: CreateResponseResponseToolChoiceEnum = "none" +``` + + +## Values + +- `"none"` +- `"auto"` +- `"required"` diff --git a/docs/models/createresponseresponsetoolchoiceunion.md b/docs/models/createresponseresponsetoolchoiceunion.md new file mode 100644 index 000000000..af0090fce --- /dev/null +++ b/docs/models/createresponseresponsetoolchoiceunion.md @@ -0,0 +1,17 @@ +# CreateResponseResponseToolChoiceUnion + + +## Supported Types + +### `models.CreateResponseResponseToolChoiceEnum` + +```python +value: models.CreateResponseResponseToolChoiceEnum = /* values here */ +``` + +### `models.ResponsesToolChoiceFunction` + +```python +value: models.ResponsesToolChoiceFunction = /* values here */ +``` + diff --git a/docs/models/createresponsev1responsespostresponse.md b/docs/models/createresponsev1responsespostresponse.md new file mode 100644 index 000000000..f5adb0874 --- /dev/null +++ b/docs/models/createresponsev1responsespostresponse.md @@ -0,0 +1,17 @@ +# CreateResponseV1ResponsesPostResponse + + +## Supported Types + +### `models.CreateResponseResponse` + +```python +value: models.CreateResponseResponse = /* values here */ +``` + +### `Union[eventstreaming.EventStream[models.ResponsesStreamFrame], eventstreaming.EventStreamAsync[models.ResponsesStreamFrame]]` + +```python +value: Union[eventstreaming.EventStream[models.ResponsesStreamFrame], eventstreaming.EventStreamAsync[models.ResponsesStreamFrame]] = /* values here */ +``` + diff --git a/docs/models/format_.md b/docs/models/formatenum.md similarity index 71% rename from docs/models/format_.md rename to docs/models/formatenum.md index 5bf1ed0cf..561f6248a 100644 --- a/docs/models/format_.md +++ b/docs/models/formatenum.md @@ -1,14 +1,14 @@ -# Format +# FormatEnum Format of the table ## Example Usage ```python -from mistralai.client.models import Format +from mistralai.client.models import FormatEnum # Open enum: unrecognized values are captured as UnrecognizedStr -value: Format = "markdown" +value: FormatEnum = "markdown" ``` diff --git a/docs/models/ipaphoneme.md b/docs/models/ipaphoneme.md index c2a0fcb4f..8c34fde8d 100644 --- a/docs/models/ipaphoneme.md +++ b/docs/models/ipaphoneme.md @@ -67,3 +67,30 @@ value: IPAPhoneme = "a" - `"ʒ"` - `"ʔ"` - `"θ"` +- `"ʁ"` +- `"r"` +- `"ɑ̃"` +- `"ʀ"` +- `"x"` +- `"y"` +- `"ɔ̃"` +- `"ɐ"` +- `"œ"` +- `"ɛ̃"` +- `"ʝ"` +- `"ɲ"` +- `"ts"` +- `"ɥ"` +- `"ʏ"` +- `"ø"` +- `"β"` +- `"ɦ"` +- `"pf"` +- `"ʎ"` +- `"ɣ"` +- `"ɳ"` +- `"ɔʏ"` +- `"œ̃"` +- `"ɟʝ"` +- `"ɬ"` +- `"q"` diff --git a/docs/models/keywordretriever.md b/docs/models/keywordretriever.md index 37ae2b6c0..068c8206c 100644 --- a/docs/models/keywordretriever.md +++ b/docs/models/keywordretriever.md @@ -2,6 +2,8 @@ Retrieve document chunks with similar keywords to the given query. +Uses the default settings for the index on the field. + ## Fields @@ -10,5 +12,6 @@ Retrieve document chunks with similar keywords to the given query. | `top_k` | *Optional[int]* | :heavy_minus_sign: | N/A | | `type` | *Literal["keyword"]* | :heavy_check_mark: | N/A | | `query` | *str* | :heavy_check_mark: | N/A | +| `operator` | [Optional[models.Operator]](../models/operator.md) | :heavy_minus_sign: | N/A | | `filter_` | [OptionalNullable[models.KeywordRetrieverFilter]](../models/keywordretrieverfilter.md) | :heavy_minus_sign: | N/A | | `field` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/ocrtableobject.md b/docs/models/ocrtableobject.md index 2da8f6105..a3381b6e3 100644 --- a/docs/models/ocrtableobject.md +++ b/docs/models/ocrtableobject.md @@ -7,5 +7,5 @@ | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | | `id` | *str* | :heavy_check_mark: | Table ID for extracted table in a page | | `content` | *str* | :heavy_check_mark: | Content of the table in the given format | -| `format_` | [models.Format](../models/format_.md) | :heavy_check_mark: | Format of the table | +| `format_` | [models.FormatEnum](../models/formatenum.md) | :heavy_check_mark: | Format of the table | | `word_confidence_scores` | List[[models.OCRConfidenceScore](../models/ocrconfidencescore.md)] | :heavy_minus_sign: | Per-word confidence scores for the table content. Returned when confidence_scores_granularity is set to 'word'. | \ No newline at end of file diff --git a/docs/models/operator.md b/docs/models/operator.md new file mode 100644 index 000000000..b56ab1b66 --- /dev/null +++ b/docs/models/operator.md @@ -0,0 +1,14 @@ +# Operator + +## Example Usage + +```python +from mistralai.client.models import Operator +value: Operator = "or" +``` + + +## Values + +- `"or"` +- `"and"` diff --git a/docs/models/promptcacheretention.md b/docs/models/promptcacheretention.md new file mode 100644 index 000000000..916e1f89a --- /dev/null +++ b/docs/models/promptcacheretention.md @@ -0,0 +1,14 @@ +# PromptCacheRetention + +## Example Usage + +```python +from mistralai.client.models import PromptCacheRetention +value: PromptCacheRetention = "in_memory" +``` + + +## Values + +- `"in_memory"` +- `"24h"` diff --git a/docs/models/publicauthenticationmethod.md b/docs/models/publicauthenticationmethod.md index 242bf6627..ee8c090d6 100644 --- a/docs/models/publicauthenticationmethod.md +++ b/docs/models/publicauthenticationmethod.md @@ -5,12 +5,12 @@ Public view of an authentication method, without secrets. ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `method_type` | [models.AuthenticationType](../models/authenticationtype.md) | :heavy_check_mark: | N/A | -| `headers` | List[[models.ConnectorAuthenticationHeader](../models/connectorauthenticationheader.md)] | :heavy_minus_sign: | N/A | -| `global_headers` | Dict[str, [models.GlobalHeaderValue](../models/globalheadervalue.md)] | :heavy_minus_sign: | N/A | -| `has_default_credentials` | *bool* | :heavy_check_mark: | N/A | -| `grant_type` | [OptionalNullable[models.OAuth2GrantType]](../models/oauth2granttype.md) | :heavy_minus_sign: | N/A | -| `token_endpoint_auth_method` | [OptionalNullable[models.OAuth2TokenEndpointAuthMethod]](../models/oauth2tokenendpointauthmethod.md) | :heavy_minus_sign: | N/A | -| `oauth2_server_metadata` | [OptionalNullable[models.ExtendedOAuthServerMetadata]](../models/extendedoauthservermetadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `method_type` | [models.AuthenticationType](../models/authenticationtype.md) | :heavy_check_mark: | N/A | +| `headers` | List[[models.ConnectorAuthenticationHeader](../models/connectorauthenticationheader.md)] | :heavy_minus_sign: | N/A | +| `global_headers` | Dict[str, [models.GlobalHeaderValue](../models/globalheadervalue.md)] | :heavy_minus_sign: | N/A | +| ~~`has_default_credentials`~~ | *Optional[bool]* | :heavy_minus_sign: | : warning: ** DEPRECATED **: This will be removed in a future release, please migrate away from it as soon as possible.

Deprecated: we removed the concept of connector level default credentials. Always false. | +| `grant_type` | [OptionalNullable[models.OAuth2GrantType]](../models/oauth2granttype.md) | :heavy_minus_sign: | N/A | +| `token_endpoint_auth_method` | [OptionalNullable[models.OAuth2TokenEndpointAuthMethod]](../models/oauth2tokenendpointauthmethod.md) | :heavy_minus_sign: | N/A | +| `oauth2_server_metadata` | [OptionalNullable[models.ExtendedOAuthServerMetadata]](../models/extendedoauthservermetadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/reason.md b/docs/models/reason.md new file mode 100644 index 000000000..fb2fa9a97 --- /dev/null +++ b/docs/models/reason.md @@ -0,0 +1,14 @@ +# Reason + +## Example Usage + +```python +from mistralai.client.models import Reason +value: Reason = "max_output_tokens" +``` + + +## Values + +- `"max_output_tokens"` +- `"content_filter"` diff --git a/docs/models/responsesannotationcontainerfilecitation.md b/docs/models/responsesannotationcontainerfilecitation.md new file mode 100644 index 000000000..d72e21d35 --- /dev/null +++ b/docs/models/responsesannotationcontainerfilecitation.md @@ -0,0 +1,14 @@ +# ResponsesAnnotationContainerFileCitation + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | +| `container_id` | *str* | :heavy_check_mark: | N/A | +| `end_index` | *int* | :heavy_check_mark: | N/A | +| `file_id` | *str* | :heavy_check_mark: | N/A | +| `filename` | *str* | :heavy_check_mark: | N/A | +| `start_index` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["container_file_citation"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesannotationfilecitation.md b/docs/models/responsesannotationfilecitation.md new file mode 100644 index 000000000..a353ca03d --- /dev/null +++ b/docs/models/responsesannotationfilecitation.md @@ -0,0 +1,12 @@ +# ResponsesAnnotationFileCitation + + +## Fields + +| Field | Type | Required | Description | +| -------------------------- | -------------------------- | -------------------------- | -------------------------- | +| `file_id` | *str* | :heavy_check_mark: | N/A | +| `filename` | *str* | :heavy_check_mark: | N/A | +| `index` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["file_citation"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesannotationfilepath.md b/docs/models/responsesannotationfilepath.md new file mode 100644 index 000000000..9b06eab91 --- /dev/null +++ b/docs/models/responsesannotationfilepath.md @@ -0,0 +1,11 @@ +# ResponsesAnnotationFilePath + + +## Fields + +| Field | Type | Required | Description | +| ---------------------- | ---------------------- | ---------------------- | ---------------------- | +| `file_id` | *str* | :heavy_check_mark: | N/A | +| `index` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["file_path"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesannotationurlcitation.md b/docs/models/responsesannotationurlcitation.md new file mode 100644 index 000000000..29f74953e --- /dev/null +++ b/docs/models/responsesannotationurlcitation.md @@ -0,0 +1,13 @@ +# ResponsesAnnotationURLCitation + + +## Fields + +| Field | Type | Required | Description | +| ------------------------- | ------------------------- | ------------------------- | ------------------------- | +| `end_index` | *int* | :heavy_check_mark: | N/A | +| `start_index` | *int* | :heavy_check_mark: | N/A | +| `title` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["url_citation"]* | :heavy_check_mark: | N/A | +| `url` | *str* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescallerdirect.md b/docs/models/responsescallerdirect.md new file mode 100644 index 000000000..7e9477433 --- /dev/null +++ b/docs/models/responsescallerdirect.md @@ -0,0 +1,9 @@ +# ResponsesCallerDirect + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `type` | *Literal["direct"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescallerprogram.md b/docs/models/responsescallerprogram.md new file mode 100644 index 000000000..4fa526d63 --- /dev/null +++ b/docs/models/responsescallerprogram.md @@ -0,0 +1,10 @@ +# ResponsesCallerProgram + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `caller_id` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["program"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescompletedevent.md b/docs/models/responsescompletedevent.md new file mode 100644 index 000000000..50607d8e3 --- /dev/null +++ b/docs/models/responsescompletedevent.md @@ -0,0 +1,11 @@ +# ResponsesCompletedEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `response` | [models.CreateResponseResponse](../models/createresponseresponse.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.completed"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescontent.md b/docs/models/responsescontent.md new file mode 100644 index 000000000..ff29ea097 --- /dev/null +++ b/docs/models/responsescontent.md @@ -0,0 +1,10 @@ +# ResponsesContent + + +## Fields + +| Field | Type | Required | Description | +| --------------------------- | --------------------------- | --------------------------- | --------------------------- | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["reasoning_text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescontentpartaddedevent.md b/docs/models/responsescontentpartaddedevent.md new file mode 100644 index 000000000..26298a89d --- /dev/null +++ b/docs/models/responsescontentpartaddedevent.md @@ -0,0 +1,14 @@ +# ResponsesContentPartAddedEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------- | +| `content_index` | *int* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `part` | [models.ResponsesContentPartAddedEventPart](../models/responsescontentpartaddedeventpart.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.content_part.added"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescontentpartaddedeventpart.md b/docs/models/responsescontentpartaddedeventpart.md new file mode 100644 index 000000000..4e1320e95 --- /dev/null +++ b/docs/models/responsescontentpartaddedeventpart.md @@ -0,0 +1,23 @@ +# ResponsesContentPartAddedEventPart + + +## Supported Types + +### `models.ResponsesOutputText` + +```python +value: models.ResponsesOutputText = /* values here */ +``` + +### `models.ResponsesOutputRefusal` + +```python +value: models.ResponsesOutputRefusal = /* values here */ +``` + +### `models.ResponsesPartReasoningText` + +```python +value: models.ResponsesPartReasoningText = /* values here */ +``` + diff --git a/docs/models/responsescontentpartdoneevent.md b/docs/models/responsescontentpartdoneevent.md new file mode 100644 index 000000000..d05e5223f --- /dev/null +++ b/docs/models/responsescontentpartdoneevent.md @@ -0,0 +1,14 @@ +# ResponsesContentPartDoneEvent + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | +| `content_index` | *int* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `part` | [models.ResponsesContentPartDoneEventPart](../models/responsescontentpartdoneeventpart.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.content_part.done"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescontentpartdoneeventpart.md b/docs/models/responsescontentpartdoneeventpart.md new file mode 100644 index 000000000..8de71efc3 --- /dev/null +++ b/docs/models/responsescontentpartdoneeventpart.md @@ -0,0 +1,23 @@ +# ResponsesContentPartDoneEventPart + + +## Supported Types + +### `models.ResponsesOutputText` + +```python +value: models.ResponsesOutputText = /* values here */ +``` + +### `models.ResponsesOutputRefusal` + +```python +value: models.ResponsesOutputRefusal = /* values here */ +``` + +### `models.ResponsesPartReasoningText` + +```python +value: models.ResponsesPartReasoningText = /* values here */ +``` + diff --git a/docs/models/responsescreatedevent.md b/docs/models/responsescreatedevent.md new file mode 100644 index 000000000..fa86bb07d --- /dev/null +++ b/docs/models/responsescreatedevent.md @@ -0,0 +1,11 @@ +# ResponsesCreatedEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `response` | [models.CreateResponseResponse](../models/createresponseresponse.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.created"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescustomtool.md b/docs/models/responsescustomtool.md new file mode 100644 index 000000000..8cd9e5b70 --- /dev/null +++ b/docs/models/responsescustomtool.md @@ -0,0 +1,14 @@ +# ResponsesCustomTool + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["custom"]* | :heavy_check_mark: | N/A | +| `allowed_callers` | List[[models.ResponsesCustomToolAllowedCaller](../models/responsescustomtoolallowedcaller.md)] | :heavy_minus_sign: | N/A | +| `defer_loading` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `format_` | [OptionalNullable[models.ResponsesCustomToolFormat]](../models/responsescustomtoolformat.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsescustomtoolallowedcaller.md b/docs/models/responsescustomtoolallowedcaller.md new file mode 100644 index 000000000..ea64b2bf3 --- /dev/null +++ b/docs/models/responsescustomtoolallowedcaller.md @@ -0,0 +1,14 @@ +# ResponsesCustomToolAllowedCaller + +## Example Usage + +```python +from mistralai.client.models import ResponsesCustomToolAllowedCaller +value: ResponsesCustomToolAllowedCaller = "direct" +``` + + +## Values + +- `"direct"` +- `"programmatic"` diff --git a/docs/models/responsescustomtoolformat.md b/docs/models/responsescustomtoolformat.md new file mode 100644 index 000000000..748639234 --- /dev/null +++ b/docs/models/responsescustomtoolformat.md @@ -0,0 +1,17 @@ +# ResponsesCustomToolFormat + + +## Supported Types + +### `models.ResponsesText` + +```python +value: models.ResponsesText = /* values here */ +``` + +### `models.ResponsesGrammar` + +```python +value: models.ResponsesGrammar = /* values here */ +``` + diff --git a/docs/models/responseseasyinputmessage.md b/docs/models/responseseasyinputmessage.md new file mode 100644 index 000000000..1d89f1e28 --- /dev/null +++ b/docs/models/responseseasyinputmessage.md @@ -0,0 +1,12 @@ +# ResponsesEasyInputMessage + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | +| `content` | [models.ResponsesEasyInputMessageContent2](../models/responseseasyinputmessagecontent2.md) | :heavy_check_mark: | N/A | +| `role` | [models.ResponsesEasyInputMessageRole](../models/responseseasyinputmessagerole.md) | :heavy_check_mark: | N/A | +| `phase` | [OptionalNullable[models.ResponsesEasyInputMessagePhase]](../models/responseseasyinputmessagephase.md) | :heavy_minus_sign: | N/A | +| `type` | *OptionalNullable[Literal["message"]]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responseseasyinputmessagecontent1.md b/docs/models/responseseasyinputmessagecontent1.md new file mode 100644 index 000000000..00b4a421b --- /dev/null +++ b/docs/models/responseseasyinputmessagecontent1.md @@ -0,0 +1,23 @@ +# ResponsesEasyInputMessageContent1 + + +## Supported Types + +### `models.ResponsesInputText` + +```python +value: models.ResponsesInputText = /* values here */ +``` + +### `models.ResponsesInputImage` + +```python +value: models.ResponsesInputImage = /* values here */ +``` + +### `models.ResponsesInputFile` + +```python +value: models.ResponsesInputFile = /* values here */ +``` + diff --git a/docs/models/responseseasyinputmessagecontent2.md b/docs/models/responseseasyinputmessagecontent2.md new file mode 100644 index 000000000..2331ce715 --- /dev/null +++ b/docs/models/responseseasyinputmessagecontent2.md @@ -0,0 +1,17 @@ +# ResponsesEasyInputMessageContent2 + + +## Supported Types + +### `str` + +```python +value: str = /* values here */ +``` + +### `List[models.ResponsesEasyInputMessageContent1]` + +```python +value: List[models.ResponsesEasyInputMessageContent1] = /* values here */ +``` + diff --git a/docs/models/responseseasyinputmessagephase.md b/docs/models/responseseasyinputmessagephase.md new file mode 100644 index 000000000..c3440b567 --- /dev/null +++ b/docs/models/responseseasyinputmessagephase.md @@ -0,0 +1,14 @@ +# ResponsesEasyInputMessagePhase + +## Example Usage + +```python +from mistralai.client.models import ResponsesEasyInputMessagePhase +value: ResponsesEasyInputMessagePhase = "commentary" +``` + + +## Values + +- `"commentary"` +- `"final_answer"` diff --git a/docs/models/responseseasyinputmessagerole.md b/docs/models/responseseasyinputmessagerole.md new file mode 100644 index 000000000..1697ad6b7 --- /dev/null +++ b/docs/models/responseseasyinputmessagerole.md @@ -0,0 +1,16 @@ +# ResponsesEasyInputMessageRole + +## Example Usage + +```python +from mistralai.client.models import ResponsesEasyInputMessageRole +value: ResponsesEasyInputMessageRole = "user" +``` + + +## Values + +- `"user"` +- `"assistant"` +- `"system"` +- `"developer"` diff --git a/docs/models/responseserror.md b/docs/models/responseserror.md new file mode 100644 index 000000000..bcc49981e --- /dev/null +++ b/docs/models/responseserror.md @@ -0,0 +1,10 @@ +# ResponsesError + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------- | -------------------------------- | -------------------------------- | -------------------------------- | +| `code` | [models.Code](../models/code.md) | :heavy_check_mark: | N/A | +| `message` | *str* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responseserrorevent.md b/docs/models/responseserrorevent.md new file mode 100644 index 000000000..4ee0e47aa --- /dev/null +++ b/docs/models/responseserrorevent.md @@ -0,0 +1,13 @@ +# ResponsesErrorEvent + + +## Fields + +| Field | Type | Required | Description | +| ----------------------- | ----------------------- | ----------------------- | ----------------------- | +| `code` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `message` | *str* | :heavy_check_mark: | N/A | +| `param` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["error"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfailedevent.md b/docs/models/responsesfailedevent.md new file mode 100644 index 000000000..8d812148a --- /dev/null +++ b/docs/models/responsesfailedevent.md @@ -0,0 +1,11 @@ +# ResponsesFailedEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `response` | [models.CreateResponseResponse](../models/createresponseresponse.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.failed"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctioncallargumentsdeltaevent.md b/docs/models/responsesfunctioncallargumentsdeltaevent.md new file mode 100644 index 000000000..7b1bcd57d --- /dev/null +++ b/docs/models/responsesfunctioncallargumentsdeltaevent.md @@ -0,0 +1,13 @@ +# ResponsesFunctionCallArgumentsDeltaEvent + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | --------------------------------------------------- | +| `delta` | *str* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.function_call_arguments.delta"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctioncallargumentsdoneevent.md b/docs/models/responsesfunctioncallargumentsdoneevent.md new file mode 100644 index 000000000..226f769dc --- /dev/null +++ b/docs/models/responsesfunctioncallargumentsdoneevent.md @@ -0,0 +1,14 @@ +# ResponsesFunctionCallArgumentsDoneEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | -------------------------------------------------- | +| `arguments` | *str* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `name` | *str* | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.function_call_arguments.done"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctioncalloutput.md b/docs/models/responsesfunctioncalloutput.md new file mode 100644 index 000000000..8e664dc22 --- /dev/null +++ b/docs/models/responsesfunctioncalloutput.md @@ -0,0 +1,14 @@ +# ResponsesFunctionCallOutput + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `call_id` | *str* | :heavy_check_mark: | N/A | +| `output` | [models.ResponsesFunctionCallOutputOutput2](../models/responsesfunctioncalloutputoutput2.md) | :heavy_check_mark: | N/A | +| `type` | *Literal["function_call_output"]* | :heavy_check_mark: | N/A | +| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `caller` | [OptionalNullable[models.ResponsesFunctionCallOutputCaller]](../models/responsesfunctioncalloutputcaller.md) | :heavy_minus_sign: | N/A | +| `status` | [OptionalNullable[models.ResponsesFunctionCallOutputStatus]](../models/responsesfunctioncalloutputstatus.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctioncalloutputcaller.md b/docs/models/responsesfunctioncalloutputcaller.md new file mode 100644 index 000000000..03e892f08 --- /dev/null +++ b/docs/models/responsesfunctioncalloutputcaller.md @@ -0,0 +1,17 @@ +# ResponsesFunctionCallOutputCaller + + +## Supported Types + +### `models.ResponsesFunctionCallOutputCallerDirect` + +```python +value: models.ResponsesFunctionCallOutputCallerDirect = /* values here */ +``` + +### `models.ResponsesFunctionCallOutputCallerProgram` + +```python +value: models.ResponsesFunctionCallOutputCallerProgram = /* values here */ +``` + diff --git a/docs/models/responsesfunctioncalloutputcallerdirect.md b/docs/models/responsesfunctioncalloutputcallerdirect.md new file mode 100644 index 000000000..d2f622497 --- /dev/null +++ b/docs/models/responsesfunctioncalloutputcallerdirect.md @@ -0,0 +1,9 @@ +# ResponsesFunctionCallOutputCallerDirect + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `type` | *Literal["direct"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctioncalloutputcallerprogram.md b/docs/models/responsesfunctioncalloutputcallerprogram.md new file mode 100644 index 000000000..cbfbbe6f3 --- /dev/null +++ b/docs/models/responsesfunctioncalloutputcallerprogram.md @@ -0,0 +1,10 @@ +# ResponsesFunctionCallOutputCallerProgram + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `caller_id` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["program"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctioncalloutputoutput1.md b/docs/models/responsesfunctioncalloutputoutput1.md new file mode 100644 index 000000000..66f55be20 --- /dev/null +++ b/docs/models/responsesfunctioncalloutputoutput1.md @@ -0,0 +1,23 @@ +# ResponsesFunctionCallOutputOutput1 + + +## Supported Types + +### `models.ResponsesInputTextContent` + +```python +value: models.ResponsesInputTextContent = /* values here */ +``` + +### `models.ResponsesInputImageContent` + +```python +value: models.ResponsesInputImageContent = /* values here */ +``` + +### `models.ResponsesInputFileContent` + +```python +value: models.ResponsesInputFileContent = /* values here */ +``` + diff --git a/docs/models/responsesfunctioncalloutputoutput2.md b/docs/models/responsesfunctioncalloutputoutput2.md new file mode 100644 index 000000000..62616d5fa --- /dev/null +++ b/docs/models/responsesfunctioncalloutputoutput2.md @@ -0,0 +1,17 @@ +# ResponsesFunctionCallOutputOutput2 + + +## Supported Types + +### `str` + +```python +value: str = /* values here */ +``` + +### `List[models.ResponsesFunctionCallOutputOutput1]` + +```python +value: List[models.ResponsesFunctionCallOutputOutput1] = /* values here */ +``` + diff --git a/docs/models/responsesfunctioncalloutputstatus.md b/docs/models/responsesfunctioncalloutputstatus.md new file mode 100644 index 000000000..e8a205201 --- /dev/null +++ b/docs/models/responsesfunctioncalloutputstatus.md @@ -0,0 +1,15 @@ +# ResponsesFunctionCallOutputStatus + +## Example Usage + +```python +from mistralai.client.models import ResponsesFunctionCallOutputStatus +value: ResponsesFunctionCallOutputStatus = "in_progress" +``` + + +## Values + +- `"in_progress"` +- `"completed"` +- `"incomplete"` diff --git a/docs/models/responsesfunctiontool.md b/docs/models/responsesfunctiontool.md new file mode 100644 index 000000000..849d1389a --- /dev/null +++ b/docs/models/responsesfunctiontool.md @@ -0,0 +1,16 @@ +# ResponsesFunctionTool + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `parameters` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | +| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `type` | *Literal["function"]* | :heavy_check_mark: | N/A | +| `allowed_callers` | List[[models.ResponsesFunctionToolAllowedCaller](../models/responsesfunctiontoolallowedcaller.md)] | :heavy_minus_sign: | N/A | +| `defer_loading` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `output_schema` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctiontoolallowedcaller.md b/docs/models/responsesfunctiontoolallowedcaller.md new file mode 100644 index 000000000..549387be9 --- /dev/null +++ b/docs/models/responsesfunctiontoolallowedcaller.md @@ -0,0 +1,14 @@ +# ResponsesFunctionToolAllowedCaller + +## Example Usage + +```python +from mistralai.client.models import ResponsesFunctionToolAllowedCaller +value: ResponsesFunctionToolAllowedCaller = "direct" +``` + + +## Values + +- `"direct"` +- `"programmatic"` diff --git a/docs/models/responsesfunctiontoolcall.md b/docs/models/responsesfunctiontoolcall.md new file mode 100644 index 000000000..a94f3c67f --- /dev/null +++ b/docs/models/responsesfunctiontoolcall.md @@ -0,0 +1,16 @@ +# ResponsesFunctionToolCall + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| `arguments` | *str* | :heavy_check_mark: | N/A | +| `call_id` | *str* | :heavy_check_mark: | N/A | +| `name` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["function_call"]* | :heavy_check_mark: | N/A | +| `id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `caller` | [OptionalNullable[models.ResponsesFunctionToolCallCaller]](../models/responsesfunctiontoolcallcaller.md) | :heavy_minus_sign: | N/A | +| `namespace` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `status` | [OptionalNullable[models.ResponsesFunctionToolCallStatus]](../models/responsesfunctiontoolcallstatus.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesfunctiontoolcallcaller.md b/docs/models/responsesfunctiontoolcallcaller.md new file mode 100644 index 000000000..b6b02cac6 --- /dev/null +++ b/docs/models/responsesfunctiontoolcallcaller.md @@ -0,0 +1,17 @@ +# ResponsesFunctionToolCallCaller + + +## Supported Types + +### `models.ResponsesCallerDirect` + +```python +value: models.ResponsesCallerDirect = /* values here */ +``` + +### `models.ResponsesCallerProgram` + +```python +value: models.ResponsesCallerProgram = /* values here */ +``` + diff --git a/docs/models/responsesfunctiontoolcallstatus.md b/docs/models/responsesfunctiontoolcallstatus.md new file mode 100644 index 000000000..1c73d89dc --- /dev/null +++ b/docs/models/responsesfunctiontoolcallstatus.md @@ -0,0 +1,15 @@ +# ResponsesFunctionToolCallStatus + +## Example Usage + +```python +from mistralai.client.models import ResponsesFunctionToolCallStatus +value: ResponsesFunctionToolCallStatus = "in_progress" +``` + + +## Values + +- `"in_progress"` +- `"completed"` +- `"incomplete"` diff --git a/docs/models/responsesgrammar.md b/docs/models/responsesgrammar.md new file mode 100644 index 000000000..25c4656a5 --- /dev/null +++ b/docs/models/responsesgrammar.md @@ -0,0 +1,11 @@ +# ResponsesGrammar + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------ | ------------------------------------ | ------------------------------------ | ------------------------------------ | +| `definition` | *str* | :heavy_check_mark: | N/A | +| `syntax` | [models.Syntax](../models/syntax.md) | :heavy_check_mark: | N/A | +| `type` | *Literal["grammar"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesincompletedetails.md b/docs/models/responsesincompletedetails.md new file mode 100644 index 000000000..f605c4391 --- /dev/null +++ b/docs/models/responsesincompletedetails.md @@ -0,0 +1,9 @@ +# ResponsesIncompleteDetails + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | +| `reason` | [OptionalNullable[models.Reason]](../models/reason.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesincompleteevent.md b/docs/models/responsesincompleteevent.md new file mode 100644 index 000000000..396c6f02e --- /dev/null +++ b/docs/models/responsesincompleteevent.md @@ -0,0 +1,11 @@ +# ResponsesIncompleteEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `response` | [models.CreateResponseResponse](../models/createresponseresponse.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.incomplete"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinprogressevent.md b/docs/models/responsesinprogressevent.md new file mode 100644 index 000000000..4fa2f4c88 --- /dev/null +++ b/docs/models/responsesinprogressevent.md @@ -0,0 +1,11 @@ +# ResponsesInProgressEvent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | -------------------------------------------------------------------- | +| `response` | [models.CreateResponseResponse](../models/createresponseresponse.md) | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.in_progress"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputfile.md b/docs/models/responsesinputfile.md new file mode 100644 index 000000000..087a4bde3 --- /dev/null +++ b/docs/models/responsesinputfile.md @@ -0,0 +1,15 @@ +# ResponsesInputFile + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | +| `type` | *Literal["input_file"]* | :heavy_check_mark: | N/A | +| `detail` | [OptionalNullable[models.ResponsesInputFileDetail]](../models/responsesinputfiledetail.md) | :heavy_minus_sign: | N/A | +| `file_data` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `file_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `file_url` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `filename` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `prompt_cache_breakpoint` | [OptionalNullable[models.ResponsesInputFileResponsesPromptCacheBreakpoint]](../models/responsesinputfileresponsespromptcachebreakpoint.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputfilecontent.md b/docs/models/responsesinputfilecontent.md new file mode 100644 index 000000000..d44afd4fb --- /dev/null +++ b/docs/models/responsesinputfilecontent.md @@ -0,0 +1,15 @@ +# ResponsesInputFileContent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `type` | *Literal["input_file"]* | :heavy_check_mark: | N/A | +| `detail` | [OptionalNullable[models.ResponsesInputFileContentDetail]](../models/responsesinputfilecontentdetail.md) | :heavy_minus_sign: | N/A | +| `file_data` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `file_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `file_url` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `filename` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `prompt_cache_breakpoint` | [OptionalNullable[models.ResponsesInputFileContentResponsesPromptCacheBreakpoint]](../models/responsesinputfilecontentresponsespromptcachebreakpoint.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputfilecontentdetail.md b/docs/models/responsesinputfilecontentdetail.md new file mode 100644 index 000000000..bf348a542 --- /dev/null +++ b/docs/models/responsesinputfilecontentdetail.md @@ -0,0 +1,15 @@ +# ResponsesInputFileContentDetail + +## Example Usage + +```python +from mistralai.client.models import ResponsesInputFileContentDetail +value: ResponsesInputFileContentDetail = "auto" +``` + + +## Values + +- `"auto"` +- `"low"` +- `"high"` diff --git a/docs/models/responsesinputfilecontentresponsespromptcachebreakpoint.md b/docs/models/responsesinputfilecontentresponsespromptcachebreakpoint.md new file mode 100644 index 000000000..a6ff9e70d --- /dev/null +++ b/docs/models/responsesinputfilecontentresponsespromptcachebreakpoint.md @@ -0,0 +1,9 @@ +# ResponsesInputFileContentResponsesPromptCacheBreakpoint + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `mode` | *Literal["explicit"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputfiledetail.md b/docs/models/responsesinputfiledetail.md new file mode 100644 index 000000000..06436bf69 --- /dev/null +++ b/docs/models/responsesinputfiledetail.md @@ -0,0 +1,15 @@ +# ResponsesInputFileDetail + +## Example Usage + +```python +from mistralai.client.models import ResponsesInputFileDetail +value: ResponsesInputFileDetail = "auto" +``` + + +## Values + +- `"auto"` +- `"low"` +- `"high"` diff --git a/docs/models/responsesinputfileresponsespromptcachebreakpoint.md b/docs/models/responsesinputfileresponsespromptcachebreakpoint.md new file mode 100644 index 000000000..f95ce0928 --- /dev/null +++ b/docs/models/responsesinputfileresponsespromptcachebreakpoint.md @@ -0,0 +1,9 @@ +# ResponsesInputFileResponsesPromptCacheBreakpoint + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `mode` | *Literal["explicit"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputimage.md b/docs/models/responsesinputimage.md new file mode 100644 index 000000000..2d03c3a4a --- /dev/null +++ b/docs/models/responsesinputimage.md @@ -0,0 +1,13 @@ +# ResponsesInputImage + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- | +| `detail` | [models.ResponsesInputImageDetail](../models/responsesinputimagedetail.md) | :heavy_check_mark: | N/A | +| `type` | *Literal["input_image"]* | :heavy_check_mark: | N/A | +| `file_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `image_url` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `prompt_cache_breakpoint` | [OptionalNullable[models.ResponsesInputImageResponsesPromptCacheBreakpoint]](../models/responsesinputimageresponsespromptcachebreakpoint.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputimagecontent.md b/docs/models/responsesinputimagecontent.md new file mode 100644 index 000000000..b03f8361e --- /dev/null +++ b/docs/models/responsesinputimagecontent.md @@ -0,0 +1,13 @@ +# ResponsesInputImageContent + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `type` | *Literal["input_image"]* | :heavy_check_mark: | N/A | +| `detail` | [OptionalNullable[models.ResponsesInputImageContentDetail]](../models/responsesinputimagecontentdetail.md) | :heavy_minus_sign: | N/A | +| `file_id` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `image_url` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `prompt_cache_breakpoint` | [OptionalNullable[models.ResponsesInputImageContentResponsesPromptCacheBreakpoint]](../models/responsesinputimagecontentresponsespromptcachebreakpoint.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputimagecontentdetail.md b/docs/models/responsesinputimagecontentdetail.md new file mode 100644 index 000000000..acec0ac41 --- /dev/null +++ b/docs/models/responsesinputimagecontentdetail.md @@ -0,0 +1,16 @@ +# ResponsesInputImageContentDetail + +## Example Usage + +```python +from mistralai.client.models import ResponsesInputImageContentDetail +value: ResponsesInputImageContentDetail = "low" +``` + + +## Values + +- `"low"` +- `"high"` +- `"auto"` +- `"original"` diff --git a/docs/models/responsesinputimagecontentresponsespromptcachebreakpoint.md b/docs/models/responsesinputimagecontentresponsespromptcachebreakpoint.md new file mode 100644 index 000000000..6ba15ded3 --- /dev/null +++ b/docs/models/responsesinputimagecontentresponsespromptcachebreakpoint.md @@ -0,0 +1,9 @@ +# ResponsesInputImageContentResponsesPromptCacheBreakpoint + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `mode` | *Literal["explicit"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputimagedetail.md b/docs/models/responsesinputimagedetail.md new file mode 100644 index 000000000..6d6bd60fc --- /dev/null +++ b/docs/models/responsesinputimagedetail.md @@ -0,0 +1,16 @@ +# ResponsesInputImageDetail + +## Example Usage + +```python +from mistralai.client.models import ResponsesInputImageDetail +value: ResponsesInputImageDetail = "low" +``` + + +## Values + +- `"low"` +- `"high"` +- `"auto"` +- `"original"` diff --git a/docs/models/responsesinputimageresponsespromptcachebreakpoint.md b/docs/models/responsesinputimageresponsespromptcachebreakpoint.md new file mode 100644 index 000000000..d0ab75dec --- /dev/null +++ b/docs/models/responsesinputimageresponsespromptcachebreakpoint.md @@ -0,0 +1,9 @@ +# ResponsesInputImageResponsesPromptCacheBreakpoint + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `mode` | *Literal["explicit"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputtext.md b/docs/models/responsesinputtext.md new file mode 100644 index 000000000..5168ae864 --- /dev/null +++ b/docs/models/responsesinputtext.md @@ -0,0 +1,11 @@ +# ResponsesInputText + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------ | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["input_text"]* | :heavy_check_mark: | N/A | +| `prompt_cache_breakpoint` | [OptionalNullable[models.ResponsesInputTextResponsesPromptCacheBreakpoint]](../models/responsesinputtextresponsespromptcachebreakpoint.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputtextcontent.md b/docs/models/responsesinputtextcontent.md new file mode 100644 index 000000000..293261bd7 --- /dev/null +++ b/docs/models/responsesinputtextcontent.md @@ -0,0 +1,11 @@ +# ResponsesInputTextContent + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["input_text"]* | :heavy_check_mark: | N/A | +| `prompt_cache_breakpoint` | [OptionalNullable[models.ResponsesInputTextContentResponsesPromptCacheBreakpoint]](../models/responsesinputtextcontentresponsespromptcachebreakpoint.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputtextcontentresponsespromptcachebreakpoint.md b/docs/models/responsesinputtextcontentresponsespromptcachebreakpoint.md new file mode 100644 index 000000000..a18aa4fa6 --- /dev/null +++ b/docs/models/responsesinputtextcontentresponsespromptcachebreakpoint.md @@ -0,0 +1,9 @@ +# ResponsesInputTextContentResponsesPromptCacheBreakpoint + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `mode` | *Literal["explicit"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputtextresponsespromptcachebreakpoint.md b/docs/models/responsesinputtextresponsespromptcachebreakpoint.md new file mode 100644 index 000000000..5e8e499e5 --- /dev/null +++ b/docs/models/responsesinputtextresponsespromptcachebreakpoint.md @@ -0,0 +1,9 @@ +# ResponsesInputTextResponsesPromptCacheBreakpoint + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `mode` | *Literal["explicit"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesinputtokensdetails.md b/docs/models/responsesinputtokensdetails.md new file mode 100644 index 000000000..1c446a7c5 --- /dev/null +++ b/docs/models/responsesinputtokensdetails.md @@ -0,0 +1,10 @@ +# ResponsesInputTokensDetails + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `cache_write_tokens` | *int* | :heavy_check_mark: | N/A | +| `cached_tokens` | *int* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesmessage.md b/docs/models/responsesmessage.md new file mode 100644 index 000000000..bc4b4e1f3 --- /dev/null +++ b/docs/models/responsesmessage.md @@ -0,0 +1,12 @@ +# ResponsesMessage + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------- | +| `content` | List[[models.ResponsesMessageContent](../models/responsesmessagecontent.md)] | :heavy_check_mark: | N/A | +| `role` | [models.ResponsesMessageRole](../models/responsesmessagerole.md) | :heavy_check_mark: | N/A | +| `status` | [OptionalNullable[models.ResponsesMessageStatus]](../models/responsesmessagestatus.md) | :heavy_minus_sign: | N/A | +| `type` | *OptionalNullable[Literal["message"]]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesmessagecontent.md b/docs/models/responsesmessagecontent.md new file mode 100644 index 000000000..c9b8b8d6b --- /dev/null +++ b/docs/models/responsesmessagecontent.md @@ -0,0 +1,23 @@ +# ResponsesMessageContent + + +## Supported Types + +### `models.ResponsesInputText` + +```python +value: models.ResponsesInputText = /* values here */ +``` + +### `models.ResponsesInputImage` + +```python +value: models.ResponsesInputImage = /* values here */ +``` + +### `models.ResponsesInputFile` + +```python +value: models.ResponsesInputFile = /* values here */ +``` + diff --git a/docs/models/responsesmessagerole.md b/docs/models/responsesmessagerole.md new file mode 100644 index 000000000..dee2375bb --- /dev/null +++ b/docs/models/responsesmessagerole.md @@ -0,0 +1,15 @@ +# ResponsesMessageRole + +## Example Usage + +```python +from mistralai.client.models import ResponsesMessageRole +value: ResponsesMessageRole = "user" +``` + + +## Values + +- `"user"` +- `"system"` +- `"developer"` diff --git a/docs/models/responsesmessagestatus.md b/docs/models/responsesmessagestatus.md new file mode 100644 index 000000000..aaf7b220a --- /dev/null +++ b/docs/models/responsesmessagestatus.md @@ -0,0 +1,15 @@ +# ResponsesMessageStatus + +## Example Usage + +```python +from mistralai.client.models import ResponsesMessageStatus +value: ResponsesMessageStatus = "in_progress" +``` + + +## Values + +- `"in_progress"` +- `"completed"` +- `"incomplete"` diff --git a/docs/models/responsesnamespacetool.md b/docs/models/responsesnamespacetool.md new file mode 100644 index 000000000..0699a4510 --- /dev/null +++ b/docs/models/responsesnamespacetool.md @@ -0,0 +1,12 @@ +# ResponsesNamespaceTool + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `description` | *str* | :heavy_check_mark: | N/A | +| `name` | *str* | :heavy_check_mark: | N/A | +| `tools` | List[[models.ResponsesNamespaceToolTool](../models/responsesnamespacetooltool.md)] | :heavy_check_mark: | N/A | +| `type` | *Literal["namespace"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesnamespacetooltool.md b/docs/models/responsesnamespacetooltool.md new file mode 100644 index 000000000..d36549f76 --- /dev/null +++ b/docs/models/responsesnamespacetooltool.md @@ -0,0 +1,17 @@ +# ResponsesNamespaceToolTool + + +## Supported Types + +### `models.ResponsesToolFunction` + +```python +value: models.ResponsesToolFunction = /* values here */ +``` + +### `models.ResponsesCustomTool` + +```python +value: models.ResponsesCustomTool = /* values here */ +``` + diff --git a/docs/models/responsesoutputitemaddedevent.md b/docs/models/responsesoutputitemaddedevent.md new file mode 100644 index 000000000..e09fa3829 --- /dev/null +++ b/docs/models/responsesoutputitemaddedevent.md @@ -0,0 +1,12 @@ +# ResponsesOutputItemAddedEvent + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | +| `item` | [models.ResponsesOutputItemAddedEventItem](../models/responsesoutputitemaddedeventitem.md) | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.output_item.added"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputitemaddedeventitem.md b/docs/models/responsesoutputitemaddedeventitem.md new file mode 100644 index 000000000..c974ab90a --- /dev/null +++ b/docs/models/responsesoutputitemaddedeventitem.md @@ -0,0 +1,23 @@ +# ResponsesOutputItemAddedEventItem + + +## Supported Types + +### `models.ResponsesOutputMessage` + +```python +value: models.ResponsesOutputMessage = /* values here */ +``` + +### `models.ResponsesFunctionToolCall` + +```python +value: models.ResponsesFunctionToolCall = /* values here */ +``` + +### `models.ResponsesReasoningItem` + +```python +value: models.ResponsesReasoningItem = /* values here */ +``` + diff --git a/docs/models/responsesoutputitemdoneevent.md b/docs/models/responsesoutputitemdoneevent.md new file mode 100644 index 000000000..8e00afe23 --- /dev/null +++ b/docs/models/responsesoutputitemdoneevent.md @@ -0,0 +1,12 @@ +# ResponsesOutputItemDoneEvent + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| `item` | [models.ResponsesOutputItemDoneEventItem](../models/responsesoutputitemdoneeventitem.md) | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.output_item.done"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputitemdoneeventitem.md b/docs/models/responsesoutputitemdoneeventitem.md new file mode 100644 index 000000000..68a7303e3 --- /dev/null +++ b/docs/models/responsesoutputitemdoneeventitem.md @@ -0,0 +1,23 @@ +# ResponsesOutputItemDoneEventItem + + +## Supported Types + +### `models.ResponsesOutputMessage` + +```python +value: models.ResponsesOutputMessage = /* values here */ +``` + +### `models.ResponsesFunctionToolCall` + +```python +value: models.ResponsesFunctionToolCall = /* values here */ +``` + +### `models.ResponsesReasoningItem` + +```python +value: models.ResponsesReasoningItem = /* values here */ +``` + diff --git a/docs/models/responsesoutputmessage.md b/docs/models/responsesoutputmessage.md new file mode 100644 index 000000000..d6344074a --- /dev/null +++ b/docs/models/responsesoutputmessage.md @@ -0,0 +1,14 @@ +# ResponsesOutputMessage + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `id` | *str* | :heavy_check_mark: | N/A | +| `content` | List[[models.ResponsesOutputMessageContent](../models/responsesoutputmessagecontent.md)] | :heavy_check_mark: | N/A | +| `role` | *Literal["assistant"]* | :heavy_check_mark: | N/A | +| `status` | [models.ResponsesOutputMessageStatus](../models/responsesoutputmessagestatus.md) | :heavy_check_mark: | N/A | +| `type` | *Literal["message"]* | :heavy_check_mark: | N/A | +| `phase` | [OptionalNullable[models.ResponsesOutputMessagePhase]](../models/responsesoutputmessagephase.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputmessagecontent.md b/docs/models/responsesoutputmessagecontent.md new file mode 100644 index 000000000..d486fbba5 --- /dev/null +++ b/docs/models/responsesoutputmessagecontent.md @@ -0,0 +1,17 @@ +# ResponsesOutputMessageContent + + +## Supported Types + +### `models.ResponsesOutputText` + +```python +value: models.ResponsesOutputText = /* values here */ +``` + +### `models.ResponsesOutputRefusal` + +```python +value: models.ResponsesOutputRefusal = /* values here */ +``` + diff --git a/docs/models/responsesoutputmessagephase.md b/docs/models/responsesoutputmessagephase.md new file mode 100644 index 000000000..b83278726 --- /dev/null +++ b/docs/models/responsesoutputmessagephase.md @@ -0,0 +1,14 @@ +# ResponsesOutputMessagePhase + +## Example Usage + +```python +from mistralai.client.models import ResponsesOutputMessagePhase +value: ResponsesOutputMessagePhase = "commentary" +``` + + +## Values + +- `"commentary"` +- `"final_answer"` diff --git a/docs/models/responsesoutputmessagestatus.md b/docs/models/responsesoutputmessagestatus.md new file mode 100644 index 000000000..74a8a0491 --- /dev/null +++ b/docs/models/responsesoutputmessagestatus.md @@ -0,0 +1,15 @@ +# ResponsesOutputMessageStatus + +## Example Usage + +```python +from mistralai.client.models import ResponsesOutputMessageStatus +value: ResponsesOutputMessageStatus = "in_progress" +``` + + +## Values + +- `"in_progress"` +- `"completed"` +- `"incomplete"` diff --git a/docs/models/responsesoutputrefusal.md b/docs/models/responsesoutputrefusal.md new file mode 100644 index 000000000..304f30c8f --- /dev/null +++ b/docs/models/responsesoutputrefusal.md @@ -0,0 +1,10 @@ +# ResponsesOutputRefusal + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `refusal` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["refusal"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputtext.md b/docs/models/responsesoutputtext.md new file mode 100644 index 000000000..77a1f4f63 --- /dev/null +++ b/docs/models/responsesoutputtext.md @@ -0,0 +1,12 @@ +# ResponsesOutputText + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `annotations` | List[[models.Annotation](../models/annotation.md)] | :heavy_check_mark: | N/A | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["output_text"]* | :heavy_check_mark: | N/A | +| `logprobs` | List[[models.ResponsesOutputTextLogprob](../models/responsesoutputtextlogprob.md)] | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputtextlogprob.md b/docs/models/responsesoutputtextlogprob.md new file mode 100644 index 000000000..c58031349 --- /dev/null +++ b/docs/models/responsesoutputtextlogprob.md @@ -0,0 +1,12 @@ +# ResponsesOutputTextLogprob + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------ | +| `token` | *str* | :heavy_check_mark: | N/A | +| `bytes_` | List[*int*] | :heavy_check_mark: | N/A | +| `logprob` | *float* | :heavy_check_mark: | N/A | +| `top_logprobs` | List[[models.ResponsesOutputTextLogprobTopLogprob](../models/responsesoutputtextlogprobtoplogprob.md)] | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputtextlogprobtoplogprob.md b/docs/models/responsesoutputtextlogprobtoplogprob.md new file mode 100644 index 000000000..e5603d9f1 --- /dev/null +++ b/docs/models/responsesoutputtextlogprobtoplogprob.md @@ -0,0 +1,11 @@ +# ResponsesOutputTextLogprobTopLogprob + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `token` | *str* | :heavy_check_mark: | N/A | +| `bytes_` | List[*int*] | :heavy_check_mark: | N/A | +| `logprob` | *float* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesoutputtokensdetails.md b/docs/models/responsesoutputtokensdetails.md new file mode 100644 index 000000000..024f16f7b --- /dev/null +++ b/docs/models/responsesoutputtokensdetails.md @@ -0,0 +1,9 @@ +# ResponsesOutputTokensDetails + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `reasoning_tokens` | *int* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsespartreasoningtext.md b/docs/models/responsespartreasoningtext.md new file mode 100644 index 000000000..f7c818d1d --- /dev/null +++ b/docs/models/responsespartreasoningtext.md @@ -0,0 +1,10 @@ +# ResponsesPartReasoningText + + +## Fields + +| Field | Type | Required | Description | +| --------------------------- | --------------------------- | --------------------------- | --------------------------- | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["reasoning_text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesreasoningitem.md b/docs/models/responsesreasoningitem.md new file mode 100644 index 000000000..484421253 --- /dev/null +++ b/docs/models/responsesreasoningitem.md @@ -0,0 +1,14 @@ +# ResponsesReasoningItem + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | +| `id` | *str* | :heavy_check_mark: | N/A | +| `summary` | List[[models.ResponsesSummary](../models/responsessummary.md)] | :heavy_check_mark: | N/A | +| `type` | *Literal["reasoning"]* | :heavy_check_mark: | N/A | +| `content` | List[[models.ResponsesContent](../models/responsescontent.md)] | :heavy_minus_sign: | N/A | +| `encrypted_content` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `status` | [OptionalNullable[models.ResponsesReasoningItemStatus]](../models/responsesreasoningitemstatus.md) | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesreasoningitemstatus.md b/docs/models/responsesreasoningitemstatus.md new file mode 100644 index 000000000..50fc29847 --- /dev/null +++ b/docs/models/responsesreasoningitemstatus.md @@ -0,0 +1,15 @@ +# ResponsesReasoningItemStatus + +## Example Usage + +```python +from mistralai.client.models import ResponsesReasoningItemStatus +value: ResponsesReasoningItemStatus = "in_progress" +``` + + +## Values + +- `"in_progress"` +- `"completed"` +- `"incomplete"` diff --git a/docs/models/responsesreasoningtextdeltaevent.md b/docs/models/responsesreasoningtextdeltaevent.md new file mode 100644 index 000000000..4c71983ce --- /dev/null +++ b/docs/models/responsesreasoningtextdeltaevent.md @@ -0,0 +1,14 @@ +# ResponsesReasoningTextDeltaEvent + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | ------------------------------------------ | +| `content_index` | *int* | :heavy_check_mark: | N/A | +| `delta` | *str* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.reasoning_text.delta"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesreasoningtextdoneevent.md b/docs/models/responsesreasoningtextdoneevent.md new file mode 100644 index 000000000..d1258d125 --- /dev/null +++ b/docs/models/responsesreasoningtextdoneevent.md @@ -0,0 +1,14 @@ +# ResponsesReasoningTextDoneEvent + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | ----------------------------------------- | +| `content_index` | *int* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.reasoning_text.done"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsesstreamframe.md b/docs/models/responsesstreamframe.md new file mode 100644 index 000000000..39d65524d --- /dev/null +++ b/docs/models/responsesstreamframe.md @@ -0,0 +1,9 @@ +# ResponsesStreamFrame + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| `event` | *str* | :heavy_check_mark: | N/A | +| `data` | [models.ResponsesStreamFrameData](../models/responsesstreamframedata.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/docs/models/responsesstreamframedata.md b/docs/models/responsesstreamframedata.md new file mode 100644 index 000000000..c0a12616b --- /dev/null +++ b/docs/models/responsesstreamframedata.md @@ -0,0 +1,101 @@ +# ResponsesStreamFrameData + + +## Supported Types + +### `models.ResponsesCreatedEvent` + +```python +value: models.ResponsesCreatedEvent = /* values here */ +``` + +### `models.ResponsesInProgressEvent` + +```python +value: models.ResponsesInProgressEvent = /* values here */ +``` + +### `models.ResponsesCompletedEvent` + +```python +value: models.ResponsesCompletedEvent = /* values here */ +``` + +### `models.ResponsesIncompleteEvent` + +```python +value: models.ResponsesIncompleteEvent = /* values here */ +``` + +### `models.ResponsesFailedEvent` + +```python +value: models.ResponsesFailedEvent = /* values here */ +``` + +### `models.ResponsesErrorEvent` + +```python +value: models.ResponsesErrorEvent = /* values here */ +``` + +### `models.ResponsesOutputItemAddedEvent` + +```python +value: models.ResponsesOutputItemAddedEvent = /* values here */ +``` + +### `models.ResponsesOutputItemDoneEvent` + +```python +value: models.ResponsesOutputItemDoneEvent = /* values here */ +``` + +### `models.ResponsesContentPartAddedEvent` + +```python +value: models.ResponsesContentPartAddedEvent = /* values here */ +``` + +### `models.ResponsesContentPartDoneEvent` + +```python +value: models.ResponsesContentPartDoneEvent = /* values here */ +``` + +### `models.ResponsesTextDeltaEvent` + +```python +value: models.ResponsesTextDeltaEvent = /* values here */ +``` + +### `models.ResponsesTextDoneEvent` + +```python +value: models.ResponsesTextDoneEvent = /* values here */ +``` + +### `models.ResponsesReasoningTextDeltaEvent` + +```python +value: models.ResponsesReasoningTextDeltaEvent = /* values here */ +``` + +### `models.ResponsesReasoningTextDoneEvent` + +```python +value: models.ResponsesReasoningTextDoneEvent = /* values here */ +``` + +### `models.ResponsesFunctionCallArgumentsDeltaEvent` + +```python +value: models.ResponsesFunctionCallArgumentsDeltaEvent = /* values here */ +``` + +### `models.ResponsesFunctionCallArgumentsDoneEvent` + +```python +value: models.ResponsesFunctionCallArgumentsDoneEvent = /* values here */ +``` + diff --git a/docs/models/responsessummary.md b/docs/models/responsessummary.md new file mode 100644 index 000000000..3afa8b470 --- /dev/null +++ b/docs/models/responsessummary.md @@ -0,0 +1,10 @@ +# ResponsesSummary + + +## Fields + +| Field | Type | Required | Description | +| ------------------------- | ------------------------- | ------------------------- | ------------------------- | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["summary_text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsessupportedreasoningeffort.md b/docs/models/responsessupportedreasoningeffort.md new file mode 100644 index 000000000..a41a109bc --- /dev/null +++ b/docs/models/responsessupportedreasoningeffort.md @@ -0,0 +1,19 @@ +# ResponsesSupportedReasoningEffort + +## Example Usage + +```python +from mistralai.client.models import ResponsesSupportedReasoningEffort +value: ResponsesSupportedReasoningEffort = "none" +``` + + +## Values + +- `"none"` +- `"minimal"` +- `"low"` +- `"medium"` +- `"high"` +- `"xhigh"` +- `"max"` diff --git a/docs/models/responsestext.md b/docs/models/responsestext.md new file mode 100644 index 000000000..1da1b04e5 --- /dev/null +++ b/docs/models/responsestext.md @@ -0,0 +1,9 @@ +# ResponsesText + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `type` | *Literal["text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextconfigformat.md b/docs/models/responsestextconfigformat.md new file mode 100644 index 000000000..1d18de257 --- /dev/null +++ b/docs/models/responsestextconfigformat.md @@ -0,0 +1,23 @@ +# ResponsesTextConfigFormat + + +## Supported Types + +### `models.ResponsesTextConfigResponsesFormatText` + +```python +value: models.ResponsesTextConfigResponsesFormatText = /* values here */ +``` + +### `models.ResponsesTextConfigResponsesFormatTextJSONSchemaConfig` + +```python +value: models.ResponsesTextConfigResponsesFormatTextJSONSchemaConfig = /* values here */ +``` + +### `models.ResponsesTextConfigResponsesFormatJSONObject` + +```python +value: models.ResponsesTextConfigResponsesFormatJSONObject = /* values here */ +``` + diff --git a/docs/models/responsestextconfigresponsesformatjsonobject.md b/docs/models/responsestextconfigresponsesformatjsonobject.md new file mode 100644 index 000000000..b4d695fa1 --- /dev/null +++ b/docs/models/responsestextconfigresponsesformatjsonobject.md @@ -0,0 +1,9 @@ +# ResponsesTextConfigResponsesFormatJSONObject + + +## Fields + +| Field | Type | Required | Description | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `type` | *Literal["json_object"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextconfigresponsesformattext.md b/docs/models/responsestextconfigresponsesformattext.md new file mode 100644 index 000000000..9d6ffb9f5 --- /dev/null +++ b/docs/models/responsestextconfigresponsesformattext.md @@ -0,0 +1,9 @@ +# ResponsesTextConfigResponsesFormatText + + +## Fields + +| Field | Type | Required | Description | +| -------------------- | -------------------- | -------------------- | -------------------- | +| `type` | *Literal["text"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextconfigresponsesformattextjsonschemaconfig.md b/docs/models/responsestextconfigresponsesformattextjsonschemaconfig.md new file mode 100644 index 000000000..c0b2b2641 --- /dev/null +++ b/docs/models/responsestextconfigresponsesformattextjsonschemaconfig.md @@ -0,0 +1,13 @@ +# ResponsesTextConfigResponsesFormatTextJSONSchemaConfig + + +## Fields + +| Field | Type | Required | Description | +| ------------------------ | ------------------------ | ------------------------ | ------------------------ | +| `name` | *str* | :heavy_check_mark: | N/A | +| `schema_` | Dict[str, *Any*] | :heavy_check_mark: | N/A | +| `type` | *Literal["json_schema"]* | :heavy_check_mark: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextconfigverbosity.md b/docs/models/responsestextconfigverbosity.md new file mode 100644 index 000000000..616df015a --- /dev/null +++ b/docs/models/responsestextconfigverbosity.md @@ -0,0 +1,15 @@ +# ResponsesTextConfigVerbosity + +## Example Usage + +```python +from mistralai.client.models import ResponsesTextConfigVerbosity +value: ResponsesTextConfigVerbosity = "low" +``` + + +## Values + +- `"low"` +- `"medium"` +- `"high"` diff --git a/docs/models/responsestextdeltaevent.md b/docs/models/responsestextdeltaevent.md new file mode 100644 index 000000000..5284e23e6 --- /dev/null +++ b/docs/models/responsestextdeltaevent.md @@ -0,0 +1,15 @@ +# ResponsesTextDeltaEvent + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | +| `content_index` | *int* | :heavy_check_mark: | N/A | +| `delta` | *str* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `logprobs` | List[[models.ResponsesTextDeltaEventLogprob](../models/responsestextdeltaeventlogprob.md)] | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.output_text.delta"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextdeltaeventlogprob.md b/docs/models/responsestextdeltaeventlogprob.md new file mode 100644 index 000000000..83584d610 --- /dev/null +++ b/docs/models/responsestextdeltaeventlogprob.md @@ -0,0 +1,11 @@ +# ResponsesTextDeltaEventLogprob + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------- | +| `token` | *str* | :heavy_check_mark: | N/A | +| `logprob` | *float* | :heavy_check_mark: | N/A | +| `top_logprobs` | List[[models.ResponsesTextDeltaEventLogprobTopLogprob](../models/responsestextdeltaeventlogprobtoplogprob.md)] | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextdeltaeventlogprobtoplogprob.md b/docs/models/responsestextdeltaeventlogprobtoplogprob.md new file mode 100644 index 000000000..2e198f930 --- /dev/null +++ b/docs/models/responsestextdeltaeventlogprobtoplogprob.md @@ -0,0 +1,10 @@ +# ResponsesTextDeltaEventLogprobTopLogprob + + +## Fields + +| Field | Type | Required | Description | +| ------------------------- | ------------------------- | ------------------------- | ------------------------- | +| `token` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `logprob` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextdoneevent.md b/docs/models/responsestextdoneevent.md new file mode 100644 index 000000000..c8340347a --- /dev/null +++ b/docs/models/responsestextdoneevent.md @@ -0,0 +1,15 @@ +# ResponsesTextDoneEvent + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | +| `content_index` | *int* | :heavy_check_mark: | N/A | +| `item_id` | *str* | :heavy_check_mark: | N/A | +| `logprobs` | List[[models.ResponsesTextDoneEventLogprob](../models/responsestextdoneeventlogprob.md)] | :heavy_check_mark: | N/A | +| `output_index` | *int* | :heavy_check_mark: | N/A | +| `sequence_number` | *int* | :heavy_check_mark: | N/A | +| `text` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["response.output_text.done"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextdoneeventlogprob.md b/docs/models/responsestextdoneeventlogprob.md new file mode 100644 index 000000000..dd01cf033 --- /dev/null +++ b/docs/models/responsestextdoneeventlogprob.md @@ -0,0 +1,11 @@ +# ResponsesTextDoneEventLogprob + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `token` | *str* | :heavy_check_mark: | N/A | +| `logprob` | *float* | :heavy_check_mark: | N/A | +| `top_logprobs` | List[[models.ResponsesTextDoneEventLogprobTopLogprob](../models/responsestextdoneeventlogprobtoplogprob.md)] | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestextdoneeventlogprobtoplogprob.md b/docs/models/responsestextdoneeventlogprobtoplogprob.md new file mode 100644 index 000000000..ede46d3f7 --- /dev/null +++ b/docs/models/responsestextdoneeventlogprobtoplogprob.md @@ -0,0 +1,10 @@ +# ResponsesTextDoneEventLogprobTopLogprob + + +## Fields + +| Field | Type | Required | Description | +| ------------------------- | ------------------------- | ------------------------- | ------------------------- | +| `token` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `logprob` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestoolchoicefunction.md b/docs/models/responsestoolchoicefunction.md new file mode 100644 index 000000000..ab7319f75 --- /dev/null +++ b/docs/models/responsestoolchoicefunction.md @@ -0,0 +1,10 @@ +# ResponsesToolChoiceFunction + + +## Fields + +| Field | Type | Required | Description | +| --------------------- | --------------------- | --------------------- | --------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["function"]* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestoolfunction.md b/docs/models/responsestoolfunction.md new file mode 100644 index 000000000..dccb34f33 --- /dev/null +++ b/docs/models/responsestoolfunction.md @@ -0,0 +1,16 @@ +# ResponsesToolFunction + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `type` | *Literal["function"]* | :heavy_check_mark: | N/A | +| `allowed_callers` | List[[models.ResponsesToolFunctionAllowedCaller](../models/responsestoolfunctionallowedcaller.md)] | :heavy_minus_sign: | N/A | +| `defer_loading` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `output_schema` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | +| `parameters` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `strict` | *OptionalNullable[bool]* | :heavy_minus_sign: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/responsestoolfunctionallowedcaller.md b/docs/models/responsestoolfunctionallowedcaller.md new file mode 100644 index 000000000..ef15e18a2 --- /dev/null +++ b/docs/models/responsestoolfunctionallowedcaller.md @@ -0,0 +1,14 @@ +# ResponsesToolFunctionAllowedCaller + +## Example Usage + +```python +from mistralai.client.models import ResponsesToolFunctionAllowedCaller +value: ResponsesToolFunctionAllowedCaller = "direct" +``` + + +## Values + +- `"direct"` +- `"programmatic"` diff --git a/docs/models/responsesusage.md b/docs/models/responsesusage.md new file mode 100644 index 000000000..c3fc448a5 --- /dev/null +++ b/docs/models/responsesusage.md @@ -0,0 +1,13 @@ +# ResponsesUsage + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | +| `input_tokens` | *int* | :heavy_check_mark: | N/A | +| `input_tokens_details` | [models.ResponsesInputTokensDetails](../models/responsesinputtokensdetails.md) | :heavy_check_mark: | N/A | +| `output_tokens` | *int* | :heavy_check_mark: | N/A | +| `output_tokens_details` | [models.ResponsesOutputTokensDetails](../models/responsesoutputtokensdetails.md) | :heavy_check_mark: | N/A | +| `total_tokens` | *int* | :heavy_check_mark: | N/A | +| `__pydantic_extra__` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/docs/models/servicetier.md b/docs/models/servicetier.md new file mode 100644 index 000000000..0c35cf78d --- /dev/null +++ b/docs/models/servicetier.md @@ -0,0 +1,17 @@ +# ServiceTier + +## Example Usage + +```python +from mistralai.client.models import ServiceTier +value: ServiceTier = "auto" +``` + + +## Values + +- `"auto"` +- `"default"` +- `"flex"` +- `"scale"` +- `"priority"` diff --git a/docs/models/syntax.md b/docs/models/syntax.md new file mode 100644 index 000000000..1b8107cdd --- /dev/null +++ b/docs/models/syntax.md @@ -0,0 +1,14 @@ +# Syntax + +## Example Usage + +```python +from mistralai.client.models import Syntax +value: Syntax = "lark" +``` + + +## Values + +- `"lark"` +- `"regex"` diff --git a/docs/models/truncation.md b/docs/models/truncation.md new file mode 100644 index 000000000..3dc0230a4 --- /dev/null +++ b/docs/models/truncation.md @@ -0,0 +1,14 @@ +# Truncation + +## Example Usage + +```python +from mistralai.client.models import Truncation +value: Truncation = "auto" +``` + + +## Values + +- `"auto"` +- `"disabled"` diff --git a/docs/sdks/audioagents/README.md b/docs/sdks/audioagents/README.md index fe12aa23b..44bae8e59 100644 --- a/docs/sdks/audioagents/README.md +++ b/docs/sdks/audioagents/README.md @@ -73,7 +73,7 @@ with Mistral( api_key=os.getenv("MISTRAL_API_KEY", ""), ) as mistral: - res = mistral.audio.agents.create(name="") + res = mistral.audio.agents.create(name="", configuration={}) # Handle response print(res) @@ -82,12 +82,12 @@ with Mistral( ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------- | -| `name` | *str* | :heavy_check_mark: | N/A | -| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | -| `configuration` | [OptionalNullable[models.AudioAgentConfigurationRequest]](../../models/audioagentconfigurationrequest.md) | :heavy_minus_sign: | N/A | -| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | +| `name` | *str* | :heavy_check_mark: | N/A | +| `configuration` | [models.AudioAgentConfigurationRequest](../../models/audioagentconfigurationrequest.md) | :heavy_check_mark: | N/A | +| `description` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | ### Response diff --git a/docs/sdks/managedindexes/README.md b/docs/sdks/managedindexes/README.md index 40ece668c..86c00374f 100644 --- a/docs/sdks/managedindexes/README.md +++ b/docs/sdks/managedindexes/README.md @@ -348,6 +348,7 @@ with Mistral( models.KeywordRetriever( top_k=20, query="", + operator="or", ), ], rank_constant=60, diff --git a/docs/sdks/responses/README.md b/docs/sdks/responses/README.md new file mode 100644 index 000000000..397ab7b2c --- /dev/null +++ b/docs/sdks/responses/README.md @@ -0,0 +1,145 @@ +# Responses + +## Overview + +Stateless Responses API for text, images, reasoning, function calls, and streaming. + +### Available Operations + +* [create](#create) - Create Response +* [count_input_tokens](#count_input_tokens) - Count Input Tokens + +## create + +Create a response. + +Generate a model response from text or image inputs. The response can +include text, reasoning, and function calls. Set stream to true to +receive Server-Sent Events. + +For multi-turn conversations, send the full history in input, including +prior output items and function results. Responses are not stored. Only +client-executed function tools are supported. + +### Example Usage + + +```python +from mistralai.client import Mistral +import os + + +with Mistral( + api_key=os.getenv("MISTRAL_API_KEY", ""), +) as mistral: + + res = mistral.responses.create(model="V90", input=[], parallel_tool_calls=True, stream=False, additional_properties={ + "truncation": "disabled", + "background": False, + "store": False, + "top_logprobs": 0, + }) + + with res as event_stream: + for event in event_stream: + # handle event + print(event, flush=True) + +``` + +### Parameters + +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | +| `model` | *str* | :heavy_check_mark: | N/A | +| `input` | [models.CreateResponseRequestInput2](../../models/createresponserequestinput2.md) | :heavy_check_mark: | N/A | +| `instructions` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `parallel_tool_calls` | *Optional[bool]* | :heavy_minus_sign: | N/A | +| `previous_response_id` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `tools` | List[[models.CreateResponseRequestTool](../../models/createresponserequesttool.md)] | :heavy_minus_sign: | N/A | +| `tool_choice` | [Optional[models.CreateResponseRequestToolChoiceUnion]](../../models/createresponserequesttoolchoiceunion.md) | :heavy_minus_sign: | N/A | +| `reasoning` | [OptionalNullable[models.CreateResponseRequestResponsesSupportedReasoning]](../../models/createresponserequestresponsessupportedreasoning.md) | :heavy_minus_sign: | N/A | +| `conversation` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `prompt` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `text` | [OptionalNullable[models.CreateResponseRequestResponsesTextConfig]](../../models/createresponserequestresponsestextconfig.md) | :heavy_minus_sign: | N/A | +| `stream` | *Optional[bool]* | :heavy_minus_sign: | N/A | +| `max_output_tokens` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `temperature` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `top_p` | *OptionalNullable[float]* | :heavy_minus_sign: | N/A | +| `metadata` | Dict[str, *str*] | :heavy_minus_sign: | N/A | +| `prompt_cache_key` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `max_tool_calls` | *OptionalNullable[int]* | :heavy_minus_sign: | N/A | +| `moderation` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `additional_properties` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | + +### Response + +**[models.CreateResponseV1ResponsesPostResponse](../../models/createresponsev1responsespostresponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------- | --------------- | --------------- | +| errors.SDKError | 4XX, 5XX | \*/\* | + +## count_input_tokens + +Count response input tokens. + +Count the input tokens for a Responses request without generating a +response. The count includes the supplied conversation, instructions, +and tool definitions. + +Use the same input, instructions, and tools that you plan to send when +creating a response. For multi-turn conversations, include prior output +items and function results in input. + +### Example Usage + + +```python +from mistralai.client import Mistral +import os + + +with Mistral( + api_key=os.getenv("MISTRAL_API_KEY", ""), +) as mistral: + + res = mistral.responses.count_input_tokens(model="Corvette", input="", parallel_tool_calls=True, additional_properties={ + "truncation": "disabled", + }) + + # Handle response + print(res) + +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `model` | *str* | :heavy_check_mark: | N/A | +| `input` | [models.CountResponseInputTokensRequestInput2](../../models/countresponseinputtokensrequestinput2.md) | :heavy_check_mark: | N/A | +| `instructions` | *OptionalNullable[str]* | :heavy_minus_sign: | N/A | +| `parallel_tool_calls` | *Optional[bool]* | :heavy_minus_sign: | N/A | +| `previous_response_id` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `tools` | List[[models.CountResponseInputTokensRequestTool](../../models/countresponseinputtokensrequesttool.md)] | :heavy_minus_sign: | N/A | +| `tool_choice` | [Optional[models.CountResponseInputTokensRequestToolChoiceUnion]](../../models/countresponseinputtokensrequesttoolchoiceunion.md) | :heavy_minus_sign: | N/A | +| `reasoning` | [OptionalNullable[models.CountResponseInputTokensRequestResponsesSupportedReasoning]](../../models/countresponseinputtokensrequestresponsessupportedreasoning.md) | :heavy_minus_sign: | N/A | +| `conversation` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `prompt` | *OptionalNullable[Any]* | :heavy_minus_sign: | N/A | +| `text` | [OptionalNullable[models.CountResponseInputTokensRequestResponsesTextConfig]](../../models/countresponseinputtokensrequestresponsestextconfig.md) | :heavy_minus_sign: | N/A | +| `additional_properties` | Dict[str, *Any*] | :heavy_minus_sign: | N/A | +| `retries` | [Optional[utils.RetryConfig]](../../models/utils/retryconfig.md) | :heavy_minus_sign: | Configuration to override the default retry behavior of the client. | + +### Response + +**[models.CountResponseInputTokensResponse](../../models/countresponseinputtokensresponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------- | --------------- | --------------- | +| errors.SDKError | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index 789486146..442e0a5f9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "mistralai" -version = "3.3.0" +version = "3.4.0" description = "Python Client SDK for the Mistral AI API." authors = [{ name = "Mistral" }] requires-python = ">=3.10" diff --git a/src/mistralai/client/_version.py b/src/mistralai/client/_version.py index 23f05ba81..27666c0e0 100644 --- a/src/mistralai/client/_version.py +++ b/src/mistralai/client/_version.py @@ -3,10 +3,10 @@ import importlib.metadata __title__: str = "mistralai" -__version__: str = "3.3.0" +__version__: str = "3.4.0" __openapi_doc_version__: str = "1.0.0" __gen_version__: str = "2.935.1" -__user_agent__: str = "speakeasy-sdk/python 3.3.0 2.935.1 1.0.0 mistralai" +__user_agent__: str = "speakeasy-sdk/python 3.4.0 2.935.1 1.0.0 mistralai" try: if __package__ is not None: diff --git a/src/mistralai/client/audio_agents.py b/src/mistralai/client/audio_agents.py index 4be619959..16a3da1ca 100644 --- a/src/mistralai/client/audio_agents.py +++ b/src/mistralai/client/audio_agents.py @@ -280,13 +280,11 @@ def create( self, *, name: str, + configuration: Union[ + models.AudioAgentConfigurationRequest, + models.AudioAgentConfigurationRequestTypedDict, + ], description: OptionalNullable[str] = UNSET, - configuration: OptionalNullable[ - Union[ - models.AudioAgentConfigurationRequest, - models.AudioAgentConfigurationRequestTypedDict, - ] - ] = UNSET, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -295,8 +293,8 @@ def create( r"""Create an audio agent :param name: - :param description: :param configuration: + :param description: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -319,7 +317,7 @@ def create( name=name, description=description, configuration=utils.get_pydantic_model( - configuration, OptionalNullable[models.AudioAgentConfigurationRequest] + configuration, models.AudioAgentConfigurationRequest ), ) @@ -389,13 +387,11 @@ async def create_async( self, *, name: str, + configuration: Union[ + models.AudioAgentConfigurationRequest, + models.AudioAgentConfigurationRequestTypedDict, + ], description: OptionalNullable[str] = UNSET, - configuration: OptionalNullable[ - Union[ - models.AudioAgentConfigurationRequest, - models.AudioAgentConfigurationRequestTypedDict, - ] - ] = UNSET, retries: OptionalNullable[utils.RetryConfig] = UNSET, server_url: Optional[str] = None, timeout_ms: Optional[int] = None, @@ -404,8 +400,8 @@ async def create_async( r"""Create an audio agent :param name: - :param description: :param configuration: + :param description: :param retries: Override the default retry configuration for this method :param server_url: Override the default server URL for this method :param timeout_ms: Override the default request timeout configuration for this method in milliseconds @@ -428,7 +424,7 @@ async def create_async( name=name, description=description, configuration=utils.get_pydantic_model( - configuration, OptionalNullable[models.AudioAgentConfigurationRequest] + configuration, models.AudioAgentConfigurationRequest ), ) diff --git a/src/mistralai/client/models/__init__.py b/src/mistralai/client/models/__init__.py index b90801f9c..67090a69a 100644 --- a/src/mistralai/client/models/__init__.py +++ b/src/mistralai/client/models/__init__.py @@ -745,6 +745,39 @@ ConversationUsageInfo, ConversationUsageInfoTypedDict, ) + from .countresponseinputtokensrequest import ( + CountResponseInputTokensRequest, + CountResponseInputTokensRequestEffort, + CountResponseInputTokensRequestFormat, + CountResponseInputTokensRequestFormatTypedDict, + CountResponseInputTokensRequestInput1, + CountResponseInputTokensRequestInput1TypedDict, + CountResponseInputTokensRequestInput2, + CountResponseInputTokensRequestInput2TypedDict, + CountResponseInputTokensRequestResponsesFormatJSONObject, + CountResponseInputTokensRequestResponsesFormatJSONObjectTypedDict, + CountResponseInputTokensRequestResponsesFormatText, + CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig, + CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfigTypedDict, + CountResponseInputTokensRequestResponsesFormatTextTypedDict, + CountResponseInputTokensRequestResponsesSupportedReasoning, + CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict, + CountResponseInputTokensRequestResponsesTextConfig, + CountResponseInputTokensRequestResponsesTextConfigTypedDict, + CountResponseInputTokensRequestResponsesToolChoiceFunction, + CountResponseInputTokensRequestResponsesToolChoiceFunctionTypedDict, + CountResponseInputTokensRequestTool, + CountResponseInputTokensRequestToolChoiceEnum, + CountResponseInputTokensRequestToolChoiceUnion, + CountResponseInputTokensRequestToolChoiceUnionTypedDict, + CountResponseInputTokensRequestToolTypedDict, + CountResponseInputTokensRequestTypedDict, + CountResponseInputTokensRequestVerbosity, + ) + from .countresponseinputtokensresponse import ( + CountResponseInputTokensResponse, + CountResponseInputTokensResponseTypedDict, + ) from .create_client_session_v1_client_sessions_postop import Body, BodyTypedDict from .create_dataset_record_v1_observability_datasets_dataset_id_records_postop import ( CreateDatasetRecordV1ObservabilityDatasetsDatasetIDRecordsPostRequest, @@ -754,6 +787,10 @@ CreateIndexV1ContextSearchIndexesPostResponse, CreateIndexV1ContextSearchIndexesPostResponseTypedDict, ) + from .create_response_v1_responses_postop import ( + CreateResponseV1ResponsesPostResponse, + CreateResponseV1ResponsesPostResponseTypedDict, + ) from .createagentrequest import ( CreateAgentRequest, CreateAgentRequestTool, @@ -826,6 +863,72 @@ CreateRealtimeSessionResponse, CreateRealtimeSessionResponseTypedDict, ) + from .createresponserequest import ( + CreateResponseRequest, + CreateResponseRequestEffort, + CreateResponseRequestFormat, + CreateResponseRequestFormatTypedDict, + CreateResponseRequestInput1, + CreateResponseRequestInput1TypedDict, + CreateResponseRequestInput2, + CreateResponseRequestInput2TypedDict, + CreateResponseRequestResponsesFormatJSONObject, + CreateResponseRequestResponsesFormatJSONObjectTypedDict, + CreateResponseRequestResponsesFormatText, + CreateResponseRequestResponsesFormatTextJSONSchemaConfig, + CreateResponseRequestResponsesFormatTextJSONSchemaConfigTypedDict, + CreateResponseRequestResponsesFormatTextTypedDict, + CreateResponseRequestResponsesSupportedReasoning, + CreateResponseRequestResponsesSupportedReasoningTypedDict, + CreateResponseRequestResponsesTextConfig, + CreateResponseRequestResponsesTextConfigTypedDict, + CreateResponseRequestResponsesToolChoiceFunction, + CreateResponseRequestResponsesToolChoiceFunctionTypedDict, + CreateResponseRequestTool, + CreateResponseRequestToolChoiceEnum, + CreateResponseRequestToolChoiceUnion, + CreateResponseRequestToolChoiceUnionTypedDict, + CreateResponseRequestToolTypedDict, + CreateResponseRequestTypedDict, + CreateResponseRequestVerbosity, + ) + from .createresponseresponse import ( + Code, + CreateResponseResponse, + CreateResponseResponseOutput, + CreateResponseResponseOutputTypedDict, + CreateResponseResponseResponsesSupportedReasoning, + CreateResponseResponseResponsesSupportedReasoningTypedDict, + CreateResponseResponseResponsesTextConfig, + CreateResponseResponseResponsesTextConfigTypedDict, + CreateResponseResponseStatus, + CreateResponseResponseTool, + CreateResponseResponseToolChoiceEnum, + CreateResponseResponseToolChoiceUnion, + CreateResponseResponseToolChoiceUnionTypedDict, + CreateResponseResponseToolTypedDict, + CreateResponseResponseTypedDict, + PromptCacheRetention, + Reason, + ResponsesError, + ResponsesErrorTypedDict, + ResponsesIncompleteDetails, + ResponsesIncompleteDetailsTypedDict, + ResponsesSupportedReasoningEffort, + ResponsesTextConfigFormat, + ResponsesTextConfigFormatTypedDict, + ResponsesTextConfigResponsesFormatJSONObject, + ResponsesTextConfigResponsesFormatJSONObjectTypedDict, + ResponsesTextConfigResponsesFormatText, + ResponsesTextConfigResponsesFormatTextJSONSchemaConfig, + ResponsesTextConfigResponsesFormatTextJSONSchemaConfigTypedDict, + ResponsesTextConfigResponsesFormatTextTypedDict, + ResponsesTextConfigVerbosity, + ResponsesUsage, + ResponsesUsageTypedDict, + ServiceTier, + Truncation, + ) from .createserviceaccountrequest import ( CreateServiceAccountRequest, CreateServiceAccountRequestTypedDict, @@ -1787,6 +1890,7 @@ KeywordRetrieverFilter, KeywordRetrieverFilterTypedDict, KeywordRetrieverTypedDict, + Operator, ) from .libraries_delete_v1op import ( LibrariesDeleteV1Request, @@ -2269,7 +2373,7 @@ from .ocrresponse import OCRResponse, OCRResponseTypedDict from .ocrsignatureblock import OCRSignatureBlock, OCRSignatureBlockTypedDict from .ocrtableblock import OCRTableBlock, OCRTableBlockTypedDict - from .ocrtableobject import Format, OCRTableObject, OCRTableObjectTypedDict + from .ocrtableobject import FormatEnum, OCRTableObject, OCRTableObjectTypedDict from .ocrtextblock import OCRTextBlock, OCRTextBlockTypedDict from .ocrtitleblock import OCRTitleBlock, OCRTitleBlockTypedDict from .ocrusageinfo import OCRUsageInfo, OCRUsageInfoTypedDict @@ -2607,10 +2711,282 @@ from .responseerrorevent import ResponseErrorEvent, ResponseErrorEventTypedDict from .responseformat import ResponseFormat, ResponseFormatTypedDict from .responseformats import ResponseFormats + from .responsesannotationcontainerfilecitation import ( + ResponsesAnnotationContainerFileCitation, + ResponsesAnnotationContainerFileCitationTypedDict, + ) + from .responsesannotationfilecitation import ( + ResponsesAnnotationFileCitation, + ResponsesAnnotationFileCitationTypedDict, + ) + from .responsesannotationfilepath import ( + ResponsesAnnotationFilePath, + ResponsesAnnotationFilePathTypedDict, + ) + from .responsesannotationurlcitation import ( + ResponsesAnnotationURLCitation, + ResponsesAnnotationURLCitationTypedDict, + ) + from .responsescompletedevent import ( + ResponsesCompletedEvent, + ResponsesCompletedEventTypedDict, + ) + from .responsescontent import ResponsesContent, ResponsesContentTypedDict + from .responsescontentpartaddedevent import ( + ResponsesContentPartAddedEvent, + ResponsesContentPartAddedEventPart, + ResponsesContentPartAddedEventPartTypedDict, + ResponsesContentPartAddedEventTypedDict, + ) + from .responsescontentpartdoneevent import ( + ResponsesContentPartDoneEvent, + ResponsesContentPartDoneEventPart, + ResponsesContentPartDoneEventPartTypedDict, + ResponsesContentPartDoneEventTypedDict, + ) + from .responsescreatedevent import ( + ResponsesCreatedEvent, + ResponsesCreatedEventTypedDict, + ) + from .responsescustomtool import ( + ResponsesCustomTool, + ResponsesCustomToolAllowedCaller, + ResponsesCustomToolFormat, + ResponsesCustomToolFormatTypedDict, + ResponsesCustomToolTypedDict, + ResponsesGrammar, + ResponsesGrammarTypedDict, + ResponsesText, + ResponsesTextTypedDict, + Syntax, + ) + from .responseseasyinputmessage import ( + ResponsesEasyInputMessage, + ResponsesEasyInputMessageContent1, + ResponsesEasyInputMessageContent1TypedDict, + ResponsesEasyInputMessageContent2, + ResponsesEasyInputMessageContent2TypedDict, + ResponsesEasyInputMessagePhase, + ResponsesEasyInputMessageRole, + ResponsesEasyInputMessageTypedDict, + ) + from .responseserrorevent import ResponsesErrorEvent, ResponsesErrorEventTypedDict + from .responsesfailedevent import ( + ResponsesFailedEvent, + ResponsesFailedEventTypedDict, + ) + from .responsesfunctioncallargumentsdeltaevent import ( + ResponsesFunctionCallArgumentsDeltaEvent, + ResponsesFunctionCallArgumentsDeltaEventTypedDict, + ) + from .responsesfunctioncallargumentsdoneevent import ( + ResponsesFunctionCallArgumentsDoneEvent, + ResponsesFunctionCallArgumentsDoneEventTypedDict, + ) + from .responsesfunctioncalloutput import ( + ResponsesFunctionCallOutput, + ResponsesFunctionCallOutputCaller, + ResponsesFunctionCallOutputCallerTypedDict, + ResponsesFunctionCallOutputOutput1, + ResponsesFunctionCallOutputOutput1TypedDict, + ResponsesFunctionCallOutputOutput2, + ResponsesFunctionCallOutputOutput2TypedDict, + ResponsesFunctionCallOutputStatus, + ResponsesFunctionCallOutputTypedDict, + ) + from .responsesfunctioncalloutputcallerdirect import ( + ResponsesFunctionCallOutputCallerDirect, + ResponsesFunctionCallOutputCallerDirectTypedDict, + ) + from .responsesfunctioncalloutputcallerprogram import ( + ResponsesFunctionCallOutputCallerProgram, + ResponsesFunctionCallOutputCallerProgramTypedDict, + ) + from .responsesfunctiontool import ( + ResponsesFunctionTool, + ResponsesFunctionToolAllowedCaller, + ResponsesFunctionToolTypedDict, + ) + from .responsesfunctiontoolcall import ( + ResponsesCallerDirect, + ResponsesCallerDirectTypedDict, + ResponsesCallerProgram, + ResponsesCallerProgramTypedDict, + ResponsesFunctionToolCall, + ResponsesFunctionToolCallCaller, + ResponsesFunctionToolCallCallerTypedDict, + ResponsesFunctionToolCallStatus, + ResponsesFunctionToolCallTypedDict, + ) + from .responsesincompleteevent import ( + ResponsesIncompleteEvent, + ResponsesIncompleteEventTypedDict, + ) + from .responsesinprogressevent import ( + ResponsesInProgressEvent, + ResponsesInProgressEventTypedDict, + ) + from .responsesinputfile import ( + ResponsesInputFile, + ResponsesInputFileDetail, + ResponsesInputFileResponsesPromptCacheBreakpoint, + ResponsesInputFileResponsesPromptCacheBreakpointTypedDict, + ResponsesInputFileTypedDict, + ) + from .responsesinputfilecontent import ( + ResponsesInputFileContent, + ResponsesInputFileContentDetail, + ResponsesInputFileContentResponsesPromptCacheBreakpoint, + ResponsesInputFileContentResponsesPromptCacheBreakpointTypedDict, + ResponsesInputFileContentTypedDict, + ) + from .responsesinputimage import ( + ResponsesInputImage, + ResponsesInputImageDetail, + ResponsesInputImageResponsesPromptCacheBreakpoint, + ResponsesInputImageResponsesPromptCacheBreakpointTypedDict, + ResponsesInputImageTypedDict, + ) + from .responsesinputimagecontent import ( + ResponsesInputImageContent, + ResponsesInputImageContentDetail, + ResponsesInputImageContentResponsesPromptCacheBreakpoint, + ResponsesInputImageContentResponsesPromptCacheBreakpointTypedDict, + ResponsesInputImageContentTypedDict, + ) + from .responsesinputtext import ( + ResponsesInputText, + ResponsesInputTextResponsesPromptCacheBreakpoint, + ResponsesInputTextResponsesPromptCacheBreakpointTypedDict, + ResponsesInputTextTypedDict, + ) + from .responsesinputtextcontent import ( + ResponsesInputTextContent, + ResponsesInputTextContentResponsesPromptCacheBreakpoint, + ResponsesInputTextContentResponsesPromptCacheBreakpointTypedDict, + ResponsesInputTextContentTypedDict, + ) + from .responsesinputtokensdetails import ( + ResponsesInputTokensDetails, + ResponsesInputTokensDetailsTypedDict, + ) + from .responsesmessage import ( + ResponsesMessage, + ResponsesMessageContent, + ResponsesMessageContentTypedDict, + ResponsesMessageRole, + ResponsesMessageStatus, + ResponsesMessageTypedDict, + ) + from .responsesnamespacetool import ( + ResponsesNamespaceTool, + ResponsesNamespaceToolTool, + ResponsesNamespaceToolToolTypedDict, + ResponsesNamespaceToolTypedDict, + ) + from .responsesoutputitemaddedevent import ( + ResponsesOutputItemAddedEvent, + ResponsesOutputItemAddedEventItem, + ResponsesOutputItemAddedEventItemTypedDict, + ResponsesOutputItemAddedEventTypedDict, + ) + from .responsesoutputitemdoneevent import ( + ResponsesOutputItemDoneEvent, + ResponsesOutputItemDoneEventItem, + ResponsesOutputItemDoneEventItemTypedDict, + ResponsesOutputItemDoneEventTypedDict, + ) + from .responsesoutputmessage import ( + ResponsesOutputMessage, + ResponsesOutputMessageContent, + ResponsesOutputMessageContentTypedDict, + ResponsesOutputMessagePhase, + ResponsesOutputMessageStatus, + ResponsesOutputMessageTypedDict, + ) + from .responsesoutputrefusal import ( + ResponsesOutputRefusal, + ResponsesOutputRefusalTypedDict, + ) + from .responsesoutputtext import ( + Annotation, + AnnotationTypedDict, + ResponsesOutputText, + ResponsesOutputTextTypedDict, + ) + from .responsesoutputtextlogprob import ( + ResponsesOutputTextLogprob, + ResponsesOutputTextLogprobTypedDict, + ) + from .responsesoutputtextlogprobtoplogprob import ( + ResponsesOutputTextLogprobTopLogprob, + ResponsesOutputTextLogprobTopLogprobTypedDict, + ) + from .responsesoutputtokensdetails import ( + ResponsesOutputTokensDetails, + ResponsesOutputTokensDetailsTypedDict, + ) + from .responsespartreasoningtext import ( + ResponsesPartReasoningText, + ResponsesPartReasoningTextTypedDict, + ) + from .responsesreasoningitem import ( + ResponsesReasoningItem, + ResponsesReasoningItemStatus, + ResponsesReasoningItemTypedDict, + ) + from .responsesreasoningtextdeltaevent import ( + ResponsesReasoningTextDeltaEvent, + ResponsesReasoningTextDeltaEventTypedDict, + ) + from .responsesreasoningtextdoneevent import ( + ResponsesReasoningTextDoneEvent, + ResponsesReasoningTextDoneEventTypedDict, + ) + from .responsesstreamframe import ( + ResponsesStreamFrame, + ResponsesStreamFrameData, + ResponsesStreamFrameDataTypedDict, + ResponsesStreamFrameTypedDict, + ) + from .responsessummary import ResponsesSummary, ResponsesSummaryTypedDict from .responsestartedevent import ( ResponseStartedEvent, ResponseStartedEventTypedDict, ) + from .responsestextdeltaevent import ( + ResponsesTextDeltaEvent, + ResponsesTextDeltaEventTypedDict, + ) + from .responsestextdeltaeventlogprob import ( + ResponsesTextDeltaEventLogprob, + ResponsesTextDeltaEventLogprobTypedDict, + ) + from .responsestextdeltaeventlogprobtoplogprob import ( + ResponsesTextDeltaEventLogprobTopLogprob, + ResponsesTextDeltaEventLogprobTopLogprobTypedDict, + ) + from .responsestextdoneevent import ( + ResponsesTextDoneEvent, + ResponsesTextDoneEventTypedDict, + ) + from .responsestextdoneeventlogprob import ( + ResponsesTextDoneEventLogprob, + ResponsesTextDoneEventLogprobTypedDict, + ) + from .responsestextdoneeventlogprobtoplogprob import ( + ResponsesTextDoneEventLogprobTopLogprob, + ResponsesTextDoneEventLogprobTopLogprobTypedDict, + ) + from .responsestoolchoicefunction import ( + ResponsesToolChoiceFunction, + ResponsesToolChoiceFunctionTypedDict, + ) + from .responsestoolfunction import ( + ResponsesToolFunction, + ResponsesToolFunctionAllowedCaller, + ResponsesToolFunctionTypedDict, + ) from .restart_deployment_v1_workflows_deployments_name_restart_postop import ( RestartDeploymentV1WorkflowsDeploymentsNameRestartPostRequest, RestartDeploymentV1WorkflowsDeploymentsNameRestartPostRequestTypedDict, @@ -3866,6 +4242,8 @@ "AndMatch", "AndMatchTypedDict", "AndTypedDict", + "Annotation", + "AnnotationTypedDict", "Annotations", "AnnotationsTypedDict", "Answer", @@ -4078,6 +4456,7 @@ "ClientTasksCapabilityTypedDict", "ClientTasksRequestsCapability", "ClientTasksRequestsCapabilityTypedDict", + "Code", "CodeInterpreterTool", "CodeInterpreterToolTypedDict", "CompletionArgs", @@ -4244,6 +4623,35 @@ "ConversationStreamRequestTypedDict", "ConversationUsageInfo", "ConversationUsageInfoTypedDict", + "CountResponseInputTokensRequest", + "CountResponseInputTokensRequestEffort", + "CountResponseInputTokensRequestFormat", + "CountResponseInputTokensRequestFormatTypedDict", + "CountResponseInputTokensRequestInput1", + "CountResponseInputTokensRequestInput1TypedDict", + "CountResponseInputTokensRequestInput2", + "CountResponseInputTokensRequestInput2TypedDict", + "CountResponseInputTokensRequestResponsesFormatJSONObject", + "CountResponseInputTokensRequestResponsesFormatJSONObjectTypedDict", + "CountResponseInputTokensRequestResponsesFormatText", + "CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig", + "CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfigTypedDict", + "CountResponseInputTokensRequestResponsesFormatTextTypedDict", + "CountResponseInputTokensRequestResponsesSupportedReasoning", + "CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict", + "CountResponseInputTokensRequestResponsesTextConfig", + "CountResponseInputTokensRequestResponsesTextConfigTypedDict", + "CountResponseInputTokensRequestResponsesToolChoiceFunction", + "CountResponseInputTokensRequestResponsesToolChoiceFunctionTypedDict", + "CountResponseInputTokensRequestTool", + "CountResponseInputTokensRequestToolChoiceEnum", + "CountResponseInputTokensRequestToolChoiceUnion", + "CountResponseInputTokensRequestToolChoiceUnionTypedDict", + "CountResponseInputTokensRequestToolTypedDict", + "CountResponseInputTokensRequestTypedDict", + "CountResponseInputTokensRequestVerbosity", + "CountResponseInputTokensResponse", + "CountResponseInputTokensResponseTypedDict", "CreateAgentRequest", "CreateAgentRequestTool", "CreateAgentRequestToolTypedDict", @@ -4293,6 +4701,49 @@ "CreateRealtimeSessionRequestTypedDict", "CreateRealtimeSessionResponse", "CreateRealtimeSessionResponseTypedDict", + "CreateResponseRequest", + "CreateResponseRequestEffort", + "CreateResponseRequestFormat", + "CreateResponseRequestFormatTypedDict", + "CreateResponseRequestInput1", + "CreateResponseRequestInput1TypedDict", + "CreateResponseRequestInput2", + "CreateResponseRequestInput2TypedDict", + "CreateResponseRequestResponsesFormatJSONObject", + "CreateResponseRequestResponsesFormatJSONObjectTypedDict", + "CreateResponseRequestResponsesFormatText", + "CreateResponseRequestResponsesFormatTextJSONSchemaConfig", + "CreateResponseRequestResponsesFormatTextJSONSchemaConfigTypedDict", + "CreateResponseRequestResponsesFormatTextTypedDict", + "CreateResponseRequestResponsesSupportedReasoning", + "CreateResponseRequestResponsesSupportedReasoningTypedDict", + "CreateResponseRequestResponsesTextConfig", + "CreateResponseRequestResponsesTextConfigTypedDict", + "CreateResponseRequestResponsesToolChoiceFunction", + "CreateResponseRequestResponsesToolChoiceFunctionTypedDict", + "CreateResponseRequestTool", + "CreateResponseRequestToolChoiceEnum", + "CreateResponseRequestToolChoiceUnion", + "CreateResponseRequestToolChoiceUnionTypedDict", + "CreateResponseRequestToolTypedDict", + "CreateResponseRequestTypedDict", + "CreateResponseRequestVerbosity", + "CreateResponseResponse", + "CreateResponseResponseOutput", + "CreateResponseResponseOutputTypedDict", + "CreateResponseResponseResponsesSupportedReasoning", + "CreateResponseResponseResponsesSupportedReasoningTypedDict", + "CreateResponseResponseResponsesTextConfig", + "CreateResponseResponseResponsesTextConfigTypedDict", + "CreateResponseResponseStatus", + "CreateResponseResponseTool", + "CreateResponseResponseToolChoiceEnum", + "CreateResponseResponseToolChoiceUnion", + "CreateResponseResponseToolChoiceUnionTypedDict", + "CreateResponseResponseToolTypedDict", + "CreateResponseResponseTypedDict", + "CreateResponseV1ResponsesPostResponse", + "CreateResponseV1ResponsesPostResponseTypedDict", "CreateServiceAccountRequest", "CreateServiceAccountRequestTypedDict", "CreateSkillRequest", @@ -4596,7 +5047,7 @@ "FloatFieldDefinitionTypedDict", "FormElicitationCapability", "FormElicitationCapabilityTypedDict", - "Format", + "FormatEnum", "Function", "FunctionCall", "FunctionCallEntry", @@ -5302,6 +5753,7 @@ "ObservabilityErrorDetail", "ObservabilityErrorDetailTypedDict", "OldState", + "Operator", "Optimization", "OptimizationDetail", "OptimizationDetailTypedDict", @@ -5419,6 +5871,7 @@ "Prompt", "PromptArgument", "PromptArgumentTypedDict", + "PromptCacheRetention", "PromptDefinition", "PromptDefinitionTypedDict", "PromptTokensDetails", @@ -5501,6 +5954,7 @@ "RealtimeTranscriptionSessionUpdatePayloadTypedDict", "RealtimeTranscriptionSessionUpdated", "RealtimeTranscriptionSessionUpdatedTypedDict", + "Reason", "ReasoningEffort", "RecordSortField", "ReferenceChunk", @@ -5565,6 +6019,194 @@ "ResponseStartedEventTypedDict", "ResponseV1ConversationsGet", "ResponseV1ConversationsGetTypedDict", + "ResponsesAnnotationContainerFileCitation", + "ResponsesAnnotationContainerFileCitationTypedDict", + "ResponsesAnnotationFileCitation", + "ResponsesAnnotationFileCitationTypedDict", + "ResponsesAnnotationFilePath", + "ResponsesAnnotationFilePathTypedDict", + "ResponsesAnnotationURLCitation", + "ResponsesAnnotationURLCitationTypedDict", + "ResponsesCallerDirect", + "ResponsesCallerDirectTypedDict", + "ResponsesCallerProgram", + "ResponsesCallerProgramTypedDict", + "ResponsesCompletedEvent", + "ResponsesCompletedEventTypedDict", + "ResponsesContent", + "ResponsesContentPartAddedEvent", + "ResponsesContentPartAddedEventPart", + "ResponsesContentPartAddedEventPartTypedDict", + "ResponsesContentPartAddedEventTypedDict", + "ResponsesContentPartDoneEvent", + "ResponsesContentPartDoneEventPart", + "ResponsesContentPartDoneEventPartTypedDict", + "ResponsesContentPartDoneEventTypedDict", + "ResponsesContentTypedDict", + "ResponsesCreatedEvent", + "ResponsesCreatedEventTypedDict", + "ResponsesCustomTool", + "ResponsesCustomToolAllowedCaller", + "ResponsesCustomToolFormat", + "ResponsesCustomToolFormatTypedDict", + "ResponsesCustomToolTypedDict", + "ResponsesEasyInputMessage", + "ResponsesEasyInputMessageContent1", + "ResponsesEasyInputMessageContent1TypedDict", + "ResponsesEasyInputMessageContent2", + "ResponsesEasyInputMessageContent2TypedDict", + "ResponsesEasyInputMessagePhase", + "ResponsesEasyInputMessageRole", + "ResponsesEasyInputMessageTypedDict", + "ResponsesError", + "ResponsesErrorEvent", + "ResponsesErrorEventTypedDict", + "ResponsesErrorTypedDict", + "ResponsesFailedEvent", + "ResponsesFailedEventTypedDict", + "ResponsesFunctionCallArgumentsDeltaEvent", + "ResponsesFunctionCallArgumentsDeltaEventTypedDict", + "ResponsesFunctionCallArgumentsDoneEvent", + "ResponsesFunctionCallArgumentsDoneEventTypedDict", + "ResponsesFunctionCallOutput", + "ResponsesFunctionCallOutputCaller", + "ResponsesFunctionCallOutputCallerDirect", + "ResponsesFunctionCallOutputCallerDirectTypedDict", + "ResponsesFunctionCallOutputCallerProgram", + "ResponsesFunctionCallOutputCallerProgramTypedDict", + "ResponsesFunctionCallOutputCallerTypedDict", + "ResponsesFunctionCallOutputOutput1", + "ResponsesFunctionCallOutputOutput1TypedDict", + "ResponsesFunctionCallOutputOutput2", + "ResponsesFunctionCallOutputOutput2TypedDict", + "ResponsesFunctionCallOutputStatus", + "ResponsesFunctionCallOutputTypedDict", + "ResponsesFunctionTool", + "ResponsesFunctionToolAllowedCaller", + "ResponsesFunctionToolCall", + "ResponsesFunctionToolCallCaller", + "ResponsesFunctionToolCallCallerTypedDict", + "ResponsesFunctionToolCallStatus", + "ResponsesFunctionToolCallTypedDict", + "ResponsesFunctionToolTypedDict", + "ResponsesGrammar", + "ResponsesGrammarTypedDict", + "ResponsesInProgressEvent", + "ResponsesInProgressEventTypedDict", + "ResponsesIncompleteDetails", + "ResponsesIncompleteDetailsTypedDict", + "ResponsesIncompleteEvent", + "ResponsesIncompleteEventTypedDict", + "ResponsesInputFile", + "ResponsesInputFileContent", + "ResponsesInputFileContentDetail", + "ResponsesInputFileContentResponsesPromptCacheBreakpoint", + "ResponsesInputFileContentResponsesPromptCacheBreakpointTypedDict", + "ResponsesInputFileContentTypedDict", + "ResponsesInputFileDetail", + "ResponsesInputFileResponsesPromptCacheBreakpoint", + "ResponsesInputFileResponsesPromptCacheBreakpointTypedDict", + "ResponsesInputFileTypedDict", + "ResponsesInputImage", + "ResponsesInputImageContent", + "ResponsesInputImageContentDetail", + "ResponsesInputImageContentResponsesPromptCacheBreakpoint", + "ResponsesInputImageContentResponsesPromptCacheBreakpointTypedDict", + "ResponsesInputImageContentTypedDict", + "ResponsesInputImageDetail", + "ResponsesInputImageResponsesPromptCacheBreakpoint", + "ResponsesInputImageResponsesPromptCacheBreakpointTypedDict", + "ResponsesInputImageTypedDict", + "ResponsesInputText", + "ResponsesInputTextContent", + "ResponsesInputTextContentResponsesPromptCacheBreakpoint", + "ResponsesInputTextContentResponsesPromptCacheBreakpointTypedDict", + "ResponsesInputTextContentTypedDict", + "ResponsesInputTextResponsesPromptCacheBreakpoint", + "ResponsesInputTextResponsesPromptCacheBreakpointTypedDict", + "ResponsesInputTextTypedDict", + "ResponsesInputTokensDetails", + "ResponsesInputTokensDetailsTypedDict", + "ResponsesMessage", + "ResponsesMessageContent", + "ResponsesMessageContentTypedDict", + "ResponsesMessageRole", + "ResponsesMessageStatus", + "ResponsesMessageTypedDict", + "ResponsesNamespaceTool", + "ResponsesNamespaceToolTool", + "ResponsesNamespaceToolToolTypedDict", + "ResponsesNamespaceToolTypedDict", + "ResponsesOutputItemAddedEvent", + "ResponsesOutputItemAddedEventItem", + "ResponsesOutputItemAddedEventItemTypedDict", + "ResponsesOutputItemAddedEventTypedDict", + "ResponsesOutputItemDoneEvent", + "ResponsesOutputItemDoneEventItem", + "ResponsesOutputItemDoneEventItemTypedDict", + "ResponsesOutputItemDoneEventTypedDict", + "ResponsesOutputMessage", + "ResponsesOutputMessageContent", + "ResponsesOutputMessageContentTypedDict", + "ResponsesOutputMessagePhase", + "ResponsesOutputMessageStatus", + "ResponsesOutputMessageTypedDict", + "ResponsesOutputRefusal", + "ResponsesOutputRefusalTypedDict", + "ResponsesOutputText", + "ResponsesOutputTextLogprob", + "ResponsesOutputTextLogprobTopLogprob", + "ResponsesOutputTextLogprobTopLogprobTypedDict", + "ResponsesOutputTextLogprobTypedDict", + "ResponsesOutputTextTypedDict", + "ResponsesOutputTokensDetails", + "ResponsesOutputTokensDetailsTypedDict", + "ResponsesPartReasoningText", + "ResponsesPartReasoningTextTypedDict", + "ResponsesReasoningItem", + "ResponsesReasoningItemStatus", + "ResponsesReasoningItemTypedDict", + "ResponsesReasoningTextDeltaEvent", + "ResponsesReasoningTextDeltaEventTypedDict", + "ResponsesReasoningTextDoneEvent", + "ResponsesReasoningTextDoneEventTypedDict", + "ResponsesStreamFrame", + "ResponsesStreamFrameData", + "ResponsesStreamFrameDataTypedDict", + "ResponsesStreamFrameTypedDict", + "ResponsesSummary", + "ResponsesSummaryTypedDict", + "ResponsesSupportedReasoningEffort", + "ResponsesText", + "ResponsesTextConfigFormat", + "ResponsesTextConfigFormatTypedDict", + "ResponsesTextConfigResponsesFormatJSONObject", + "ResponsesTextConfigResponsesFormatJSONObjectTypedDict", + "ResponsesTextConfigResponsesFormatText", + "ResponsesTextConfigResponsesFormatTextJSONSchemaConfig", + "ResponsesTextConfigResponsesFormatTextJSONSchemaConfigTypedDict", + "ResponsesTextConfigResponsesFormatTextTypedDict", + "ResponsesTextConfigVerbosity", + "ResponsesTextDeltaEvent", + "ResponsesTextDeltaEventLogprob", + "ResponsesTextDeltaEventLogprobTopLogprob", + "ResponsesTextDeltaEventLogprobTopLogprobTypedDict", + "ResponsesTextDeltaEventLogprobTypedDict", + "ResponsesTextDeltaEventTypedDict", + "ResponsesTextDoneEvent", + "ResponsesTextDoneEventLogprob", + "ResponsesTextDoneEventLogprobTopLogprob", + "ResponsesTextDoneEventLogprobTopLogprobTypedDict", + "ResponsesTextDoneEventLogprobTypedDict", + "ResponsesTextDoneEventTypedDict", + "ResponsesTextTypedDict", + "ResponsesToolChoiceFunction", + "ResponsesToolChoiceFunctionTypedDict", + "ResponsesToolFunction", + "ResponsesToolFunctionAllowedCaller", + "ResponsesToolFunctionTypedDict", + "ResponsesUsage", + "ResponsesUsageTypedDict", "RestartDeploymentV1WorkflowsDeploymentsNameRestartPostRequest", "RestartDeploymentV1WorkflowsDeploymentsNameRestartPostRequestTypedDict", "Result", @@ -5677,6 +6319,7 @@ "ServiceAccountRole", "ServiceAccountRoleTypedDict", "ServiceAccountTypedDict", + "ServiceTier", "SetManagedIndexSummaryV1ContextSearchIndexesIndexNameSummaryFieldLanguagePutLanguage", "SetManagedIndexSummaryV1ContextSearchIndexesIndexNameSummaryFieldLanguagePutRequest", "SetManagedIndexSummaryV1ContextSearchIndexesIndexNameSummaryFieldLanguagePutRequestTypedDict", @@ -5827,6 +6470,7 @@ "SummaryStreamTypes", "SummaryStreamTypesTypedDict", "SupportedOperator", + "Syntax", "SystemFilter", "SystemFilterTypedDict", "SystemMessage", @@ -6012,6 +6656,7 @@ "TransferTargetTypedDict", "TriggerScheduleV1WorkflowsSchedulesScheduleIDTriggerPostRequest", "TriggerScheduleV1WorkflowsSchedulesScheduleIDTriggerPostRequestTypedDict", + "Truncation", "TurbineMeta", "TurbineMetaTypedDict", "TurbineToolLocale", @@ -6875,12 +7520,43 @@ "ConversationStreamRequestTypedDict": ".conversationstreamrequest", "ConversationUsageInfo": ".conversationusageinfo", "ConversationUsageInfoTypedDict": ".conversationusageinfo", + "CountResponseInputTokensRequest": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestEffort": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestFormat": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestFormatTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestInput1": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestInput1TypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestInput2": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestInput2TypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesFormatJSONObject": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesFormatJSONObjectTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesFormatText": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfigTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesFormatTextTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesSupportedReasoning": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesTextConfig": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesTextConfigTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesToolChoiceFunction": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestResponsesToolChoiceFunctionTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestTool": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestToolChoiceEnum": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestToolChoiceUnion": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestToolChoiceUnionTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestToolTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestTypedDict": ".countresponseinputtokensrequest", + "CountResponseInputTokensRequestVerbosity": ".countresponseinputtokensrequest", + "CountResponseInputTokensResponse": ".countresponseinputtokensresponse", + "CountResponseInputTokensResponseTypedDict": ".countresponseinputtokensresponse", "Body": ".create_client_session_v1_client_sessions_postop", "BodyTypedDict": ".create_client_session_v1_client_sessions_postop", "CreateDatasetRecordV1ObservabilityDatasetsDatasetIDRecordsPostRequest": ".create_dataset_record_v1_observability_datasets_dataset_id_records_postop", "CreateDatasetRecordV1ObservabilityDatasetsDatasetIDRecordsPostRequestTypedDict": ".create_dataset_record_v1_observability_datasets_dataset_id_records_postop", "CreateIndexV1ContextSearchIndexesPostResponse": ".create_index_v1_context_search_indexes_postop", "CreateIndexV1ContextSearchIndexesPostResponseTypedDict": ".create_index_v1_context_search_indexes_postop", + "CreateResponseV1ResponsesPostResponse": ".create_response_v1_responses_postop", + "CreateResponseV1ResponsesPostResponseTypedDict": ".create_response_v1_responses_postop", "CreateAgentRequest": ".createagentrequest", "CreateAgentRequestTool": ".createagentrequest", "CreateAgentRequestToolTypedDict": ".createagentrequest", @@ -6925,6 +7601,68 @@ "CreateRealtimeSessionRequestTypedDict": ".createrealtimesessionrequest", "CreateRealtimeSessionResponse": ".createrealtimesessionresponse", "CreateRealtimeSessionResponseTypedDict": ".createrealtimesessionresponse", + "CreateResponseRequest": ".createresponserequest", + "CreateResponseRequestEffort": ".createresponserequest", + "CreateResponseRequestFormat": ".createresponserequest", + "CreateResponseRequestFormatTypedDict": ".createresponserequest", + "CreateResponseRequestInput1": ".createresponserequest", + "CreateResponseRequestInput1TypedDict": ".createresponserequest", + "CreateResponseRequestInput2": ".createresponserequest", + "CreateResponseRequestInput2TypedDict": ".createresponserequest", + "CreateResponseRequestResponsesFormatJSONObject": ".createresponserequest", + "CreateResponseRequestResponsesFormatJSONObjectTypedDict": ".createresponserequest", + "CreateResponseRequestResponsesFormatText": ".createresponserequest", + "CreateResponseRequestResponsesFormatTextJSONSchemaConfig": ".createresponserequest", + "CreateResponseRequestResponsesFormatTextJSONSchemaConfigTypedDict": ".createresponserequest", + "CreateResponseRequestResponsesFormatTextTypedDict": ".createresponserequest", + "CreateResponseRequestResponsesSupportedReasoning": ".createresponserequest", + "CreateResponseRequestResponsesSupportedReasoningTypedDict": ".createresponserequest", + "CreateResponseRequestResponsesTextConfig": ".createresponserequest", + "CreateResponseRequestResponsesTextConfigTypedDict": ".createresponserequest", + "CreateResponseRequestResponsesToolChoiceFunction": ".createresponserequest", + "CreateResponseRequestResponsesToolChoiceFunctionTypedDict": ".createresponserequest", + "CreateResponseRequestTool": ".createresponserequest", + "CreateResponseRequestToolChoiceEnum": ".createresponserequest", + "CreateResponseRequestToolChoiceUnion": ".createresponserequest", + "CreateResponseRequestToolChoiceUnionTypedDict": ".createresponserequest", + "CreateResponseRequestToolTypedDict": ".createresponserequest", + "CreateResponseRequestTypedDict": ".createresponserequest", + "CreateResponseRequestVerbosity": ".createresponserequest", + "Code": ".createresponseresponse", + "CreateResponseResponse": ".createresponseresponse", + "CreateResponseResponseOutput": ".createresponseresponse", + "CreateResponseResponseOutputTypedDict": ".createresponseresponse", + "CreateResponseResponseResponsesSupportedReasoning": ".createresponseresponse", + "CreateResponseResponseResponsesSupportedReasoningTypedDict": ".createresponseresponse", + "CreateResponseResponseResponsesTextConfig": ".createresponseresponse", + "CreateResponseResponseResponsesTextConfigTypedDict": ".createresponseresponse", + "CreateResponseResponseStatus": ".createresponseresponse", + "CreateResponseResponseTool": ".createresponseresponse", + "CreateResponseResponseToolChoiceEnum": ".createresponseresponse", + "CreateResponseResponseToolChoiceUnion": ".createresponseresponse", + "CreateResponseResponseToolChoiceUnionTypedDict": ".createresponseresponse", + "CreateResponseResponseToolTypedDict": ".createresponseresponse", + "CreateResponseResponseTypedDict": ".createresponseresponse", + "PromptCacheRetention": ".createresponseresponse", + "Reason": ".createresponseresponse", + "ResponsesError": ".createresponseresponse", + "ResponsesErrorTypedDict": ".createresponseresponse", + "ResponsesIncompleteDetails": ".createresponseresponse", + "ResponsesIncompleteDetailsTypedDict": ".createresponseresponse", + "ResponsesSupportedReasoningEffort": ".createresponseresponse", + "ResponsesTextConfigFormat": ".createresponseresponse", + "ResponsesTextConfigFormatTypedDict": ".createresponseresponse", + "ResponsesTextConfigResponsesFormatJSONObject": ".createresponseresponse", + "ResponsesTextConfigResponsesFormatJSONObjectTypedDict": ".createresponseresponse", + "ResponsesTextConfigResponsesFormatText": ".createresponseresponse", + "ResponsesTextConfigResponsesFormatTextJSONSchemaConfig": ".createresponseresponse", + "ResponsesTextConfigResponsesFormatTextJSONSchemaConfigTypedDict": ".createresponseresponse", + "ResponsesTextConfigResponsesFormatTextTypedDict": ".createresponseresponse", + "ResponsesTextConfigVerbosity": ".createresponseresponse", + "ResponsesUsage": ".createresponseresponse", + "ResponsesUsageTypedDict": ".createresponseresponse", + "ServiceTier": ".createresponseresponse", + "Truncation": ".createresponseresponse", "CreateServiceAccountRequest": ".createserviceaccountrequest", "CreateServiceAccountRequestTypedDict": ".createserviceaccountrequest", "CreateSkillRequest": ".createskillrequest", @@ -7591,6 +8329,7 @@ "KeywordRetrieverFilter": ".keywordretriever", "KeywordRetrieverFilterTypedDict": ".keywordretriever", "KeywordRetrieverTypedDict": ".keywordretriever", + "Operator": ".keywordretriever", "LibrariesDeleteV1Request": ".libraries_delete_v1op", "LibrariesDeleteV1RequestTypedDict": ".libraries_delete_v1op", "LibrariesDocumentsDeleteV1Request": ".libraries_documents_delete_v1op", @@ -7949,7 +8688,7 @@ "OCRSignatureBlockTypedDict": ".ocrsignatureblock", "OCRTableBlock": ".ocrtableblock", "OCRTableBlockTypedDict": ".ocrtableblock", - "Format": ".ocrtableobject", + "FormatEnum": ".ocrtableobject", "OCRTableObject": ".ocrtableobject", "OCRTableObjectTypedDict": ".ocrtableobject", "OCRTextBlock": ".ocrtextblock", @@ -8200,8 +8939,183 @@ "ResponseFormat": ".responseformat", "ResponseFormatTypedDict": ".responseformat", "ResponseFormats": ".responseformats", + "ResponsesAnnotationContainerFileCitation": ".responsesannotationcontainerfilecitation", + "ResponsesAnnotationContainerFileCitationTypedDict": ".responsesannotationcontainerfilecitation", + "ResponsesAnnotationFileCitation": ".responsesannotationfilecitation", + "ResponsesAnnotationFileCitationTypedDict": ".responsesannotationfilecitation", + "ResponsesAnnotationFilePath": ".responsesannotationfilepath", + "ResponsesAnnotationFilePathTypedDict": ".responsesannotationfilepath", + "ResponsesAnnotationURLCitation": ".responsesannotationurlcitation", + "ResponsesAnnotationURLCitationTypedDict": ".responsesannotationurlcitation", + "ResponsesCompletedEvent": ".responsescompletedevent", + "ResponsesCompletedEventTypedDict": ".responsescompletedevent", + "ResponsesContent": ".responsescontent", + "ResponsesContentTypedDict": ".responsescontent", + "ResponsesContentPartAddedEvent": ".responsescontentpartaddedevent", + "ResponsesContentPartAddedEventPart": ".responsescontentpartaddedevent", + "ResponsesContentPartAddedEventPartTypedDict": ".responsescontentpartaddedevent", + "ResponsesContentPartAddedEventTypedDict": ".responsescontentpartaddedevent", + "ResponsesContentPartDoneEvent": ".responsescontentpartdoneevent", + "ResponsesContentPartDoneEventPart": ".responsescontentpartdoneevent", + "ResponsesContentPartDoneEventPartTypedDict": ".responsescontentpartdoneevent", + "ResponsesContentPartDoneEventTypedDict": ".responsescontentpartdoneevent", + "ResponsesCreatedEvent": ".responsescreatedevent", + "ResponsesCreatedEventTypedDict": ".responsescreatedevent", + "ResponsesCustomTool": ".responsescustomtool", + "ResponsesCustomToolAllowedCaller": ".responsescustomtool", + "ResponsesCustomToolFormat": ".responsescustomtool", + "ResponsesCustomToolFormatTypedDict": ".responsescustomtool", + "ResponsesCustomToolTypedDict": ".responsescustomtool", + "ResponsesGrammar": ".responsescustomtool", + "ResponsesGrammarTypedDict": ".responsescustomtool", + "ResponsesText": ".responsescustomtool", + "ResponsesTextTypedDict": ".responsescustomtool", + "Syntax": ".responsescustomtool", + "ResponsesEasyInputMessage": ".responseseasyinputmessage", + "ResponsesEasyInputMessageContent1": ".responseseasyinputmessage", + "ResponsesEasyInputMessageContent1TypedDict": ".responseseasyinputmessage", + "ResponsesEasyInputMessageContent2": ".responseseasyinputmessage", + "ResponsesEasyInputMessageContent2TypedDict": ".responseseasyinputmessage", + "ResponsesEasyInputMessagePhase": ".responseseasyinputmessage", + "ResponsesEasyInputMessageRole": ".responseseasyinputmessage", + "ResponsesEasyInputMessageTypedDict": ".responseseasyinputmessage", + "ResponsesErrorEvent": ".responseserrorevent", + "ResponsesErrorEventTypedDict": ".responseserrorevent", + "ResponsesFailedEvent": ".responsesfailedevent", + "ResponsesFailedEventTypedDict": ".responsesfailedevent", + "ResponsesFunctionCallArgumentsDeltaEvent": ".responsesfunctioncallargumentsdeltaevent", + "ResponsesFunctionCallArgumentsDeltaEventTypedDict": ".responsesfunctioncallargumentsdeltaevent", + "ResponsesFunctionCallArgumentsDoneEvent": ".responsesfunctioncallargumentsdoneevent", + "ResponsesFunctionCallArgumentsDoneEventTypedDict": ".responsesfunctioncallargumentsdoneevent", + "ResponsesFunctionCallOutput": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputCaller": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputCallerTypedDict": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputOutput1": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputOutput1TypedDict": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputOutput2": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputOutput2TypedDict": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputStatus": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputTypedDict": ".responsesfunctioncalloutput", + "ResponsesFunctionCallOutputCallerDirect": ".responsesfunctioncalloutputcallerdirect", + "ResponsesFunctionCallOutputCallerDirectTypedDict": ".responsesfunctioncalloutputcallerdirect", + "ResponsesFunctionCallOutputCallerProgram": ".responsesfunctioncalloutputcallerprogram", + "ResponsesFunctionCallOutputCallerProgramTypedDict": ".responsesfunctioncalloutputcallerprogram", + "ResponsesFunctionTool": ".responsesfunctiontool", + "ResponsesFunctionToolAllowedCaller": ".responsesfunctiontool", + "ResponsesFunctionToolTypedDict": ".responsesfunctiontool", + "ResponsesCallerDirect": ".responsesfunctiontoolcall", + "ResponsesCallerDirectTypedDict": ".responsesfunctiontoolcall", + "ResponsesCallerProgram": ".responsesfunctiontoolcall", + "ResponsesCallerProgramTypedDict": ".responsesfunctiontoolcall", + "ResponsesFunctionToolCall": ".responsesfunctiontoolcall", + "ResponsesFunctionToolCallCaller": ".responsesfunctiontoolcall", + "ResponsesFunctionToolCallCallerTypedDict": ".responsesfunctiontoolcall", + "ResponsesFunctionToolCallStatus": ".responsesfunctiontoolcall", + "ResponsesFunctionToolCallTypedDict": ".responsesfunctiontoolcall", + "ResponsesIncompleteEvent": ".responsesincompleteevent", + "ResponsesIncompleteEventTypedDict": ".responsesincompleteevent", + "ResponsesInProgressEvent": ".responsesinprogressevent", + "ResponsesInProgressEventTypedDict": ".responsesinprogressevent", + "ResponsesInputFile": ".responsesinputfile", + "ResponsesInputFileDetail": ".responsesinputfile", + "ResponsesInputFileResponsesPromptCacheBreakpoint": ".responsesinputfile", + "ResponsesInputFileResponsesPromptCacheBreakpointTypedDict": ".responsesinputfile", + "ResponsesInputFileTypedDict": ".responsesinputfile", + "ResponsesInputFileContent": ".responsesinputfilecontent", + "ResponsesInputFileContentDetail": ".responsesinputfilecontent", + "ResponsesInputFileContentResponsesPromptCacheBreakpoint": ".responsesinputfilecontent", + "ResponsesInputFileContentResponsesPromptCacheBreakpointTypedDict": ".responsesinputfilecontent", + "ResponsesInputFileContentTypedDict": ".responsesinputfilecontent", + "ResponsesInputImage": ".responsesinputimage", + "ResponsesInputImageDetail": ".responsesinputimage", + "ResponsesInputImageResponsesPromptCacheBreakpoint": ".responsesinputimage", + "ResponsesInputImageResponsesPromptCacheBreakpointTypedDict": ".responsesinputimage", + "ResponsesInputImageTypedDict": ".responsesinputimage", + "ResponsesInputImageContent": ".responsesinputimagecontent", + "ResponsesInputImageContentDetail": ".responsesinputimagecontent", + "ResponsesInputImageContentResponsesPromptCacheBreakpoint": ".responsesinputimagecontent", + "ResponsesInputImageContentResponsesPromptCacheBreakpointTypedDict": ".responsesinputimagecontent", + "ResponsesInputImageContentTypedDict": ".responsesinputimagecontent", + "ResponsesInputText": ".responsesinputtext", + "ResponsesInputTextResponsesPromptCacheBreakpoint": ".responsesinputtext", + "ResponsesInputTextResponsesPromptCacheBreakpointTypedDict": ".responsesinputtext", + "ResponsesInputTextTypedDict": ".responsesinputtext", + "ResponsesInputTextContent": ".responsesinputtextcontent", + "ResponsesInputTextContentResponsesPromptCacheBreakpoint": ".responsesinputtextcontent", + "ResponsesInputTextContentResponsesPromptCacheBreakpointTypedDict": ".responsesinputtextcontent", + "ResponsesInputTextContentTypedDict": ".responsesinputtextcontent", + "ResponsesInputTokensDetails": ".responsesinputtokensdetails", + "ResponsesInputTokensDetailsTypedDict": ".responsesinputtokensdetails", + "ResponsesMessage": ".responsesmessage", + "ResponsesMessageContent": ".responsesmessage", + "ResponsesMessageContentTypedDict": ".responsesmessage", + "ResponsesMessageRole": ".responsesmessage", + "ResponsesMessageStatus": ".responsesmessage", + "ResponsesMessageTypedDict": ".responsesmessage", + "ResponsesNamespaceTool": ".responsesnamespacetool", + "ResponsesNamespaceToolTool": ".responsesnamespacetool", + "ResponsesNamespaceToolToolTypedDict": ".responsesnamespacetool", + "ResponsesNamespaceToolTypedDict": ".responsesnamespacetool", + "ResponsesOutputItemAddedEvent": ".responsesoutputitemaddedevent", + "ResponsesOutputItemAddedEventItem": ".responsesoutputitemaddedevent", + "ResponsesOutputItemAddedEventItemTypedDict": ".responsesoutputitemaddedevent", + "ResponsesOutputItemAddedEventTypedDict": ".responsesoutputitemaddedevent", + "ResponsesOutputItemDoneEvent": ".responsesoutputitemdoneevent", + "ResponsesOutputItemDoneEventItem": ".responsesoutputitemdoneevent", + "ResponsesOutputItemDoneEventItemTypedDict": ".responsesoutputitemdoneevent", + "ResponsesOutputItemDoneEventTypedDict": ".responsesoutputitemdoneevent", + "ResponsesOutputMessage": ".responsesoutputmessage", + "ResponsesOutputMessageContent": ".responsesoutputmessage", + "ResponsesOutputMessageContentTypedDict": ".responsesoutputmessage", + "ResponsesOutputMessagePhase": ".responsesoutputmessage", + "ResponsesOutputMessageStatus": ".responsesoutputmessage", + "ResponsesOutputMessageTypedDict": ".responsesoutputmessage", + "ResponsesOutputRefusal": ".responsesoutputrefusal", + "ResponsesOutputRefusalTypedDict": ".responsesoutputrefusal", + "Annotation": ".responsesoutputtext", + "AnnotationTypedDict": ".responsesoutputtext", + "ResponsesOutputText": ".responsesoutputtext", + "ResponsesOutputTextTypedDict": ".responsesoutputtext", + "ResponsesOutputTextLogprob": ".responsesoutputtextlogprob", + "ResponsesOutputTextLogprobTypedDict": ".responsesoutputtextlogprob", + "ResponsesOutputTextLogprobTopLogprob": ".responsesoutputtextlogprobtoplogprob", + "ResponsesOutputTextLogprobTopLogprobTypedDict": ".responsesoutputtextlogprobtoplogprob", + "ResponsesOutputTokensDetails": ".responsesoutputtokensdetails", + "ResponsesOutputTokensDetailsTypedDict": ".responsesoutputtokensdetails", + "ResponsesPartReasoningText": ".responsespartreasoningtext", + "ResponsesPartReasoningTextTypedDict": ".responsespartreasoningtext", + "ResponsesReasoningItem": ".responsesreasoningitem", + "ResponsesReasoningItemStatus": ".responsesreasoningitem", + "ResponsesReasoningItemTypedDict": ".responsesreasoningitem", + "ResponsesReasoningTextDeltaEvent": ".responsesreasoningtextdeltaevent", + "ResponsesReasoningTextDeltaEventTypedDict": ".responsesreasoningtextdeltaevent", + "ResponsesReasoningTextDoneEvent": ".responsesreasoningtextdoneevent", + "ResponsesReasoningTextDoneEventTypedDict": ".responsesreasoningtextdoneevent", + "ResponsesStreamFrame": ".responsesstreamframe", + "ResponsesStreamFrameData": ".responsesstreamframe", + "ResponsesStreamFrameDataTypedDict": ".responsesstreamframe", + "ResponsesStreamFrameTypedDict": ".responsesstreamframe", + "ResponsesSummary": ".responsessummary", + "ResponsesSummaryTypedDict": ".responsessummary", "ResponseStartedEvent": ".responsestartedevent", "ResponseStartedEventTypedDict": ".responsestartedevent", + "ResponsesTextDeltaEvent": ".responsestextdeltaevent", + "ResponsesTextDeltaEventTypedDict": ".responsestextdeltaevent", + "ResponsesTextDeltaEventLogprob": ".responsestextdeltaeventlogprob", + "ResponsesTextDeltaEventLogprobTypedDict": ".responsestextdeltaeventlogprob", + "ResponsesTextDeltaEventLogprobTopLogprob": ".responsestextdeltaeventlogprobtoplogprob", + "ResponsesTextDeltaEventLogprobTopLogprobTypedDict": ".responsestextdeltaeventlogprobtoplogprob", + "ResponsesTextDoneEvent": ".responsestextdoneevent", + "ResponsesTextDoneEventTypedDict": ".responsestextdoneevent", + "ResponsesTextDoneEventLogprob": ".responsestextdoneeventlogprob", + "ResponsesTextDoneEventLogprobTypedDict": ".responsestextdoneeventlogprob", + "ResponsesTextDoneEventLogprobTopLogprob": ".responsestextdoneeventlogprobtoplogprob", + "ResponsesTextDoneEventLogprobTopLogprobTypedDict": ".responsestextdoneeventlogprobtoplogprob", + "ResponsesToolChoiceFunction": ".responsestoolchoicefunction", + "ResponsesToolChoiceFunctionTypedDict": ".responsestoolchoicefunction", + "ResponsesToolFunction": ".responsestoolfunction", + "ResponsesToolFunctionAllowedCaller": ".responsestoolfunction", + "ResponsesToolFunctionTypedDict": ".responsestoolfunction", "RestartDeploymentV1WorkflowsDeploymentsNameRestartPostRequest": ".restart_deployment_v1_workflows_deployments_name_restart_postop", "RestartDeploymentV1WorkflowsDeploymentsNameRestartPostRequestTypedDict": ".restart_deployment_v1_workflows_deployments_name_restart_postop", "ResumeScheduleV1WorkflowsSchedulesScheduleIDResumePostRequest": ".resume_schedule_v1_workflows_schedules_schedule_id_resume_postop", diff --git a/src/mistralai/client/models/audioagentcreaterequest.py b/src/mistralai/client/models/audioagentcreaterequest.py index 282146b8e..20fd5ab91 100644 --- a/src/mistralai/client/models/audioagentcreaterequest.py +++ b/src/mistralai/client/models/audioagentcreaterequest.py @@ -18,21 +18,21 @@ class AudioAgentCreateRequestTypedDict(TypedDict): name: str + configuration: AudioAgentConfigurationRequestTypedDict description: NotRequired[Nullable[str]] - configuration: NotRequired[Nullable[AudioAgentConfigurationRequestTypedDict]] class AudioAgentCreateRequest(BaseModel): name: str - description: OptionalNullable[str] = UNSET + configuration: AudioAgentConfigurationRequest - configuration: OptionalNullable[AudioAgentConfigurationRequest] = UNSET + description: OptionalNullable[str] = UNSET @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = set(["description", "configuration"]) - nullable_fields = set(["description", "configuration"]) + optional_fields = set(["description"]) + nullable_fields = set(["description"]) serialized = handler(self) m = {} diff --git a/src/mistralai/client/models/audiottsconfig.py b/src/mistralai/client/models/audiottsconfig.py index 66701ec65..1038ddc6a 100644 --- a/src/mistralai/client/models/audiottsconfig.py +++ b/src/mistralai/client/models/audiottsconfig.py @@ -1,7 +1,13 @@ """Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" from __future__ import annotations -from mistralai.client.types import BaseModel, UNSET_SENTINEL +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) from pydantic import model_serializer from typing import Optional from typing_extensions import NotRequired, TypedDict @@ -10,6 +16,7 @@ class AudioTTSConfigTypedDict(TypedDict): model: NotRequired[str] voice_id: NotRequired[str] + expressiveness: NotRequired[Nullable[float]] class AudioTTSConfig(BaseModel): @@ -17,18 +24,29 @@ class AudioTTSConfig(BaseModel): voice_id: Optional[str] = None + expressiveness: OptionalNullable[float] = UNSET + @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = set(["model", "voice_id"]) + optional_fields = set(["model", "voice_id", "expressiveness"]) + nullable_fields = set(["expressiveness"]) serialized = handler(self) m = {} for n, f in type(self).model_fields.items(): k = f.alias or n val = serialized.get(k, serialized.get(n)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) if val != UNSET_SENTINEL: - if val is not None or k not in optional_fields: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): m[k] = val return m diff --git a/src/mistralai/client/models/countresponseinputtokensrequest.py b/src/mistralai/client/models/countresponseinputtokensrequest.py new file mode 100644 index 000000000..6fd6c937f --- /dev/null +++ b/src/mistralai/client/models/countresponseinputtokensrequest.py @@ -0,0 +1,540 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responseseasyinputmessage import ( + ResponsesEasyInputMessage, + ResponsesEasyInputMessageTypedDict, +) +from .responsesfunctioncalloutput import ( + ResponsesFunctionCallOutput, + ResponsesFunctionCallOutputTypedDict, +) +from .responsesfunctiontool import ResponsesFunctionTool, ResponsesFunctionToolTypedDict +from .responsesfunctiontoolcall import ( + ResponsesFunctionToolCall, + ResponsesFunctionToolCallTypedDict, +) +from .responsesmessage import ResponsesMessage, ResponsesMessageTypedDict +from .responsesnamespacetool import ( + ResponsesNamespaceTool, + ResponsesNamespaceToolTypedDict, +) +from .responsesoutputmessage import ( + ResponsesOutputMessage, + ResponsesOutputMessageTypedDict, +) +from .responsesreasoningitem import ( + ResponsesReasoningItem, + ResponsesReasoningItemTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, SerializeAsAny, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Optional, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +CountResponseInputTokensRequestInput1TypedDict = TypeAliasType( + "CountResponseInputTokensRequestInput1TypedDict", + Union[ + ResponsesEasyInputMessageTypedDict, + ResponsesMessageTypedDict, + ResponsesOutputMessageTypedDict, + ResponsesFunctionCallOutputTypedDict, + ResponsesReasoningItemTypedDict, + ResponsesFunctionToolCallTypedDict, + ], +) + + +CountResponseInputTokensRequestInput1 = TypeAliasType( + "CountResponseInputTokensRequestInput1", + Union[ + ResponsesEasyInputMessage, + ResponsesMessage, + ResponsesOutputMessage, + ResponsesFunctionCallOutput, + ResponsesReasoningItem, + ResponsesFunctionToolCall, + ], +) + + +CountResponseInputTokensRequestInput2TypedDict = TypeAliasType( + "CountResponseInputTokensRequestInput2TypedDict", + Union[str, List[CountResponseInputTokensRequestInput1TypedDict]], +) + + +CountResponseInputTokensRequestInput2 = TypeAliasType( + "CountResponseInputTokensRequestInput2", + Union[str, List[CountResponseInputTokensRequestInput1]], +) + + +CountResponseInputTokensRequestToolTypedDict = TypeAliasType( + "CountResponseInputTokensRequestToolTypedDict", + Union[ResponsesNamespaceToolTypedDict, ResponsesFunctionToolTypedDict], +) + + +CountResponseInputTokensRequestTool = Annotated[ + Union[ResponsesFunctionTool, ResponsesNamespaceTool], Field(discriminator="type") +] + + +class CountResponseInputTokensRequestResponsesToolChoiceFunctionTypedDict(TypedDict): + name: str + type: Literal["function"] + + +class CountResponseInputTokensRequestResponsesToolChoiceFunction(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + type: Annotated[ + Annotated[Literal["function"], AfterValidator(validate_const("function"))], + pydantic.Field(alias="type"), + ] = "function" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +CountResponseInputTokensRequestToolChoiceEnum = Literal[ + "none", + "auto", + "required", +] + + +CountResponseInputTokensRequestToolChoiceUnionTypedDict = TypeAliasType( + "CountResponseInputTokensRequestToolChoiceUnionTypedDict", + Union[ + CountResponseInputTokensRequestResponsesToolChoiceFunctionTypedDict, + CountResponseInputTokensRequestToolChoiceEnum, + ], +) + + +CountResponseInputTokensRequestToolChoiceUnion = TypeAliasType( + "CountResponseInputTokensRequestToolChoiceUnion", + Union[ + CountResponseInputTokensRequestResponsesToolChoiceFunction, + CountResponseInputTokensRequestToolChoiceEnum, + ], +) + + +CountResponseInputTokensRequestEffort = Literal[ + "none", + "minimal", + "low", + "medium", + "high", + "xhigh", + "max", +] + + +class CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict(TypedDict): + effort: NotRequired[Nullable[CountResponseInputTokensRequestEffort]] + + +class CountResponseInputTokensRequestResponsesSupportedReasoning(BaseModel): + effort: OptionalNullable[CountResponseInputTokensRequestEffort] = None + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["effort"]) + nullable_fields = set(["effort"]) + null_default_fields = set(["effort"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + + return m + + +class CountResponseInputTokensRequestResponsesFormatJSONObjectTypedDict(TypedDict): + type: Literal["json_object"] + + +class CountResponseInputTokensRequestResponsesFormatJSONObject(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[ + Literal["json_object"], AfterValidator(validate_const("json_object")) + ], + pydantic.Field(alias="type"), + ] = "json_object" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfigTypedDict( + TypedDict +): + name: str + schema_: Dict[str, Any] + type: Literal["json_schema"] + description: NotRequired[Nullable[str]] + strict: NotRequired[Nullable[bool]] + + +class CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + schema_: Annotated[Dict[str, Any], pydantic.Field(alias="schema")] + + type: Annotated[ + Annotated[ + Literal["json_schema"], AfterValidator(validate_const("json_schema")) + ], + pydantic.Field(alias="type"), + ] = "json_schema" + + description: OptionalNullable[str] = None + + strict: OptionalNullable[bool] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["description", "strict"]) + nullable_fields = set(["description", "strict"]) + null_default_fields = set(["description", "strict"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +class CountResponseInputTokensRequestResponsesFormatTextTypedDict(TypedDict): + type: Literal["text"] + + +class CountResponseInputTokensRequestResponsesFormatText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["text"], AfterValidator(validate_const("text"))], + pydantic.Field(alias="type"), + ] = "text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +CountResponseInputTokensRequestFormatTypedDict = TypeAliasType( + "CountResponseInputTokensRequestFormatTypedDict", + Union[ + CountResponseInputTokensRequestResponsesFormatTextTypedDict, + CountResponseInputTokensRequestResponsesFormatJSONObjectTypedDict, + CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfigTypedDict, + ], +) + + +CountResponseInputTokensRequestFormat = Annotated[ + Union[ + CountResponseInputTokensRequestResponsesFormatText, + CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig, + CountResponseInputTokensRequestResponsesFormatJSONObject, + ], + Field(discriminator="type"), +] + + +CountResponseInputTokensRequestVerbosity = Literal[ + "low", + "medium", + "high", +] + + +class CountResponseInputTokensRequestResponsesTextConfigTypedDict(TypedDict): + format_: NotRequired[Nullable[CountResponseInputTokensRequestFormatTypedDict]] + verbosity: NotRequired[Nullable[CountResponseInputTokensRequestVerbosity]] + + +class CountResponseInputTokensRequestResponsesTextConfig(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + format_: Annotated[ + SerializeAsAny[OptionalNullable[CountResponseInputTokensRequestFormat]], + pydantic.Field(alias="format"), + ] = UNSET + + verbosity: OptionalNullable[CountResponseInputTokensRequestVerbosity] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["format", "verbosity"]) + nullable_fields = set(["format", "verbosity"]) + null_default_fields = set(["verbosity"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +class CountResponseInputTokensRequestTypedDict(TypedDict): + model: str + input: CountResponseInputTokensRequestInput2TypedDict + instructions: NotRequired[Nullable[str]] + parallel_tool_calls: NotRequired[bool] + previous_response_id: NotRequired[Nullable[Any]] + truncation: Literal["disabled"] + tools: NotRequired[List[CountResponseInputTokensRequestToolTypedDict]] + tool_choice: NotRequired[CountResponseInputTokensRequestToolChoiceUnionTypedDict] + reasoning: NotRequired[ + Nullable[CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict] + ] + conversation: NotRequired[Nullable[Any]] + prompt: NotRequired[Nullable[Any]] + text: NotRequired[ + Nullable[CountResponseInputTokensRequestResponsesTextConfigTypedDict] + ] + + +class CountResponseInputTokensRequest(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + model: str + + input: CountResponseInputTokensRequestInput2 + + instructions: OptionalNullable[str] = UNSET + + parallel_tool_calls: Optional[bool] = True + + previous_response_id: OptionalNullable[Any] = UNSET + + truncation: Annotated[ + Annotated[ + Optional[Literal["disabled"]], AfterValidator(validate_const("disabled")) + ], + pydantic.Field(alias="truncation"), + ] = "disabled" + + tools: Optional[List[CountResponseInputTokensRequestTool]] = None + + tool_choice: Optional[CountResponseInputTokensRequestToolChoiceUnion] = None + + reasoning: OptionalNullable[ + CountResponseInputTokensRequestResponsesSupportedReasoning + ] = UNSET + + conversation: OptionalNullable[Any] = UNSET + + prompt: OptionalNullable[Any] = UNSET + + text: OptionalNullable[CountResponseInputTokensRequestResponsesTextConfig] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "instructions", + "parallel_tool_calls", + "previous_response_id", + "truncation", + "tools", + "tool_choice", + "reasoning", + "conversation", + "prompt", + "text", + ] + ) + nullable_fields = set( + [ + "instructions", + "previous_response_id", + "reasoning", + "conversation", + "prompt", + "text", + ] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + CountResponseInputTokensRequestResponsesToolChoiceFunction.model_rebuild() +except NameError: + pass +try: + CountResponseInputTokensRequestResponsesFormatJSONObject.model_rebuild() +except NameError: + pass +try: + CountResponseInputTokensRequestResponsesFormatTextJSONSchemaConfig.model_rebuild() +except NameError: + pass +try: + CountResponseInputTokensRequestResponsesFormatText.model_rebuild() +except NameError: + pass +try: + CountResponseInputTokensRequestResponsesTextConfig.model_rebuild() +except NameError: + pass +try: + CountResponseInputTokensRequest.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/countresponseinputtokensresponse.py b/src/mistralai/client/models/countresponseinputtokensresponse.py new file mode 100644 index 000000000..1d4931a57 --- /dev/null +++ b/src/mistralai/client/models/countresponseinputtokensresponse.py @@ -0,0 +1,46 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class CountResponseInputTokensResponseTypedDict(TypedDict): + input_tokens: int + object: Literal["response.input_tokens"] + + +class CountResponseInputTokensResponse(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + input_tokens: int + + object: Annotated[ + Annotated[ + Literal["response.input_tokens"], + AfterValidator(validate_const("response.input_tokens")), + ], + pydantic.Field(alias="object"), + ] = "response.input_tokens" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + CountResponseInputTokensResponse.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/create_response_v1_responses_postop.py b/src/mistralai/client/models/create_response_v1_responses_postop.py new file mode 100644 index 000000000..50b8eb0a2 --- /dev/null +++ b/src/mistralai/client/models/create_response_v1_responses_postop.py @@ -0,0 +1,35 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .createresponseresponse import ( + CreateResponseResponse, + CreateResponseResponseTypedDict, +) +from .responsesstreamframe import ResponsesStreamFrame, ResponsesStreamFrameTypedDict +from mistralai.client.utils import eventstreaming +from typing import Union +from typing_extensions import TypeAliasType + + +CreateResponseV1ResponsesPostResponseTypedDict = TypeAliasType( + "CreateResponseV1ResponsesPostResponseTypedDict", + Union[ + CreateResponseResponseTypedDict, + Union[ + eventstreaming.EventStream[ResponsesStreamFrameTypedDict], + eventstreaming.EventStreamAsync[ResponsesStreamFrameTypedDict], + ], + ], +) + + +CreateResponseV1ResponsesPostResponse = TypeAliasType( + "CreateResponseV1ResponsesPostResponse", + Union[ + CreateResponseResponse, + Union[ + eventstreaming.EventStream[ResponsesStreamFrame], + eventstreaming.EventStreamAsync[ResponsesStreamFrame], + ], + ], +) diff --git a/src/mistralai/client/models/createresponserequest.py b/src/mistralai/client/models/createresponserequest.py new file mode 100644 index 000000000..6b41ab15e --- /dev/null +++ b/src/mistralai/client/models/createresponserequest.py @@ -0,0 +1,599 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responseseasyinputmessage import ( + ResponsesEasyInputMessage, + ResponsesEasyInputMessageTypedDict, +) +from .responsesfunctioncalloutput import ( + ResponsesFunctionCallOutput, + ResponsesFunctionCallOutputTypedDict, +) +from .responsesfunctiontool import ResponsesFunctionTool, ResponsesFunctionToolTypedDict +from .responsesfunctiontoolcall import ( + ResponsesFunctionToolCall, + ResponsesFunctionToolCallTypedDict, +) +from .responsesmessage import ResponsesMessage, ResponsesMessageTypedDict +from .responsesnamespacetool import ( + ResponsesNamespaceTool, + ResponsesNamespaceToolTypedDict, +) +from .responsesoutputmessage import ( + ResponsesOutputMessage, + ResponsesOutputMessageTypedDict, +) +from .responsesreasoningitem import ( + ResponsesReasoningItem, + ResponsesReasoningItemTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, SerializeAsAny, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Optional, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +CreateResponseRequestInput1TypedDict = TypeAliasType( + "CreateResponseRequestInput1TypedDict", + Union[ + ResponsesEasyInputMessageTypedDict, + ResponsesMessageTypedDict, + ResponsesOutputMessageTypedDict, + ResponsesFunctionCallOutputTypedDict, + ResponsesReasoningItemTypedDict, + ResponsesFunctionToolCallTypedDict, + ], +) + + +CreateResponseRequestInput1 = TypeAliasType( + "CreateResponseRequestInput1", + Union[ + ResponsesEasyInputMessage, + ResponsesMessage, + ResponsesOutputMessage, + ResponsesFunctionCallOutput, + ResponsesReasoningItem, + ResponsesFunctionToolCall, + ], +) + + +CreateResponseRequestInput2TypedDict = TypeAliasType( + "CreateResponseRequestInput2TypedDict", + Union[str, List[CreateResponseRequestInput1TypedDict]], +) + + +CreateResponseRequestInput2 = TypeAliasType( + "CreateResponseRequestInput2", Union[str, List[CreateResponseRequestInput1]] +) + + +CreateResponseRequestToolTypedDict = TypeAliasType( + "CreateResponseRequestToolTypedDict", + Union[ResponsesNamespaceToolTypedDict, ResponsesFunctionToolTypedDict], +) + + +CreateResponseRequestTool = Annotated[ + Union[ResponsesFunctionTool, ResponsesNamespaceTool], Field(discriminator="type") +] + + +class CreateResponseRequestResponsesToolChoiceFunctionTypedDict(TypedDict): + name: str + type: Literal["function"] + + +class CreateResponseRequestResponsesToolChoiceFunction(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + type: Annotated[ + Annotated[Literal["function"], AfterValidator(validate_const("function"))], + pydantic.Field(alias="type"), + ] = "function" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +CreateResponseRequestToolChoiceEnum = Literal[ + "none", + "auto", + "required", +] + + +CreateResponseRequestToolChoiceUnionTypedDict = TypeAliasType( + "CreateResponseRequestToolChoiceUnionTypedDict", + Union[ + CreateResponseRequestResponsesToolChoiceFunctionTypedDict, + CreateResponseRequestToolChoiceEnum, + ], +) + + +CreateResponseRequestToolChoiceUnion = TypeAliasType( + "CreateResponseRequestToolChoiceUnion", + Union[ + CreateResponseRequestResponsesToolChoiceFunction, + CreateResponseRequestToolChoiceEnum, + ], +) + + +CreateResponseRequestEffort = Literal[ + "none", + "minimal", + "low", + "medium", + "high", + "xhigh", + "max", +] + + +class CreateResponseRequestResponsesSupportedReasoningTypedDict(TypedDict): + effort: NotRequired[Nullable[CreateResponseRequestEffort]] + + +class CreateResponseRequestResponsesSupportedReasoning(BaseModel): + effort: OptionalNullable[CreateResponseRequestEffort] = None + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["effort"]) + nullable_fields = set(["effort"]) + null_default_fields = set(["effort"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + + return m + + +class CreateResponseRequestResponsesFormatJSONObjectTypedDict(TypedDict): + type: Literal["json_object"] + + +class CreateResponseRequestResponsesFormatJSONObject(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[ + Literal["json_object"], AfterValidator(validate_const("json_object")) + ], + pydantic.Field(alias="type"), + ] = "json_object" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class CreateResponseRequestResponsesFormatTextJSONSchemaConfigTypedDict(TypedDict): + name: str + schema_: Dict[str, Any] + type: Literal["json_schema"] + description: NotRequired[Nullable[str]] + strict: NotRequired[Nullable[bool]] + + +class CreateResponseRequestResponsesFormatTextJSONSchemaConfig(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + schema_: Annotated[Dict[str, Any], pydantic.Field(alias="schema")] + + type: Annotated[ + Annotated[ + Literal["json_schema"], AfterValidator(validate_const("json_schema")) + ], + pydantic.Field(alias="type"), + ] = "json_schema" + + description: OptionalNullable[str] = None + + strict: OptionalNullable[bool] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["description", "strict"]) + nullable_fields = set(["description", "strict"]) + null_default_fields = set(["description", "strict"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +class CreateResponseRequestResponsesFormatTextTypedDict(TypedDict): + type: Literal["text"] + + +class CreateResponseRequestResponsesFormatText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["text"], AfterValidator(validate_const("text"))], + pydantic.Field(alias="type"), + ] = "text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +CreateResponseRequestFormatTypedDict = TypeAliasType( + "CreateResponseRequestFormatTypedDict", + Union[ + CreateResponseRequestResponsesFormatTextTypedDict, + CreateResponseRequestResponsesFormatJSONObjectTypedDict, + CreateResponseRequestResponsesFormatTextJSONSchemaConfigTypedDict, + ], +) + + +CreateResponseRequestFormat = Annotated[ + Union[ + CreateResponseRequestResponsesFormatText, + CreateResponseRequestResponsesFormatTextJSONSchemaConfig, + CreateResponseRequestResponsesFormatJSONObject, + ], + Field(discriminator="type"), +] + + +CreateResponseRequestVerbosity = Literal[ + "low", + "medium", + "high", +] + + +class CreateResponseRequestResponsesTextConfigTypedDict(TypedDict): + format_: NotRequired[Nullable[CreateResponseRequestFormatTypedDict]] + verbosity: NotRequired[Nullable[CreateResponseRequestVerbosity]] + + +class CreateResponseRequestResponsesTextConfig(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + format_: Annotated[ + SerializeAsAny[OptionalNullable[CreateResponseRequestFormat]], + pydantic.Field(alias="format"), + ] = UNSET + + verbosity: OptionalNullable[CreateResponseRequestVerbosity] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["format", "verbosity"]) + nullable_fields = set(["format", "verbosity"]) + null_default_fields = set(["verbosity"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +class CreateResponseRequestTypedDict(TypedDict): + model: str + input: CreateResponseRequestInput2TypedDict + instructions: NotRequired[Nullable[str]] + parallel_tool_calls: NotRequired[bool] + previous_response_id: NotRequired[Nullable[Any]] + truncation: Literal["disabled"] + tools: NotRequired[List[CreateResponseRequestToolTypedDict]] + tool_choice: NotRequired[CreateResponseRequestToolChoiceUnionTypedDict] + reasoning: NotRequired[ + Nullable[CreateResponseRequestResponsesSupportedReasoningTypedDict] + ] + conversation: NotRequired[Nullable[Any]] + prompt: NotRequired[Nullable[Any]] + text: NotRequired[Nullable[CreateResponseRequestResponsesTextConfigTypedDict]] + background: Literal[False] + stream: NotRequired[bool] + store: Nullable[Literal[False]] + max_output_tokens: NotRequired[Nullable[int]] + temperature: NotRequired[Nullable[float]] + top_p: NotRequired[Nullable[float]] + metadata: NotRequired[Nullable[Dict[str, str]]] + prompt_cache_key: NotRequired[Nullable[str]] + max_tool_calls: NotRequired[Nullable[int]] + moderation: NotRequired[Nullable[Any]] + top_logprobs: Nullable[Literal[0]] + + +class CreateResponseRequest(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + model: str + + input: CreateResponseRequestInput2 + + instructions: OptionalNullable[str] = UNSET + + parallel_tool_calls: Optional[bool] = True + + previous_response_id: OptionalNullable[Any] = UNSET + + truncation: Annotated[ + Annotated[ + Optional[Literal["disabled"]], AfterValidator(validate_const("disabled")) + ], + pydantic.Field(alias="truncation"), + ] = "disabled" + + tools: Optional[List[CreateResponseRequestTool]] = None + + tool_choice: Optional[CreateResponseRequestToolChoiceUnion] = None + + reasoning: OptionalNullable[CreateResponseRequestResponsesSupportedReasoning] = ( + UNSET + ) + + conversation: OptionalNullable[Any] = UNSET + + prompt: OptionalNullable[Any] = UNSET + + text: OptionalNullable[CreateResponseRequestResponsesTextConfig] = UNSET + + background: Annotated[ + Annotated[Optional[Literal[False]], AfterValidator(validate_const(False))], + pydantic.Field(alias="background"), + ] = False + + stream: Optional[bool] = False + + store: Annotated[ + Annotated[ + OptionalNullable[Literal[False]], AfterValidator(validate_const(False)) + ], + pydantic.Field(alias="store"), + ] = False + + max_output_tokens: OptionalNullable[int] = UNSET + + temperature: OptionalNullable[float] = UNSET + + top_p: OptionalNullable[float] = UNSET + + metadata: OptionalNullable[Dict[str, str]] = UNSET + + prompt_cache_key: OptionalNullable[str] = UNSET + + max_tool_calls: OptionalNullable[int] = UNSET + + moderation: OptionalNullable[Any] = UNSET + + top_logprobs: Annotated[ + Annotated[OptionalNullable[Literal[0]], AfterValidator(validate_const(0))], + pydantic.Field(alias="top_logprobs"), + ] = 0 + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "instructions", + "parallel_tool_calls", + "previous_response_id", + "truncation", + "tools", + "tool_choice", + "reasoning", + "conversation", + "prompt", + "text", + "background", + "stream", + "store", + "max_output_tokens", + "temperature", + "top_p", + "metadata", + "prompt_cache_key", + "max_tool_calls", + "moderation", + "top_logprobs", + ] + ) + nullable_fields = set( + [ + "instructions", + "previous_response_id", + "reasoning", + "conversation", + "prompt", + "text", + "store", + "max_output_tokens", + "temperature", + "top_p", + "metadata", + "prompt_cache_key", + "max_tool_calls", + "moderation", + "top_logprobs", + ] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + CreateResponseRequestResponsesToolChoiceFunction.model_rebuild() +except NameError: + pass +try: + CreateResponseRequestResponsesFormatJSONObject.model_rebuild() +except NameError: + pass +try: + CreateResponseRequestResponsesFormatTextJSONSchemaConfig.model_rebuild() +except NameError: + pass +try: + CreateResponseRequestResponsesFormatText.model_rebuild() +except NameError: + pass +try: + CreateResponseRequestResponsesTextConfig.model_rebuild() +except NameError: + pass +try: + CreateResponseRequest.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/createresponseresponse.py b/src/mistralai/client/models/createresponseresponse.py new file mode 100644 index 000000000..b9b509e10 --- /dev/null +++ b/src/mistralai/client/models/createresponseresponse.py @@ -0,0 +1,753 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesfunctiontool import ResponsesFunctionTool, ResponsesFunctionToolTypedDict +from .responsesfunctiontoolcall import ( + ResponsesFunctionToolCall, + ResponsesFunctionToolCallTypedDict, +) +from .responsesinputtokensdetails import ( + ResponsesInputTokensDetails, + ResponsesInputTokensDetailsTypedDict, +) +from .responsesnamespacetool import ( + ResponsesNamespaceTool, + ResponsesNamespaceToolTypedDict, +) +from .responsesoutputmessage import ( + ResponsesOutputMessage, + ResponsesOutputMessageTypedDict, +) +from .responsesoutputtokensdetails import ( + ResponsesOutputTokensDetails, + ResponsesOutputTokensDetailsTypedDict, +) +from .responsesreasoningitem import ( + ResponsesReasoningItem, + ResponsesReasoningItemTypedDict, +) +from .responsestoolchoicefunction import ( + ResponsesToolChoiceFunction, + ResponsesToolChoiceFunctionTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, SerializeAsAny, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +Code = Literal[ + "server_error", + "rate_limit_exceeded", + "invalid_prompt", + "bio_policy", + "vector_store_timeout", + "invalid_image", + "invalid_image_format", + "invalid_base64_image", + "invalid_image_url", + "image_too_large", + "image_too_small", + "image_parse_error", + "image_content_policy_violation", + "invalid_image_mode", + "image_file_too_large", + "unsupported_image_media_type", + "empty_image_file", + "failed_to_download_image", + "image_file_not_found", +] + + +class ResponsesErrorTypedDict(TypedDict): + code: Code + message: str + + +class ResponsesError(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + code: Code + + message: str + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +Reason = Literal[ + "max_output_tokens", + "content_filter", +] + + +class ResponsesIncompleteDetailsTypedDict(TypedDict): + reason: NotRequired[Nullable[Reason]] + + +class ResponsesIncompleteDetails(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + reason: OptionalNullable[Reason] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["reason"]) + nullable_fields = set(["reason"]) + null_default_fields = set(["reason"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +CreateResponseResponseOutputTypedDict = TypeAliasType( + "CreateResponseResponseOutputTypedDict", + Union[ + ResponsesOutputMessageTypedDict, + ResponsesReasoningItemTypedDict, + ResponsesFunctionToolCallTypedDict, + ], +) + + +CreateResponseResponseOutput = Annotated[ + Union[ResponsesOutputMessage, ResponsesFunctionToolCall, ResponsesReasoningItem], + Field(discriminator="type"), +] + + +CreateResponseResponseToolChoiceEnum = Literal[ + "none", + "auto", + "required", +] + + +CreateResponseResponseToolChoiceUnionTypedDict = TypeAliasType( + "CreateResponseResponseToolChoiceUnionTypedDict", + Union[ResponsesToolChoiceFunctionTypedDict, CreateResponseResponseToolChoiceEnum], +) + + +CreateResponseResponseToolChoiceUnion = TypeAliasType( + "CreateResponseResponseToolChoiceUnion", + Union[ResponsesToolChoiceFunction, CreateResponseResponseToolChoiceEnum], +) + + +CreateResponseResponseToolTypedDict = TypeAliasType( + "CreateResponseResponseToolTypedDict", + Union[ResponsesNamespaceToolTypedDict, ResponsesFunctionToolTypedDict], +) + + +CreateResponseResponseTool = Annotated[ + Union[ResponsesFunctionTool, ResponsesNamespaceTool], Field(discriminator="type") +] + + +PromptCacheRetention = Literal[ + "in_memory", + "24h", +] + + +ResponsesSupportedReasoningEffort = Literal[ + "none", + "minimal", + "low", + "medium", + "high", + "xhigh", + "max", +] + + +class CreateResponseResponseResponsesSupportedReasoningTypedDict(TypedDict): + effort: NotRequired[Nullable[ResponsesSupportedReasoningEffort]] + + +class CreateResponseResponseResponsesSupportedReasoning(BaseModel): + effort: OptionalNullable[ResponsesSupportedReasoningEffort] = None + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["effort"]) + nullable_fields = set(["effort"]) + null_default_fields = set(["effort"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + + return m + + +ServiceTier = Literal[ + "auto", + "default", + "flex", + "scale", + "priority", +] + + +CreateResponseResponseStatus = Literal[ + "completed", + "failed", + "in_progress", + "cancelled", + "queued", + "incomplete", +] + + +class ResponsesTextConfigResponsesFormatJSONObjectTypedDict(TypedDict): + type: Literal["json_object"] + + +class ResponsesTextConfigResponsesFormatJSONObject(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[ + Literal["json_object"], AfterValidator(validate_const("json_object")) + ], + pydantic.Field(alias="type"), + ] = "json_object" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesTextConfigResponsesFormatTextJSONSchemaConfigTypedDict(TypedDict): + name: str + schema_: Dict[str, Any] + type: Literal["json_schema"] + description: NotRequired[Nullable[str]] + strict: NotRequired[Nullable[bool]] + + +class ResponsesTextConfigResponsesFormatTextJSONSchemaConfig(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + schema_: Annotated[Dict[str, Any], pydantic.Field(alias="schema")] + + type: Annotated[ + Annotated[ + Literal["json_schema"], AfterValidator(validate_const("json_schema")) + ], + pydantic.Field(alias="type"), + ] = "json_schema" + + description: OptionalNullable[str] = None + + strict: OptionalNullable[bool] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["description", "strict"]) + nullable_fields = set(["description", "strict"]) + null_default_fields = set(["description", "strict"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +class ResponsesTextConfigResponsesFormatTextTypedDict(TypedDict): + type: Literal["text"] + + +class ResponsesTextConfigResponsesFormatText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["text"], AfterValidator(validate_const("text"))], + pydantic.Field(alias="type"), + ] = "text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +ResponsesTextConfigFormatTypedDict = TypeAliasType( + "ResponsesTextConfigFormatTypedDict", + Union[ + ResponsesTextConfigResponsesFormatTextTypedDict, + ResponsesTextConfigResponsesFormatJSONObjectTypedDict, + ResponsesTextConfigResponsesFormatTextJSONSchemaConfigTypedDict, + ], +) + + +ResponsesTextConfigFormat = Annotated[ + Union[ + ResponsesTextConfigResponsesFormatText, + ResponsesTextConfigResponsesFormatTextJSONSchemaConfig, + ResponsesTextConfigResponsesFormatJSONObject, + ], + Field(discriminator="type"), +] + + +ResponsesTextConfigVerbosity = Literal[ + "low", + "medium", + "high", +] + + +class CreateResponseResponseResponsesTextConfigTypedDict(TypedDict): + format_: NotRequired[Nullable[ResponsesTextConfigFormatTypedDict]] + verbosity: NotRequired[Nullable[ResponsesTextConfigVerbosity]] + + +class CreateResponseResponseResponsesTextConfig(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + format_: Annotated[ + SerializeAsAny[OptionalNullable[ResponsesTextConfigFormat]], + pydantic.Field(alias="format"), + ] = UNSET + + verbosity: OptionalNullable[ResponsesTextConfigVerbosity] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["format", "verbosity"]) + nullable_fields = set(["format", "verbosity"]) + null_default_fields = set(["verbosity"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +Truncation = Literal[ + "auto", + "disabled", +] + + +class ResponsesUsageTypedDict(TypedDict): + input_tokens: int + input_tokens_details: ResponsesInputTokensDetailsTypedDict + output_tokens: int + output_tokens_details: ResponsesOutputTokensDetailsTypedDict + total_tokens: int + + +class ResponsesUsage(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + input_tokens: int + + input_tokens_details: ResponsesInputTokensDetails + + output_tokens: int + + output_tokens_details: ResponsesOutputTokensDetails + + total_tokens: int + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class CreateResponseResponseTypedDict(TypedDict): + id: str + created_at: float + model: str + output: List[CreateResponseResponseOutputTypedDict] + parallel_tool_calls: bool + tool_choice: CreateResponseResponseToolChoiceUnionTypedDict + tools: List[CreateResponseResponseToolTypedDict] + error: NotRequired[Nullable[ResponsesErrorTypedDict]] + incomplete_details: NotRequired[Nullable[ResponsesIncompleteDetailsTypedDict]] + instructions: NotRequired[Nullable[str]] + metadata: NotRequired[Nullable[Dict[str, str]]] + object: Literal["response"] + temperature: NotRequired[Nullable[float]] + top_p: NotRequired[Nullable[float]] + background: NotRequired[Nullable[bool]] + completed_at: NotRequired[Nullable[float]] + max_output_tokens: NotRequired[Nullable[int]] + max_tool_calls: NotRequired[Nullable[int]] + previous_response_id: NotRequired[Nullable[str]] + prompt_cache_key: NotRequired[Nullable[str]] + prompt_cache_retention: NotRequired[Nullable[PromptCacheRetention]] + reasoning: NotRequired[ + Nullable[CreateResponseResponseResponsesSupportedReasoningTypedDict] + ] + safety_identifier: NotRequired[Nullable[str]] + service_tier: NotRequired[Nullable[ServiceTier]] + status: NotRequired[Nullable[CreateResponseResponseStatus]] + text: NotRequired[Nullable[CreateResponseResponseResponsesTextConfigTypedDict]] + top_logprobs: NotRequired[Nullable[int]] + truncation: NotRequired[Nullable[Truncation]] + usage: NotRequired[Nullable[ResponsesUsageTypedDict]] + user: NotRequired[Nullable[str]] + + +class CreateResponseResponse(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + id: str + + created_at: float + + model: str + + output: List[CreateResponseResponseOutput] + + parallel_tool_calls: bool + + tool_choice: CreateResponseResponseToolChoiceUnion + + tools: List[CreateResponseResponseTool] + + error: OptionalNullable[ResponsesError] = UNSET + + incomplete_details: OptionalNullable[ResponsesIncompleteDetails] = UNSET + + instructions: OptionalNullable[str] = None + + metadata: OptionalNullable[Dict[str, str]] = UNSET + + object: Annotated[ + Annotated[Literal["response"], AfterValidator(validate_const("response"))], + pydantic.Field(alias="object"), + ] = "response" + + temperature: OptionalNullable[float] = None + + top_p: OptionalNullable[float] = None + + background: OptionalNullable[bool] = None + + completed_at: OptionalNullable[float] = None + + max_output_tokens: OptionalNullable[int] = None + + max_tool_calls: OptionalNullable[int] = None + + previous_response_id: OptionalNullable[str] = None + + prompt_cache_key: OptionalNullable[str] = None + + prompt_cache_retention: OptionalNullable[PromptCacheRetention] = None + + reasoning: OptionalNullable[CreateResponseResponseResponsesSupportedReasoning] = ( + UNSET + ) + + safety_identifier: OptionalNullable[str] = None + + service_tier: OptionalNullable[ServiceTier] = None + + status: OptionalNullable[CreateResponseResponseStatus] = None + + text: OptionalNullable[CreateResponseResponseResponsesTextConfig] = UNSET + + top_logprobs: OptionalNullable[int] = None + + truncation: OptionalNullable[Truncation] = None + + usage: OptionalNullable[ResponsesUsage] = UNSET + + user: OptionalNullable[str] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "error", + "incomplete_details", + "instructions", + "metadata", + "temperature", + "top_p", + "background", + "completed_at", + "max_output_tokens", + "max_tool_calls", + "previous_response_id", + "prompt_cache_key", + "prompt_cache_retention", + "reasoning", + "safety_identifier", + "service_tier", + "status", + "text", + "top_logprobs", + "truncation", + "usage", + "user", + ] + ) + nullable_fields = set( + [ + "error", + "incomplete_details", + "instructions", + "metadata", + "temperature", + "top_p", + "background", + "completed_at", + "max_output_tokens", + "max_tool_calls", + "previous_response_id", + "prompt_cache_key", + "prompt_cache_retention", + "reasoning", + "safety_identifier", + "service_tier", + "status", + "text", + "top_logprobs", + "truncation", + "usage", + "user", + ] + ) + null_default_fields = set( + [ + "instructions", + "temperature", + "top_p", + "background", + "completed_at", + "max_output_tokens", + "max_tool_calls", + "previous_response_id", + "prompt_cache_key", + "prompt_cache_retention", + "safety_identifier", + "service_tier", + "status", + "top_logprobs", + "truncation", + "user", + ] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesTextConfigResponsesFormatJSONObject.model_rebuild() +except NameError: + pass +try: + ResponsesTextConfigResponsesFormatTextJSONSchemaConfig.model_rebuild() +except NameError: + pass +try: + ResponsesTextConfigResponsesFormatText.model_rebuild() +except NameError: + pass +try: + CreateResponseResponseResponsesTextConfig.model_rebuild() +except NameError: + pass +try: + CreateResponseResponse.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/ipaphoneme.py b/src/mistralai/client/models/ipaphoneme.py index 368037138..419cdf58e 100644 --- a/src/mistralai/client/models/ipaphoneme.py +++ b/src/mistralai/client/models/ipaphoneme.py @@ -55,6 +55,33 @@ "ʒ", "ʔ", "θ", + "ʁ", + "r", + "ɑ̃", + "ʀ", + "x", + "y", + "ɔ̃", + "ɐ", + "œ", + "ɛ̃", + "ʝ", + "ɲ", + "ts", + "ɥ", + "ʏ", + "ø", + "β", + "ɦ", + "pf", + "ʎ", + "ɣ", + "ɳ", + "ɔʏ", + "œ̃", + "ɟʝ", + "ɬ", + "q", ] r"""The IPA phone inventory usable in pronunciation hints. diff --git a/src/mistralai/client/models/keywordretriever.py b/src/mistralai/client/models/keywordretriever.py index 6b6711064..bf04279a6 100644 --- a/src/mistralai/client/models/keywordretriever.py +++ b/src/mistralai/client/models/keywordretriever.py @@ -22,6 +22,12 @@ from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict +Operator = Literal[ + "or", + "and", +] + + KeywordRetrieverFilterTypedDict = TypeAliasType( "KeywordRetrieverFilterTypedDict", Union[ @@ -41,17 +47,24 @@ class KeywordRetrieverTypedDict(TypedDict): - r"""Retrieve document chunks with similar keywords to the given query.""" + r"""Retrieve document chunks with similar keywords to the given query. + + Uses the default settings for the index on the field. + """ query: str top_k: NotRequired[int] type: Literal["keyword"] + operator: NotRequired[Operator] filter_: NotRequired[Nullable[KeywordRetrieverFilterTypedDict]] field: NotRequired[Nullable[str]] class KeywordRetriever(BaseModel): - r"""Retrieve document chunks with similar keywords to the given query.""" + r"""Retrieve document chunks with similar keywords to the given query. + + Uses the default settings for the index on the field. + """ query: str @@ -62,6 +75,8 @@ class KeywordRetriever(BaseModel): pydantic.Field(alias="type"), ] = "keyword" + operator: Optional[Operator] = "or" + filter_: Annotated[ SerializeAsAny[OptionalNullable[KeywordRetrieverFilter]], pydantic.Field(alias="filter"), @@ -71,7 +86,7 @@ class KeywordRetriever(BaseModel): @model_serializer(mode="wrap") def serialize_model(self, handler): - optional_fields = set(["top_k", "filter", "field"]) + optional_fields = set(["top_k", "operator", "filter", "field"]) nullable_fields = set(["filter", "field"]) serialized = handler(self) m = {} diff --git a/src/mistralai/client/models/ocrtableobject.py b/src/mistralai/client/models/ocrtableobject.py index 28ede149d..f6c42852b 100644 --- a/src/mistralai/client/models/ocrtableobject.py +++ b/src/mistralai/client/models/ocrtableobject.py @@ -16,7 +16,7 @@ from typing_extensions import Annotated, NotRequired, TypedDict -Format = Union[ +FormatEnum = Union[ Literal[ "markdown", "html", @@ -31,7 +31,7 @@ class OCRTableObjectTypedDict(TypedDict): r"""Table ID for extracted table in a page""" content: str r"""Content of the table in the given format""" - format_: Format + format_: FormatEnum r"""Format of the table""" word_confidence_scores: NotRequired[Nullable[List[OCRConfidenceScoreTypedDict]]] r"""Per-word confidence scores for the table content. Returned when confidence_scores_granularity is set to 'word'.""" @@ -44,7 +44,7 @@ class OCRTableObject(BaseModel): content: str r"""Content of the table in the given format""" - format_: Annotated[Format, pydantic.Field(alias="format")] + format_: Annotated[FormatEnum, pydantic.Field(alias="format")] r"""Format of the table""" word_confidence_scores: OptionalNullable[List[OCRConfidenceScore]] = UNSET diff --git a/src/mistralai/client/models/publicauthenticationmethod.py b/src/mistralai/client/models/publicauthenticationmethod.py index 7bf2a9e57..17897d11e 100644 --- a/src/mistralai/client/models/publicauthenticationmethod.py +++ b/src/mistralai/client/models/publicauthenticationmethod.py @@ -20,18 +20,20 @@ UNSET, UNSET_SENTINEL, ) +import pydantic from pydantic import model_serializer from typing import Dict, List, Optional -from typing_extensions import NotRequired, TypedDict +from typing_extensions import Annotated, NotRequired, TypedDict class PublicAuthenticationMethodTypedDict(TypedDict): r"""Public view of an authentication method, without secrets.""" method_type: AuthenticationType - has_default_credentials: bool headers: NotRequired[Nullable[List[ConnectorAuthenticationHeaderTypedDict]]] global_headers: NotRequired[Dict[str, GlobalHeaderValueTypedDict]] + has_default_credentials: NotRequired[bool] + r"""Deprecated: we removed the concept of connector level default credentials. Always false.""" grant_type: NotRequired[Nullable[OAuth2GrantType]] token_endpoint_auth_method: NotRequired[Nullable[OAuth2TokenEndpointAuthMethod]] oauth2_server_metadata: NotRequired[Nullable[ExtendedOAuthServerMetadataTypedDict]] @@ -42,12 +44,18 @@ class PublicAuthenticationMethod(BaseModel): method_type: AuthenticationType - has_default_credentials: bool - headers: OptionalNullable[List[ConnectorAuthenticationHeader]] = UNSET global_headers: Optional[Dict[str, GlobalHeaderValue]] = None + has_default_credentials: Annotated[ + Optional[bool], + pydantic.Field( + deprecated="warning: ** DEPRECATED ** - This will be removed in a future release, please migrate away from it as soon as possible." + ), + ] = False + r"""Deprecated: we removed the concept of connector level default credentials. Always false.""" + grant_type: OptionalNullable[OAuth2GrantType] = UNSET token_endpoint_auth_method: OptionalNullable[OAuth2TokenEndpointAuthMethod] = UNSET @@ -60,6 +68,7 @@ def serialize_model(self, handler): [ "headers", "global_headers", + "has_default_credentials", "grant_type", "token_endpoint_auth_method", "oauth2_server_metadata", diff --git a/src/mistralai/client/models/responsesannotationcontainerfilecitation.py b/src/mistralai/client/models/responsesannotationcontainerfilecitation.py new file mode 100644 index 000000000..39d6de7c3 --- /dev/null +++ b/src/mistralai/client/models/responsesannotationcontainerfilecitation.py @@ -0,0 +1,58 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesAnnotationContainerFileCitationTypedDict(TypedDict): + container_id: str + end_index: int + file_id: str + filename: str + start_index: int + type: Literal["container_file_citation"] + + +class ResponsesAnnotationContainerFileCitation(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + container_id: str + + end_index: int + + file_id: str + + filename: str + + start_index: int + + type: Annotated[ + Annotated[ + Literal["container_file_citation"], + AfterValidator(validate_const("container_file_citation")), + ], + pydantic.Field(alias="type"), + ] = "container_file_citation" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesAnnotationContainerFileCitation.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesannotationfilecitation.py b/src/mistralai/client/models/responsesannotationfilecitation.py new file mode 100644 index 000000000..4845f6418 --- /dev/null +++ b/src/mistralai/client/models/responsesannotationfilecitation.py @@ -0,0 +1,51 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesAnnotationFileCitationTypedDict(TypedDict): + file_id: str + filename: str + index: int + type: Literal["file_citation"] + + +class ResponsesAnnotationFileCitation(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + file_id: str + + filename: str + + index: int + + type: Annotated[ + Annotated[ + Literal["file_citation"], AfterValidator(validate_const("file_citation")) + ], + pydantic.Field(alias="type"), + ] = "file_citation" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesAnnotationFileCitation.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesannotationfilepath.py b/src/mistralai/client/models/responsesannotationfilepath.py new file mode 100644 index 000000000..ab2ffd9d7 --- /dev/null +++ b/src/mistralai/client/models/responsesannotationfilepath.py @@ -0,0 +1,46 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesAnnotationFilePathTypedDict(TypedDict): + file_id: str + index: int + type: Literal["file_path"] + + +class ResponsesAnnotationFilePath(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + file_id: str + + index: int + + type: Annotated[ + Annotated[Literal["file_path"], AfterValidator(validate_const("file_path"))], + pydantic.Field(alias="type"), + ] = "file_path" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesAnnotationFilePath.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesannotationurlcitation.py b/src/mistralai/client/models/responsesannotationurlcitation.py new file mode 100644 index 000000000..2d5b76923 --- /dev/null +++ b/src/mistralai/client/models/responsesannotationurlcitation.py @@ -0,0 +1,54 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesAnnotationURLCitationTypedDict(TypedDict): + end_index: int + start_index: int + title: str + url: str + type: Literal["url_citation"] + + +class ResponsesAnnotationURLCitation(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + end_index: int + + start_index: int + + title: str + + url: str + + type: Annotated[ + Annotated[ + Literal["url_citation"], AfterValidator(validate_const("url_citation")) + ], + pydantic.Field(alias="type"), + ] = "url_citation" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesAnnotationURLCitation.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsescompletedevent.py b/src/mistralai/client/models/responsescompletedevent.py new file mode 100644 index 000000000..aebff2243 --- /dev/null +++ b/src/mistralai/client/models/responsescompletedevent.py @@ -0,0 +1,53 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .createresponseresponse import ( + CreateResponseResponse, + CreateResponseResponseTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesCompletedEventTypedDict(TypedDict): + response: CreateResponseResponseTypedDict + sequence_number: int + type: Literal["response.completed"] + + +class ResponsesCompletedEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + response: CreateResponseResponse + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.completed"], + AfterValidator(validate_const("response.completed")), + ], + pydantic.Field(alias="type"), + ] = "response.completed" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesCompletedEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsescontent.py b/src/mistralai/client/models/responsescontent.py new file mode 100644 index 000000000..664c59da0 --- /dev/null +++ b/src/mistralai/client/models/responsescontent.py @@ -0,0 +1,45 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesContentTypedDict(TypedDict): + text: str + type: Literal["reasoning_text"] + + +class ResponsesContent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + text: str + + type: Annotated[ + Annotated[ + Literal["reasoning_text"], AfterValidator(validate_const("reasoning_text")) + ], + pydantic.Field(alias="type"), + ] = "reasoning_text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesContent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsescontentpartaddedevent.py b/src/mistralai/client/models/responsescontentpartaddedevent.py new file mode 100644 index 000000000..1927dff77 --- /dev/null +++ b/src/mistralai/client/models/responsescontentpartaddedevent.py @@ -0,0 +1,83 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesoutputrefusal import ( + ResponsesOutputRefusal, + ResponsesOutputRefusalTypedDict, +) +from .responsesoutputtext import ResponsesOutputText, ResponsesOutputTextTypedDict +from .responsespartreasoningtext import ( + ResponsesPartReasoningText, + ResponsesPartReasoningTextTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal, Union +from typing_extensions import Annotated, TypeAliasType, TypedDict + + +ResponsesContentPartAddedEventPartTypedDict = TypeAliasType( + "ResponsesContentPartAddedEventPartTypedDict", + Union[ + ResponsesOutputRefusalTypedDict, + ResponsesPartReasoningTextTypedDict, + ResponsesOutputTextTypedDict, + ], +) + + +ResponsesContentPartAddedEventPart = Annotated[ + Union[ResponsesOutputText, ResponsesOutputRefusal, ResponsesPartReasoningText], + Field(discriminator="type"), +] + + +class ResponsesContentPartAddedEventTypedDict(TypedDict): + content_index: int + item_id: str + output_index: int + part: ResponsesContentPartAddedEventPartTypedDict + sequence_number: int + type: Literal["response.content_part.added"] + + +class ResponsesContentPartAddedEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content_index: int + + item_id: str + + output_index: int + + part: ResponsesContentPartAddedEventPart + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.content_part.added"], + AfterValidator(validate_const("response.content_part.added")), + ], + pydantic.Field(alias="type"), + ] = "response.content_part.added" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesContentPartAddedEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsescontentpartdoneevent.py b/src/mistralai/client/models/responsescontentpartdoneevent.py new file mode 100644 index 000000000..b1511a947 --- /dev/null +++ b/src/mistralai/client/models/responsescontentpartdoneevent.py @@ -0,0 +1,83 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesoutputrefusal import ( + ResponsesOutputRefusal, + ResponsesOutputRefusalTypedDict, +) +from .responsesoutputtext import ResponsesOutputText, ResponsesOutputTextTypedDict +from .responsespartreasoningtext import ( + ResponsesPartReasoningText, + ResponsesPartReasoningTextTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal, Union +from typing_extensions import Annotated, TypeAliasType, TypedDict + + +ResponsesContentPartDoneEventPartTypedDict = TypeAliasType( + "ResponsesContentPartDoneEventPartTypedDict", + Union[ + ResponsesOutputRefusalTypedDict, + ResponsesPartReasoningTextTypedDict, + ResponsesOutputTextTypedDict, + ], +) + + +ResponsesContentPartDoneEventPart = Annotated[ + Union[ResponsesOutputText, ResponsesOutputRefusal, ResponsesPartReasoningText], + Field(discriminator="type"), +] + + +class ResponsesContentPartDoneEventTypedDict(TypedDict): + content_index: int + item_id: str + output_index: int + part: ResponsesContentPartDoneEventPartTypedDict + sequence_number: int + type: Literal["response.content_part.done"] + + +class ResponsesContentPartDoneEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content_index: int + + item_id: str + + output_index: int + + part: ResponsesContentPartDoneEventPart + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.content_part.done"], + AfterValidator(validate_const("response.content_part.done")), + ], + pydantic.Field(alias="type"), + ] = "response.content_part.done" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesContentPartDoneEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsescreatedevent.py b/src/mistralai/client/models/responsescreatedevent.py new file mode 100644 index 000000000..5c02bba1d --- /dev/null +++ b/src/mistralai/client/models/responsescreatedevent.py @@ -0,0 +1,53 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .createresponseresponse import ( + CreateResponseResponse, + CreateResponseResponseTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesCreatedEventTypedDict(TypedDict): + response: CreateResponseResponseTypedDict + sequence_number: int + type: Literal["response.created"] + + +class ResponsesCreatedEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + response: CreateResponseResponse + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.created"], + AfterValidator(validate_const("response.created")), + ], + pydantic.Field(alias="type"), + ] = "response.created" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesCreatedEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsescustomtool.py b/src/mistralai/client/models/responsescustomtool.py new file mode 100644 index 000000000..c7d7aa47c --- /dev/null +++ b/src/mistralai/client/models/responsescustomtool.py @@ -0,0 +1,185 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, SerializeAsAny, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +ResponsesCustomToolAllowedCaller = Literal[ + "direct", + "programmatic", +] + + +Syntax = Literal[ + "lark", + "regex", +] + + +class ResponsesGrammarTypedDict(TypedDict): + definition: str + syntax: Syntax + type: Literal["grammar"] + + +class ResponsesGrammar(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + definition: str + + syntax: Syntax + + type: Annotated[ + Annotated[Literal["grammar"], AfterValidator(validate_const("grammar"))], + pydantic.Field(alias="type"), + ] = "grammar" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesTextTypedDict(TypedDict): + type: Literal["text"] + + +class ResponsesText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["text"], AfterValidator(validate_const("text"))], + pydantic.Field(alias="type"), + ] = "text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +ResponsesCustomToolFormatTypedDict = TypeAliasType( + "ResponsesCustomToolFormatTypedDict", + Union[ResponsesTextTypedDict, ResponsesGrammarTypedDict], +) + + +ResponsesCustomToolFormat = Annotated[ + Union[ResponsesText, ResponsesGrammar], Field(discriminator="type") +] + + +class ResponsesCustomToolTypedDict(TypedDict): + name: str + type: Literal["custom"] + allowed_callers: NotRequired[Nullable[List[ResponsesCustomToolAllowedCaller]]] + defer_loading: NotRequired[Nullable[bool]] + description: NotRequired[Nullable[str]] + format_: NotRequired[Nullable[ResponsesCustomToolFormatTypedDict]] + + +class ResponsesCustomTool(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + type: Annotated[ + Annotated[Literal["custom"], AfterValidator(validate_const("custom"))], + pydantic.Field(alias="type"), + ] = "custom" + + allowed_callers: OptionalNullable[List[ResponsesCustomToolAllowedCaller]] = UNSET + + defer_loading: OptionalNullable[bool] = None + + description: OptionalNullable[str] = None + + format_: Annotated[ + SerializeAsAny[OptionalNullable[ResponsesCustomToolFormat]], + pydantic.Field(alias="format"), + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + ["allowed_callers", "defer_loading", "description", "format"] + ) + nullable_fields = set( + ["allowed_callers", "defer_loading", "description", "format"] + ) + null_default_fields = set(["defer_loading", "description"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesGrammar.model_rebuild() +except NameError: + pass +try: + ResponsesText.model_rebuild() +except NameError: + pass +try: + ResponsesCustomTool.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responseseasyinputmessage.py b/src/mistralai/client/models/responseseasyinputmessage.py new file mode 100644 index 000000000..e3557f636 --- /dev/null +++ b/src/mistralai/client/models/responseseasyinputmessage.py @@ -0,0 +1,131 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesinputfile import ResponsesInputFile, ResponsesInputFileTypedDict +from .responsesinputimage import ResponsesInputImage, ResponsesInputImageTypedDict +from .responsesinputtext import ResponsesInputText, ResponsesInputTextTypedDict +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +ResponsesEasyInputMessageContent1TypedDict = TypeAliasType( + "ResponsesEasyInputMessageContent1TypedDict", + Union[ + ResponsesInputTextTypedDict, + ResponsesInputImageTypedDict, + ResponsesInputFileTypedDict, + ], +) + + +ResponsesEasyInputMessageContent1 = Annotated[ + Union[ResponsesInputText, ResponsesInputImage, ResponsesInputFile], + Field(discriminator="type"), +] + + +ResponsesEasyInputMessageContent2TypedDict = TypeAliasType( + "ResponsesEasyInputMessageContent2TypedDict", + Union[str, List[ResponsesEasyInputMessageContent1TypedDict]], +) + + +ResponsesEasyInputMessageContent2 = TypeAliasType( + "ResponsesEasyInputMessageContent2", + Union[str, List[ResponsesEasyInputMessageContent1]], +) + + +ResponsesEasyInputMessageRole = Literal[ + "user", + "assistant", + "system", + "developer", +] + + +ResponsesEasyInputMessagePhase = Literal[ + "commentary", + "final_answer", +] + + +class ResponsesEasyInputMessageTypedDict(TypedDict): + content: ResponsesEasyInputMessageContent2TypedDict + role: ResponsesEasyInputMessageRole + phase: NotRequired[Nullable[ResponsesEasyInputMessagePhase]] + type: Nullable[Literal["message"]] + + +class ResponsesEasyInputMessage(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content: ResponsesEasyInputMessageContent2 + + role: ResponsesEasyInputMessageRole + + phase: OptionalNullable[ResponsesEasyInputMessagePhase] = UNSET + + type: Annotated[ + Annotated[ + OptionalNullable[Literal["message"]], + AfterValidator(validate_const("message")), + ], + pydantic.Field(alias="type"), + ] = "message" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["phase", "type"]) + nullable_fields = set(["phase", "type"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesEasyInputMessage.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responseserrorevent.py b/src/mistralai/client/models/responseserrorevent.py new file mode 100644 index 000000000..2ef69d7d2 --- /dev/null +++ b/src/mistralai/client/models/responseserrorevent.py @@ -0,0 +1,84 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel, Nullable, OptionalNullable, UNSET_SENTINEL +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +class ResponsesErrorEventTypedDict(TypedDict): + message: str + sequence_number: int + code: NotRequired[Nullable[str]] + param: NotRequired[Nullable[str]] + type: Literal["error"] + + +class ResponsesErrorEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + message: str + + sequence_number: int + + code: OptionalNullable[str] = None + + param: OptionalNullable[str] = None + + type: Annotated[ + Annotated[Literal["error"], AfterValidator(validate_const("error"))], + pydantic.Field(alias="type"), + ] = "error" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["code", "param"]) + nullable_fields = set(["code", "param"]) + null_default_fields = set(["code", "param"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesErrorEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfailedevent.py b/src/mistralai/client/models/responsesfailedevent.py new file mode 100644 index 000000000..4fd5454dc --- /dev/null +++ b/src/mistralai/client/models/responsesfailedevent.py @@ -0,0 +1,53 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .createresponseresponse import ( + CreateResponseResponse, + CreateResponseResponseTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesFailedEventTypedDict(TypedDict): + response: CreateResponseResponseTypedDict + sequence_number: int + type: Literal["response.failed"] + + +class ResponsesFailedEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + response: CreateResponseResponse + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.failed"], + AfterValidator(validate_const("response.failed")), + ], + pydantic.Field(alias="type"), + ] = "response.failed" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesFailedEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctioncallargumentsdeltaevent.py b/src/mistralai/client/models/responsesfunctioncallargumentsdeltaevent.py new file mode 100644 index 000000000..3d272ef9f --- /dev/null +++ b/src/mistralai/client/models/responsesfunctioncallargumentsdeltaevent.py @@ -0,0 +1,55 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesFunctionCallArgumentsDeltaEventTypedDict(TypedDict): + delta: str + item_id: str + output_index: int + sequence_number: int + type: Literal["response.function_call_arguments.delta"] + + +class ResponsesFunctionCallArgumentsDeltaEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + delta: str + + item_id: str + + output_index: int + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.function_call_arguments.delta"], + AfterValidator(validate_const("response.function_call_arguments.delta")), + ], + pydantic.Field(alias="type"), + ] = "response.function_call_arguments.delta" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesFunctionCallArgumentsDeltaEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctioncallargumentsdoneevent.py b/src/mistralai/client/models/responsesfunctioncallargumentsdoneevent.py new file mode 100644 index 000000000..352f938d7 --- /dev/null +++ b/src/mistralai/client/models/responsesfunctioncallargumentsdoneevent.py @@ -0,0 +1,58 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesFunctionCallArgumentsDoneEventTypedDict(TypedDict): + arguments: str + item_id: str + name: str + output_index: int + sequence_number: int + type: Literal["response.function_call_arguments.done"] + + +class ResponsesFunctionCallArgumentsDoneEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + arguments: str + + item_id: str + + name: str + + output_index: int + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.function_call_arguments.done"], + AfterValidator(validate_const("response.function_call_arguments.done")), + ], + pydantic.Field(alias="type"), + ] = "response.function_call_arguments.done" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesFunctionCallArgumentsDoneEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctioncalloutput.py b/src/mistralai/client/models/responsesfunctioncalloutput.py new file mode 100644 index 000000000..bb75de029 --- /dev/null +++ b/src/mistralai/client/models/responsesfunctioncalloutput.py @@ -0,0 +1,167 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesfunctioncalloutputcallerdirect import ( + ResponsesFunctionCallOutputCallerDirect, + ResponsesFunctionCallOutputCallerDirectTypedDict, +) +from .responsesfunctioncalloutputcallerprogram import ( + ResponsesFunctionCallOutputCallerProgram, + ResponsesFunctionCallOutputCallerProgramTypedDict, +) +from .responsesinputfilecontent import ( + ResponsesInputFileContent, + ResponsesInputFileContentTypedDict, +) +from .responsesinputimagecontent import ( + ResponsesInputImageContent, + ResponsesInputImageContentTypedDict, +) +from .responsesinputtextcontent import ( + ResponsesInputTextContent, + ResponsesInputTextContentTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, SerializeAsAny, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +ResponsesFunctionCallOutputOutput1TypedDict = TypeAliasType( + "ResponsesFunctionCallOutputOutput1TypedDict", + Union[ + ResponsesInputTextContentTypedDict, + ResponsesInputImageContentTypedDict, + ResponsesInputFileContentTypedDict, + ], +) + + +ResponsesFunctionCallOutputOutput1 = Annotated[ + Union[ + ResponsesInputTextContent, ResponsesInputImageContent, ResponsesInputFileContent + ], + Field(discriminator="type"), +] + + +ResponsesFunctionCallOutputOutput2TypedDict = TypeAliasType( + "ResponsesFunctionCallOutputOutput2TypedDict", + Union[str, List[ResponsesFunctionCallOutputOutput1TypedDict]], +) + + +ResponsesFunctionCallOutputOutput2 = TypeAliasType( + "ResponsesFunctionCallOutputOutput2", + Union[str, List[ResponsesFunctionCallOutputOutput1]], +) + + +ResponsesFunctionCallOutputCallerTypedDict = TypeAliasType( + "ResponsesFunctionCallOutputCallerTypedDict", + Union[ + ResponsesFunctionCallOutputCallerDirectTypedDict, + ResponsesFunctionCallOutputCallerProgramTypedDict, + ], +) + + +ResponsesFunctionCallOutputCaller = Annotated[ + Union[ + ResponsesFunctionCallOutputCallerDirect, + ResponsesFunctionCallOutputCallerProgram, + ], + Field(discriminator="type"), +] + + +ResponsesFunctionCallOutputStatus = Literal[ + "in_progress", + "completed", + "incomplete", +] + + +class ResponsesFunctionCallOutputTypedDict(TypedDict): + call_id: str + output: ResponsesFunctionCallOutputOutput2TypedDict + type: Literal["function_call_output"] + id: NotRequired[Nullable[str]] + caller: NotRequired[Nullable[ResponsesFunctionCallOutputCallerTypedDict]] + status: NotRequired[Nullable[ResponsesFunctionCallOutputStatus]] + + +class ResponsesFunctionCallOutput(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + call_id: str + + output: ResponsesFunctionCallOutputOutput2 + + type: Annotated[ + Annotated[ + Literal["function_call_output"], + AfterValidator(validate_const("function_call_output")), + ], + pydantic.Field(alias="type"), + ] = "function_call_output" + + id: OptionalNullable[str] = UNSET + + caller: SerializeAsAny[OptionalNullable[ResponsesFunctionCallOutputCaller]] = UNSET + + status: OptionalNullable[ResponsesFunctionCallOutputStatus] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["id", "caller", "status"]) + nullable_fields = set(["id", "caller", "status"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesFunctionCallOutput.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctioncalloutputcallerdirect.py b/src/mistralai/client/models/responsesfunctioncalloutputcallerdirect.py new file mode 100644 index 000000000..5fa650ab3 --- /dev/null +++ b/src/mistralai/client/models/responsesfunctioncalloutputcallerdirect.py @@ -0,0 +1,40 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesFunctionCallOutputCallerDirectTypedDict(TypedDict): + type: Literal["direct"] + + +class ResponsesFunctionCallOutputCallerDirect(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["direct"], AfterValidator(validate_const("direct"))], + pydantic.Field(alias="type"), + ] = "direct" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesFunctionCallOutputCallerDirect.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctioncalloutputcallerprogram.py b/src/mistralai/client/models/responsesfunctioncalloutputcallerprogram.py new file mode 100644 index 000000000..2bb4af158 --- /dev/null +++ b/src/mistralai/client/models/responsesfunctioncalloutputcallerprogram.py @@ -0,0 +1,43 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesFunctionCallOutputCallerProgramTypedDict(TypedDict): + caller_id: str + type: Literal["program"] + + +class ResponsesFunctionCallOutputCallerProgram(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + caller_id: str + + type: Annotated[ + Annotated[Literal["program"], AfterValidator(validate_const("program"))], + pydantic.Field(alias="type"), + ] = "program" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesFunctionCallOutputCallerProgram.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctiontool.py b/src/mistralai/client/models/responsesfunctiontool.py new file mode 100644 index 000000000..2d29e2a69 --- /dev/null +++ b/src/mistralai/client/models/responsesfunctiontool.py @@ -0,0 +1,123 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesFunctionToolAllowedCaller = Literal[ + "direct", + "programmatic", +] + + +class ResponsesFunctionToolTypedDict(TypedDict): + name: str + parameters: NotRequired[Nullable[Dict[str, Any]]] + strict: NotRequired[Nullable[bool]] + type: Literal["function"] + allowed_callers: NotRequired[Nullable[List[ResponsesFunctionToolAllowedCaller]]] + defer_loading: NotRequired[Nullable[bool]] + description: NotRequired[Nullable[str]] + output_schema: NotRequired[Nullable[Dict[str, Any]]] + + +class ResponsesFunctionTool(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + parameters: OptionalNullable[Dict[str, Any]] = UNSET + + strict: OptionalNullable[bool] = None + + type: Annotated[ + Annotated[Literal["function"], AfterValidator(validate_const("function"))], + pydantic.Field(alias="type"), + ] = "function" + + allowed_callers: OptionalNullable[List[ResponsesFunctionToolAllowedCaller]] = UNSET + + defer_loading: OptionalNullable[bool] = None + + description: OptionalNullable[str] = None + + output_schema: OptionalNullable[Dict[str, Any]] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "parameters", + "strict", + "allowed_callers", + "defer_loading", + "description", + "output_schema", + ] + ) + nullable_fields = set( + [ + "parameters", + "strict", + "allowed_callers", + "defer_loading", + "description", + "output_schema", + ] + ) + null_default_fields = set(["strict", "defer_loading", "description"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesFunctionTool.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesfunctiontoolcall.py b/src/mistralai/client/models/responsesfunctiontoolcall.py new file mode 100644 index 000000000..c72582e60 --- /dev/null +++ b/src/mistralai/client/models/responsesfunctiontoolcall.py @@ -0,0 +1,178 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, SerializeAsAny, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +class ResponsesCallerProgramTypedDict(TypedDict): + caller_id: str + type: Literal["program"] + + +class ResponsesCallerProgram(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + caller_id: str + + type: Annotated[ + Annotated[Literal["program"], AfterValidator(validate_const("program"))], + pydantic.Field(alias="type"), + ] = "program" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesCallerDirectTypedDict(TypedDict): + type: Literal["direct"] + + +class ResponsesCallerDirect(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["direct"], AfterValidator(validate_const("direct"))], + pydantic.Field(alias="type"), + ] = "direct" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +ResponsesFunctionToolCallCallerTypedDict = TypeAliasType( + "ResponsesFunctionToolCallCallerTypedDict", + Union[ResponsesCallerDirectTypedDict, ResponsesCallerProgramTypedDict], +) + + +ResponsesFunctionToolCallCaller = Annotated[ + Union[ResponsesCallerDirect, ResponsesCallerProgram], Field(discriminator="type") +] + + +ResponsesFunctionToolCallStatus = Literal[ + "in_progress", + "completed", + "incomplete", +] + + +class ResponsesFunctionToolCallTypedDict(TypedDict): + arguments: str + call_id: str + name: str + type: Literal["function_call"] + id: NotRequired[Nullable[str]] + caller: NotRequired[Nullable[ResponsesFunctionToolCallCallerTypedDict]] + namespace: NotRequired[Nullable[str]] + status: NotRequired[Nullable[ResponsesFunctionToolCallStatus]] + + +class ResponsesFunctionToolCall(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + arguments: str + + call_id: str + + name: str + + type: Annotated[ + Annotated[ + Literal["function_call"], AfterValidator(validate_const("function_call")) + ], + pydantic.Field(alias="type"), + ] = "function_call" + + id: OptionalNullable[str] = None + + caller: SerializeAsAny[OptionalNullable[ResponsesFunctionToolCallCaller]] = UNSET + + namespace: OptionalNullable[str] = None + + status: OptionalNullable[ResponsesFunctionToolCallStatus] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["id", "caller", "namespace", "status"]) + nullable_fields = set(["id", "caller", "namespace", "status"]) + null_default_fields = set(["id", "namespace", "status"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesCallerProgram.model_rebuild() +except NameError: + pass +try: + ResponsesCallerDirect.model_rebuild() +except NameError: + pass +try: + ResponsesFunctionToolCall.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesincompleteevent.py b/src/mistralai/client/models/responsesincompleteevent.py new file mode 100644 index 000000000..92e407368 --- /dev/null +++ b/src/mistralai/client/models/responsesincompleteevent.py @@ -0,0 +1,53 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .createresponseresponse import ( + CreateResponseResponse, + CreateResponseResponseTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesIncompleteEventTypedDict(TypedDict): + response: CreateResponseResponseTypedDict + sequence_number: int + type: Literal["response.incomplete"] + + +class ResponsesIncompleteEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + response: CreateResponseResponse + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.incomplete"], + AfterValidator(validate_const("response.incomplete")), + ], + pydantic.Field(alias="type"), + ] = "response.incomplete" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesIncompleteEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinprogressevent.py b/src/mistralai/client/models/responsesinprogressevent.py new file mode 100644 index 000000000..6efb7d18a --- /dev/null +++ b/src/mistralai/client/models/responsesinprogressevent.py @@ -0,0 +1,53 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .createresponseresponse import ( + CreateResponseResponse, + CreateResponseResponseTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesInProgressEventTypedDict(TypedDict): + response: CreateResponseResponseTypedDict + sequence_number: int + type: Literal["response.in_progress"] + + +class ResponsesInProgressEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + response: CreateResponseResponse + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.in_progress"], + AfterValidator(validate_const("response.in_progress")), + ], + pydantic.Field(alias="type"), + ] = "response.in_progress" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesInProgressEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputfile.py b/src/mistralai/client/models/responsesinputfile.py new file mode 100644 index 000000000..e6e0b4dd5 --- /dev/null +++ b/src/mistralai/client/models/responsesinputfile.py @@ -0,0 +1,149 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesInputFileDetail = Literal[ + "auto", + "low", + "high", +] + + +class ResponsesInputFileResponsesPromptCacheBreakpointTypedDict(TypedDict): + mode: Literal["explicit"] + + +class ResponsesInputFileResponsesPromptCacheBreakpoint(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + mode: Annotated[ + Annotated[Literal["explicit"], AfterValidator(validate_const("explicit"))], + pydantic.Field(alias="mode"), + ] = "explicit" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesInputFileTypedDict(TypedDict): + type: Literal["input_file"] + detail: NotRequired[Nullable[ResponsesInputFileDetail]] + file_data: NotRequired[Nullable[str]] + file_id: NotRequired[Nullable[str]] + file_url: NotRequired[Nullable[str]] + filename: NotRequired[Nullable[str]] + prompt_cache_breakpoint: NotRequired[ + Nullable[ResponsesInputFileResponsesPromptCacheBreakpointTypedDict] + ] + + +class ResponsesInputFile(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["input_file"], AfterValidator(validate_const("input_file"))], + pydantic.Field(alias="type"), + ] = "input_file" + + detail: OptionalNullable[ResponsesInputFileDetail] = UNSET + + file_data: OptionalNullable[str] = UNSET + + file_id: OptionalNullable[str] = UNSET + + file_url: OptionalNullable[str] = UNSET + + filename: OptionalNullable[str] = UNSET + + prompt_cache_breakpoint: OptionalNullable[ + ResponsesInputFileResponsesPromptCacheBreakpoint + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "detail", + "file_data", + "file_id", + "file_url", + "filename", + "prompt_cache_breakpoint", + ] + ) + nullable_fields = set( + [ + "detail", + "file_data", + "file_id", + "file_url", + "filename", + "prompt_cache_breakpoint", + ] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesInputFileResponsesPromptCacheBreakpoint.model_rebuild() +except NameError: + pass +try: + ResponsesInputFile.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputfilecontent.py b/src/mistralai/client/models/responsesinputfilecontent.py new file mode 100644 index 000000000..9c8ff6730 --- /dev/null +++ b/src/mistralai/client/models/responsesinputfilecontent.py @@ -0,0 +1,149 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesInputFileContentDetail = Literal[ + "auto", + "low", + "high", +] + + +class ResponsesInputFileContentResponsesPromptCacheBreakpointTypedDict(TypedDict): + mode: Literal["explicit"] + + +class ResponsesInputFileContentResponsesPromptCacheBreakpoint(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + mode: Annotated[ + Annotated[Literal["explicit"], AfterValidator(validate_const("explicit"))], + pydantic.Field(alias="mode"), + ] = "explicit" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesInputFileContentTypedDict(TypedDict): + type: Literal["input_file"] + detail: NotRequired[Nullable[ResponsesInputFileContentDetail]] + file_data: NotRequired[Nullable[str]] + file_id: NotRequired[Nullable[str]] + file_url: NotRequired[Nullable[str]] + filename: NotRequired[Nullable[str]] + prompt_cache_breakpoint: NotRequired[ + Nullable[ResponsesInputFileContentResponsesPromptCacheBreakpointTypedDict] + ] + + +class ResponsesInputFileContent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[Literal["input_file"], AfterValidator(validate_const("input_file"))], + pydantic.Field(alias="type"), + ] = "input_file" + + detail: OptionalNullable[ResponsesInputFileContentDetail] = UNSET + + file_data: OptionalNullable[str] = UNSET + + file_id: OptionalNullable[str] = UNSET + + file_url: OptionalNullable[str] = UNSET + + filename: OptionalNullable[str] = UNSET + + prompt_cache_breakpoint: OptionalNullable[ + ResponsesInputFileContentResponsesPromptCacheBreakpoint + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "detail", + "file_data", + "file_id", + "file_url", + "filename", + "prompt_cache_breakpoint", + ] + ) + nullable_fields = set( + [ + "detail", + "file_data", + "file_id", + "file_url", + "filename", + "prompt_cache_breakpoint", + ] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesInputFileContentResponsesPromptCacheBreakpoint.model_rebuild() +except NameError: + pass +try: + ResponsesInputFileContent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputimage.py b/src/mistralai/client/models/responsesinputimage.py new file mode 100644 index 000000000..ecf070c7b --- /dev/null +++ b/src/mistralai/client/models/responsesinputimage.py @@ -0,0 +1,128 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesInputImageDetail = Literal[ + "low", + "high", + "auto", + "original", +] + + +class ResponsesInputImageResponsesPromptCacheBreakpointTypedDict(TypedDict): + mode: Literal["explicit"] + + +class ResponsesInputImageResponsesPromptCacheBreakpoint(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + mode: Annotated[ + Annotated[Literal["explicit"], AfterValidator(validate_const("explicit"))], + pydantic.Field(alias="mode"), + ] = "explicit" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesInputImageTypedDict(TypedDict): + detail: ResponsesInputImageDetail + type: Literal["input_image"] + file_id: NotRequired[Nullable[str]] + image_url: NotRequired[Nullable[str]] + prompt_cache_breakpoint: NotRequired[ + Nullable[ResponsesInputImageResponsesPromptCacheBreakpointTypedDict] + ] + + +class ResponsesInputImage(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + detail: ResponsesInputImageDetail + + type: Annotated[ + Annotated[ + Literal["input_image"], AfterValidator(validate_const("input_image")) + ], + pydantic.Field(alias="type"), + ] = "input_image" + + file_id: OptionalNullable[str] = UNSET + + image_url: OptionalNullable[str] = UNSET + + prompt_cache_breakpoint: OptionalNullable[ + ResponsesInputImageResponsesPromptCacheBreakpoint + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["file_id", "image_url", "prompt_cache_breakpoint"]) + nullable_fields = set(["file_id", "image_url", "prompt_cache_breakpoint"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesInputImageResponsesPromptCacheBreakpoint.model_rebuild() +except NameError: + pass +try: + ResponsesInputImage.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputimagecontent.py b/src/mistralai/client/models/responsesinputimagecontent.py new file mode 100644 index 000000000..23109a67d --- /dev/null +++ b/src/mistralai/client/models/responsesinputimagecontent.py @@ -0,0 +1,132 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesInputImageContentDetail = Literal[ + "low", + "high", + "auto", + "original", +] + + +class ResponsesInputImageContentResponsesPromptCacheBreakpointTypedDict(TypedDict): + mode: Literal["explicit"] + + +class ResponsesInputImageContentResponsesPromptCacheBreakpoint(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + mode: Annotated[ + Annotated[Literal["explicit"], AfterValidator(validate_const("explicit"))], + pydantic.Field(alias="mode"), + ] = "explicit" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesInputImageContentTypedDict(TypedDict): + type: Literal["input_image"] + detail: NotRequired[Nullable[ResponsesInputImageContentDetail]] + file_id: NotRequired[Nullable[str]] + image_url: NotRequired[Nullable[str]] + prompt_cache_breakpoint: NotRequired[ + Nullable[ResponsesInputImageContentResponsesPromptCacheBreakpointTypedDict] + ] + + +class ResponsesInputImageContent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + type: Annotated[ + Annotated[ + Literal["input_image"], AfterValidator(validate_const("input_image")) + ], + pydantic.Field(alias="type"), + ] = "input_image" + + detail: OptionalNullable[ResponsesInputImageContentDetail] = UNSET + + file_id: OptionalNullable[str] = UNSET + + image_url: OptionalNullable[str] = UNSET + + prompt_cache_breakpoint: OptionalNullable[ + ResponsesInputImageContentResponsesPromptCacheBreakpoint + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + ["detail", "file_id", "image_url", "prompt_cache_breakpoint"] + ) + nullable_fields = set( + ["detail", "file_id", "image_url", "prompt_cache_breakpoint"] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesInputImageContentResponsesPromptCacheBreakpoint.model_rebuild() +except NameError: + pass +try: + ResponsesInputImageContent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputtext.py b/src/mistralai/client/models/responsesinputtext.py new file mode 100644 index 000000000..478be8018 --- /dev/null +++ b/src/mistralai/client/models/responsesinputtext.py @@ -0,0 +1,112 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +class ResponsesInputTextResponsesPromptCacheBreakpointTypedDict(TypedDict): + mode: Literal["explicit"] + + +class ResponsesInputTextResponsesPromptCacheBreakpoint(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + mode: Annotated[ + Annotated[Literal["explicit"], AfterValidator(validate_const("explicit"))], + pydantic.Field(alias="mode"), + ] = "explicit" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesInputTextTypedDict(TypedDict): + text: str + type: Literal["input_text"] + prompt_cache_breakpoint: NotRequired[ + Nullable[ResponsesInputTextResponsesPromptCacheBreakpointTypedDict] + ] + + +class ResponsesInputText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + text: str + + type: Annotated[ + Annotated[Literal["input_text"], AfterValidator(validate_const("input_text"))], + pydantic.Field(alias="type"), + ] = "input_text" + + prompt_cache_breakpoint: OptionalNullable[ + ResponsesInputTextResponsesPromptCacheBreakpoint + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["prompt_cache_breakpoint"]) + nullable_fields = set(["prompt_cache_breakpoint"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesInputTextResponsesPromptCacheBreakpoint.model_rebuild() +except NameError: + pass +try: + ResponsesInputText.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputtextcontent.py b/src/mistralai/client/models/responsesinputtextcontent.py new file mode 100644 index 000000000..d85a064d6 --- /dev/null +++ b/src/mistralai/client/models/responsesinputtextcontent.py @@ -0,0 +1,112 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +class ResponsesInputTextContentResponsesPromptCacheBreakpointTypedDict(TypedDict): + mode: Literal["explicit"] + + +class ResponsesInputTextContentResponsesPromptCacheBreakpoint(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + mode: Annotated[ + Annotated[Literal["explicit"], AfterValidator(validate_const("explicit"))], + pydantic.Field(alias="mode"), + ] = "explicit" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +class ResponsesInputTextContentTypedDict(TypedDict): + text: str + type: Literal["input_text"] + prompt_cache_breakpoint: NotRequired[ + Nullable[ResponsesInputTextContentResponsesPromptCacheBreakpointTypedDict] + ] + + +class ResponsesInputTextContent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + text: str + + type: Annotated[ + Annotated[Literal["input_text"], AfterValidator(validate_const("input_text"))], + pydantic.Field(alias="type"), + ] = "input_text" + + prompt_cache_breakpoint: OptionalNullable[ + ResponsesInputTextContentResponsesPromptCacheBreakpoint + ] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["prompt_cache_breakpoint"]) + nullable_fields = set(["prompt_cache_breakpoint"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesInputTextContentResponsesPromptCacheBreakpoint.model_rebuild() +except NameError: + pass +try: + ResponsesInputTextContent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesinputtokensdetails.py b/src/mistralai/client/models/responsesinputtokensdetails.py new file mode 100644 index 000000000..257529727 --- /dev/null +++ b/src/mistralai/client/models/responsesinputtokensdetails.py @@ -0,0 +1,32 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +import pydantic +from pydantic import ConfigDict +from typing import Any, Dict +from typing_extensions import TypedDict + + +class ResponsesInputTokensDetailsTypedDict(TypedDict): + cache_write_tokens: int + cached_tokens: int + + +class ResponsesInputTokensDetails(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + cache_write_tokens: int + + cached_tokens: int + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] diff --git a/src/mistralai/client/models/responsesmessage.py b/src/mistralai/client/models/responsesmessage.py new file mode 100644 index 000000000..c49d7b993 --- /dev/null +++ b/src/mistralai/client/models/responsesmessage.py @@ -0,0 +1,119 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesinputfile import ResponsesInputFile, ResponsesInputFileTypedDict +from .responsesinputimage import ResponsesInputImage, ResponsesInputImageTypedDict +from .responsesinputtext import ResponsesInputText, ResponsesInputTextTypedDict +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +ResponsesMessageContentTypedDict = TypeAliasType( + "ResponsesMessageContentTypedDict", + Union[ + ResponsesInputTextTypedDict, + ResponsesInputImageTypedDict, + ResponsesInputFileTypedDict, + ], +) + + +ResponsesMessageContent = Annotated[ + Union[ResponsesInputText, ResponsesInputImage, ResponsesInputFile], + Field(discriminator="type"), +] + + +ResponsesMessageRole = Literal[ + "user", + "system", + "developer", +] + + +ResponsesMessageStatus = Literal[ + "in_progress", + "completed", + "incomplete", +] + + +class ResponsesMessageTypedDict(TypedDict): + content: List[ResponsesMessageContentTypedDict] + role: ResponsesMessageRole + status: NotRequired[Nullable[ResponsesMessageStatus]] + type: Nullable[Literal["message"]] + + +class ResponsesMessage(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content: List[ResponsesMessageContent] + + role: ResponsesMessageRole + + status: OptionalNullable[ResponsesMessageStatus] = UNSET + + type: Annotated[ + Annotated[ + OptionalNullable[Literal["message"]], + AfterValidator(validate_const("message")), + ], + pydantic.Field(alias="type"), + ] = "message" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["status", "type"]) + nullable_fields = set(["status", "type"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesMessage.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesnamespacetool.py b/src/mistralai/client/models/responsesnamespacetool.py new file mode 100644 index 000000000..bd669ba68 --- /dev/null +++ b/src/mistralai/client/models/responsesnamespacetool.py @@ -0,0 +1,62 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsescustomtool import ResponsesCustomTool, ResponsesCustomToolTypedDict +from .responsestoolfunction import ResponsesToolFunction, ResponsesToolFunctionTypedDict +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, TypeAliasType, TypedDict + + +ResponsesNamespaceToolToolTypedDict = TypeAliasType( + "ResponsesNamespaceToolToolTypedDict", + Union[ResponsesCustomToolTypedDict, ResponsesToolFunctionTypedDict], +) + + +ResponsesNamespaceToolTool = Annotated[ + Union[ResponsesToolFunction, ResponsesCustomTool], Field(discriminator="type") +] + + +class ResponsesNamespaceToolTypedDict(TypedDict): + description: str + name: str + tools: List[ResponsesNamespaceToolToolTypedDict] + type: Literal["namespace"] + + +class ResponsesNamespaceTool(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + description: str + + name: str + + tools: List[ResponsesNamespaceToolTool] + + type: Annotated[ + Annotated[Literal["namespace"], AfterValidator(validate_const("namespace"))], + pydantic.Field(alias="type"), + ] = "namespace" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesNamespaceTool.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputitemaddedevent.py b/src/mistralai/client/models/responsesoutputitemaddedevent.py new file mode 100644 index 000000000..cc215740c --- /dev/null +++ b/src/mistralai/client/models/responsesoutputitemaddedevent.py @@ -0,0 +1,80 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesfunctiontoolcall import ( + ResponsesFunctionToolCall, + ResponsesFunctionToolCallTypedDict, +) +from .responsesoutputmessage import ( + ResponsesOutputMessage, + ResponsesOutputMessageTypedDict, +) +from .responsesreasoningitem import ( + ResponsesReasoningItem, + ResponsesReasoningItemTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal, Union +from typing_extensions import Annotated, TypeAliasType, TypedDict + + +ResponsesOutputItemAddedEventItemTypedDict = TypeAliasType( + "ResponsesOutputItemAddedEventItemTypedDict", + Union[ + ResponsesOutputMessageTypedDict, + ResponsesReasoningItemTypedDict, + ResponsesFunctionToolCallTypedDict, + ], +) + + +ResponsesOutputItemAddedEventItem = Annotated[ + Union[ResponsesOutputMessage, ResponsesFunctionToolCall, ResponsesReasoningItem], + Field(discriminator="type"), +] + + +class ResponsesOutputItemAddedEventTypedDict(TypedDict): + item: ResponsesOutputItemAddedEventItemTypedDict + output_index: int + sequence_number: int + type: Literal["response.output_item.added"] + + +class ResponsesOutputItemAddedEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + item: ResponsesOutputItemAddedEventItem + + output_index: int + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.output_item.added"], + AfterValidator(validate_const("response.output_item.added")), + ], + pydantic.Field(alias="type"), + ] = "response.output_item.added" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesOutputItemAddedEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputitemdoneevent.py b/src/mistralai/client/models/responsesoutputitemdoneevent.py new file mode 100644 index 000000000..f510193f9 --- /dev/null +++ b/src/mistralai/client/models/responsesoutputitemdoneevent.py @@ -0,0 +1,80 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesfunctiontoolcall import ( + ResponsesFunctionToolCall, + ResponsesFunctionToolCallTypedDict, +) +from .responsesoutputmessage import ( + ResponsesOutputMessage, + ResponsesOutputMessageTypedDict, +) +from .responsesreasoningitem import ( + ResponsesReasoningItem, + ResponsesReasoningItemTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal, Union +from typing_extensions import Annotated, TypeAliasType, TypedDict + + +ResponsesOutputItemDoneEventItemTypedDict = TypeAliasType( + "ResponsesOutputItemDoneEventItemTypedDict", + Union[ + ResponsesOutputMessageTypedDict, + ResponsesReasoningItemTypedDict, + ResponsesFunctionToolCallTypedDict, + ], +) + + +ResponsesOutputItemDoneEventItem = Annotated[ + Union[ResponsesOutputMessage, ResponsesFunctionToolCall, ResponsesReasoningItem], + Field(discriminator="type"), +] + + +class ResponsesOutputItemDoneEventTypedDict(TypedDict): + item: ResponsesOutputItemDoneEventItemTypedDict + output_index: int + sequence_number: int + type: Literal["response.output_item.done"] + + +class ResponsesOutputItemDoneEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + item: ResponsesOutputItemDoneEventItem + + output_index: int + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.output_item.done"], + AfterValidator(validate_const("response.output_item.done")), + ], + pydantic.Field(alias="type"), + ] = "response.output_item.done" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesOutputItemDoneEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputmessage.py b/src/mistralai/client/models/responsesoutputmessage.py new file mode 100644 index 000000000..4eb372a15 --- /dev/null +++ b/src/mistralai/client/models/responsesoutputmessage.py @@ -0,0 +1,119 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesoutputrefusal import ( + ResponsesOutputRefusal, + ResponsesOutputRefusalTypedDict, +) +from .responsesoutputtext import ResponsesOutputText, ResponsesOutputTextTypedDict +from mistralai.client.types import BaseModel, Nullable, OptionalNullable, UNSET_SENTINEL +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +ResponsesOutputMessageContentTypedDict = TypeAliasType( + "ResponsesOutputMessageContentTypedDict", + Union[ResponsesOutputRefusalTypedDict, ResponsesOutputTextTypedDict], +) + + +ResponsesOutputMessageContent = Annotated[ + Union[ResponsesOutputText, ResponsesOutputRefusal], Field(discriminator="type") +] + + +ResponsesOutputMessageStatus = Literal[ + "in_progress", + "completed", + "incomplete", +] + + +ResponsesOutputMessagePhase = Literal[ + "commentary", + "final_answer", +] + + +class ResponsesOutputMessageTypedDict(TypedDict): + id: str + content: List[ResponsesOutputMessageContentTypedDict] + status: ResponsesOutputMessageStatus + role: Literal["assistant"] + type: Literal["message"] + phase: NotRequired[Nullable[ResponsesOutputMessagePhase]] + + +class ResponsesOutputMessage(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + id: str + + content: List[ResponsesOutputMessageContent] + + status: ResponsesOutputMessageStatus + + role: Annotated[ + Annotated[Literal["assistant"], AfterValidator(validate_const("assistant"))], + pydantic.Field(alias="role"), + ] = "assistant" + + type: Annotated[ + Annotated[Literal["message"], AfterValidator(validate_const("message"))], + pydantic.Field(alias="type"), + ] = "message" + + phase: OptionalNullable[ResponsesOutputMessagePhase] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["phase"]) + nullable_fields = set(["phase"]) + null_default_fields = set(["phase"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesOutputMessage.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputrefusal.py b/src/mistralai/client/models/responsesoutputrefusal.py new file mode 100644 index 000000000..ca1e3d9b3 --- /dev/null +++ b/src/mistralai/client/models/responsesoutputrefusal.py @@ -0,0 +1,43 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesOutputRefusalTypedDict(TypedDict): + refusal: str + type: Literal["refusal"] + + +class ResponsesOutputRefusal(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + refusal: str + + type: Annotated[ + Annotated[Literal["refusal"], AfterValidator(validate_const("refusal"))], + pydantic.Field(alias="type"), + ] = "refusal" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesOutputRefusal.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputtext.py b/src/mistralai/client/models/responsesoutputtext.py new file mode 100644 index 000000000..4d6c9569c --- /dev/null +++ b/src/mistralai/client/models/responsesoutputtext.py @@ -0,0 +1,127 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesannotationcontainerfilecitation import ( + ResponsesAnnotationContainerFileCitation, + ResponsesAnnotationContainerFileCitationTypedDict, +) +from .responsesannotationfilecitation import ( + ResponsesAnnotationFileCitation, + ResponsesAnnotationFileCitationTypedDict, +) +from .responsesannotationfilepath import ( + ResponsesAnnotationFilePath, + ResponsesAnnotationFilePathTypedDict, +) +from .responsesannotationurlcitation import ( + ResponsesAnnotationURLCitation, + ResponsesAnnotationURLCitationTypedDict, +) +from .responsesoutputtextlogprob import ( + ResponsesOutputTextLogprob, + ResponsesOutputTextLogprobTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, Field, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal, Union +from typing_extensions import Annotated, NotRequired, TypeAliasType, TypedDict + + +AnnotationTypedDict = TypeAliasType( + "AnnotationTypedDict", + Union[ + ResponsesAnnotationFilePathTypedDict, + ResponsesAnnotationFileCitationTypedDict, + ResponsesAnnotationURLCitationTypedDict, + ResponsesAnnotationContainerFileCitationTypedDict, + ], +) + + +Annotation = Annotated[ + Union[ + ResponsesAnnotationFileCitation, + ResponsesAnnotationURLCitation, + ResponsesAnnotationContainerFileCitation, + ResponsesAnnotationFilePath, + ], + Field(discriminator="type"), +] + + +class ResponsesOutputTextTypedDict(TypedDict): + annotations: List[AnnotationTypedDict] + text: str + type: Literal["output_text"] + logprobs: NotRequired[Nullable[List[ResponsesOutputTextLogprobTypedDict]]] + + +class ResponsesOutputText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + annotations: List[Annotation] + + text: str + + type: Annotated[ + Annotated[ + Literal["output_text"], AfterValidator(validate_const("output_text")) + ], + pydantic.Field(alias="type"), + ] = "output_text" + + logprobs: OptionalNullable[List[ResponsesOutputTextLogprob]] = UNSET + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["logprobs"]) + nullable_fields = set(["logprobs"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesOutputText.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputtextlogprob.py b/src/mistralai/client/models/responsesoutputtextlogprob.py new file mode 100644 index 000000000..64b733a21 --- /dev/null +++ b/src/mistralai/client/models/responsesoutputtextlogprob.py @@ -0,0 +1,48 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsesoutputtextlogprobtoplogprob import ( + ResponsesOutputTextLogprobTopLogprob, + ResponsesOutputTextLogprobTopLogprobTypedDict, +) +from mistralai.client.types import BaseModel +import pydantic +from pydantic import ConfigDict +from typing import Any, Dict, List +from typing_extensions import Annotated, TypedDict + + +class ResponsesOutputTextLogprobTypedDict(TypedDict): + token: str + bytes_: List[int] + logprob: float + top_logprobs: List[ResponsesOutputTextLogprobTopLogprobTypedDict] + + +class ResponsesOutputTextLogprob(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + token: str + + bytes_: Annotated[List[int], pydantic.Field(alias="bytes")] + + logprob: float + + top_logprobs: List[ResponsesOutputTextLogprobTopLogprob] + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesOutputTextLogprob.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputtextlogprobtoplogprob.py b/src/mistralai/client/models/responsesoutputtextlogprobtoplogprob.py new file mode 100644 index 000000000..48179e896 --- /dev/null +++ b/src/mistralai/client/models/responsesoutputtextlogprobtoplogprob.py @@ -0,0 +1,41 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +import pydantic +from pydantic import ConfigDict +from typing import Any, Dict, List +from typing_extensions import Annotated, TypedDict + + +class ResponsesOutputTextLogprobTopLogprobTypedDict(TypedDict): + token: str + bytes_: List[int] + logprob: float + + +class ResponsesOutputTextLogprobTopLogprob(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + token: str + + bytes_: Annotated[List[int], pydantic.Field(alias="bytes")] + + logprob: float + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesOutputTextLogprobTopLogprob.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesoutputtokensdetails.py b/src/mistralai/client/models/responsesoutputtokensdetails.py new file mode 100644 index 000000000..0c4ba6559 --- /dev/null +++ b/src/mistralai/client/models/responsesoutputtokensdetails.py @@ -0,0 +1,29 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +import pydantic +from pydantic import ConfigDict +from typing import Any, Dict +from typing_extensions import TypedDict + + +class ResponsesOutputTokensDetailsTypedDict(TypedDict): + reasoning_tokens: int + + +class ResponsesOutputTokensDetails(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + reasoning_tokens: int + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] diff --git a/src/mistralai/client/models/responsespartreasoningtext.py b/src/mistralai/client/models/responsespartreasoningtext.py new file mode 100644 index 000000000..b70f9864e --- /dev/null +++ b/src/mistralai/client/models/responsespartreasoningtext.py @@ -0,0 +1,45 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesPartReasoningTextTypedDict(TypedDict): + text: str + type: Literal["reasoning_text"] + + +class ResponsesPartReasoningText(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + text: str + + type: Annotated[ + Annotated[ + Literal["reasoning_text"], AfterValidator(validate_const("reasoning_text")) + ], + pydantic.Field(alias="type"), + ] = "reasoning_text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesPartReasoningText.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesreasoningitem.py b/src/mistralai/client/models/responsesreasoningitem.py new file mode 100644 index 000000000..da8d3ef29 --- /dev/null +++ b/src/mistralai/client/models/responsesreasoningitem.py @@ -0,0 +1,102 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsescontent import ResponsesContent, ResponsesContentTypedDict +from .responsessummary import ResponsesSummary, ResponsesSummaryTypedDict +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesReasoningItemStatus = Literal[ + "in_progress", + "completed", + "incomplete", +] + + +class ResponsesReasoningItemTypedDict(TypedDict): + id: str + summary: List[ResponsesSummaryTypedDict] + type: Literal["reasoning"] + content: NotRequired[Nullable[List[ResponsesContentTypedDict]]] + encrypted_content: NotRequired[Nullable[str]] + status: NotRequired[Nullable[ResponsesReasoningItemStatus]] + + +class ResponsesReasoningItem(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + id: str + + summary: List[ResponsesSummary] + + type: Annotated[ + Annotated[Literal["reasoning"], AfterValidator(validate_const("reasoning"))], + pydantic.Field(alias="type"), + ] = "reasoning" + + content: OptionalNullable[List[ResponsesContent]] = UNSET + + encrypted_content: OptionalNullable[str] = None + + status: OptionalNullable[ResponsesReasoningItemStatus] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["content", "encrypted_content", "status"]) + nullable_fields = set(["content", "encrypted_content", "status"]) + null_default_fields = set(["encrypted_content", "status"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesReasoningItem.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesreasoningtextdeltaevent.py b/src/mistralai/client/models/responsesreasoningtextdeltaevent.py new file mode 100644 index 000000000..e99c91217 --- /dev/null +++ b/src/mistralai/client/models/responsesreasoningtextdeltaevent.py @@ -0,0 +1,58 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesReasoningTextDeltaEventTypedDict(TypedDict): + content_index: int + delta: str + item_id: str + output_index: int + sequence_number: int + type: Literal["response.reasoning_text.delta"] + + +class ResponsesReasoningTextDeltaEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content_index: int + + delta: str + + item_id: str + + output_index: int + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.reasoning_text.delta"], + AfterValidator(validate_const("response.reasoning_text.delta")), + ], + pydantic.Field(alias="type"), + ] = "response.reasoning_text.delta" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesReasoningTextDeltaEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesreasoningtextdoneevent.py b/src/mistralai/client/models/responsesreasoningtextdoneevent.py new file mode 100644 index 000000000..34ab9a409 --- /dev/null +++ b/src/mistralai/client/models/responsesreasoningtextdoneevent.py @@ -0,0 +1,58 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesReasoningTextDoneEventTypedDict(TypedDict): + content_index: int + item_id: str + output_index: int + sequence_number: int + text: str + type: Literal["response.reasoning_text.done"] + + +class ResponsesReasoningTextDoneEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content_index: int + + item_id: str + + output_index: int + + sequence_number: int + + text: str + + type: Annotated[ + Annotated[ + Literal["response.reasoning_text.done"], + AfterValidator(validate_const("response.reasoning_text.done")), + ], + pydantic.Field(alias="type"), + ] = "response.reasoning_text.done" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesReasoningTextDoneEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsesstreamframe.py b/src/mistralai/client/models/responsesstreamframe.py new file mode 100644 index 000000000..452d54daf --- /dev/null +++ b/src/mistralai/client/models/responsesstreamframe.py @@ -0,0 +1,119 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsescompletedevent import ( + ResponsesCompletedEvent, + ResponsesCompletedEventTypedDict, +) +from .responsescontentpartaddedevent import ( + ResponsesContentPartAddedEvent, + ResponsesContentPartAddedEventTypedDict, +) +from .responsescontentpartdoneevent import ( + ResponsesContentPartDoneEvent, + ResponsesContentPartDoneEventTypedDict, +) +from .responsescreatedevent import ResponsesCreatedEvent, ResponsesCreatedEventTypedDict +from .responseserrorevent import ResponsesErrorEvent, ResponsesErrorEventTypedDict +from .responsesfailedevent import ResponsesFailedEvent, ResponsesFailedEventTypedDict +from .responsesfunctioncallargumentsdeltaevent import ( + ResponsesFunctionCallArgumentsDeltaEvent, + ResponsesFunctionCallArgumentsDeltaEventTypedDict, +) +from .responsesfunctioncallargumentsdoneevent import ( + ResponsesFunctionCallArgumentsDoneEvent, + ResponsesFunctionCallArgumentsDoneEventTypedDict, +) +from .responsesincompleteevent import ( + ResponsesIncompleteEvent, + ResponsesIncompleteEventTypedDict, +) +from .responsesinprogressevent import ( + ResponsesInProgressEvent, + ResponsesInProgressEventTypedDict, +) +from .responsesoutputitemaddedevent import ( + ResponsesOutputItemAddedEvent, + ResponsesOutputItemAddedEventTypedDict, +) +from .responsesoutputitemdoneevent import ( + ResponsesOutputItemDoneEvent, + ResponsesOutputItemDoneEventTypedDict, +) +from .responsesreasoningtextdeltaevent import ( + ResponsesReasoningTextDeltaEvent, + ResponsesReasoningTextDeltaEventTypedDict, +) +from .responsesreasoningtextdoneevent import ( + ResponsesReasoningTextDoneEvent, + ResponsesReasoningTextDoneEventTypedDict, +) +from .responsestextdeltaevent import ( + ResponsesTextDeltaEvent, + ResponsesTextDeltaEventTypedDict, +) +from .responsestextdoneevent import ( + ResponsesTextDoneEvent, + ResponsesTextDoneEventTypedDict, +) +from mistralai.client.types import BaseModel +from pydantic import Field +from typing import Union +from typing_extensions import Annotated, TypeAliasType, TypedDict + + +ResponsesStreamFrameDataTypedDict = TypeAliasType( + "ResponsesStreamFrameDataTypedDict", + Union[ + ResponsesInProgressEventTypedDict, + ResponsesCompletedEventTypedDict, + ResponsesIncompleteEventTypedDict, + ResponsesFailedEventTypedDict, + ResponsesCreatedEventTypedDict, + ResponsesOutputItemAddedEventTypedDict, + ResponsesOutputItemDoneEventTypedDict, + ResponsesFunctionCallArgumentsDeltaEventTypedDict, + ResponsesErrorEventTypedDict, + ResponsesContentPartAddedEventTypedDict, + ResponsesReasoningTextDeltaEventTypedDict, + ResponsesReasoningTextDoneEventTypedDict, + ResponsesContentPartDoneEventTypedDict, + ResponsesFunctionCallArgumentsDoneEventTypedDict, + ResponsesTextDeltaEventTypedDict, + ResponsesTextDoneEventTypedDict, + ], +) + + +ResponsesStreamFrameData = Annotated[ + Union[ + ResponsesCreatedEvent, + ResponsesInProgressEvent, + ResponsesCompletedEvent, + ResponsesIncompleteEvent, + ResponsesFailedEvent, + ResponsesErrorEvent, + ResponsesOutputItemAddedEvent, + ResponsesOutputItemDoneEvent, + ResponsesContentPartAddedEvent, + ResponsesContentPartDoneEvent, + ResponsesTextDeltaEvent, + ResponsesTextDoneEvent, + ResponsesReasoningTextDeltaEvent, + ResponsesReasoningTextDoneEvent, + ResponsesFunctionCallArgumentsDeltaEvent, + ResponsesFunctionCallArgumentsDoneEvent, + ], + Field(discriminator="type"), +] + + +class ResponsesStreamFrameTypedDict(TypedDict): + event: str + data: ResponsesStreamFrameDataTypedDict + + +class ResponsesStreamFrame(BaseModel): + event: str + + data: ResponsesStreamFrameData diff --git a/src/mistralai/client/models/responsessummary.py b/src/mistralai/client/models/responsessummary.py new file mode 100644 index 000000000..aad3da7f2 --- /dev/null +++ b/src/mistralai/client/models/responsessummary.py @@ -0,0 +1,45 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesSummaryTypedDict(TypedDict): + text: str + type: Literal["summary_text"] + + +class ResponsesSummary(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + text: str + + type: Annotated[ + Annotated[ + Literal["summary_text"], AfterValidator(validate_const("summary_text")) + ], + pydantic.Field(alias="type"), + ] = "summary_text" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesSummary.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsestextdeltaevent.py b/src/mistralai/client/models/responsestextdeltaevent.py new file mode 100644 index 000000000..5ac9761fe --- /dev/null +++ b/src/mistralai/client/models/responsestextdeltaevent.py @@ -0,0 +1,65 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsestextdeltaeventlogprob import ( + ResponsesTextDeltaEventLogprob, + ResponsesTextDeltaEventLogprobTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesTextDeltaEventTypedDict(TypedDict): + content_index: int + delta: str + item_id: str + logprobs: List[ResponsesTextDeltaEventLogprobTypedDict] + output_index: int + sequence_number: int + type: Literal["response.output_text.delta"] + + +class ResponsesTextDeltaEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content_index: int + + delta: str + + item_id: str + + logprobs: List[ResponsesTextDeltaEventLogprob] + + output_index: int + + sequence_number: int + + type: Annotated[ + Annotated[ + Literal["response.output_text.delta"], + AfterValidator(validate_const("response.output_text.delta")), + ], + pydantic.Field(alias="type"), + ] = "response.output_text.delta" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesTextDeltaEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsestextdeltaeventlogprob.py b/src/mistralai/client/models/responsestextdeltaeventlogprob.py new file mode 100644 index 000000000..6950258b4 --- /dev/null +++ b/src/mistralai/client/models/responsestextdeltaeventlogprob.py @@ -0,0 +1,77 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsestextdeltaeventlogprobtoplogprob import ( + ResponsesTextDeltaEventLogprobTopLogprob, + ResponsesTextDeltaEventLogprobTopLogprobTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +import pydantic +from pydantic import ConfigDict, model_serializer +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict + + +class ResponsesTextDeltaEventLogprobTypedDict(TypedDict): + token: str + logprob: float + top_logprobs: NotRequired[ + Nullable[List[ResponsesTextDeltaEventLogprobTopLogprobTypedDict]] + ] + + +class ResponsesTextDeltaEventLogprob(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + token: str + + logprob: float + + top_logprobs: OptionalNullable[List[ResponsesTextDeltaEventLogprobTopLogprob]] = ( + UNSET + ) + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["top_logprobs"]) + nullable_fields = set(["top_logprobs"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m diff --git a/src/mistralai/client/models/responsestextdeltaeventlogprobtoplogprob.py b/src/mistralai/client/models/responsestextdeltaeventlogprobtoplogprob.py new file mode 100644 index 000000000..877662d53 --- /dev/null +++ b/src/mistralai/client/models/responsestextdeltaeventlogprobtoplogprob.py @@ -0,0 +1,64 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel, Nullable, OptionalNullable, UNSET_SENTINEL +import pydantic +from pydantic import ConfigDict, model_serializer +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict + + +class ResponsesTextDeltaEventLogprobTopLogprobTypedDict(TypedDict): + token: NotRequired[Nullable[str]] + logprob: NotRequired[Nullable[float]] + + +class ResponsesTextDeltaEventLogprobTopLogprob(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + token: OptionalNullable[str] = None + + logprob: OptionalNullable[float] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["token", "logprob"]) + nullable_fields = set(["token", "logprob"]) + null_default_fields = set(["token", "logprob"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m diff --git a/src/mistralai/client/models/responsestextdoneevent.py b/src/mistralai/client/models/responsestextdoneevent.py new file mode 100644 index 000000000..7ecab7e7e --- /dev/null +++ b/src/mistralai/client/models/responsestextdoneevent.py @@ -0,0 +1,65 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsestextdoneeventlogprob import ( + ResponsesTextDoneEventLogprob, + ResponsesTextDoneEventLogprobTypedDict, +) +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesTextDoneEventTypedDict(TypedDict): + content_index: int + item_id: str + logprobs: List[ResponsesTextDoneEventLogprobTypedDict] + output_index: int + sequence_number: int + text: str + type: Literal["response.output_text.done"] + + +class ResponsesTextDoneEvent(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + content_index: int + + item_id: str + + logprobs: List[ResponsesTextDoneEventLogprob] + + output_index: int + + sequence_number: int + + text: str + + type: Annotated[ + Annotated[ + Literal["response.output_text.done"], + AfterValidator(validate_const("response.output_text.done")), + ], + pydantic.Field(alias="type"), + ] = "response.output_text.done" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesTextDoneEvent.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsestextdoneeventlogprob.py b/src/mistralai/client/models/responsestextdoneeventlogprob.py new file mode 100644 index 000000000..3749de6c9 --- /dev/null +++ b/src/mistralai/client/models/responsestextdoneeventlogprob.py @@ -0,0 +1,77 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from .responsestextdoneeventlogprobtoplogprob import ( + ResponsesTextDoneEventLogprobTopLogprob, + ResponsesTextDoneEventLogprobTopLogprobTypedDict, +) +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +import pydantic +from pydantic import ConfigDict, model_serializer +from typing import Any, Dict, List +from typing_extensions import NotRequired, TypedDict + + +class ResponsesTextDoneEventLogprobTypedDict(TypedDict): + token: str + logprob: float + top_logprobs: NotRequired[ + Nullable[List[ResponsesTextDoneEventLogprobTopLogprobTypedDict]] + ] + + +class ResponsesTextDoneEventLogprob(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + token: str + + logprob: float + + top_logprobs: OptionalNullable[List[ResponsesTextDoneEventLogprobTopLogprob]] = ( + UNSET + ) + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["top_logprobs"]) + nullable_fields = set(["top_logprobs"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and (self.__pydantic_fields_set__.intersection({n})) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m diff --git a/src/mistralai/client/models/responsestextdoneeventlogprobtoplogprob.py b/src/mistralai/client/models/responsestextdoneeventlogprobtoplogprob.py new file mode 100644 index 000000000..76e0ef8e7 --- /dev/null +++ b/src/mistralai/client/models/responsestextdoneeventlogprobtoplogprob.py @@ -0,0 +1,64 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel, Nullable, OptionalNullable, UNSET_SENTINEL +import pydantic +from pydantic import ConfigDict, model_serializer +from typing import Any, Dict +from typing_extensions import NotRequired, TypedDict + + +class ResponsesTextDoneEventLogprobTopLogprobTypedDict(TypedDict): + token: NotRequired[Nullable[str]] + logprob: NotRequired[Nullable[float]] + + +class ResponsesTextDoneEventLogprobTopLogprob(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + token: OptionalNullable[str] = None + + logprob: OptionalNullable[float] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set(["token", "logprob"]) + nullable_fields = set(["token", "logprob"]) + null_default_fields = set(["token", "logprob"]) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m diff --git a/src/mistralai/client/models/responsestoolchoicefunction.py b/src/mistralai/client/models/responsestoolchoicefunction.py new file mode 100644 index 000000000..efede3a7f --- /dev/null +++ b/src/mistralai/client/models/responsestoolchoicefunction.py @@ -0,0 +1,43 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import BaseModel +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, Literal +from typing_extensions import Annotated, TypedDict + + +class ResponsesToolChoiceFunctionTypedDict(TypedDict): + name: str + type: Literal["function"] + + +class ResponsesToolChoiceFunction(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + type: Annotated[ + Annotated[Literal["function"], AfterValidator(validate_const("function"))], + pydantic.Field(alias="type"), + ] = "function" + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + +try: + ResponsesToolChoiceFunction.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/models/responsestoolfunction.py b/src/mistralai/client/models/responsestoolfunction.py new file mode 100644 index 000000000..5a4125e0b --- /dev/null +++ b/src/mistralai/client/models/responsestoolfunction.py @@ -0,0 +1,125 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from __future__ import annotations +from mistralai.client.types import ( + BaseModel, + Nullable, + OptionalNullable, + UNSET, + UNSET_SENTINEL, +) +from mistralai.client.utils import validate_const +import pydantic +from pydantic import ConfigDict, model_serializer +from pydantic.functional_validators import AfterValidator +from typing import Any, Dict, List, Literal +from typing_extensions import Annotated, NotRequired, TypedDict + + +ResponsesToolFunctionAllowedCaller = Literal[ + "direct", + "programmatic", +] + + +class ResponsesToolFunctionTypedDict(TypedDict): + name: str + type: Literal["function"] + allowed_callers: NotRequired[Nullable[List[ResponsesToolFunctionAllowedCaller]]] + defer_loading: NotRequired[Nullable[bool]] + description: NotRequired[Nullable[str]] + output_schema: NotRequired[Nullable[Dict[str, Any]]] + parameters: NotRequired[Nullable[Any]] + strict: NotRequired[Nullable[bool]] + + +class ResponsesToolFunction(BaseModel): + model_config = ConfigDict( + populate_by_name=True, arbitrary_types_allowed=True, extra="allow" + ) + __pydantic_extra__: Dict[str, Any] = pydantic.Field(init=False) + + name: str + + type: Annotated[ + Annotated[Literal["function"], AfterValidator(validate_const("function"))], + pydantic.Field(alias="type"), + ] = "function" + + allowed_callers: OptionalNullable[List[ResponsesToolFunctionAllowedCaller]] = UNSET + + defer_loading: OptionalNullable[bool] = None + + description: OptionalNullable[str] = None + + output_schema: OptionalNullable[Dict[str, Any]] = UNSET + + parameters: OptionalNullable[Any] = None + + strict: OptionalNullable[bool] = None + + @property + def additional_properties(self): + return self.__pydantic_extra__ + + @additional_properties.setter + def additional_properties(self, value): + self.__pydantic_extra__ = value # pyright: ignore[reportIncompatibleVariableOverride] + + @model_serializer(mode="wrap") + def serialize_model(self, handler): + optional_fields = set( + [ + "allowed_callers", + "defer_loading", + "description", + "output_schema", + "parameters", + "strict", + ] + ) + nullable_fields = set( + [ + "allowed_callers", + "defer_loading", + "description", + "output_schema", + "parameters", + "strict", + ] + ) + null_default_fields = set( + ["defer_loading", "description", "parameters", "strict"] + ) + serialized = handler(self) + m = {} + + for n, f in type(self).model_fields.items(): + k = f.alias or n + val = serialized.get(k, serialized.get(n)) + serialized.pop(k, serialized.pop(n, None)) + is_nullable_and_explicitly_set = ( + k in nullable_fields + and ( + self.__pydantic_fields_set__.intersection({n}) + or k in null_default_fields + ) # pylint: disable=no-member + ) + + if val != UNSET_SENTINEL: + if ( + val is not None + or k not in optional_fields + or is_nullable_and_explicitly_set + ): + m[k] = val + for k, v in serialized.items(): + m[k] = v + + return m + + +try: + ResponsesToolFunction.model_rebuild() +except NameError: + pass diff --git a/src/mistralai/client/responses.py b/src/mistralai/client/responses.py new file mode 100644 index 000000000..f3bbe0f37 --- /dev/null +++ b/src/mistralai/client/responses.py @@ -0,0 +1,1337 @@ +"""Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.""" + +from .basesdk import BaseSDK +from mistralai.client import errors, models, utils +from mistralai.client._hooks import HookContext +from mistralai.client.types import OptionalNullable, UNSET +from mistralai.client.utils import eventstreaming, get_security_from_env +from mistralai.client.utils.unmarshal_json_response import unmarshal_json_response +from typing import ( + Any, + Dict, + Iterable, + List, + Literal, + Mapping, + Optional, + Union, + overload, +) + + +class Responses(BaseSDK): + r"""Stateless Responses API for text, images, reasoning, function calls, and streaming.""" + + @overload + def create( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: Union[Literal[False], None] = None, + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> models.CreateResponseResponse: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + + @overload + def create( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: Literal[True], + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> eventstreaming.EventStream[models.ResponsesStreamFrame]: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + + @overload + def create( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: bool, + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> Union[ + models.CreateResponseResponse, + eventstreaming.EventStream[models.ResponsesStreamFrame], + ]: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + + def create( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: Optional[bool] = False, + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> Union[ + models.CreateResponseResponse, + eventstreaming.EventStream[models.ResponsesStreamFrame], + ]: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if timeout_ms is None: + timeout_ms = 300000 + + if server_url is not None: + base_url = server_url + else: + base_url = self._get_url(base_url, url_variables) + + request = models.CreateResponseRequest( + model=model, + input=utils.get_pydantic_model(input, models.CreateResponseRequestInput2), + instructions=instructions, + parallel_tool_calls=parallel_tool_calls, + previous_response_id=previous_response_id, + tools=utils.get_pydantic_model( + tools, Optional[List[models.CreateResponseRequestTool]] + ), + tool_choice=utils.get_pydantic_model( + tool_choice, Optional[models.CreateResponseRequestToolChoiceUnion] + ), + reasoning=utils.get_pydantic_model( + reasoning, + OptionalNullable[ + models.CreateResponseRequestResponsesSupportedReasoning + ], + ), + conversation=conversation, + prompt=prompt, + text=utils.get_pydantic_model( + text, OptionalNullable[models.CreateResponseRequestResponsesTextConfig] + ), + stream=stream, + max_output_tokens=max_output_tokens, + temperature=temperature, + top_p=top_p, + metadata=utils.unmarshal(metadata, OptionalNullable[Dict[str, str]]), + prompt_cache_key=prompt_cache_key, + max_tool_calls=max_tool_calls, + moderation=moderation, + **(utils.unmarshal(additional_properties, Optional[Dict[str, Any]]) or {}), + ) + + req = self._build_request( + method="POST", + path="/v1/responses", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=True, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="text/event-stream" + if stream is True + else "application/json", + http_headers=http_headers, + security=self.sdk_configuration.security, + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateResponseRequest + ), + allow_empty_value=None, + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = self.do_request( + hook_ctx=HookContext( + config=self.sdk_configuration, + base_url=base_url or "", + operation_id="create_response_v1_responses_post", + oauth2_scopes=None, + security_source=get_security_from_env( + self.sdk_configuration.security, models.Security + ), + tags=["responses"], + extensions=None, + ), + request=req, + is_error_status_code=lambda c: utils.match_status_codes(["4XX", "5XX"], c), + stream=stream is True, + retry_config=retry_config, + ) + + if utils.match_response(http_res, "200", "application/json"): + http_res_text = utils.stream_to_text(http_res) + return unmarshal_json_response( + models.CreateResponseResponse, http_res, http_res_text + ) + if utils.match_response(http_res, "200", "text/event-stream"): + return eventstreaming.EventStream( + http_res, + lambda raw: unmarshal_json_response( + models.ResponsesStreamFrame, http_res, raw + ), + client_ref=self, + ) + if utils.match_response(http_res, "4XX", "*"): + http_res_text = utils.stream_to_text(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + if utils.match_response(http_res, "5XX", "*"): + http_res_text = utils.stream_to_text(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + + http_res_text = utils.stream_to_text(http_res) + raise errors.SDKError("Unexpected response received", http_res, http_res_text) + + @overload + async def create_async( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: Union[Literal[False], None] = None, + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> models.CreateResponseResponse: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + + @overload + async def create_async( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: Literal[True], + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> eventstreaming.EventStreamAsync[models.ResponsesStreamFrame]: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + + @overload + async def create_async( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: bool, + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> Union[ + models.CreateResponseResponse, + eventstreaming.EventStreamAsync[models.ResponsesStreamFrame], + ]: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + + async def create_async( + self, + *, + model: str, + input: Union[ + models.CreateResponseRequestInput2, + models.CreateResponseRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CreateResponseRequestTool], + Iterable[models.CreateResponseRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CreateResponseRequestToolChoiceUnion, + models.CreateResponseRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesSupportedReasoning, + models.CreateResponseRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CreateResponseRequestResponsesTextConfig, + models.CreateResponseRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + stream: Optional[bool] = False, + max_output_tokens: OptionalNullable[int] = UNSET, + temperature: OptionalNullable[float] = UNSET, + top_p: OptionalNullable[float] = UNSET, + metadata: OptionalNullable[Mapping[str, str]] = UNSET, + prompt_cache_key: OptionalNullable[str] = UNSET, + max_tool_calls: OptionalNullable[int] = UNSET, + moderation: OptionalNullable[Any] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> Union[ + models.CreateResponseResponse, + eventstreaming.EventStreamAsync[models.ResponsesStreamFrame], + ]: + r"""Create Response + + Create a response. + + Generate a model response from text or image inputs. The response can + include text, reasoning, and function calls. Set stream to true to + receive Server-Sent Events. + + For multi-turn conversations, send the full history in input, including + prior output items and function results. Responses are not stored. Only + client-executed function tools are supported. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param stream: + :param max_output_tokens: + :param temperature: + :param top_p: + :param metadata: + :param prompt_cache_key: + :param max_tool_calls: + :param moderation: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if timeout_ms is None: + timeout_ms = 300000 + + if server_url is not None: + base_url = server_url + else: + base_url = self._get_url(base_url, url_variables) + + request = models.CreateResponseRequest( + model=model, + input=utils.get_pydantic_model(input, models.CreateResponseRequestInput2), + instructions=instructions, + parallel_tool_calls=parallel_tool_calls, + previous_response_id=previous_response_id, + tools=utils.get_pydantic_model( + tools, Optional[List[models.CreateResponseRequestTool]] + ), + tool_choice=utils.get_pydantic_model( + tool_choice, Optional[models.CreateResponseRequestToolChoiceUnion] + ), + reasoning=utils.get_pydantic_model( + reasoning, + OptionalNullable[ + models.CreateResponseRequestResponsesSupportedReasoning + ], + ), + conversation=conversation, + prompt=prompt, + text=utils.get_pydantic_model( + text, OptionalNullable[models.CreateResponseRequestResponsesTextConfig] + ), + stream=stream, + max_output_tokens=max_output_tokens, + temperature=temperature, + top_p=top_p, + metadata=utils.unmarshal(metadata, OptionalNullable[Dict[str, str]]), + prompt_cache_key=prompt_cache_key, + max_tool_calls=max_tool_calls, + moderation=moderation, + **(utils.unmarshal(additional_properties, Optional[Dict[str, Any]]) or {}), + ) + + req = self._build_request_async( + method="POST", + path="/v1/responses", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=True, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="text/event-stream" + if stream is True + else "application/json", + http_headers=http_headers, + security=self.sdk_configuration.security, + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CreateResponseRequest + ), + allow_empty_value=None, + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = await self.do_request_async( + hook_ctx=HookContext( + config=self.sdk_configuration, + base_url=base_url or "", + operation_id="create_response_v1_responses_post", + oauth2_scopes=None, + security_source=get_security_from_env( + self.sdk_configuration.security, models.Security + ), + tags=["responses"], + extensions=None, + ), + request=req, + is_error_status_code=lambda c: utils.match_status_codes(["4XX", "5XX"], c), + stream=stream is True, + retry_config=retry_config, + ) + + if utils.match_response(http_res, "200", "application/json"): + http_res_text = await utils.stream_to_text_async(http_res) + return unmarshal_json_response( + models.CreateResponseResponse, http_res, http_res_text + ) + if utils.match_response(http_res, "200", "text/event-stream"): + return eventstreaming.EventStreamAsync( + http_res, + lambda raw: unmarshal_json_response( + models.ResponsesStreamFrame, http_res, raw + ), + client_ref=self, + ) + if utils.match_response(http_res, "4XX", "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + if utils.match_response(http_res, "5XX", "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + + http_res_text = await utils.stream_to_text_async(http_res) + raise errors.SDKError("Unexpected response received", http_res, http_res_text) + + def count_input_tokens( + self, + *, + model: str, + input: Union[ + models.CountResponseInputTokensRequestInput2, + models.CountResponseInputTokensRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CountResponseInputTokensRequestTool], + Iterable[models.CountResponseInputTokensRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CountResponseInputTokensRequestToolChoiceUnion, + models.CountResponseInputTokensRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CountResponseInputTokensRequestResponsesSupportedReasoning, + models.CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CountResponseInputTokensRequestResponsesTextConfig, + models.CountResponseInputTokensRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> models.CountResponseInputTokensResponse: + r"""Count Input Tokens + + Count response input tokens. + + Count the input tokens for a Responses request without generating a + response. The count includes the supplied conversation, instructions, + and tool definitions. + + Use the same input, instructions, and tools that you plan to send when + creating a response. For multi-turn conversations, include prior output + items and function results in input. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if timeout_ms is None: + timeout_ms = 300000 + + if server_url is not None: + base_url = server_url + else: + base_url = self._get_url(base_url, url_variables) + + request = models.CountResponseInputTokensRequest( + model=model, + input=utils.get_pydantic_model( + input, models.CountResponseInputTokensRequestInput2 + ), + instructions=instructions, + parallel_tool_calls=parallel_tool_calls, + previous_response_id=previous_response_id, + tools=utils.get_pydantic_model( + tools, Optional[List[models.CountResponseInputTokensRequestTool]] + ), + tool_choice=utils.get_pydantic_model( + tool_choice, + Optional[models.CountResponseInputTokensRequestToolChoiceUnion], + ), + reasoning=utils.get_pydantic_model( + reasoning, + OptionalNullable[ + models.CountResponseInputTokensRequestResponsesSupportedReasoning + ], + ), + conversation=conversation, + prompt=prompt, + text=utils.get_pydantic_model( + text, + OptionalNullable[ + models.CountResponseInputTokensRequestResponsesTextConfig + ], + ), + **(utils.unmarshal(additional_properties, Optional[Dict[str, Any]]) or {}), + ) + + req = self._build_request( + method="POST", + path="/v1/responses/input_tokens", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=True, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="application/json", + http_headers=http_headers, + security=self.sdk_configuration.security, + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CountResponseInputTokensRequest + ), + allow_empty_value=None, + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = self.do_request( + hook_ctx=HookContext( + config=self.sdk_configuration, + base_url=base_url or "", + operation_id="count_input_tokens_v1_responses_input_tokens_post", + oauth2_scopes=None, + security_source=get_security_from_env( + self.sdk_configuration.security, models.Security + ), + tags=["responses"], + extensions=None, + ), + request=req, + is_error_status_code=lambda c: utils.match_status_codes(["4XX", "5XX"], c), + retry_config=retry_config, + ) + + if utils.match_response(http_res, "200", "application/json"): + return unmarshal_json_response( + models.CountResponseInputTokensResponse, http_res + ) + if utils.match_response(http_res, "4XX", "*"): + http_res_text = utils.stream_to_text(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + if utils.match_response(http_res, "5XX", "*"): + http_res_text = utils.stream_to_text(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + + raise errors.SDKError("Unexpected response received", http_res) + + async def count_input_tokens_async( + self, + *, + model: str, + input: Union[ + models.CountResponseInputTokensRequestInput2, + models.CountResponseInputTokensRequestInput2TypedDict, + ], + instructions: OptionalNullable[str] = UNSET, + parallel_tool_calls: Optional[bool] = True, + previous_response_id: OptionalNullable[Any] = UNSET, + tools: Optional[ + Union[ + Iterable[models.CountResponseInputTokensRequestTool], + Iterable[models.CountResponseInputTokensRequestToolTypedDict], + ] + ] = None, + tool_choice: Optional[ + Union[ + models.CountResponseInputTokensRequestToolChoiceUnion, + models.CountResponseInputTokensRequestToolChoiceUnionTypedDict, + ] + ] = None, + reasoning: OptionalNullable[ + Union[ + models.CountResponseInputTokensRequestResponsesSupportedReasoning, + models.CountResponseInputTokensRequestResponsesSupportedReasoningTypedDict, + ] + ] = UNSET, + conversation: OptionalNullable[Any] = UNSET, + prompt: OptionalNullable[Any] = UNSET, + text: OptionalNullable[ + Union[ + models.CountResponseInputTokensRequestResponsesTextConfig, + models.CountResponseInputTokensRequestResponsesTextConfigTypedDict, + ] + ] = UNSET, + additional_properties: Optional[Mapping[str, Any]] = None, + retries: OptionalNullable[utils.RetryConfig] = UNSET, + server_url: Optional[str] = None, + timeout_ms: Optional[int] = None, + http_headers: Optional[Mapping[str, str]] = None, + ) -> models.CountResponseInputTokensResponse: + r"""Count Input Tokens + + Count response input tokens. + + Count the input tokens for a Responses request without generating a + response. The count includes the supplied conversation, instructions, + and tool definitions. + + Use the same input, instructions, and tools that you plan to send when + creating a response. For multi-turn conversations, include prior output + items and function results in input. + + :param model: + :param input: + :param instructions: + :param parallel_tool_calls: + :param previous_response_id: + :param tools: + :param tool_choice: + :param reasoning: + :param conversation: + :param prompt: + :param text: + :param additional_properties: + :param retries: Override the default retry configuration for this method + :param server_url: Override the default server URL for this method + :param timeout_ms: Override the default request timeout configuration for this method in milliseconds + :param http_headers: Additional headers to set or replace on requests. + """ + base_url = None + url_variables = None + if timeout_ms is None: + timeout_ms = self.sdk_configuration.timeout_ms + + if timeout_ms is None: + timeout_ms = 300000 + + if server_url is not None: + base_url = server_url + else: + base_url = self._get_url(base_url, url_variables) + + request = models.CountResponseInputTokensRequest( + model=model, + input=utils.get_pydantic_model( + input, models.CountResponseInputTokensRequestInput2 + ), + instructions=instructions, + parallel_tool_calls=parallel_tool_calls, + previous_response_id=previous_response_id, + tools=utils.get_pydantic_model( + tools, Optional[List[models.CountResponseInputTokensRequestTool]] + ), + tool_choice=utils.get_pydantic_model( + tool_choice, + Optional[models.CountResponseInputTokensRequestToolChoiceUnion], + ), + reasoning=utils.get_pydantic_model( + reasoning, + OptionalNullable[ + models.CountResponseInputTokensRequestResponsesSupportedReasoning + ], + ), + conversation=conversation, + prompt=prompt, + text=utils.get_pydantic_model( + text, + OptionalNullable[ + models.CountResponseInputTokensRequestResponsesTextConfig + ], + ), + **(utils.unmarshal(additional_properties, Optional[Dict[str, Any]]) or {}), + ) + + req = self._build_request_async( + method="POST", + path="/v1/responses/input_tokens", + base_url=base_url, + url_variables=url_variables, + request=request, + request_body_required=True, + request_has_path_params=False, + request_has_query_params=True, + user_agent_header="user-agent", + accept_header_value="application/json", + http_headers=http_headers, + security=self.sdk_configuration.security, + get_serialized_body=lambda: utils.serialize_request_body( + request, False, False, "json", models.CountResponseInputTokensRequest + ), + allow_empty_value=None, + timeout_ms=timeout_ms, + ) + + if retries == UNSET: + if self.sdk_configuration.retry_config is not UNSET: + retries = self.sdk_configuration.retry_config + + retry_config = None + if isinstance(retries, utils.RetryConfig): + retry_config = (retries, ["429", "500", "502", "503", "504"]) + + http_res = await self.do_request_async( + hook_ctx=HookContext( + config=self.sdk_configuration, + base_url=base_url or "", + operation_id="count_input_tokens_v1_responses_input_tokens_post", + oauth2_scopes=None, + security_source=get_security_from_env( + self.sdk_configuration.security, models.Security + ), + tags=["responses"], + extensions=None, + ), + request=req, + is_error_status_code=lambda c: utils.match_status_codes(["4XX", "5XX"], c), + retry_config=retry_config, + ) + + if utils.match_response(http_res, "200", "application/json"): + return unmarshal_json_response( + models.CountResponseInputTokensResponse, http_res + ) + if utils.match_response(http_res, "4XX", "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + if utils.match_response(http_res, "5XX", "*"): + http_res_text = await utils.stream_to_text_async(http_res) + raise errors.SDKError("API error occurred", http_res, http_res_text) + + raise errors.SDKError("Unexpected response received", http_res) diff --git a/src/mistralai/client/sdk.py b/src/mistralai/client/sdk.py index 01d27d120..92b83fa68 100644 --- a/src/mistralai/client/sdk.py +++ b/src/mistralai/client/sdk.py @@ -28,6 +28,7 @@ from mistralai.client.models_ import Models from mistralai.client.ocr import Ocr from mistralai.client.realtime import Realtime + from mistralai.client.responses import Responses from mistralai.client.workflows import Workflows @@ -38,6 +39,8 @@ class Mistral(BaseSDK): audio: "Audio" models: "Models" r"""Model Management API""" + responses: "Responses" + r"""Stateless Responses API for text, images, reasoning, function calls, and streaming.""" realtime: "Realtime" files: "Files" r"""Files API""" @@ -60,6 +63,7 @@ class Mistral(BaseSDK): "beta": ("mistralai.client.beta", "Beta"), "audio": ("mistralai.client.audio", "Audio"), "models": ("mistralai.client.models_", "Models"), + "responses": ("mistralai.client.responses", "Responses"), "realtime": ("mistralai.client.realtime", "Realtime"), "files": ("mistralai.client.files", "Files"), "batch": ("mistralai.client.batch", "Batch"), diff --git a/uv.lock b/uv.lock index 4d2b48d82..763d47bc9 100644 --- a/uv.lock +++ b/uv.lock @@ -1233,7 +1233,7 @@ wheels = [ [[package]] name = "mistralai" -version = "3.3.0" +version = "3.4.0" source = { editable = "." } dependencies = [ { name = "eval-type-backport" }, From 8edb73002ce99b1f0bb122f57e6caf66bdaabe8d Mon Sep 17 00:00:00 2001 From: andreaonofrei01 Date: Fri, 23 Oct 2026 19:22:10 +0200 Subject: [PATCH 2/2] chore: drop the overlay and the v2 migration guide, fix a release-note line --- .speakeasy/connector-id-or-name-overlay.yaml | 11 - MIGRATION.md | 204 ------------------- README-PYPI.md | 5 - README.md | 5 - RELEASES.md | 3 +- 5 files changed, 1 insertion(+), 227 deletions(-) delete mode 100644 .speakeasy/connector-id-or-name-overlay.yaml delete mode 100644 MIGRATION.md diff --git a/.speakeasy/connector-id-or-name-overlay.yaml b/.speakeasy/connector-id-or-name-overlay.yaml deleted file mode 100644 index 21d4b11c0..000000000 --- a/.speakeasy/connector-id-or-name-overlay.yaml +++ /dev/null @@ -1,11 +0,0 @@ -overlay: 1.0.0 -info: - title: Keep connector ID-or-name parameters as strings - version: 1.0.0 -actions: - - target: $.paths..[?(@.name == 'connector_id_or_name')].schema.anyOf - description: Connector names are not UUIDs, so this parameter cannot be UUID-only. - remove: true - - target: $.paths..[?(@.name == 'connector_id_or_name')].schema - update: - type: string diff --git a/MIGRATION.md b/MIGRATION.md deleted file mode 100644 index 099839d1a..000000000 --- a/MIGRATION.md +++ /dev/null @@ -1,204 +0,0 @@ -# Migration Guide: v2.x to v3.x - -Imports, core method names (`chat.complete`, `embeddings.create`, `files.upload`, ...) and the Python minimum (`>=3.10`) are unchanged. The breaking changes are the HTTP transport and a handful of beta and workflow APIs. - -## HTTPX2 and MCP 2.2 - -The SDK depends on `httpx2` instead of `httpx`, and the `agents` extra on `mcp>=2.2,<3`. This also applies to `MistralAzure` and `MistralGCP`. - -- A custom HTTP client must be the HTTPX2 equivalent: - - ```python - import httpx2 - from mistralai.client import Mistral - - client = Mistral( - api_key="...", - client=httpx2.Client(timeout=60), - async_client=httpx2.AsyncClient(timeout=60), - ) - ``` - -- Raw requests and responses exposed on results and errors are `httpx2` types; catch `httpx2` exceptions instead of `httpx` ones. -- `mistral.beta.connectors.http_client()` returns an `httpx2.AsyncClient`. -- MCP results use MCP 2.2 field names, e.g. `structured_content` instead of `structuredContent`. - -## Chat and Agents Completions - -`chat.complete`, `chat.stream`, `agents.complete` and `agents.stream` no longer accept the `web_search`, `web_search_premium` and `code_interpreter` tools. Use them through the Conversations API (`beta.conversations`) or an agent created with `beta.agents.create`, where `WebSearchTool`, `WebSearchPremiumTool` and `CodeInterpreterTool` remain available. - -## Connectors (beta) - -The three credential deletions are one method with a scope: - -| v2 | v3 | -|---|---| -| `beta.connectors.delete_user_credentials(...)` | `beta.connectors.delete_credentials(..., consumer_scope="user")` | -| `beta.connectors.delete_workspace_credentials(...)` | `beta.connectors.delete_credentials(..., consumer_scope="workspace")` | -| `beta.connectors.delete_organization_credentials(...)` | `beta.connectors.delete_credentials(..., consumer_scope="organization")` | - -The `ConnectorDelete{User,Workspace,Organization}CredentialsV1Request` models are replaced by `ConnectorDeleteCredentialsRequest`. - -- `beta.connectors.get()`: `fetch_customer_data` removed. -- `beta.connectors.list_tools()`: `page` removed; all tools are returned in one response. -- `beta.connectors.list()`: `query_filters.active` removed. - -## Observability Pipeline Configs (beta) - -A pipeline config holds a single definition: - -| v2 | v3 | -|---|---| -| `create_pipeline_config(..., definitions=[d])` | `create_pipeline_config(..., definition=d)` | -| `update_pipeline_config(..., definitions=[d])` | `update_pipeline_config(..., definition=d)` | -| `config.definitions[0]` | `config.definition` | - -`PipelineConfig.definitions` is still returned, as `[definition]`, but is now optional. - -## Workflow Deployments - -- The `koyeb` backend is now Mistral Cloud: `DeploymentKoyebBackendSpec` is replaced by `DeploymentMistralCloudBackendSpec` (`type="mistral_cloud"`). Requests accept only this backend; the Kubernetes backend can no longer be set. -- `DeploymentResourceConfig` and `DeploymentResourceConfigUpdate` keep only `replicas`; `cpu_request`, `cpu_limit`, `memory_request` and `memory_limit` are removed. -- `entrypoint` and `working_dir` are removed from `DeploymentWorkerSpecInput` and `WorkflowsWorkerSpecUpdate`, and together with `commit_sha` from `DeploymentWorkerSpecResponse`. -- `UnknownDeploymentWorkerSpecResponseBackendSpec` is renamed `UnknownBackendSpec`. - -## Users (beta) - -`beta.users.get_identity()`, `list_organizations()` and `list_workspaces()` accept either an API key or a bearer token, so both fields of their security models are optional. Set one of them; passing neither is rejected with a 401: - -```python -import os -from mistralai.client import Mistral, models - -with Mistral() as mistral: - res = mistral.beta.users.get_identity( - security=models.UsersAPIGetIdentitySecurity( - dashboard_user_context_auth=os.environ["MISTRAL_API_KEY"], - ) - ) -``` - ---- - -# Migration Guide: v1.x to v2.x - -## Import Changes - -All SDK imports move from `mistralai` to `mistralai.client`: - -| v1 | v2 | -|---|---| -| `from mistralai import Mistral` | `from mistralai.client import Mistral` | -| `from mistralai.models import ...` | `from mistralai.client.models import ...` | -| `from mistralai.types import ...` | `from mistralai.client.types import ...` | -| `from mistralai.utils import ...` | `from mistralai.client.utils import ...` | - -`mistralai.extra` is unchanged (`RunContext`, `MCPClientSTDIO`, `MCPClientSSE`, `response_format_from_pydantic_model`, etc. stay at `mistralai.extra`). - -## Azure & GCP - -Azure and GCP are now namespace sub-packages under `mistralai`, no longer separate top-level packages. - -| v1 | v2 | -|---|---| -| `from mistralai_azure import MistralAzure` | `from mistralai.azure.client import MistralAzure` | -| `from mistralai_azure.models import ...` | `from mistralai.azure.client.models import ...` | -| `from mistralai_gcp import MistralGoogleCloud` | `from mistralai.gcp.client import MistralGCP` | -| `from mistralai_gcp.models import ...` | `from mistralai.gcp.client.models import ...` | -GCP class renamed `MistralGoogleCloud` -> `MistralGCP`. - -## Type Renames - -42 request/response types renamed to follow `{Verb}{Entity}Request` / `{Verb}{Entity}Response` / `{Entity}` conventions. Core types (`Mistral`, `UserMessage`, `AssistantMessage`, `File`, `FunctionTool`, `ResponseFormat`, etc.) keep the same name — just different import path. - -Only one user-facing type rename: `Tools` -> `ConversationRequestTool`. - -
-Full rename table (42 schemas) - -| v1 | v2 | -|---|---| -| `AgentCreationRequest` | `CreateAgentRequest` | -| `AgentUpdateRequest` | `UpdateAgentRequest` | -| `ArchiveFTModelOut` | `ArchiveModelResponse` | -| `BatchJobIn` | `CreateBatchJobRequest` | -| `BatchJobOut` | `BatchJob` | -| `BatchJobsOut` | `ListBatchJobsResponse` | -| `CheckpointOut` | `Checkpoint` | -| `ClassifierDetailedJobOut` | `ClassifierFineTuningJobDetails` | -| `ClassifierFTModelOut` | `ClassifierFineTunedModel` | -| `ClassifierJobOut` | `ClassifierFineTuningJob` | -| `ClassifierTargetIn` | `ClassifierTarget` | -| `ClassifierTargetOut` | `ClassifierTargetResult` | -| `ClassifierTrainingParametersIn` | `ClassifierTrainingParameters` | -| `CompletionDetailedJobOut` | `CompletionFineTuningJobDetails` | -| `CompletionFTModelOut` | `CompletionFineTunedModel` | -| `CompletionJobOut` | `CompletionFineTuningJob` | -| `CompletionTrainingParametersIn` | `CompletionTrainingParameters` | -| `ConversationAppendRequestBase` | `AppendConversationRequest` | -| `ConversationRestartRequestBase` | `RestartConversationRequest` | -| `DeleteFileOut` | `DeleteFileResponse` | -| `DocumentOut` | `Document` | -| `DocumentUpdateIn` | `UpdateDocumentRequest` | -| `EventOut` | `Event` | -| `FTModelCapabilitiesOut` | `FineTunedModelCapabilities` | -| `FileSignedURL` | `GetSignedUrlResponse` | -| `GithubRepositoryOut` | `GithubRepository` | -| `JobIn` | `CreateFineTuningJobRequest` | -| `JobMetadataOut` | `JobMetadata` | -| `JobsOut` | `ListFineTuningJobsResponse` | -| `LegacyJobMetadataOut` | `LegacyJobMetadata` | -| `LibraryIn` | `CreateLibraryRequest` | -| `LibraryInUpdate` | `UpdateLibraryRequest` | -| `LibraryOut` | `Library` | -| `ListDocumentOut` | `ListDocumentsResponse` | -| `ListFilesOut` | `ListFilesResponse` | -| `ListLibraryOut` | `ListLibrariesResponse` | -| `MetricOut` | `Metric` | -| `RetrieveFileOut` | `RetrieveFileResponse` | -| `UnarchiveFTModelOut` | `UnarchiveModelResponse` | -| `UpdateFTModelIn` | `UpdateModelRequest` | -| `UploadFileOut` | `UploadFileResponse` | -| `WandbIntegrationOut` | `WandbIntegrationResult` | - -
- -## Other Changes - -- `FunctionTool.type` changed from `Optional[FunctionToolType]` to `Literal["function"]` (functionally equivalent if you omit `type`) -- Enums now accept unknown values for forward compatibility with API changes -- Forward-compatible unions: discriminated unions get an `Unknown` variant - -## What Did NOT Change - -- All method names (`chat.complete`, `chat.stream`, `embeddings.create`, `fim.complete`, `files.upload`, `models.list`, `fine_tuning.jobs.create`, etc.) -- Zero endpoints added/removed, zero path changes -- Python minimum `>=3.10` -- Installation: `pip install mistralai` - ---- - -
-

Legacy: Migrating from v0.x to v1.x

- -> **Note:** The v1.x examples below use v1-style imports (e.g., `from mistralai import Mistral`). If you're on v2.x, combine these API changes with the [v1 to v2 import changes](#migration-guide-v1x-to-v2x) above. - -`MistralClient`/`MistralAsyncClient` consolidated into `Mistral`. `ChatMessage` replaced with `UserMessage`, `AssistantMessage`, etc. Streaming chunks now at `chunk.data.choices[0].delta.content`. - -| v0.x | v1.x | -|---|---| -| `MistralClient` | `Mistral` | -| `client.chat` | `client.chat.complete` | -| `client.chat_stream` | `client.chat.stream` | -| `client.completions` | `client.fim.complete` | -| `client.completions_stream` | `client.fim.stream` | -| `client.embeddings` | `client.embeddings.create` | -| `client.list_models` | `client.models.list` | -| `client.delete_model` | `client.models.delete` | -| `client.files.create` | `client.files.upload` | -| `client.jobs.create` | `client.fine_tuning.jobs.create` | -| `client.jobs.list` | `client.fine_tuning.jobs.list` | -| `client.jobs.retrieve` | `client.fine_tuning.jobs.get` | -| `client.jobs.cancel` | `client.fine_tuning.jobs.cancel` | - -
diff --git a/README-PYPI.md b/README-PYPI.md index 16d007d8f..b4e53c749 100644 --- a/README-PYPI.md +++ b/README-PYPI.md @@ -1,9 +1,5 @@ # Mistral Python Client -## Migrating from v1 - -If you are upgrading from v1 to v2, check the [migration guide](https://github.com/mistralai/client-python/blob/main/MIGRATION.md) for details on breaking changes and how to update your code. - ## API Key Setup Before you begin, you will need a Mistral AI API key. @@ -40,7 +36,6 @@ Mistral AI API: Our Chat Completion and Embeddings APIs specification. Create yo ## Table of Contents * [Mistral Python Client](#mistral-python-client) - * [Migrating from v1](#migrating-from-v1) * [API Key Setup](#api-key-setup) * [SDK Installation](#sdk-installation) * [SDK Example Usage](#sdk-example-usage) diff --git a/README.md b/README.md index 35a28878d..bf6785974 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,5 @@ # Mistral Python Client -## Migrating from v1 - -If you are upgrading from v1 to v2, check the [migration guide](https://github.com/mistralai/client-python/blob/main/MIGRATION.md) for details on breaking changes and how to update your code. - ## API Key Setup Before you begin, you will need a Mistral AI API key. @@ -40,7 +36,6 @@ Mistral AI API: Our Chat Completion and Embeddings APIs specification. Create yo ## Table of Contents * [Mistral Python Client](#mistral-python-client) - * [Migrating from v1](#migrating-from-v1) * [API Key Setup](#api-key-setup) * [SDK Installation](#sdk-installation) * [SDK Example Usage](#sdk-example-usage) diff --git a/RELEASES.md b/RELEASES.md index 20d472ceb..0f92ae618 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -1514,9 +1514,8 @@ The published SDK or generator baseline differs from the baseline used by the Op Generated surface details #### Stable compatibility changes -Now required on an existing stable model (2): +Now required on an existing stable model (1): - `AudioAgentCreateRequest.configuration` -- `Mistral.responses` #### Stable type changes Changed types or signatures on the stable surface (4): - `AudioAgentCreateRequest.configuration: OptionalNullable[AudioAgentConfigurationRequest] -> AudioAgentConfigurationRequest`