pydantic-ai-slim 1.10.0__py3-none-any.whl → 1.12.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. pydantic_ai/_agent_graph.py +18 -14
  2. pydantic_ai/_output.py +20 -105
  3. pydantic_ai/_run_context.py +2 -0
  4. pydantic_ai/_tool_manager.py +30 -11
  5. pydantic_ai/agent/__init__.py +34 -32
  6. pydantic_ai/agent/abstract.py +26 -0
  7. pydantic_ai/agent/wrapper.py +5 -0
  8. pydantic_ai/common_tools/duckduckgo.py +1 -1
  9. pydantic_ai/durable_exec/dbos/_agent.py +28 -0
  10. pydantic_ai/durable_exec/prefect/_agent.py +25 -0
  11. pydantic_ai/durable_exec/temporal/_agent.py +25 -0
  12. pydantic_ai/durable_exec/temporal/_run_context.py +2 -1
  13. pydantic_ai/mcp.py +4 -4
  14. pydantic_ai/messages.py +5 -2
  15. pydantic_ai/models/__init__.py +80 -35
  16. pydantic_ai/models/anthropic.py +27 -8
  17. pydantic_ai/models/bedrock.py +3 -3
  18. pydantic_ai/models/cohere.py +5 -3
  19. pydantic_ai/models/fallback.py +25 -4
  20. pydantic_ai/models/function.py +8 -0
  21. pydantic_ai/models/gemini.py +3 -3
  22. pydantic_ai/models/google.py +20 -10
  23. pydantic_ai/models/groq.py +5 -3
  24. pydantic_ai/models/huggingface.py +3 -3
  25. pydantic_ai/models/instrumented.py +29 -13
  26. pydantic_ai/models/mistral.py +6 -4
  27. pydantic_ai/models/openai.py +11 -6
  28. pydantic_ai/models/outlines.py +21 -12
  29. pydantic_ai/models/wrapper.py +1 -1
  30. pydantic_ai/output.py +3 -2
  31. pydantic_ai/profiles/openai.py +5 -2
  32. pydantic_ai/result.py +5 -3
  33. pydantic_ai/tools.py +2 -4
  34. {pydantic_ai_slim-1.10.0.dist-info → pydantic_ai_slim-1.12.0.dist-info}/METADATA +9 -7
  35. {pydantic_ai_slim-1.10.0.dist-info → pydantic_ai_slim-1.12.0.dist-info}/RECORD +38 -38
  36. {pydantic_ai_slim-1.10.0.dist-info → pydantic_ai_slim-1.12.0.dist-info}/WHEEL +0 -0
  37. {pydantic_ai_slim-1.10.0.dist-info → pydantic_ai_slim-1.12.0.dist-info}/entry_points.txt +0 -0
  38. {pydantic_ai_slim-1.10.0.dist-info → pydantic_ai_slim-1.12.0.dist-info}/licenses/LICENSE +0 -0
@@ -131,6 +131,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
131
131
  message_history: Sequence[_messages.ModelMessage] | None = None,
132
132
  deferred_tool_results: DeferredToolResults | None = None,
133
133
  model: models.Model | models.KnownModelName | str | None = None,
134
+ instructions: Instructions[AgentDepsT] = None,
134
135
  deps: AgentDepsT = None,
135
136
  model_settings: ModelSettings | None = None,
136
137
  usage_limits: _usage.UsageLimits | None = None,
@@ -150,6 +151,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
150
151
  message_history: Sequence[_messages.ModelMessage] | None = None,
151
152
  deferred_tool_results: DeferredToolResults | None = None,
152
153
  model: models.Model | models.KnownModelName | str | None = None,
154
+ instructions: Instructions[AgentDepsT] = None,
153
155
  deps: AgentDepsT = None,
154
156
  model_settings: ModelSettings | None = None,
155
157
  usage_limits: _usage.UsageLimits | None = None,
@@ -168,6 +170,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
168
170
  message_history: Sequence[_messages.ModelMessage] | None = None,
169
171
  deferred_tool_results: DeferredToolResults | None = None,
170
172
  model: models.Model | models.KnownModelName | str | None = None,
173
+ instructions: Instructions[AgentDepsT] = None,
171
174
  deps: AgentDepsT = None,
172
175
  model_settings: ModelSettings | None = None,
173
176
  usage_limits: _usage.UsageLimits | None = None,
@@ -201,6 +204,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
201
204
  message_history: History of the conversation so far.
202
205
  deferred_tool_results: Optional results for deferred tool calls in the message history.
203
206
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
207
+ instructions: Optional additional instructions to use for this run.
204
208
  deps: Optional dependencies to use for this run.
205
209
  model_settings: Optional settings to use for this model's request.
206
210
  usage_limits: Optional limits on model request count or token usage.
@@ -224,6 +228,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
224
228
  message_history=message_history,
225
229
  deferred_tool_results=deferred_tool_results,
226
230
  model=model,
231
+ instructions=instructions,
227
232
  deps=deps,
228
233
  model_settings=model_settings,
229
234
  usage_limits=usage_limits,
@@ -250,6 +255,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
250
255
  message_history: Sequence[_messages.ModelMessage] | None = None,
251
256
  deferred_tool_results: DeferredToolResults | None = None,
252
257
  model: models.Model | models.KnownModelName | str | None = None,
258
+ instructions: Instructions[AgentDepsT] = None,
253
259
  deps: AgentDepsT = None,
254
260
  model_settings: ModelSettings | None = None,
255
261
  usage_limits: _usage.UsageLimits | None = None,
@@ -269,6 +275,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
269
275
  message_history: Sequence[_messages.ModelMessage] | None = None,
270
276
  deferred_tool_results: DeferredToolResults | None = None,
271
277
  model: models.Model | models.KnownModelName | str | None = None,
278
+ instructions: Instructions[AgentDepsT] = None,
272
279
  deps: AgentDepsT = None,
273
280
  model_settings: ModelSettings | None = None,
274
281
  usage_limits: _usage.UsageLimits | None = None,
@@ -287,6 +294,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
287
294
  message_history: Sequence[_messages.ModelMessage] | None = None,
288
295
  deferred_tool_results: DeferredToolResults | None = None,
289
296
  model: models.Model | models.KnownModelName | str | None = None,
297
+ instructions: Instructions[AgentDepsT] = None,
290
298
  deps: AgentDepsT = None,
291
299
  model_settings: ModelSettings | None = None,
292
300
  usage_limits: _usage.UsageLimits | None = None,
@@ -319,6 +327,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
319
327
  message_history: History of the conversation so far.
320
328
  deferred_tool_results: Optional results for deferred tool calls in the message history.
321
329
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
330
+ instructions: Optional additional instructions to use for this run.
322
331
  deps: Optional dependencies to use for this run.
323
332
  model_settings: Optional settings to use for this model's request.
324
333
  usage_limits: Optional limits on model request count or token usage.
@@ -341,6 +350,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
341
350
  message_history=message_history,
342
351
  deferred_tool_results=deferred_tool_results,
343
352
  model=model,
353
+ instructions=instructions,
344
354
  deps=deps,
345
355
  model_settings=model_settings,
346
356
  usage_limits=usage_limits,
@@ -361,6 +371,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
361
371
  message_history: Sequence[_messages.ModelMessage] | None = None,
362
372
  deferred_tool_results: DeferredToolResults | None = None,
363
373
  model: models.Model | models.KnownModelName | str | None = None,
374
+ instructions: Instructions[AgentDepsT] = None,
364
375
  deps: AgentDepsT = None,
365
376
  model_settings: ModelSettings | None = None,
366
377
  usage_limits: _usage.UsageLimits | None = None,
@@ -380,6 +391,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
380
391
  message_history: Sequence[_messages.ModelMessage] | None = None,
381
392
  deferred_tool_results: DeferredToolResults | None = None,
382
393
  model: models.Model | models.KnownModelName | str | None = None,
394
+ instructions: Instructions[AgentDepsT] = None,
383
395
  deps: AgentDepsT = None,
384
396
  model_settings: ModelSettings | None = None,
385
397
  usage_limits: _usage.UsageLimits | None = None,
@@ -399,6 +411,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
399
411
  message_history: Sequence[_messages.ModelMessage] | None = None,
400
412
  deferred_tool_results: DeferredToolResults | None = None,
401
413
  model: models.Model | models.KnownModelName | str | None = None,
414
+ instructions: Instructions[AgentDepsT] = None,
402
415
  deps: AgentDepsT = None,
403
416
  model_settings: ModelSettings | None = None,
404
417
  usage_limits: _usage.UsageLimits | None = None,
@@ -439,6 +452,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
439
452
  message_history: History of the conversation so far.
440
453
  deferred_tool_results: Optional results for deferred tool calls in the message history.
441
454
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
455
+ instructions: Optional additional instructions to use for this run.
442
456
  deps: Optional dependencies to use for this run.
443
457
  model_settings: Optional settings to use for this model's request.
444
458
  usage_limits: Optional limits on model request count or token usage.
@@ -468,6 +482,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
468
482
  deferred_tool_results=deferred_tool_results,
469
483
  model=model,
470
484
  deps=deps,
485
+ instructions=instructions,
471
486
  model_settings=model_settings,
472
487
  usage_limits=usage_limits,
473
488
  usage=usage,
@@ -716,6 +731,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
716
731
  message_history: Sequence[_messages.ModelMessage] | None = None,
717
732
  deferred_tool_results: DeferredToolResults | None = None,
718
733
  model: models.Model | models.KnownModelName | str | None = None,
734
+ instructions: Instructions[AgentDepsT] = None,
719
735
  deps: AgentDepsT = None,
720
736
  model_settings: ModelSettings | None = None,
721
737
  usage_limits: _usage.UsageLimits | None = None,
@@ -734,6 +750,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
734
750
  message_history: Sequence[_messages.ModelMessage] | None = None,
735
751
  deferred_tool_results: DeferredToolResults | None = None,
736
752
  model: models.Model | models.KnownModelName | str | None = None,
753
+ instructions: Instructions[AgentDepsT] = None,
737
754
  deps: AgentDepsT = None,
738
755
  model_settings: ModelSettings | None = None,
739
756
  usage_limits: _usage.UsageLimits | None = None,
@@ -751,6 +768,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
751
768
  message_history: Sequence[_messages.ModelMessage] | None = None,
752
769
  deferred_tool_results: DeferredToolResults | None = None,
753
770
  model: models.Model | models.KnownModelName | str | None = None,
771
+ instructions: Instructions[AgentDepsT] = None,
754
772
  deps: AgentDepsT = None,
755
773
  model_settings: ModelSettings | None = None,
756
774
  usage_limits: _usage.UsageLimits | None = None,
@@ -800,6 +818,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
800
818
  message_history: History of the conversation so far.
801
819
  deferred_tool_results: Optional results for deferred tool calls in the message history.
802
820
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
821
+ instructions: Optional additional instructions to use for this run.
803
822
  deps: Optional dependencies to use for this run.
804
823
  model_settings: Optional settings to use for this model's request.
805
824
  usage_limits: Optional limits on model request count or token usage.
@@ -824,6 +843,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
824
843
  message_history=message_history,
825
844
  deferred_tool_results=deferred_tool_results,
826
845
  model=model,
846
+ instructions=instructions,
827
847
  deps=deps,
828
848
  model_settings=model_settings,
829
849
  usage_limits=usage_limits,
@@ -840,6 +860,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
840
860
  message_history: Sequence[_messages.ModelMessage] | None = None,
841
861
  deferred_tool_results: DeferredToolResults | None = None,
842
862
  model: models.Model | models.KnownModelName | str | None = None,
863
+ instructions: Instructions[AgentDepsT] = None,
843
864
  deps: AgentDepsT = None,
844
865
  model_settings: ModelSettings | None = None,
845
866
  usage_limits: _usage.UsageLimits | None = None,
@@ -865,6 +886,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
865
886
  message_history=message_history,
866
887
  deferred_tool_results=deferred_tool_results,
867
888
  model=model,
889
+ instructions=instructions,
868
890
  deps=deps,
869
891
  model_settings=model_settings,
870
892
  usage_limits=usage_limits,
@@ -893,6 +915,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
893
915
  message_history: Sequence[_messages.ModelMessage] | None = None,
894
916
  deferred_tool_results: DeferredToolResults | None = None,
895
917
  model: models.Model | models.KnownModelName | str | None = None,
918
+ instructions: Instructions[AgentDepsT] = None,
896
919
  deps: AgentDepsT = None,
897
920
  model_settings: ModelSettings | None = None,
898
921
  usage_limits: _usage.UsageLimits | None = None,
@@ -911,6 +934,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
911
934
  message_history: Sequence[_messages.ModelMessage] | None = None,
912
935
  deferred_tool_results: DeferredToolResults | None = None,
913
936
  model: models.Model | models.KnownModelName | str | None = None,
937
+ instructions: Instructions[AgentDepsT] = None,
914
938
  deps: AgentDepsT = None,
915
939
  model_settings: ModelSettings | None = None,
916
940
  usage_limits: _usage.UsageLimits | None = None,
@@ -930,6 +954,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
930
954
  message_history: Sequence[_messages.ModelMessage] | None = None,
931
955
  deferred_tool_results: DeferredToolResults | None = None,
932
956
  model: models.Model | models.KnownModelName | str | None = None,
957
+ instructions: Instructions[AgentDepsT] = None,
933
958
  deps: AgentDepsT = None,
934
959
  model_settings: ModelSettings | None = None,
935
960
  usage_limits: _usage.UsageLimits | None = None,
@@ -1003,6 +1028,7 @@ class AbstractAgent(Generic[AgentDepsT, OutputDataT], ABC):
1003
1028
  message_history: History of the conversation so far.
1004
1029
  deferred_tool_results: Optional results for deferred tool calls in the message history.
1005
1030
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
1031
+ instructions: Optional additional instructions to use for this run.
1006
1032
  deps: Optional dependencies to use for this run.
1007
1033
  model_settings: Optional settings to use for this model's request.
1008
1034
  usage_limits: Optional limits on model request count or token usage.
@@ -76,6 +76,7 @@ class WrapperAgent(AbstractAgent[AgentDepsT, OutputDataT]):
76
76
  message_history: Sequence[_messages.ModelMessage] | None = None,
77
77
  deferred_tool_results: DeferredToolResults | None = None,
78
78
  model: models.Model | models.KnownModelName | str | None = None,
79
+ instructions: Instructions[AgentDepsT] = None,
79
80
  deps: AgentDepsT = None,
80
81
  model_settings: ModelSettings | None = None,
81
82
  usage_limits: _usage.UsageLimits | None = None,
@@ -94,6 +95,7 @@ class WrapperAgent(AbstractAgent[AgentDepsT, OutputDataT]):
94
95
  message_history: Sequence[_messages.ModelMessage] | None = None,
95
96
  deferred_tool_results: DeferredToolResults | None = None,
96
97
  model: models.Model | models.KnownModelName | str | None = None,
98
+ instructions: Instructions[AgentDepsT] = None,
97
99
  deps: AgentDepsT = None,
98
100
  model_settings: ModelSettings | None = None,
99
101
  usage_limits: _usage.UsageLimits | None = None,
@@ -112,6 +114,7 @@ class WrapperAgent(AbstractAgent[AgentDepsT, OutputDataT]):
112
114
  message_history: Sequence[_messages.ModelMessage] | None = None,
113
115
  deferred_tool_results: DeferredToolResults | None = None,
114
116
  model: models.Model | models.KnownModelName | str | None = None,
117
+ instructions: Instructions[AgentDepsT] = None,
115
118
  deps: AgentDepsT = None,
116
119
  model_settings: ModelSettings | None = None,
117
120
  usage_limits: _usage.UsageLimits | None = None,
@@ -185,6 +188,7 @@ class WrapperAgent(AbstractAgent[AgentDepsT, OutputDataT]):
185
188
  message_history: History of the conversation so far.
186
189
  deferred_tool_results: Optional results for deferred tool calls in the message history.
187
190
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
191
+ instructions: Optional additional instructions to use for this run.
188
192
  deps: Optional dependencies to use for this run.
189
193
  model_settings: Optional settings to use for this model's request.
190
194
  usage_limits: Optional limits on model request count or token usage.
@@ -202,6 +206,7 @@ class WrapperAgent(AbstractAgent[AgentDepsT, OutputDataT]):
202
206
  message_history=message_history,
203
207
  deferred_tool_results=deferred_tool_results,
204
208
  model=model,
209
+ instructions=instructions,
205
210
  deps=deps,
206
211
  model_settings=model_settings,
207
212
  usage_limits=usage_limits,
@@ -10,7 +10,7 @@ from pydantic_ai.tools import Tool
10
10
 
11
11
  try:
12
12
  try:
13
- from ddgs import DDGS
13
+ from ddgs.ddgs import DDGS
14
14
  except ImportError: # Fallback for older versions of ddgs
15
15
  from duckduckgo_search import DDGS
16
16
  except ImportError as _import_error:
@@ -116,6 +116,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
116
116
  message_history: Sequence[_messages.ModelMessage] | None = None,
117
117
  deferred_tool_results: DeferredToolResults | None = None,
118
118
  model: models.Model | models.KnownModelName | str | None = None,
119
+ instructions: Instructions[AgentDepsT] = None,
119
120
  deps: AgentDepsT,
120
121
  model_settings: ModelSettings | None = None,
121
122
  usage_limits: _usage.UsageLimits | None = None,
@@ -133,6 +134,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
133
134
  message_history=message_history,
134
135
  deferred_tool_results=deferred_tool_results,
135
136
  model=model,
137
+ instructions=instructions,
136
138
  deps=deps,
137
139
  model_settings=model_settings,
138
140
  usage_limits=usage_limits,
@@ -157,6 +159,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
157
159
  model: models.Model | models.KnownModelName | str | None = None,
158
160
  deps: AgentDepsT,
159
161
  model_settings: ModelSettings | None = None,
162
+ instructions: Instructions[AgentDepsT] = None,
160
163
  usage_limits: _usage.UsageLimits | None = None,
161
164
  usage: _usage.RunUsage | None = None,
162
165
  infer_name: bool = True,
@@ -172,6 +175,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
172
175
  message_history=message_history,
173
176
  deferred_tool_results=deferred_tool_results,
174
177
  model=model,
178
+ instructions=instructions,
175
179
  deps=deps,
176
180
  model_settings=model_settings,
177
181
  usage_limits=usage_limits,
@@ -245,6 +249,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
245
249
  message_history: Sequence[_messages.ModelMessage] | None = None,
246
250
  deferred_tool_results: DeferredToolResults | None = None,
247
251
  model: models.Model | models.KnownModelName | str | None = None,
252
+ instructions: Instructions[AgentDepsT] = None,
248
253
  deps: AgentDepsT = None,
249
254
  model_settings: ModelSettings | None = None,
250
255
  usage_limits: _usage.UsageLimits | None = None,
@@ -264,6 +269,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
264
269
  message_history: Sequence[_messages.ModelMessage] | None = None,
265
270
  deferred_tool_results: DeferredToolResults | None = None,
266
271
  model: models.Model | models.KnownModelName | str | None = None,
272
+ instructions: Instructions[AgentDepsT] = None,
267
273
  deps: AgentDepsT = None,
268
274
  model_settings: ModelSettings | None = None,
269
275
  usage_limits: _usage.UsageLimits | None = None,
@@ -282,6 +288,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
282
288
  message_history: Sequence[_messages.ModelMessage] | None = None,
283
289
  deferred_tool_results: DeferredToolResults | None = None,
284
290
  model: models.Model | models.KnownModelName | str | None = None,
291
+ instructions: Instructions[AgentDepsT] = None,
285
292
  deps: AgentDepsT = None,
286
293
  model_settings: ModelSettings | None = None,
287
294
  usage_limits: _usage.UsageLimits | None = None,
@@ -316,6 +323,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
316
323
  message_history: History of the conversation so far.
317
324
  deferred_tool_results: Optional results for deferred tool calls in the message history.
318
325
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
326
+ instructions: Optional additional instructions to use for this run.
319
327
  deps: Optional dependencies to use for this run.
320
328
  model_settings: Optional settings to use for this model's request.
321
329
  usage_limits: Optional limits on model request count or token usage.
@@ -334,6 +342,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
334
342
  message_history=message_history,
335
343
  deferred_tool_results=deferred_tool_results,
336
344
  model=model,
345
+ instructions=instructions,
337
346
  deps=deps,
338
347
  model_settings=model_settings,
339
348
  usage_limits=usage_limits,
@@ -354,6 +363,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
354
363
  message_history: Sequence[_messages.ModelMessage] | None = None,
355
364
  deferred_tool_results: DeferredToolResults | None = None,
356
365
  model: models.Model | models.KnownModelName | str | None = None,
366
+ instructions: Instructions[AgentDepsT] = None,
357
367
  deps: AgentDepsT = None,
358
368
  model_settings: ModelSettings | None = None,
359
369
  usage_limits: _usage.UsageLimits | None = None,
@@ -373,6 +383,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
373
383
  message_history: Sequence[_messages.ModelMessage] | None = None,
374
384
  deferred_tool_results: DeferredToolResults | None = None,
375
385
  model: models.Model | models.KnownModelName | str | None = None,
386
+ instructions: Instructions[AgentDepsT] = None,
376
387
  deps: AgentDepsT = None,
377
388
  model_settings: ModelSettings | None = None,
378
389
  usage_limits: _usage.UsageLimits | None = None,
@@ -391,6 +402,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
391
402
  message_history: Sequence[_messages.ModelMessage] | None = None,
392
403
  deferred_tool_results: DeferredToolResults | None = None,
393
404
  model: models.Model | models.KnownModelName | str | None = None,
405
+ instructions: Instructions[AgentDepsT] = None,
394
406
  deps: AgentDepsT = None,
395
407
  model_settings: ModelSettings | None = None,
396
408
  usage_limits: _usage.UsageLimits | None = None,
@@ -424,6 +436,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
424
436
  message_history: History of the conversation so far.
425
437
  deferred_tool_results: Optional results for deferred tool calls in the message history.
426
438
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
439
+ instructions: Optional additional instructions to use for this run.
427
440
  deps: Optional dependencies to use for this run.
428
441
  model_settings: Optional settings to use for this model's request.
429
442
  usage_limits: Optional limits on model request count or token usage.
@@ -442,6 +455,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
442
455
  message_history=message_history,
443
456
  deferred_tool_results=deferred_tool_results,
444
457
  model=model,
458
+ instructions=instructions,
445
459
  deps=deps,
446
460
  model_settings=model_settings,
447
461
  usage_limits=usage_limits,
@@ -462,6 +476,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
462
476
  message_history: Sequence[_messages.ModelMessage] | None = None,
463
477
  deferred_tool_results: DeferredToolResults | None = None,
464
478
  model: models.Model | models.KnownModelName | str | None = None,
479
+ instructions: Instructions[AgentDepsT] = None,
465
480
  deps: AgentDepsT = None,
466
481
  model_settings: ModelSettings | None = None,
467
482
  usage_limits: _usage.UsageLimits | None = None,
@@ -482,6 +497,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
482
497
  deferred_tool_results: DeferredToolResults | None = None,
483
498
  model: models.Model | models.KnownModelName | str | None = None,
484
499
  deps: AgentDepsT = None,
500
+ instructions: Instructions[AgentDepsT] = None,
485
501
  model_settings: ModelSettings | None = None,
486
502
  usage_limits: _usage.UsageLimits | None = None,
487
503
  usage: _usage.RunUsage | None = None,
@@ -500,6 +516,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
500
516
  message_history: Sequence[_messages.ModelMessage] | None = None,
501
517
  deferred_tool_results: DeferredToolResults | None = None,
502
518
  model: models.Model | models.KnownModelName | str | None = None,
519
+ instructions: Instructions[AgentDepsT] = None,
503
520
  deps: AgentDepsT = None,
504
521
  model_settings: ModelSettings | None = None,
505
522
  usage_limits: _usage.UsageLimits | None = None,
@@ -531,6 +548,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
531
548
  message_history: History of the conversation so far.
532
549
  deferred_tool_results: Optional results for deferred tool calls in the message history.
533
550
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
551
+ instructions: Optional additional instructions to use for this run.
534
552
  deps: Optional dependencies to use for this run.
535
553
  model_settings: Optional settings to use for this model's request.
536
554
  usage_limits: Optional limits on model request count or token usage.
@@ -555,6 +573,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
555
573
  message_history=message_history,
556
574
  deferred_tool_results=deferred_tool_results,
557
575
  model=model,
576
+ instructions=instructions,
558
577
  deps=deps,
559
578
  model_settings=model_settings,
560
579
  usage_limits=usage_limits,
@@ -576,6 +595,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
576
595
  message_history: Sequence[_messages.ModelMessage] | None = None,
577
596
  deferred_tool_results: DeferredToolResults | None = None,
578
597
  model: models.Model | models.KnownModelName | str | None = None,
598
+ instructions: Instructions[AgentDepsT] = None,
579
599
  deps: AgentDepsT = None,
580
600
  model_settings: ModelSettings | None = None,
581
601
  usage_limits: _usage.UsageLimits | None = None,
@@ -594,6 +614,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
594
614
  message_history: Sequence[_messages.ModelMessage] | None = None,
595
615
  deferred_tool_results: DeferredToolResults | None = None,
596
616
  model: models.Model | models.KnownModelName | str | None = None,
617
+ instructions: Instructions[AgentDepsT] = None,
597
618
  deps: AgentDepsT = None,
598
619
  model_settings: ModelSettings | None = None,
599
620
  usage_limits: _usage.UsageLimits | None = None,
@@ -611,6 +632,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
611
632
  message_history: Sequence[_messages.ModelMessage] | None = None,
612
633
  deferred_tool_results: DeferredToolResults | None = None,
613
634
  model: models.Model | models.KnownModelName | str | None = None,
635
+ instructions: Instructions[AgentDepsT] = None,
614
636
  deps: AgentDepsT = None,
615
637
  model_settings: ModelSettings | None = None,
616
638
  usage_limits: _usage.UsageLimits | None = None,
@@ -660,6 +682,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
660
682
  message_history: History of the conversation so far.
661
683
  deferred_tool_results: Optional results for deferred tool calls in the message history.
662
684
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
685
+ instructions: Optional additional instructions to use for this run.
663
686
  deps: Optional dependencies to use for this run.
664
687
  model_settings: Optional settings to use for this model's request.
665
688
  usage_limits: Optional limits on model request count or token usage.
@@ -686,6 +709,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
686
709
  message_history: Sequence[_messages.ModelMessage] | None = None,
687
710
  deferred_tool_results: DeferredToolResults | None = None,
688
711
  model: models.Model | models.KnownModelName | str | None = None,
712
+ instructions: Instructions[AgentDepsT] = None,
689
713
  deps: AgentDepsT = None,
690
714
  model_settings: ModelSettings | None = None,
691
715
  usage_limits: _usage.UsageLimits | None = None,
@@ -705,6 +729,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
705
729
  message_history: Sequence[_messages.ModelMessage] | None = None,
706
730
  deferred_tool_results: DeferredToolResults | None = None,
707
731
  model: models.Model | models.KnownModelName | str | None = None,
732
+ instructions: Instructions[AgentDepsT] = None,
708
733
  deps: AgentDepsT = None,
709
734
  model_settings: ModelSettings | None = None,
710
735
  usage_limits: _usage.UsageLimits | None = None,
@@ -724,6 +749,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
724
749
  message_history: Sequence[_messages.ModelMessage] | None = None,
725
750
  deferred_tool_results: DeferredToolResults | None = None,
726
751
  model: models.Model | models.KnownModelName | str | None = None,
752
+ instructions: Instructions[AgentDepsT] = None,
727
753
  deps: AgentDepsT = None,
728
754
  model_settings: ModelSettings | None = None,
729
755
  usage_limits: _usage.UsageLimits | None = None,
@@ -798,6 +824,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
798
824
  message_history: History of the conversation so far.
799
825
  deferred_tool_results: Optional results for deferred tool calls in the message history.
800
826
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
827
+ instructions: Optional additional instructions to use for this run.
801
828
  deps: Optional dependencies to use for this run.
802
829
  model_settings: Optional settings to use for this model's request.
803
830
  usage_limits: Optional limits on model request count or token usage.
@@ -821,6 +848,7 @@ class DBOSAgent(WrapperAgent[AgentDepsT, OutputDataT], DBOSConfiguredInstance):
821
848
  message_history=message_history,
822
849
  deferred_tool_results=deferred_tool_results,
823
850
  model=model,
851
+ instructions=instructions,
824
852
  deps=deps,
825
853
  model_settings=model_settings,
826
854
  usage_limits=usage_limits,
@@ -180,6 +180,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
180
180
  message_history: Sequence[_messages.ModelMessage] | None = None,
181
181
  deferred_tool_results: DeferredToolResults | None = None,
182
182
  model: models.Model | models.KnownModelName | str | None = None,
183
+ instructions: Instructions[AgentDepsT] = None,
183
184
  deps: AgentDepsT = None,
184
185
  model_settings: ModelSettings | None = None,
185
186
  usage_limits: _usage.UsageLimits | None = None,
@@ -199,6 +200,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
199
200
  message_history: Sequence[_messages.ModelMessage] | None = None,
200
201
  deferred_tool_results: DeferredToolResults | None = None,
201
202
  model: models.Model | models.KnownModelName | str | None = None,
203
+ instructions: Instructions[AgentDepsT] = None,
202
204
  deps: AgentDepsT = None,
203
205
  model_settings: ModelSettings | None = None,
204
206
  usage_limits: _usage.UsageLimits | None = None,
@@ -217,6 +219,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
217
219
  message_history: Sequence[_messages.ModelMessage] | None = None,
218
220
  deferred_tool_results: DeferredToolResults | None = None,
219
221
  model: models.Model | models.KnownModelName | str | None = None,
222
+ instructions: Instructions[AgentDepsT] = None,
220
223
  deps: AgentDepsT = None,
221
224
  model_settings: ModelSettings | None = None,
222
225
  usage_limits: _usage.UsageLimits | None = None,
@@ -251,6 +254,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
251
254
  message_history: History of the conversation so far.
252
255
  deferred_tool_results: Optional results for deferred tool calls in the message history.
253
256
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
257
+ instructions: Optional additional instructions to use for this run.
254
258
  deps: Optional dependencies to use for this run.
255
259
  model_settings: Optional settings to use for this model's request.
256
260
  usage_limits: Optional limits on model request count or token usage.
@@ -276,6 +280,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
276
280
  message_history=message_history,
277
281
  deferred_tool_results=deferred_tool_results,
278
282
  model=model,
283
+ instructions=instructions,
279
284
  deps=deps,
280
285
  model_settings=model_settings,
281
286
  usage_limits=usage_limits,
@@ -299,6 +304,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
299
304
  message_history: Sequence[_messages.ModelMessage] | None = None,
300
305
  deferred_tool_results: DeferredToolResults | None = None,
301
306
  model: models.Model | models.KnownModelName | str | None = None,
307
+ instructions: Instructions[AgentDepsT] = None,
302
308
  deps: AgentDepsT = None,
303
309
  model_settings: ModelSettings | None = None,
304
310
  usage_limits: _usage.UsageLimits | None = None,
@@ -318,6 +324,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
318
324
  message_history: Sequence[_messages.ModelMessage] | None = None,
319
325
  deferred_tool_results: DeferredToolResults | None = None,
320
326
  model: models.Model | models.KnownModelName | str | None = None,
327
+ instructions: Instructions[AgentDepsT] = None,
321
328
  deps: AgentDepsT = None,
322
329
  model_settings: ModelSettings | None = None,
323
330
  usage_limits: _usage.UsageLimits | None = None,
@@ -336,6 +343,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
336
343
  message_history: Sequence[_messages.ModelMessage] | None = None,
337
344
  deferred_tool_results: DeferredToolResults | None = None,
338
345
  model: models.Model | models.KnownModelName | str | None = None,
346
+ instructions: Instructions[AgentDepsT] = None,
339
347
  deps: AgentDepsT = None,
340
348
  model_settings: ModelSettings | None = None,
341
349
  usage_limits: _usage.UsageLimits | None = None,
@@ -369,6 +377,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
369
377
  message_history: History of the conversation so far.
370
378
  deferred_tool_results: Optional results for deferred tool calls in the message history.
371
379
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
380
+ instructions: Optional additional instructions to use for this run.
372
381
  deps: Optional dependencies to use for this run.
373
382
  model_settings: Optional settings to use for this model's request.
374
383
  usage_limits: Optional limits on model request count or token usage.
@@ -396,6 +405,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
396
405
  message_history=message_history,
397
406
  deferred_tool_results=deferred_tool_results,
398
407
  model=model,
408
+ instructions=instructions,
399
409
  deps=deps,
400
410
  model_settings=model_settings,
401
411
  usage_limits=usage_limits,
@@ -420,6 +430,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
420
430
  message_history: Sequence[_messages.ModelMessage] | None = None,
421
431
  deferred_tool_results: DeferredToolResults | None = None,
422
432
  model: models.Model | models.KnownModelName | str | None = None,
433
+ instructions: Instructions[AgentDepsT] = None,
423
434
  deps: AgentDepsT = None,
424
435
  model_settings: ModelSettings | None = None,
425
436
  usage_limits: _usage.UsageLimits | None = None,
@@ -439,6 +450,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
439
450
  message_history: Sequence[_messages.ModelMessage] | None = None,
440
451
  deferred_tool_results: DeferredToolResults | None = None,
441
452
  model: models.Model | models.KnownModelName | str | None = None,
453
+ instructions: Instructions[AgentDepsT] = None,
442
454
  deps: AgentDepsT = None,
443
455
  model_settings: ModelSettings | None = None,
444
456
  usage_limits: _usage.UsageLimits | None = None,
@@ -458,6 +470,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
458
470
  message_history: Sequence[_messages.ModelMessage] | None = None,
459
471
  deferred_tool_results: DeferredToolResults | None = None,
460
472
  model: models.Model | models.KnownModelName | str | None = None,
473
+ instructions: Instructions[AgentDepsT] = None,
461
474
  deps: AgentDepsT = None,
462
475
  model_settings: ModelSettings | None = None,
463
476
  usage_limits: _usage.UsageLimits | None = None,
@@ -489,6 +502,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
489
502
  message_history: History of the conversation so far.
490
503
  deferred_tool_results: Optional results for deferred tool calls in the message history.
491
504
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
505
+ instructions: Optional additional instructions to use for this run.
492
506
  deps: Optional dependencies to use for this run.
493
507
  model_settings: Optional settings to use for this model's request.
494
508
  usage_limits: Optional limits on model request count or token usage.
@@ -513,6 +527,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
513
527
  message_history=message_history,
514
528
  deferred_tool_results=deferred_tool_results,
515
529
  model=model,
530
+ instructions=instructions,
516
531
  deps=deps,
517
532
  model_settings=model_settings,
518
533
  usage_limits=usage_limits,
@@ -534,6 +549,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
534
549
  message_history: Sequence[_messages.ModelMessage] | None = None,
535
550
  deferred_tool_results: DeferredToolResults | None = None,
536
551
  model: models.Model | models.KnownModelName | str | None = None,
552
+ instructions: Instructions[AgentDepsT] = None,
537
553
  deps: AgentDepsT = None,
538
554
  model_settings: ModelSettings | None = None,
539
555
  usage_limits: _usage.UsageLimits | None = None,
@@ -552,6 +568,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
552
568
  message_history: Sequence[_messages.ModelMessage] | None = None,
553
569
  deferred_tool_results: DeferredToolResults | None = None,
554
570
  model: models.Model | models.KnownModelName | str | None = None,
571
+ instructions: Instructions[AgentDepsT] = None,
555
572
  deps: AgentDepsT = None,
556
573
  model_settings: ModelSettings | None = None,
557
574
  usage_limits: _usage.UsageLimits | None = None,
@@ -569,6 +586,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
569
586
  message_history: Sequence[_messages.ModelMessage] | None = None,
570
587
  deferred_tool_results: DeferredToolResults | None = None,
571
588
  model: models.Model | models.KnownModelName | str | None = None,
589
+ instructions: Instructions[AgentDepsT] = None,
572
590
  deps: AgentDepsT = None,
573
591
  model_settings: ModelSettings | None = None,
574
592
  usage_limits: _usage.UsageLimits | None = None,
@@ -618,6 +636,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
618
636
  message_history: History of the conversation so far.
619
637
  deferred_tool_results: Optional results for deferred tool calls in the message history.
620
638
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
639
+ instructions: Optional additional instructions to use for this run.
621
640
  deps: Optional dependencies to use for this run.
622
641
  model_settings: Optional settings to use for this model's request.
623
642
  usage_limits: Optional limits on model request count or token usage.
@@ -642,6 +661,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
642
661
  message_history=message_history,
643
662
  deferred_tool_results=deferred_tool_results,
644
663
  model=model,
664
+ instructions=instructions,
645
665
  deps=deps,
646
666
  model_settings=model_settings,
647
667
  usage_limits=usage_limits,
@@ -660,6 +680,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
660
680
  message_history: Sequence[_messages.ModelMessage] | None = None,
661
681
  deferred_tool_results: DeferredToolResults | None = None,
662
682
  model: models.Model | models.KnownModelName | str | None = None,
683
+ instructions: Instructions[AgentDepsT] = None,
663
684
  deps: AgentDepsT = None,
664
685
  model_settings: ModelSettings | None = None,
665
686
  usage_limits: _usage.UsageLimits | None = None,
@@ -678,6 +699,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
678
699
  message_history: Sequence[_messages.ModelMessage] | None = None,
679
700
  deferred_tool_results: DeferredToolResults | None = None,
680
701
  model: models.Model | models.KnownModelName | str | None = None,
702
+ instructions: Instructions[AgentDepsT] = None,
681
703
  deps: AgentDepsT = None,
682
704
  model_settings: ModelSettings | None = None,
683
705
  usage_limits: _usage.UsageLimits | None = None,
@@ -696,6 +718,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
696
718
  message_history: Sequence[_messages.ModelMessage] | None = None,
697
719
  deferred_tool_results: DeferredToolResults | None = None,
698
720
  model: models.Model | models.KnownModelName | str | None = None,
721
+ instructions: Instructions[AgentDepsT] = None,
699
722
  deps: AgentDepsT = None,
700
723
  model_settings: ModelSettings | None = None,
701
724
  usage_limits: _usage.UsageLimits | None = None,
@@ -770,6 +793,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
770
793
  deferred_tool_results: Optional results for deferred tool calls in the message history.
771
794
  model: Optional model to use for this run, required if `model` was not set when creating the agent.
772
795
  deps: Optional dependencies to use for this run.
796
+ instructions: Optional additional instructions to use for this run.
773
797
  model_settings: Optional settings to use for this model's request.
774
798
  usage_limits: Optional limits on model request count or token usage.
775
799
  usage: Optional usage to start with, useful for resuming a conversation or agents used in tools.
@@ -792,6 +816,7 @@ class PrefectAgent(WrapperAgent[AgentDepsT, OutputDataT]):
792
816
  message_history=message_history,
793
817
  deferred_tool_results=deferred_tool_results,
794
818
  model=model,
819
+ instructions=instructions,
795
820
  deps=deps,
796
821
  model_settings=model_settings,
797
822
  usage_limits=usage_limits,