Skip to content

Releases: strands-agents/sdk-python

v0.3.0

11 Jul 18:57
48bcd5b
Compare
Choose a tag to compare

Breaking Changes

  • Model Providers:

    • OpenAI and LiteLLM model providers no longer accept base64 encoded images. These providers will now handle base64 encoding of image bytes automatically. See issue #252.
    • Model providers now implement asynchronous functions. Custom model providers must be updated accordingly. See PR#306.
    • The API interface for model providers has been simplified to require only a single stream method implementation. See PR#400.
    • Model provider API interfaces have been relocated to the strands.models subpackage for improved organization. See PR#409.
  • Other breaking changes:

    • All classes or protocols requiring subclassing or implementation now include an additional kwargs argument for forward compatibility. See PR#413.
    • The max_parallel_tools parameter has been removed from the Agent class. Tools are now automatically invoked on thread-pools. See PR#391.
    • The load_tools_from_directory parameter of the Agent class now defaults to False meaning. Tools are no longer automatically loaded from the tools directory. To restore the old behavior, explicitly set this parameter to True . See PR#419.
    • The event_loop_cycle function is no longer available as a top-level import from strands, reflecting its internal nature. Direct event loop invocation is not recommended. See PR#415.
    • Automatic removal of dangling tool messages during Agent lifecycle has been discontinued to support future features. See PR#418.
    • AgentTool now implements a stream API instead of invoke and requires asynchronous implementation. See PR#345.

What's Changed

New Contributors

Full Changelog: v0.2.1...v0.3.0

v0.2.1

04 Jul 23:48
dff627d
Compare
Choose a tag to compare

What's Changed

This is a hotfix for v0.2.0

  • tools - parallel execution - sleep by @pgrayy in #355

Full Changelog: v0.2.0...v0.2.1

v0.2.0

02 Jul 21:28
d601615
Compare
Choose a tag to compare

Minor Version Bump to v0.2.0

For this minor version bump, we are introducing a number of backwards-incompatible changes. Leading up to the 1.0.0 release of the SDK, we are incrementally releasing backwards-incompatible changes to align with our vision of the 1.0.0 interface. These changes are meant to fix deficiencies that were part of our initial implementation, or to make Strands easier to understand and use. Below are a list of these changes, and steps to migrate your code if they affect you:

  • Use region from boto3 session when possible (#299)
    • This change updates the region behavior of the BedrockModelProvider to better align with the Boto3 default region behavior instead of us-west-2.
  • refactor: remove kwargs spread after agent call (#289)
    • Previously, strands used certain parameters that were passed into the agent invocation call. For example, agent("Hello!", system_prompt="Some New Prompt") would previously override the system prompt defined during the agent’s initialization. Now, this behavior has been removed, so you can alter the agent’s system prompt by overriding the agents system_prompt attribute.
      • Before: agent("Hello!", system_prompt="Some New Prompt")
      • After: agent.system_prompt = "Some New Prompt"
  • Remove FunctionTool (#325)
    • Previously, FunctionTool was deprecated in favor of DecoratedFunctionTool but it was kept in for backwards compatibility. This removes the FunctionTool class in favor of using the @tool decorator. Check out the strands agents tool documentation for instructions on building a tool.
  • Implement native async iterator support (#83)
    • #295: We no longer yield any callback events carried out in tool invocations from stream_async.
    • #323: callback_handler is no longer passed to tools.
  • refactor tracer (#286)

What's Changed

New Contributors

Full Changelog: v0.1.9...v0.2.0

v0.1.9

24 Jun 19:22
df7c327
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.8...v0.1.9

v0.1.8

18 Jun 17:39
cc5be12
Compare
Choose a tag to compare

What's Changed

  • Fix: Enable underscores in direct method invocations to match hyphens by @zastrowm in #178
  • feat: implement summarizing conversation manager by @stefanoamorelli in #112
  • chore: moved truncation logic to conversation manager and added should_truncate_results by @poshinchen in #192
  • refactor: Disallow similar tool names in the tool registry by @zastrowm in #193
  • ci: add integration test workflow by @dbschmigelski in #201
  • fix: add inference profile to litellm test and remove ownership check… by @dbschmigelski in #209
  • chore: allow custom tracer provider to Agent by @poshinchen in #207
  • build(a2a): add a2a deps and mitigate otel conflict by @jer96 in #232
  • chore(otel): raise exception if exporter unavailable by @jer96 in #234
  • fix: Update PR Integration Test Workflow by @AdnaneKhan in #237
  • fix: remove unused dependency swagger-parser by @zastrowm in #220
  • fix: Update throttling logic to use exponential back-off by @zastrowm in #223
  • feat: Simplify contribution template + pr scripts to run by @zastrowm in #221
  • docstring parser by @dbschmigelski in #239

New Contributors

Full Changelog: v0.1.7...v0.1.8

v0.1.7

09 Jun 16:33
9006105
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.1.6...v0.1.7

v0.1.6

30 May 13:09
947f6b6
Compare
Choose a tag to compare

What's Changed

  • style(callback_handler): fix docstring for PrintingCallbackHandler.call by @awsarron in #126
  • chore(tests): Add unit tests for user agent changes by @clareliguori in #125
  • Increasing Coverage Message Processor : From 79% to 94% by @fede-dash in #115
  • feat: Add non-streaming support to BedrockModel by @Unshure in #75
  • fix: Added hyphen to allowed characters in tool name validation by @xiehust in #55
  • models - content - documents by @pgrayy in #138
  • models - anthropic - document - plain text by @pgrayy in #141
  • fix(telemetry): correct environment variable precedence for OTEL config by @JackYPCOnline in #86
  • Automate deployment to PYPI by @Unshure in #145

New Contributors

Full Changelog: v0.1.5...v0.1.6

v0.1.5

26 May 20:11
d43145f
Compare
Choose a tag to compare

What's Changed

  • models - openai - argument none by @pgrayy in #97
  • docs(readme): add open PRs badge + link to samples repo + change 'Docs' to 'Documentation' by @awsarron in #100
  • docs(readme): add logo by @awsarron in #101
  • docs(readme): add logo, title, badges, links to other repos, standardize headings by @awsarron in #102
  • style(readme): use dark logo for clearer visibility when system is using light color scheme by @awsarron in #104
  • fix(readme): use logo that changes color automatically depending on user's color preference scheme by @awsarron in #105
  • feat(handlers): add reasoning text to callback handler and related tests by @josephgultekin in #109
  • feat: Add dynamic system prompt override functionality by @Shubhamraut01 in #108
  • 🔥🕊️ Rise of the Phoenix: Event Loop Refactor by @fede-dash in #106
  • fix(telemetry): fix agent span start and end when using Agent.stream_async() by @awsarron in #119
  • feat: Update SlidingWindowConversationManager by @Unshure in #120
  • v0.1.5 by @awsarron in #121

New Contributors

Full Changelog: v0.1.4...v0.1.5

v0.1.4

23 May 19:31
0ec2df5
Compare
Choose a tag to compare

What's Changed

  • fix: Updated GitHub Action to use GitHub native approvals by @yonib05 in #67
  • models - litellm - capture usage by @pgrayy in #73
  • fixing various typos in markdowns and scripts by @didier-durand in #74
  • fix(docs): add missing quotation marks in pip install commands by @JackYPCOnline in #80
  • fix: Merge strands-agents user agent into existing botocore config by @clareliguori in #76
  • feature: models - openai by @pgrayy in #65
  • fixing typos in .py and .md by @didier-durand in #78
  • docs: update contributing guide to manage python env with hatch shell by @wzxxing in #46
  • Add ensure_ascii=False to json.dumps() calls in telemetry tracer by @moritalous in #37
  • lint - openai client protocol by @pgrayy in #87
  • Lower OpenTelemetry minimum version by @zastrowm in #89

New Contributors

Full Changelog: v0.1.3...v0.1.4

v0.1.3

21 May 02:58
9ebc3cc
Compare
Choose a tag to compare

What's Changed

New Contributors