R2R version 3.6.0 introduces a number of highly requested features:
- S3 File Provider Support: Introduces S3 as a file provider, giving an alternative to Postgres Large Objects. See documentation: https://r2r-docs.sciphi.ai/self-hosting/configuration/file-storage
- User-Defined Agent Tooling: Allows users to define custom tools, which the agent can use. See the cookbook here: https://r2r-docs.sciphi.ai/cookbooks/custom-tools
- Custom Log Formatting: Allows user-defined log formatting.
- Expanded Error Handling: Introduces
R2RClientException
, in addition to the existingR2RException
; allows for a clearer differentiation to be made between client and server-side issues. - Synced Python Async and Sync Clients: Cleans up some drift that occurred between the two SDK clients.
Breaking Changes:
Changes the behavior of the async client to pass just the file name—rather than the entire file path—which changes how the UUID of a file is generated. This was the default behavior in the sync client for some time, which potentially induced bugs/breaking changes that were not noted.
For example, if you uploaded a file from /home/user/documents/report.pdf:
Before: The server would receive the file with the identifier /home/user/documents/report.pdf
After: The server only receives the file with the identifier report.pdf
What's Changed
- Remove cruft related to configs by @NolanTrem in #2176
- Support Custom Log Formatting by @NolanTrem in #2175
- Add S3 File Provider by @NolanTrem in #2164
- Refactor Agent Tools, Allow User-Defined Tool Definitions by @NolanTrem in #2162
- Synchronize Async and Sync Python SDK, Add R2RClientException by @NolanTrem in #2174
- Release 3.6.0 by @NolanTrem in #2179
Full Changelog: v3.5.19...v3.6.0