anthropic 0.71.1__py3-none-any.whl → 0.72.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. anthropic/_models.py +37 -15
  2. anthropic/_streaming.py +4 -6
  3. anthropic/_utils/_sync.py +3 -31
  4. anthropic/_utils/_utils.py +1 -1
  5. anthropic/_version.py +1 -1
  6. anthropic/types/beta/__init__.py +8 -0
  7. anthropic/types/beta/beta_all_thinking_turns_param.py +11 -0
  8. anthropic/types/beta/beta_clear_thinking_20251015_edit_param.py +23 -0
  9. anthropic/types/beta/beta_clear_thinking_20251015_edit_response.py +18 -0
  10. anthropic/types/beta/beta_context_management_config_param.py +7 -4
  11. anthropic/types/beta/beta_context_management_response.py +11 -3
  12. anthropic/types/beta/beta_mcp_tool_use_block.py +2 -1
  13. anthropic/types/beta/beta_mcp_tool_use_block_param.py +2 -2
  14. anthropic/types/beta/beta_server_tool_use_block.py +2 -1
  15. anthropic/types/beta/beta_server_tool_use_block_param.py +2 -2
  16. anthropic/types/beta/beta_thinking_turns_param.py +13 -0
  17. anthropic/types/beta/beta_tool_param.py +1 -1
  18. anthropic/types/beta/beta_tool_use_block.py +2 -1
  19. anthropic/types/beta/beta_tool_use_block_param.py +2 -2
  20. anthropic/types/server_tool_use_block.py +2 -1
  21. anthropic/types/server_tool_use_block_param.py +2 -2
  22. anthropic/types/tool_param.py +1 -1
  23. anthropic/types/tool_use_block.py +2 -1
  24. anthropic/types/tool_use_block_param.py +2 -2
  25. {anthropic-0.71.1.dist-info → anthropic-0.72.1.dist-info}/METADATA +4 -5
  26. {anthropic-0.71.1.dist-info → anthropic-0.72.1.dist-info}/RECORD +28 -24
  27. {anthropic-0.71.1.dist-info → anthropic-0.72.1.dist-info}/WHEEL +0 -0
  28. {anthropic-0.71.1.dist-info → anthropic-0.72.1.dist-info}/licenses/LICENSE +0 -0
anthropic/_models.py CHANGED
@@ -2,6 +2,7 @@ from __future__ import annotations
2
2
 
3
3
  import os
4
4
  import inspect
5
+ import weakref
5
6
  from typing import TYPE_CHECKING, Any, Type, Union, Generic, TypeVar, Callable, Optional, cast
6
7
  from datetime import date, datetime
7
8
  from typing_extensions import (
@@ -272,15 +273,16 @@ class BaseModel(pydantic.BaseModel):
272
273
  mode: Literal["json", "python"] | str = "python",
273
274
  include: IncEx | None = None,
274
275
  exclude: IncEx | None = None,
276
+ context: Any | None = None,
275
277
  by_alias: bool | None = None,
276
278
  exclude_unset: bool = False,
277
279
  exclude_defaults: bool = False,
278
280
  exclude_none: bool = False,
281
+ exclude_computed_fields: bool = False,
279
282
  round_trip: bool = False,
280
283
  warnings: bool | Literal["none", "warn", "error"] = True,
281
- context: dict[str, Any] | None = None,
282
- serialize_as_any: bool = False,
283
284
  fallback: Callable[[Any], Any] | None = None,
285
+ serialize_as_any: bool = False,
284
286
  ) -> dict[str, Any]:
285
287
  """Usage docs: https://docs.pydantic.dev/2.4/concepts/serialization/#modelmodel_dump
286
288
 
@@ -288,16 +290,24 @@ class BaseModel(pydantic.BaseModel):
288
290
 
289
291
  Args:
290
292
  mode: The mode in which `to_python` should run.
291
- If mode is 'json', the dictionary will only contain JSON serializable types.
292
- If mode is 'python', the dictionary may contain any Python objects.
293
- include: A list of fields to include in the output.
294
- exclude: A list of fields to exclude from the output.
293
+ If mode is 'json', the output will only contain JSON serializable types.
294
+ If mode is 'python', the output may contain non-JSON-serializable Python objects.
295
+ include: A set of fields to include in the output.
296
+ exclude: A set of fields to exclude from the output.
297
+ context: Additional context to pass to the serializer.
295
298
  by_alias: Whether to use the field's alias in the dictionary key if defined.
296
- exclude_unset: Whether to exclude fields that are unset or None from the output.
297
- exclude_defaults: Whether to exclude fields that are set to their default value from the output.
298
- exclude_none: Whether to exclude fields that have a value of `None` from the output.
299
- round_trip: Whether to enable serialization and deserialization round-trip support.
300
- warnings: Whether to log warnings when invalid fields are encountered.
299
+ exclude_unset: Whether to exclude fields that have not been explicitly set.
300
+ exclude_defaults: Whether to exclude fields that are set to their default value.
301
+ exclude_none: Whether to exclude fields that have a value of `None`.
302
+ exclude_computed_fields: Whether to exclude computed fields.
303
+ While this can be useful for round-tripping, it is usually recommended to use the dedicated
304
+ `round_trip` parameter instead.
305
+ round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
306
+ warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
307
+ "error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
308
+ fallback: A function to call when an unknown value is encountered. If not provided,
309
+ a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
310
+ serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
301
311
 
302
312
  Returns:
303
313
  A dictionary representation of the model.
@@ -314,6 +324,8 @@ class BaseModel(pydantic.BaseModel):
314
324
  raise ValueError("serialize_as_any is only supported in Pydantic v2")
315
325
  if fallback is not None:
316
326
  raise ValueError("fallback is only supported in Pydantic v2")
327
+ if exclude_computed_fields != False:
328
+ raise ValueError("exclude_computed_fields is only supported in Pydantic v2")
317
329
  dumped = super().dict( # pyright: ignore[reportDeprecated]
318
330
  include=include,
319
331
  exclude=exclude,
@@ -330,15 +342,17 @@ class BaseModel(pydantic.BaseModel):
330
342
  self,
331
343
  *,
332
344
  indent: int | None = None,
345
+ ensure_ascii: bool = False,
333
346
  include: IncEx | None = None,
334
347
  exclude: IncEx | None = None,
348
+ context: Any | None = None,
335
349
  by_alias: bool | None = None,
336
350
  exclude_unset: bool = False,
337
351
  exclude_defaults: bool = False,
338
352
  exclude_none: bool = False,
353
+ exclude_computed_fields: bool = False,
339
354
  round_trip: bool = False,
340
355
  warnings: bool | Literal["none", "warn", "error"] = True,
341
- context: dict[str, Any] | None = None,
342
356
  fallback: Callable[[Any], Any] | None = None,
343
357
  serialize_as_any: bool = False,
344
358
  ) -> str:
@@ -370,6 +384,10 @@ class BaseModel(pydantic.BaseModel):
370
384
  raise ValueError("serialize_as_any is only supported in Pydantic v2")
371
385
  if fallback is not None:
372
386
  raise ValueError("fallback is only supported in Pydantic v2")
387
+ if ensure_ascii != False:
388
+ raise ValueError("ensure_ascii is only supported in Pydantic v2")
389
+ if exclude_computed_fields != False:
390
+ raise ValueError("exclude_computed_fields is only supported in Pydantic v2")
373
391
  return super().json( # type: ignore[reportDeprecated]
374
392
  indent=indent,
375
393
  include=include,
@@ -589,6 +607,9 @@ class CachedDiscriminatorType(Protocol):
589
607
  __discriminator__: DiscriminatorDetails
590
608
 
591
609
 
610
+ DISCRIMINATOR_CACHE: weakref.WeakKeyDictionary[type, DiscriminatorDetails] = weakref.WeakKeyDictionary()
611
+
612
+
592
613
  class DiscriminatorDetails:
593
614
  field_name: str
594
615
  """The name of the discriminator field in the variant class, e.g.
@@ -631,8 +652,9 @@ class DiscriminatorDetails:
631
652
 
632
653
 
633
654
  def _build_discriminated_union_meta(*, union: type, meta_annotations: tuple[Any, ...]) -> DiscriminatorDetails | None:
634
- if isinstance(union, CachedDiscriminatorType):
635
- return union.__discriminator__
655
+ cached = DISCRIMINATOR_CACHE.get(union)
656
+ if cached is not None:
657
+ return cached
636
658
 
637
659
  discriminator_field_name: str | None = None
638
660
 
@@ -685,7 +707,7 @@ def _build_discriminated_union_meta(*, union: type, meta_annotations: tuple[Any,
685
707
  discriminator_field=discriminator_field_name,
686
708
  discriminator_alias=discriminator_alias,
687
709
  )
688
- cast(CachedDiscriminatorType, union).__discriminator__ = details
710
+ DISCRIMINATOR_CACHE.setdefault(union, details)
689
711
  return details
690
712
 
691
713
 
anthropic/_streaming.py CHANGED
@@ -113,9 +113,8 @@ class Stream(Generic[_T], metaclass=_SyncStreamMeta):
113
113
  response=self.response,
114
114
  )
115
115
 
116
- # Ensure the entire stream is consumed
117
- for _sse in iterator:
118
- ...
116
+ # As we might not fully consume the response stream, we need to close it explicitly
117
+ response.close()
119
118
 
120
119
  def __enter__(self) -> Self:
121
120
  return self
@@ -231,9 +230,8 @@ class AsyncStream(Generic[_T], metaclass=_AsyncStreamMeta):
231
230
  response=self.response,
232
231
  )
233
232
 
234
- # Ensure the entire stream is consumed
235
- async for _sse in iterator:
236
- ...
233
+ # As we might not fully consume the response stream, we need to close it explicitly
234
+ await response.aclose()
237
235
 
238
236
  async def __aenter__(self) -> Self:
239
237
  return self
anthropic/_utils/_sync.py CHANGED
@@ -1,10 +1,8 @@
1
1
  from __future__ import annotations
2
2
 
3
- import sys
4
3
  import asyncio
5
4
  import functools
6
- import contextvars
7
- from typing import Any, TypeVar, Callable, Awaitable
5
+ from typing import TypeVar, Callable, Awaitable
8
6
  from typing_extensions import ParamSpec
9
7
 
10
8
  import anyio
@@ -15,34 +13,11 @@ T_Retval = TypeVar("T_Retval")
15
13
  T_ParamSpec = ParamSpec("T_ParamSpec")
16
14
 
17
15
 
18
- if sys.version_info >= (3, 9):
19
- _asyncio_to_thread = asyncio.to_thread
20
- else:
21
- # backport of https://docs.python.org/3/library/asyncio-task.html#asyncio.to_thread
22
- # for Python 3.8 support
23
- async def _asyncio_to_thread(
24
- func: Callable[T_ParamSpec, T_Retval], /, *args: T_ParamSpec.args, **kwargs: T_ParamSpec.kwargs
25
- ) -> Any:
26
- """Asynchronously run function *func* in a separate thread.
27
-
28
- Any *args and **kwargs supplied for this function are directly passed
29
- to *func*. Also, the current :class:`contextvars.Context` is propagated,
30
- allowing context variables from the main thread to be accessed in the
31
- separate thread.
32
-
33
- Returns a coroutine that can be awaited to get the eventual result of *func*.
34
- """
35
- loop = asyncio.events.get_running_loop()
36
- ctx = contextvars.copy_context()
37
- func_call = functools.partial(ctx.run, func, *args, **kwargs)
38
- return await loop.run_in_executor(None, func_call)
39
-
40
-
41
16
  async def to_thread(
42
17
  func: Callable[T_ParamSpec, T_Retval], /, *args: T_ParamSpec.args, **kwargs: T_ParamSpec.kwargs
43
18
  ) -> T_Retval:
44
19
  if sniffio.current_async_library() == "asyncio":
45
- return await _asyncio_to_thread(func, *args, **kwargs)
20
+ return await asyncio.to_thread(func, *args, **kwargs)
46
21
 
47
22
  return await anyio.to_thread.run_sync(
48
23
  functools.partial(func, *args, **kwargs),
@@ -53,10 +28,7 @@ async def to_thread(
53
28
  def asyncify(function: Callable[T_ParamSpec, T_Retval]) -> Callable[T_ParamSpec, Awaitable[T_Retval]]:
54
29
  """
55
30
  Take a blocking function and create an async one that receives the same
56
- positional and keyword arguments. For python version 3.9 and above, it uses
57
- asyncio.to_thread to run the function in a separate thread. For python version
58
- 3.8, it uses locally defined copy of the asyncio.to_thread function which was
59
- introduced in python 3.9.
31
+ positional and keyword arguments.
60
32
 
61
33
  Usage:
62
34
 
@@ -133,7 +133,7 @@ def is_given(obj: _T | NotGiven | Omit) -> TypeGuard[_T]:
133
133
  # Type safe methods for narrowing types with TypeVars.
134
134
  # The default narrowing for isinstance(obj, dict) is dict[unknown, unknown],
135
135
  # however this cause Pyright to rightfully report errors. As we know we don't
136
- # care about the contained types we can safely use `object` in it's place.
136
+ # care about the contained types we can safely use `object` in its place.
137
137
  #
138
138
  # There are two separate functions defined, `is_*` and `is_*_t` for different use cases.
139
139
  # `is_*` is for when you're dealing with an unknown input
anthropic/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  __title__ = "anthropic"
4
- __version__ = "0.71.1" # x-release-please-version
4
+ __version__ = "0.72.1" # x-release-please-version
@@ -52,6 +52,7 @@ from .beta_message_delta_usage import BetaMessageDeltaUsage as BetaMessageDeltaU
52
52
  from .beta_text_citation_param import BetaTextCitationParam as BetaTextCitationParam
53
53
  from .beta_message_tokens_count import BetaMessageTokensCount as BetaMessageTokensCount
54
54
  from .beta_thinking_block_param import BetaThinkingBlockParam as BetaThinkingBlockParam
55
+ from .beta_thinking_turns_param import BetaThinkingTurnsParam as BetaThinkingTurnsParam
55
56
  from .beta_tool_use_block_param import BetaToolUseBlockParam as BetaToolUseBlockParam
56
57
  from .beta_tool_uses_keep_param import BetaToolUsesKeepParam as BetaToolUsesKeepParam
57
58
  from .beta_url_pdf_source_param import BetaURLPDFSourceParam as BetaURLPDFSourceParam
@@ -81,6 +82,7 @@ from .beta_redacted_thinking_block import BetaRedactedThinkingBlock as BetaRedac
81
82
  from .beta_tool_result_block_param import BetaToolResultBlockParam as BetaToolResultBlockParam
82
83
  from .beta_tool_uses_trigger_param import BetaToolUsesTriggerParam as BetaToolUsesTriggerParam
83
84
  from .beta_web_search_result_block import BetaWebSearchResultBlock as BetaWebSearchResultBlock
85
+ from .beta_all_thinking_turns_param import BetaAllThinkingTurnsParam as BetaAllThinkingTurnsParam
84
86
  from .beta_mcp_tool_use_block_param import BetaMCPToolUseBlockParam as BetaMCPToolUseBlockParam
85
87
  from .beta_raw_message_stream_event import BetaRawMessageStreamEvent as BetaRawMessageStreamEvent
86
88
  from .beta_tool_bash_20241022_param import BetaToolBash20241022Param as BetaToolBash20241022Param
@@ -140,6 +142,9 @@ from .beta_memory_tool_20250818_view_command import (
140
142
  from .beta_web_fetch_tool_result_block_param import BetaWebFetchToolResultBlockParam as BetaWebFetchToolResultBlockParam
141
143
  from .beta_web_fetch_tool_result_error_block import BetaWebFetchToolResultErrorBlock as BetaWebFetchToolResultErrorBlock
142
144
  from .beta_web_search_tool_result_error_code import BetaWebSearchToolResultErrorCode as BetaWebSearchToolResultErrorCode
145
+ from .beta_clear_thinking_20251015_edit_param import (
146
+ BetaClearThinking20251015EditParam as BetaClearThinking20251015EditParam,
147
+ )
143
148
  from .beta_code_execution_tool_20250522_param import (
144
149
  BetaCodeExecutionTool20250522Param as BetaCodeExecutionTool20250522Param,
145
150
  )
@@ -191,6 +196,9 @@ from .beta_citation_content_block_location_param import (
191
196
  from .beta_citation_search_result_location_param import (
192
197
  BetaCitationSearchResultLocationParam as BetaCitationSearchResultLocationParam,
193
198
  )
199
+ from .beta_clear_thinking_20251015_edit_response import (
200
+ BetaClearThinking20251015EditResponse as BetaClearThinking20251015EditResponse,
201
+ )
194
202
  from .beta_code_execution_tool_result_error_code import (
195
203
  BetaCodeExecutionToolResultErrorCode as BetaCodeExecutionToolResultErrorCode,
196
204
  )
@@ -0,0 +1,11 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, Required, TypedDict
6
+
7
+ __all__ = ["BetaAllThinkingTurnsParam"]
8
+
9
+
10
+ class BetaAllThinkingTurnsParam(TypedDict, total=False):
11
+ type: Required[Literal["all"]]
@@ -0,0 +1,23 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union
6
+ from typing_extensions import Literal, Required, TypeAlias, TypedDict
7
+
8
+ from .beta_thinking_turns_param import BetaThinkingTurnsParam
9
+ from .beta_all_thinking_turns_param import BetaAllThinkingTurnsParam
10
+
11
+ __all__ = ["BetaClearThinking20251015EditParam", "Keep"]
12
+
13
+ Keep: TypeAlias = Union[BetaThinkingTurnsParam, BetaAllThinkingTurnsParam, Literal["all"]]
14
+
15
+
16
+ class BetaClearThinking20251015EditParam(TypedDict, total=False):
17
+ type: Required[Literal["clear_thinking_20251015"]]
18
+
19
+ keep: Keep
20
+ """Number of most recent assistant turns to keep thinking blocks for.
21
+
22
+ Older turns will have their thinking blocks removed.
23
+ """
@@ -0,0 +1,18 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["BetaClearThinking20251015EditResponse"]
8
+
9
+
10
+ class BetaClearThinking20251015EditResponse(BaseModel):
11
+ cleared_input_tokens: int
12
+ """Number of input tokens cleared by this edit."""
13
+
14
+ cleared_thinking_turns: int
15
+ """Number of thinking turns that were cleared."""
16
+
17
+ type: Literal["clear_thinking_20251015"]
18
+ """The type of context management edit applied."""
@@ -2,14 +2,17 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Iterable
6
- from typing_extensions import TypedDict
5
+ from typing import Union, Iterable
6
+ from typing_extensions import TypeAlias, TypedDict
7
7
 
8
+ from .beta_clear_thinking_20251015_edit_param import BetaClearThinking20251015EditParam
8
9
  from .beta_clear_tool_uses_20250919_edit_param import BetaClearToolUses20250919EditParam
9
10
 
10
- __all__ = ["BetaContextManagementConfigParam"]
11
+ __all__ = ["BetaContextManagementConfigParam", "Edit"]
12
+
13
+ Edit: TypeAlias = Union[BetaClearToolUses20250919EditParam, BetaClearThinking20251015EditParam]
11
14
 
12
15
 
13
16
  class BetaContextManagementConfigParam(TypedDict, total=False):
14
- edits: Iterable[BetaClearToolUses20250919EditParam]
17
+ edits: Iterable[Edit]
15
18
  """List of context management edits to apply"""
@@ -1,13 +1,21 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- from typing import List
3
+ from typing import List, Union
4
+ from typing_extensions import Annotated, TypeAlias
4
5
 
6
+ from ..._utils import PropertyInfo
5
7
  from ..._models import BaseModel
8
+ from .beta_clear_thinking_20251015_edit_response import BetaClearThinking20251015EditResponse
6
9
  from .beta_clear_tool_uses_20250919_edit_response import BetaClearToolUses20250919EditResponse
7
10
 
8
- __all__ = ["BetaContextManagementResponse"]
11
+ __all__ = ["BetaContextManagementResponse", "AppliedEdit"]
12
+
13
+ AppliedEdit: TypeAlias = Annotated[
14
+ Union[BetaClearToolUses20250919EditResponse, BetaClearThinking20251015EditResponse],
15
+ PropertyInfo(discriminator="type"),
16
+ ]
9
17
 
10
18
 
11
19
  class BetaContextManagementResponse(BaseModel):
12
- applied_edits: List[BetaClearToolUses20250919EditResponse]
20
+ applied_edits: List[AppliedEdit]
13
21
  """List of context management edits that were applied."""
@@ -1,5 +1,6 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from typing import Dict
3
4
  from typing_extensions import Literal
4
5
 
5
6
  from ..._models import BaseModel
@@ -10,7 +11,7 @@ __all__ = ["BetaMCPToolUseBlock"]
10
11
  class BetaMCPToolUseBlock(BaseModel):
11
12
  id: str
12
13
 
13
- input: object
14
+ input: Dict[str, object]
14
15
 
15
16
  name: str
16
17
  """The name of the MCP tool"""
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Optional
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Literal, Required, TypedDict
7
7
 
8
8
  from .beta_cache_control_ephemeral_param import BetaCacheControlEphemeralParam
@@ -13,7 +13,7 @@ __all__ = ["BetaMCPToolUseBlockParam"]
13
13
  class BetaMCPToolUseBlockParam(TypedDict, total=False):
14
14
  id: Required[str]
15
15
 
16
- input: Required[object]
16
+ input: Required[Dict[str, object]]
17
17
 
18
18
  name: Required[str]
19
19
 
@@ -1,5 +1,6 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from typing import Dict
3
4
  from typing_extensions import Literal
4
5
 
5
6
  from ..._models import BaseModel
@@ -10,7 +11,7 @@ __all__ = ["BetaServerToolUseBlock"]
10
11
  class BetaServerToolUseBlock(BaseModel):
11
12
  id: str
12
13
 
13
- input: object
14
+ input: Dict[str, object]
14
15
 
15
16
  name: Literal["web_search", "web_fetch", "code_execution", "bash_code_execution", "text_editor_code_execution"]
16
17
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Optional
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Literal, Required, TypedDict
7
7
 
8
8
  from .beta_cache_control_ephemeral_param import BetaCacheControlEphemeralParam
@@ -13,7 +13,7 @@ __all__ = ["BetaServerToolUseBlockParam"]
13
13
  class BetaServerToolUseBlockParam(TypedDict, total=False):
14
14
  id: Required[str]
15
15
 
16
- input: Required[object]
16
+ input: Required[Dict[str, object]]
17
17
 
18
18
  name: Required[
19
19
  Literal["web_search", "web_fetch", "code_execution", "bash_code_execution", "text_editor_code_execution"]
@@ -0,0 +1,13 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Literal, Required, TypedDict
6
+
7
+ __all__ = ["BetaThinkingTurnsParam"]
8
+
9
+
10
+ class BetaThinkingTurnsParam(TypedDict, total=False):
11
+ type: Required[Literal["thinking_turns"]]
12
+
13
+ value: Required[int]
@@ -14,7 +14,7 @@ __all__ = ["BetaToolParam", "InputSchema"]
14
14
  class InputSchemaTyped(TypedDict, total=False):
15
15
  type: Required[Literal["object"]]
16
16
 
17
- properties: Optional[object]
17
+ properties: Optional[Dict[str, object]]
18
18
 
19
19
  required: Optional[SequenceNotStr[str]]
20
20
 
@@ -1,5 +1,6 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from typing import Dict
3
4
  from typing_extensions import Literal
4
5
 
5
6
  from ..._models import BaseModel
@@ -10,7 +11,7 @@ __all__ = ["BetaToolUseBlock"]
10
11
  class BetaToolUseBlock(BaseModel):
11
12
  id: str
12
13
 
13
- input: object
14
+ input: Dict[str, object]
14
15
 
15
16
  name: str
16
17
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Optional
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Literal, Required, TypedDict
7
7
 
8
8
  from .beta_cache_control_ephemeral_param import BetaCacheControlEphemeralParam
@@ -13,7 +13,7 @@ __all__ = ["BetaToolUseBlockParam"]
13
13
  class BetaToolUseBlockParam(TypedDict, total=False):
14
14
  id: Required[str]
15
15
 
16
- input: Required[object]
16
+ input: Required[Dict[str, object]]
17
17
 
18
18
  name: Required[str]
19
19
 
@@ -1,5 +1,6 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from typing import Dict
3
4
  from typing_extensions import Literal
4
5
 
5
6
  from .._models import BaseModel
@@ -10,7 +11,7 @@ __all__ = ["ServerToolUseBlock"]
10
11
  class ServerToolUseBlock(BaseModel):
11
12
  id: str
12
13
 
13
- input: object
14
+ input: Dict[str, object]
14
15
 
15
16
  name: Literal["web_search"]
16
17
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Optional
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Literal, Required, TypedDict
7
7
 
8
8
  from .cache_control_ephemeral_param import CacheControlEphemeralParam
@@ -13,7 +13,7 @@ __all__ = ["ServerToolUseBlockParam"]
13
13
  class ServerToolUseBlockParam(TypedDict, total=False):
14
14
  id: Required[str]
15
15
 
16
- input: Required[object]
16
+ input: Required[Dict[str, object]]
17
17
 
18
18
  name: Required[Literal["web_search"]]
19
19
 
@@ -15,7 +15,7 @@ __all__ = ["ToolParam", "InputSchema"]
15
15
  class InputSchemaTyped(TypedDict, total=False):
16
16
  type: Required[Literal["object"]]
17
17
 
18
- properties: Optional[object]
18
+ properties: Optional[Dict[str, object]]
19
19
 
20
20
  required: Optional[SequenceNotStr[str]]
21
21
 
@@ -1,5 +1,6 @@
1
1
  # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ from typing import Dict
3
4
  from typing_extensions import Literal
4
5
 
5
6
  from .._models import BaseModel
@@ -10,7 +11,7 @@ __all__ = ["ToolUseBlock"]
10
11
  class ToolUseBlock(BaseModel):
11
12
  id: str
12
13
 
13
- input: object
14
+ input: Dict[str, object]
14
15
 
15
16
  name: str
16
17
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  from __future__ import annotations
4
4
 
5
- from typing import Optional
5
+ from typing import Dict, Optional
6
6
  from typing_extensions import Literal, Required, TypedDict
7
7
 
8
8
  from .cache_control_ephemeral_param import CacheControlEphemeralParam
@@ -13,7 +13,7 @@ __all__ = ["ToolUseBlockParam"]
13
13
  class ToolUseBlockParam(TypedDict, total=False):
14
14
  id: Required[str]
15
15
 
16
- input: Required[object]
16
+ input: Required[Dict[str, object]]
17
17
 
18
18
  name: Required[str]
19
19
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: anthropic
3
- Version: 0.71.1
3
+ Version: 0.72.1
4
4
  Summary: The official Python library for the anthropic API
5
5
  Project-URL: Homepage, https://github.com/anthropics/anthropic-sdk-python
6
6
  Project-URL: Repository, https://github.com/anthropics/anthropic-sdk-python
@@ -13,7 +13,6 @@ Classifier: Operating System :: Microsoft :: Windows
13
13
  Classifier: Operating System :: OS Independent
14
14
  Classifier: Operating System :: POSIX
15
15
  Classifier: Operating System :: POSIX :: Linux
16
- Classifier: Programming Language :: Python :: 3.8
17
16
  Classifier: Programming Language :: Python :: 3.9
18
17
  Classifier: Programming Language :: Python :: 3.10
19
18
  Classifier: Programming Language :: Python :: 3.11
@@ -21,7 +20,7 @@ Classifier: Programming Language :: Python :: 3.12
21
20
  Classifier: Programming Language :: Python :: 3.13
22
21
  Classifier: Topic :: Software Development :: Libraries :: Python Modules
23
22
  Classifier: Typing :: Typed
24
- Requires-Python: >=3.8
23
+ Requires-Python: >=3.9
25
24
  Requires-Dist: anyio<5,>=3.5.0
26
25
  Requires-Dist: distro<2,>=1.7.0
27
26
  Requires-Dist: docstring-parser<1,>=0.15
@@ -45,7 +44,7 @@ Description-Content-Type: text/markdown
45
44
  <!-- prettier-ignore -->
46
45
  [![PyPI version](https://img.shields.io/pypi/v/anthropic.svg?label=pypi%20(stable))](https://pypi.org/project/anthropic/)
47
46
 
48
- The Anthropic Python library provides convenient access to the Anthropic REST API from any Python 3.8+
47
+ The Anthropic Python library provides convenient access to the Anthropic REST API from any Python 3.9+
49
48
  application. It includes type definitions for all request params and response fields,
50
49
  and offers both synchronous and asynchronous clients powered by [httpx](https://github.com/encode/httpx).
51
50
 
@@ -909,7 +908,7 @@ print(anthropic.__version__)
909
908
 
910
909
  ## Requirements
911
910
 
912
- Python 3.8 or higher.
911
+ Python 3.9 or higher.
913
912
 
914
913
  ## Contributing
915
914
 
@@ -6,13 +6,13 @@ anthropic/_constants.py,sha256=wADeUqY3lsseF0L6jIen-PexfQ06FOtf2dVESXDM828,885
6
6
  anthropic/_exceptions.py,sha256=bkSqVWxtRdRb31H7MIvtxfh5mo_Xf7Ib3nPTOmAOmGs,4073
7
7
  anthropic/_files.py,sha256=_Ux6v6nAsxK4e_4efdt1DiIOZ0hGmlR2ZKKcVfJIfGU,3623
8
8
  anthropic/_legacy_response.py,sha256=QsroQ_9LHI8tSoPEvbIXXB44SvLJXaXQX7khjZpnqfE,17235
9
- anthropic/_models.py,sha256=wUXeougIoFGSKQr_XIcmamSHeupO6R7ZaQnFZC-hEl8,31957
9
+ anthropic/_models.py,sha256=IyrtLs1oMFJfVFZP2l5If10nLPldtx7GIa7BFTT-mPQ,33342
10
10
  anthropic/_qs.py,sha256=craIKyvPktJ94cvf9zn8j8ekG9dWJzhWv0ob34lIOv4,4828
11
11
  anthropic/_resource.py,sha256=FYEOzfhB-XWTR2gyTmQuuFoecRiVXxe_SpjZlQQGytU,1080
12
12
  anthropic/_response.py,sha256=1Y7-OrGn1lOwvZ_SmMlwT9Nb2i9A1RYw2Q4-F1cwPSU,30542
13
- anthropic/_streaming.py,sha256=vn8K5KgfO3Bv9NE8nwHIQEjEhkQeVE6YMnGqiJlCgqE,14023
13
+ anthropic/_streaming.py,sha256=AVgSkkvKHZsFD4xQbkOi9Oi0vkHoEZbkccyUw5yIxmA,14072
14
14
  anthropic/_types.py,sha256=vEab5B5Hp7xQQafVrgSCHeEPUmf74jofqIPo-n7Xljk,7338
15
- anthropic/_version.py,sha256=bOtoMxc6DENRbWC9R66igNBXu3_Vvar9dVprQLq9Uno,162
15
+ anthropic/_version.py,sha256=z8I3OHqtTfd1EnrVYdD1E1IUxYez5VVMOM8BxtooIxQ,162
16
16
  anthropic/pagination.py,sha256=MgGFbx3GDm4XASijWas0-2eVb1iGR-DgqyPrDf5Jll8,5152
17
17
  anthropic/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
18
18
  anthropic/_decoders/jsonl.py,sha256=KDLw-Frjo7gRup5qDp_BWkXIZ-mFZU5vFDz0WBhEKcs,3510
@@ -25,10 +25,10 @@ anthropic/_utils/_proxy.py,sha256=aglnj2yBTDyGX9Akk2crZHrl10oqRmceUy2Zp008XEs,19
25
25
  anthropic/_utils/_reflection.py,sha256=ZmGkIgT_PuwedyNBrrKGbxoWtkpytJNU1uU4QHnmEMU,1364
26
26
  anthropic/_utils/_resources_proxy.py,sha256=Y6WaTfDzBlt-GXVlTQLlIjpkSZZ8fRlMzXuRBh64CrA,604
27
27
  anthropic/_utils/_streams.py,sha256=SMC90diFFecpEg_zgDRVbdR3hSEIgVVij4taD-noMLM,289
28
- anthropic/_utils/_sync.py,sha256=TpGLrrhRNWTJtODNE6Fup3_k7zrWm1j2RlirzBwre-0,2862
28
+ anthropic/_utils/_sync.py,sha256=HBnZkkBnzxtwOZe0212C4EyoRvxhTVtTrLFDz2_xVCg,1589
29
29
  anthropic/_utils/_transform.py,sha256=NjCzmnfqYrsAikUHQig6N9QfuTVbKipuP3ur9mcNF-E,15951
30
30
  anthropic/_utils/_typing.py,sha256=N_5PPuFNsaygbtA_npZd98SVN1LQQvFTKL6bkWPBZGU,4786
31
- anthropic/_utils/_utils.py,sha256=0dDqauUbVZEXV0NVl7Bwu904Wwo5eyFCZpQThhFNhyA,12253
31
+ anthropic/_utils/_utils.py,sha256=ugfUaneOK7I8h9b3656flwf5u_kthY0gvNuqvgOLoSU,12252
32
32
  anthropic/lib/.keep,sha256=wuNrz-5SXo3jJaJOJgz4vFHM41YH_g20F5cRQo0vLes,224
33
33
  anthropic/lib/__init__.py,sha256=ed3VXosCln6iXSojwutNZjzjoIVpDLIHfMiiMiSHjlU,99
34
34
  anthropic/lib/_files.py,sha256=7gggVMi-rWE-42gElwl7nncy3Gf_V62Ga6cIln_yG_M,1209
@@ -142,8 +142,8 @@ anthropic/types/redacted_thinking_block.py,sha256=rRoc3AUPGUaYywZ29cLkZ7oGvaAj69
142
142
  anthropic/types/redacted_thinking_block_param.py,sha256=x00GNJXOnAYLPqWMrkRDcHveOJEvrU4iAaTP1rmNqBU,358
143
143
  anthropic/types/search_result_block_param.py,sha256=89JZzDqAAZcQZFu6Yy1jNqXK0Px64RGg8wyg6mN0Pfs,795
144
144
  anthropic/types/server_tool_usage.py,sha256=nccmvOnXVirtx_ORf4xJTBDDTNPCk_0F3ObEcpAS0no,265
145
- anthropic/types/server_tool_use_block.py,sha256=oim9TZxqdRaR3GzQQpc9y8wPlIFMGVhOTIAT2Vn9u6g,333
146
- anthropic/types/server_tool_use_block_param.py,sha256=u6umSKDkkE5p2iFM3AaWs-mlfzTh7WxYU2rpT8vLJkE,643
145
+ anthropic/types/server_tool_use_block.py,sha256=dy7OajUm1eM97iAN0xt77VtbNHHNbfH3Ox-vTSlYjwQ,368
146
+ anthropic/types/server_tool_use_block_param.py,sha256=uCKHTFeg5lf7KAYlXiYoQsYVQ23_vub053nd0Jxk4NM,660
147
147
  anthropic/types/signature_delta.py,sha256=1e7MwUUU2j5oOie79x-5QU4-Fi1WXccDqgIMnvxfXTQ,280
148
148
  anthropic/types/stop_reason.py,sha256=LZTfwN184HpIH4xNBwgNZ44EskkBDIvUWScEgaJWSd0,275
149
149
  anthropic/types/text_block.py,sha256=otDts8sbTaDw9kIsvyqMHAxE-hxJv4F4HK4q7QkCmDo,662
@@ -163,14 +163,14 @@ anthropic/types/tool_choice_auto_param.py,sha256=F6ZzaVnXZgCa9AxEddyHu_xsO5sK4n-
163
163
  anthropic/types/tool_choice_none_param.py,sha256=druYe_74R1D92_ZPvJfbapBXjXMPXwQToAm-Wwukac0,306
164
164
  anthropic/types/tool_choice_param.py,sha256=nA7VNo9XKPNTpof8yr7GcgAPKOjWyR3glRpBVZZR2gc,561
165
165
  anthropic/types/tool_choice_tool_param.py,sha256=61mEbvhxU4oGKxTlcFt1RBUzHPIIuWgQynrn49_HKZY,552
166
- anthropic/types/tool_param.py,sha256=9VaIuk1lshZRtNwuACIRRYGSH_4E-yi7PEozOqEx3Vs,1654
166
+ anthropic/types/tool_param.py,sha256=Vfyh23gcySfEuBk-W9pVsLonxyHwg0myBouyaNqvVdw,1665
167
167
  anthropic/types/tool_result_block_param.py,sha256=0rbEAOygNLSnt03pfVdZfcTEVWK_CbBdk2mdUTN0gkg,985
168
168
  anthropic/types/tool_text_editor_20250124_param.py,sha256=uZU1b3qkuAMf_WnyPd_SyEO7iQXY75-XEYBP1JkGu4U,725
169
169
  anthropic/types/tool_text_editor_20250429_param.py,sha256=2laqI5jBBNignFGJhwyOWoRFjFiMAMTApJLJhcW11Lk,734
170
170
  anthropic/types/tool_text_editor_20250728_param.py,sha256=ep1KG6uIZFZ94XhRD0sV3zdtXNcA9WJ9MBtm26Y88U0,906
171
171
  anthropic/types/tool_union_param.py,sha256=sc_0_oZXDX1irFKjzodgFw6NoWyZK_2QwMoHb7VmG1o,814
172
- anthropic/types/tool_use_block.py,sha256=qIzJL6pN2zho5RjCYiHnUaPFbQKpRWVIbxIlzAzFh5g,296
173
- anthropic/types/tool_use_block_param.py,sha256=NmmecN-YJ4aBEl4YFEmO4aNyPE3M0SOoQL6NA0djxFE,606
172
+ anthropic/types/tool_use_block.py,sha256=J7sfsR1qlXgoglwcYaXktgaeEfS8oBYUwe1bqG7w9C4,331
173
+ anthropic/types/tool_use_block_param.py,sha256=m5biFrQ21gEEwBu9UgoVXVCK_TwHdJMvvQ_Gl_MC45o,623
174
174
  anthropic/types/url_image_source_param.py,sha256=jhgWbgwFgChO8v_XZzuMpuv2u3E0R8zISam8WbVwXyw,329
175
175
  anthropic/types/url_pdf_source_param.py,sha256=knFb8DFOWlrFFYwXnZbQx8tqejjWbPQjn3euIWPBMKk,325
176
176
  anthropic/types/usage.py,sha256=FPIepQO8jXFHX3RM2HuN-hWLz6y3UOyC4lnJRQxOSZY,1053
@@ -183,7 +183,8 @@ anthropic/types/web_search_tool_result_block_content.py,sha256=Ev_QL9KMO7emKGcTd
183
183
  anthropic/types/web_search_tool_result_block_param.py,sha256=BBYP395H7a_6I2874EDwxTcx6imeKPgrFL0d3aa2z_8,769
184
184
  anthropic/types/web_search_tool_result_block_param_content_param.py,sha256=YIBYcDI1GSlrI-4QBugJ_2YLpkofR7Da3vOwVDU44lo,542
185
185
  anthropic/types/web_search_tool_result_error.py,sha256=3WZaS3vYkAepbsa8yEmVNkUOYcpOHonaKfHBm1nFpr8,415
186
- anthropic/types/beta/__init__.py,sha256=VcD8PXQuw8ONUi-V73LqYPqB4fz7DaVxRfdCp1Crkuo,19020
186
+ anthropic/types/beta/__init__.py,sha256=9Z2azErHoLFgQ2qP3gj8_gjuD3V_lSZccNoQOP9QP28,19485
187
+ anthropic/types/beta/beta_all_thinking_turns_param.py,sha256=tC2sF_TI22gg4pa6BN4EYHEdudq0M5DIiAQczqiWyAo,317
187
188
  anthropic/types/beta/beta_base64_image_source_param.py,sha256=njrnNCJcJyLt9JJQcidX3wuG9kpY_F5xWjb3DRO3tJQ,740
188
189
  anthropic/types/beta/beta_base64_pdf_block_param.py,sha256=aYzXqHuaoyXgNNIRnVo0YdyVT3l0rdpT9UoN4CmAYlI,257
189
190
  anthropic/types/beta/beta_base64_pdf_source.py,sha256=RbkrF6vfc4tMgntlk3U7jmrdpa876HxO8iDa28szsKA,321
@@ -211,6 +212,8 @@ anthropic/types/beta/beta_citation_web_search_result_location_param.py,sha256=4R
211
212
  anthropic/types/beta/beta_citations_config_param.py,sha256=3mv2HzC7BII1OYox10dhjtgxiRmucT5eNYRLxLoYm7E,279
212
213
  anthropic/types/beta/beta_citations_delta.py,sha256=Fjk3Sv5fVuZ90q4tPANkELaiWjLrTxhu2xb8ipitiH4,1069
213
214
  anthropic/types/beta/beta_citations_web_search_result_location.py,sha256=m03Z39Tc2_6Kcx-qg0_odmWgMZbdNcUsMGFOPrYrOIQ,438
215
+ anthropic/types/beta/beta_clear_thinking_20251015_edit_param.py,sha256=hQwdR1Zli632QTSIReaZMie9kFadB1lSIHfz8eXhGh0,779
216
+ anthropic/types/beta/beta_clear_thinking_20251015_edit_response.py,sha256=gYTDMSREW1-gQ-J6jCecZEaJGq7ofxIyqfIUHCL-tcM,543
214
217
  anthropic/types/beta/beta_clear_tool_uses_20250919_edit_param.py,sha256=_8AVMNiDDw1J0Ojkzk3gi1Feyu6Z-zqGrR_0mluV2lE,1485
215
218
  anthropic/types/beta/beta_clear_tool_uses_20250919_edit_response.py,sha256=mbHO2KfaTVYREJBkxhPj4vEFtZyFtwlezKObsv7Fe6E,534
216
219
  anthropic/types/beta/beta_code_execution_output_block.py,sha256=OpNDX-uckWDLBg70X1gKYNk2LAj6Re3UCOgOsnxJY1I,313
@@ -234,8 +237,8 @@ anthropic/types/beta/beta_content_block.py,sha256=vmZXOq7Frx8xAYVV5eDC9FbNq-wyL8
234
237
  anthropic/types/beta/beta_content_block_param.py,sha256=87vnYL2-j7vOtT-dldIn0XNdVkhwWY_R_u64cmGZaQc,2260
235
238
  anthropic/types/beta/beta_content_block_source_content_param.py,sha256=IxeRBqzUPEC35VXHr4xHkQdpMw_A5hqSnBwyixn9v7E,445
236
239
  anthropic/types/beta/beta_content_block_source_param.py,sha256=baurrUKAlsFMqHnhtEN_1dGYC7b1vakKpdLiX87pFhU,530
237
- anthropic/types/beta/beta_context_management_config_param.py,sha256=oewtxyhe0E6GvMbsg8qMlrLdrFO2RMu2KDa0JaDSz_4,503
238
- anthropic/types/beta/beta_context_management_response.py,sha256=J3D97XX_-zMeCtKPEODja43EmLHIPAGoBHVdu_-eJRQ,460
240
+ anthropic/types/beta/beta_context_management_config_param.py,sha256=cs3d7mNlprV34_UX8QPihM1FkCx6Tnzo7CjWVBVD0Qk,684
241
+ anthropic/types/beta/beta_context_management_response.py,sha256=qwkhE6vtToG7m34R8cxPyOfzej_x7Nfeis5tuEWk8mI,804
239
242
  anthropic/types/beta/beta_count_tokens_context_management_response.py,sha256=efL0nsrOlA7KTIQ-M5IiXRmbmb6q-dakLp3oNnEh5G8,341
240
243
  anthropic/types/beta/beta_document_block.py,sha256=lehaAYYdGHJay8F_J-GfMLOYWAe0G8gVWfeixA5XH2s,834
241
244
  anthropic/types/beta/beta_file_document_source_param.py,sha256=a5_eicJChOrOoBr7MIVj5hA-MZFs1syo5Oi8W_Jv1_4,350
@@ -245,8 +248,8 @@ anthropic/types/beta/beta_input_json_delta.py,sha256=MPlt9LmfuwmpWryQagjkkVHHZRf
245
248
  anthropic/types/beta/beta_input_tokens_clear_at_least_param.py,sha256=9VMW4rN_ZeSQp5ianz-815vc_h23XjC-FI6ZICsC7d8,366
246
249
  anthropic/types/beta/beta_input_tokens_trigger_param.py,sha256=_7MSRq8ZykSOZxxr2upnPqpSZEQ42_m53wHhcqiQ2rE,356
247
250
  anthropic/types/beta/beta_mcp_tool_result_block.py,sha256=mqx1WHh13wYoGpf5PnG8dgGsihq3qd9Pg6t9nolIwGI,439
248
- anthropic/types/beta/beta_mcp_tool_use_block.py,sha256=gvxck6vBcZMXaeyKWu-iXw0NCY7wuaE32tFPzEIkJks,409
249
- anthropic/types/beta/beta_mcp_tool_use_block_param.py,sha256=7X8xqpJiXdfFd2--LVBaXGXS7A-5buKDAfhQJJY5klU,706
251
+ anthropic/types/beta/beta_mcp_tool_use_block.py,sha256=KRvDIWyDfq5i2zKGtlY3ZDxHsYxtfmqHa0knEJ5UZnU,444
252
+ anthropic/types/beta/beta_mcp_tool_use_block_param.py,sha256=sE-16rLzREIri44iPGbQgAuRMw-Tsj5vTLUonOqW5K0,723
250
253
  anthropic/types/beta/beta_memory_tool_20250818_command.py,sha256=It-xNhxO4M7DSqpczVfZq7mD2FPDZniHGUxCq9wSGGs,1179
251
254
  anthropic/types/beta/beta_memory_tool_20250818_create_command.py,sha256=jmrc8aWVghMz5PRW7vo5LPp3GaUDZkl7Ir8rmqNVsHw,453
252
255
  anthropic/types/beta/beta_memory_tool_20250818_delete_command.py,sha256=dRjSRkChmc6P_vIwIWlknVEXcXikM6EZjJxZgqfT-TA,396
@@ -279,8 +282,8 @@ anthropic/types/beta/beta_request_mcp_server_url_definition_param.py,sha256=j8N0
279
282
  anthropic/types/beta/beta_request_mcp_tool_result_block_param.py,sha256=xK9SY8bmetn-LWN4hks8KDbeh2WiF0pttcCXsB99v84,761
280
283
  anthropic/types/beta/beta_search_result_block_param.py,sha256=uqzKu_6YVDRe6rIbVSmfvQE7YleyRfa_UncwI2k3cuI,842
281
284
  anthropic/types/beta/beta_server_tool_usage.py,sha256=StokZ2PZBQ5r5X8ri71h-eZsFHqLdT0138Tafqy2az4,352
282
- anthropic/types/beta/beta_server_tool_use_block.py,sha256=w1TMUg0APiwSZqiUkXd137Fg1SGr9xIX90qvMrZF6Jg,426
283
- anthropic/types/beta/beta_server_tool_use_block_param.py,sha256=yafWnsAG5jz7NzqcfWAnLtH86p-nNejxW1IUQmmnIJk,762
285
+ anthropic/types/beta/beta_server_tool_use_block.py,sha256=aMTBuji1smSyH7xzFEb5us5gbUxX64tJJpYv5XgGYv4,461
286
+ anthropic/types/beta/beta_server_tool_use_block_param.py,sha256=yYrURmcIyhy6z7Q4JL48u_mVvL4I6pgsE7-bcdpfceU,779
284
287
  anthropic/types/beta/beta_signature_delta.py,sha256=LGjB7AM6uCcjn5diCtgzSPGMssf-hfS-JQbvtTmY2-I,289
285
288
  anthropic/types/beta/beta_skill.py,sha256=eyvKq-A7cSfW3kWNP6KSFHoYCxfTnRe-CgQ396Wx8Js,454
286
289
  anthropic/types/beta/beta_skill_params.py,sha256=xqw8ygiJ1oXn5PERZHfY1Pb8doQsZ3_E4WwruG6n7cI,522
@@ -306,6 +309,7 @@ anthropic/types/beta/beta_thinking_config_disabled_param.py,sha256=tiVjV6z1NxDUd
306
309
  anthropic/types/beta/beta_thinking_config_enabled_param.py,sha256=Wsufale1AF98kNN0xbBxucO4ScM6JKIANaDfM3toSWE,734
307
310
  anthropic/types/beta/beta_thinking_config_param.py,sha256=VK-ZLTr5bUP_Nu1rF5d1eYACPmGbx_HDbta-yWbWxxg,497
308
311
  anthropic/types/beta/beta_thinking_delta.py,sha256=4O9zQHhcqtvOz1zeqcJOo1YJpvzNN7t0q0dEzePswcc,285
312
+ anthropic/types/beta/beta_thinking_turns_param.py,sha256=4rhTtQqaot1VJOhVAIJbGjQ3Q4SVUs9IN0o-TrRfejo,348
309
313
  anthropic/types/beta/beta_tool_bash_20241022_param.py,sha256=76wGHowVt9Nxe3MNuBwgXS8MtMJ6bvoT0vrEXpsAavQ,713
310
314
  anthropic/types/beta/beta_tool_bash_20250124_param.py,sha256=Xu51jwqZlVrGd8Si_E3guAqugOdTFCj5mrg98_fKcYA,713
311
315
  anthropic/types/beta/beta_tool_choice_any_param.py,sha256=XKDm4WnqGSeKUr-MsYqR-1-WlmhRig3Nq7VXyxBarkI,493
@@ -315,15 +319,15 @@ anthropic/types/beta/beta_tool_choice_param.py,sha256=kJnRD1gWzx_NPpyfMShZtoXrUc
315
319
  anthropic/types/beta/beta_tool_choice_tool_param.py,sha256=TYPA4HbTZrSBcDsMnsk86c0HqBYrkoN71TQq_7yNV4k,560
316
320
  anthropic/types/beta/beta_tool_computer_use_20241022_param.py,sha256=AjucXClRInpVVEhI2VnXwICpNCVlysr0YD4w32y56lg,1000
317
321
  anthropic/types/beta/beta_tool_computer_use_20250124_param.py,sha256=BIHpALLErLWvFA4Scv4ntAa8NSSmE2WA_EV9DCN6Udw,1000
318
- anthropic/types/beta/beta_tool_param.py,sha256=iUoPeB4GONzgEc3PstF2xPh9svwGqMWyo3K8V2zR988,1575
322
+ anthropic/types/beta/beta_tool_param.py,sha256=-Avhj5wRJrJcL43w7mLdhBigZpRVon56wwdZwRqzvG8,1586
319
323
  anthropic/types/beta/beta_tool_result_block_param.py,sha256=84vvYhCfImu22BECeL-zBvfjNCXV0rIfr7trnR9VE3Q,1086
320
324
  anthropic/types/beta/beta_tool_text_editor_20241022_param.py,sha256=z4plQ-egA85ettWcQm3sptpiBv3EYL1VbtrL2fldtTM,746
321
325
  anthropic/types/beta/beta_tool_text_editor_20250124_param.py,sha256=PqRpXlK9TqHPOcF5SRkGSeWc793QMNUztuIQKoGHyoI,746
322
326
  anthropic/types/beta/beta_tool_text_editor_20250429_param.py,sha256=2skxGp7C7fwrecE2dS22FPRXhxRF8VMQS4K5cNT-fbA,755
323
327
  anthropic/types/beta/beta_tool_text_editor_20250728_param.py,sha256=Y9Kx_C2XZQ0BmXoOUEunVJeb7FnGTWH9egNc-S9lzqI,927
324
328
  anthropic/types/beta/beta_tool_union_param.py,sha256=wt4nJAkJm0qPHOjpPMMJmePRfjxUcCLnqJwgihAgupY,1838
325
- anthropic/types/beta/beta_tool_use_block.py,sha256=y1Y9ovht2t-BlJDqEOi_wk2b2XAIb2J_gkyIdzZM8fY,305
326
- anthropic/types/beta/beta_tool_use_block_param.py,sha256=eZvSxb6yvh_eLY0SSoN0pFSGGLxU4yJEv3nyMYZ7zBA,627
329
+ anthropic/types/beta/beta_tool_use_block.py,sha256=38x-oEDJG2F-ATjcTjL2iBvwwL-jRDExq3PxHfMeQxA,340
330
+ anthropic/types/beta/beta_tool_use_block_param.py,sha256=keqjbtEL9NJHejV46eVEPs7xsWgJ7xLjVJ9rqoSOF2I,644
327
331
  anthropic/types/beta/beta_tool_uses_keep_param.py,sha256=R9sHxEwQq33kSQEiIG_ONm92EUk0YFmKI039tkhl4vo,341
328
332
  anthropic/types/beta/beta_tool_uses_trigger_param.py,sha256=PbTkerKGtnClYCrACGaodsTkHOSpTz801jp_PzvyBEI,347
329
333
  anthropic/types/beta/beta_url_image_source_param.py,sha256=pquhkw8b13TbwhXA6_dMkPP-7vxYfbbXbjV_BVx_0ZY,337
@@ -403,7 +407,7 @@ anthropic/types/shared/not_found_error.py,sha256=R6OsCvAmsf_SB2TwoX6E63o049qZMaA
403
407
  anthropic/types/shared/overloaded_error.py,sha256=PlyhHt3wmzcnynSfkWbfP4XkLoWsPa9B39V3CyAdgx8,282
404
408
  anthropic/types/shared/permission_error.py,sha256=nuyxtLXOiEkYEbFRXiAWjxU6XtdyjkAaXQ2NgMB3pjw,282
405
409
  anthropic/types/shared/rate_limit_error.py,sha256=eYULATjXa6KKdqeBauest7RzuN-bhGsY5BWwH9eYv4c,280
406
- anthropic-0.71.1.dist-info/METADATA,sha256=POPFz3Z8GAU6VfJ6b-LSXrHgQ895bytGBb3vVw3GSgE,28564
407
- anthropic-0.71.1.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
408
- anthropic-0.71.1.dist-info/licenses/LICENSE,sha256=i_lphP-Lz65-SMrnalKeiiUxe6ngKr9_08xk_flWV6Y,1056
409
- anthropic-0.71.1.dist-info/RECORD,,
410
+ anthropic-0.72.1.dist-info/METADATA,sha256=FBwucRG7lCoAQd8FrN19_dX8a37wBSa05nMBeTrCvj0,28514
411
+ anthropic-0.72.1.dist-info/WHEEL,sha256=C2FUgwZgiLbznR-k0b_5k3Ai_1aASOXDss3lzCUsUug,87
412
+ anthropic-0.72.1.dist-info/licenses/LICENSE,sha256=i_lphP-Lz65-SMrnalKeiiUxe6ngKr9_08xk_flWV6Y,1056
413
+ anthropic-0.72.1.dist-info/RECORD,,