Heads up This site is currently under heavy development.
Subscribe Get it delivered — the daily firehose, filtered to the tools you run, plus the documentation changes vendors never announce. Compare plans →

The AI Toolchain — issue -373, October 31, 2024

THE AI TOOLCHAIN NO. -373
Tail
THE DAILY RELEASE FIREHOSE
PUBLISHED OCTOBER 31, 2024 · EVERY WEEKDAY
EDITIONS tail grep head diff uniq

The daily firehose — everything the toolchain shipped today, already filtered.

// HOW THIS ISSUE IS MADE

We read every release from the 174 tools on our watchlist at the source — GitHub and GitLab release notes, vendor release pages and changelogs, project blogs and feeds, vendor press releases, and the source code behind the tag. Bug-fix-only releases and non-product newsroom noise are dropped; what's left is summarized down to the new capability, how to try it, and any screenshots or videos the release itself published. Every entry links to the sources it was built from.

VIEW
ISSUE VIEW full issue
Do you prefer this view?
$ tct list   # 34 tools matched
AI & LLM Tooling
◆  AI Coding Agents

Aider

Sources Release notes → v0.60.0 2 RELEASES · 2024-10-04 → 2024-10-22 NOTES STABLE

Aider v0.60.0 defaults to Claude Sonnet 10/22 and adds bundled model metadata for faster LLM support.

└──▷ GET THIS VERSION
$ git clone --branch v0.60.0 https://github.com/Aider-AI/aider.git
# already have the repo? check out this version:
$ git checkout v0.60.0
  • Adds full support for Claude Sonnet 10/22 (new SOTA on aider's code editing benchmark) and sets it as the default model.
  • Improves o1 model support with more flexible parsing of nonconforming code edit replies.
  • Bundles a model metadata JSON file to support models not yet updated in litellm.
  • Adds model settings for o1 models on Azure.
  • Automatically offers to add .env to .gitignore when detected.
1 more release in this issue · 2024-10-04 → 2024-10-22
v0.59.0 NOTES STABLE

Aider v0.59.0 adds glob support for /read-only, faster large-repo launch, and editor-model sanity checks.

└──▷ GET THIS VERSION
$ git clone --branch v0.59.0 https://github.com/Aider-AI/aider.git
# already have the repo? check out this version:
$ git checkout v0.59.0
└──▷ TRY IT
Add all Python files under a directory as read-only context without adding them one by one.
$ /read-only src/**/*.py
Speed up aider startup when working inside a very large repository where repo validation is slow.
$ aider --skip-sanity-check-repo --model gpt-4o
  • Adds shell-style filesystem auto-complete and glob support (e.g. src/**/*.py) to the /read-only command.
  • New --skip-sanity-check-repo flag skips repository sanity checks at launch to speed up startup in large repos.
  • The /settings command now includes the full announcement lines printed at launch for a complete config snapshot.
  • Sanity-checks the --editor-model on launch, matching the validation already applied to main and weak models.
  • Repo-map generation is now deterministic with improved caching logic.
└──▷ BREAKING ON UPGRADE
  • !The --yes flag is renamed to --yes-always; existing YAML files using yes: and .env files using AIDER_YES must be updated to yes-always: and AIDER_YES_ALWAYS respectively.
  • !Config files now use standard YAML list syntax ( - list entries, one per line); existing config files using the old list format must be updated.
Was this useful?

Cline

Sources Release notes → v2.1.0 2 RELEASES · 2024-10-09 → 2024-10-28 NOTES STABLE

Autonomous coding agent as an SDK, IDE extension, or CLI assistant.

Cline gains browser control via Anthropic's Computer Use — click, type, scroll, and debug end-to-end autonomously.

└──▷ GET THIS VERSION
$ git clone --branch v2.1.0 https://github.com/cline/cline.git
# already have the repo? check out this version:
$ git checkout v2.1.0
  • Adds browser automation via Anthropic's Computer Use feature, enabling Cline to launch a browser and perform clicks, typing, and scrolling for runtime debugging, end-to-end testing, and general web tasks (requires Claude 3.5 Sonnet v2).
1 more release in this issue · 2024-10-09 → 2024-10-28
v2.0.0 NOTES STABLE

Cline v2.0 streams edits live, cuts API requests 40%, and adds real-time cancel plus full OpenRouter model search.

└──▷ GET THIS VERSION
$ git clone --branch v2.0.0 https://github.com/cline/cline.git
# already have the repo? check out this version:
$ git checkout v2.0.0
  • Streams AI-generated edits directly into the editor with a yellow text-decoration animation showing progress in real time.
  • Adds a Cancel button to stop mid-generation and redirect Cline before it goes off track.
  • Replaces the rigid Tool Use / Function Calling API with a custom XML-tags approach (e.g., <read_file>, <execute_command>), reducing requests by ~40% for Claude 3.5 Sonnet and enabling reliable tool calling for non-Claude models like Llama and DeepSeek.
  • Automatically fetches the full OpenRouter model list with pricing details, with search support (e.g., search "free" to find no-cost models).
  • Relicensed from MIT to Apache 2.0 for stronger open-source protections.
Was this useful?

Block Goose

Sources Release notes → v0.9.6 3 RELEASES · 2024-10-10 → 2024-10-18 NOTES STABLE

an open source, extensible AI agent that goes beyond code suggestions - install, execute, edit, and test with any LLM

Goose v0.9.6 adds web browsing, session resumption, and a synopsis-based core loop.

└──▷ GET THIS VERSION
$ git clone --branch v0.9.6 https://github.com/block/goose.git
# already have the repo? check out this version:
$ git checkout v0.9.6
  • Adds web browsing capability to the core Goose loop.
  • Enables resuming a previous session with a dedicated run flag.
  • Introduces a synopsis approach for the core Goose loop to improve context handling.
2 more releases in this issue · 2024-10-10 → 2024-10-18
v0.9.5 NOTES STABLE

Goose v0.9.5 adds Google vision support and updates the default Ollama model to qwen2.5.

└──▷ GET THIS VERSION
$ git clone --branch v0.9.5 https://github.com/block/goose.git
# already have the repo? check out this version:
$ git checkout v0.9.5
  • Adds vision support for Google provider, enabling image-based interactions.
  • Updates the default Ollama model from mistral-nemo to qwen2.5.
v0.9.4 NOTES STABLE

Goose v0.9.4 adds Groq and o1 model support, a new run command, provider listing, keychain API key storage, and global goosehints.

└──▷ GET THIS VERSION
$ git clone --branch v0.9.4 https://github.com/block/goose.git
# already have the repo? check out this version:
$ git checkout v0.9.4
└──▷ TRY IT
Check which LLM providers are configured and available before starting a session.
$ goose providers list
  • Adds Groq as a supported LLM provider.
  • Supports OpenAI o1-preview and o1-mini deep thinking reasoner models.
  • New goose run command for non-interactive session execution.
  • New goose providers list command to enumerate available providers.
  • Saves API keys to the system keychain automatically for users.
+3 moreshow less
  • Adds session management guards to protect active sessions.
  • Adds support for a global user-level goosehints file for persistent instructions.
  • Adds local Langfuse tracing option for observability.
Was this useful?

All Hands AI OpenHands

Sources Release notes → 0.12.0 4 RELEASES · 2024-10-03 → 2024-10-31 NOTES STABLE

OpenHands: AI-Driven Development

OpenHands 0.12.0 adds function calling to CodeAct 2.1 and prompt caching for Claude 3.5 Sonnet, hitting 53% on SWE-Bench Verified.

└──▷ GET THIS VERSION
$ git clone --branch 0.12.0 https://github.com/All-Hands-AI/OpenHands.git
# already have the repo? check out this version:
$ git checkout 0.12.0
  • Adds function calling support to the CodeAct 2.1 agent, boosting benchmark performance to 53% on SWE-Bench Verified and 41.7% on SWE-Bench Lite — the highest score among open-source AI software engineering systems.
  • Supports prompt caching for claude-3-5-sonnet-20241022, reducing latency and cost on repeated context.
  • Surfaces backend error messages directly in the chat UI so practitioners see failure details without digging through logs.
3 more releases in this issue · 2024-10-03 → 2024-10-31
0.11.0 NOTES STABLE

OpenHands 0.11.0 improves LLM-powered agent file editing.

└──▷ GET THIS VERSION
$ git clone --branch 0.11.0 https://github.com/All-Hands-AI/OpenHands.git
# already have the repo? check out this version:
$ git checkout 0.11.0
  • Improves agent file editing quality using LLM-based refinements.
0.10.0 NOTES STABLE

OpenHands 0.10.0 ships a redesigned UI and adds Modal as a new sandbox runtime.

└──▷ GET THIS VERSION
$ git clone --branch 0.10.0 https://github.com/All-Hands-AI/OpenHands.git
# already have the repo? check out this version:
$ git checkout 0.10.0
  • New OpenHands UI with a redesigned interface for interacting with agents.
  • Adds Modal sandbox support as an alternative runtime backend for agent execution.
0.9.8 NOTES STABLE

OpenHands 0.9.8 lets you specify a custom config.toml path via command-line arguments.

└──▷ GET THIS VERSION
$ git clone --branch 0.9.8 https://github.com/All-Hands-AI/OpenHands.git
# already have the repo? check out this version:
$ git checkout 0.9.8
  • Supports specifying the config.toml location via command-line arguments, enabling flexible multi-environment deployments.
Was this useful?

Zed

Sources Release notes → v0.159.5 6 RELEASES · 2024-10-02 → 2024-10-30 NOTES STABLE

Zed SSH Remoting exits alpha with broad Linux/macOS host support, plus toolchain selector, code folding by level, and .editorconfig.

└──▷ GET THIS VERSION
$ git clone --branch v0.159.5 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.159.5
└──▷ USE IT
Restore Option-as-Meta behavior in the terminal (required for Emacs users after the default change).
json
"terminal": {
  "option_as_meta": true
}
Fold all code blocks to nesting level 2 to get a high-level overview of a large file.
📍cmd-k, cmd-2
  • Adds terminal.option_as_meta config key (default now false) controlling whether the Option key acts as Meta in the terminal — Terminal Emacs users should set this to true.
  • Adds fold-all-blocks-at-level command: cmd-k, cmd-<number> (macOS) / ctrl-k, ctrl-<number> (Linux) to collapse code to a target nesting depth.
  • Adds keybinding cmd-shift-y / ctrl-shift-y for applying hunks in Proposed Changes.
  • Adds .editorconfig support for per-directory editor settings.
  • Launches SSH Remoting in Beta, supporting macOS (x86_64 and aarch64) and Linux (x86_64/ARM) remote hosts including Ubuntu 20/22/24, Debian 11/12, Fedora 40/41/42, NixOS, ArchLinux, Alpine, SUSE/OpenSUSE, RedHat 8.x/9.x, Rocky Linux, CentOS Stream, AlmaLinux, Amazon Linux, and Oracle Linux.
+9 moreshow less
  • Adds toolchain selector to the status bar with initial support for Rust and Python.
  • Adds indent guides to the project panel and outline panel.
  • Adds ability to cancel language server work in remote development sessions.
  • Adds macOS Services menu integration.
  • Registers .postcss files as CSS.
  • Adds autoclosing of Rust multiline strings.
  • Adds support for incrementing/decrementing numbers with leading zeros in Vim mode.
  • Adds file icons for Gleam, Zig, Julia, SCSS, HCL, Nix, and Roc files.
  • Adds support for detecting images with non-lowercase file extensions.
└──▷ BREAKING ON UPGRADE
  • !The terminal.option_as_meta default changed from true to false; Terminal Emacs users must explicitly set terminal.option_as_meta: true in their config to restore the previous behavior.
  • !The original remote development mode that routed traffic via Zed's servers is no longer available as of v0.157; SSH Remoting is now the only supported mode.
5 more releases in this issue · 2024-10-02 → 2024-10-30
v0.158.2 NOTES STABLE

Zed v0.158.2 switches Anthropic model references to -latest aliases by default.

└──▷ GET THIS VERSION
$ git clone --branch v0.158.2 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.158.2
  • Switches default Anthropic model names to -latest variants, keeping integrations automatically current without manual version pinning.
v0.158.1 NOTES STABLE

Zed v0.158.1 adds format-selections, vi terminal mode, vim regex option, and shebang-based language detection.

└──▷ GET THIS VERSION
$ git clone --branch v0.158.1 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.158.1
└──▷ USE IT
Disable regex search by default for / in vim normal mode, matching plain-text only unless toggled on.
json
{
  "context": "VimControl && !menu",
  "bindings": {
    "/": ["vim::Search", { "regex": false }]
  }
}
  • Adds editor: format selections action to format only the currently selected text via the primary language server.
  • Adds editor: reload file command to reload the current file from disk.
  • Adds a regex option to the vim::Search command, allowing regex search to be disabled by default in the keymap.
  • Adds Alacritty vi mode support to the built-in terminal, activated with ctrl-shift-space, enabling motions to navigate the scrollback buffer.
  • Adds :e[dit] and :e[dit]! vim ex commands, mapped to editor: reload file.
+5 moreshow less
  • Adds z keybindings for scrolling in vim mode.
  • Adds support for using the Insert key to activate vim mode.
  • Extends language auto-detection with shebang detection for ts-node, tsx, bun, Deno JS, Deno TS, dash, and ash.
  • Switches the built-in terminal to use the system locale instead of forcing en_US.UTF-8.
  • Adds the ability to click intermediate auto-folded project panel entries.
└──▷ BREAKING ON UPGRADE
  • !The cursor_shape value underscore is renamed to underline in configuration.
v0.157.4 NOTES STABLE

Zed v0.157.4 adds color swatches in LSP completions, C runnables, and regex/case args for Vim search commands.

└──▷ GET THIS VERSION
$ git clone --branch v0.157.4 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.157.4
└──▷ USE IT
Bind * and # to word search without regex or case sensitivity, overriding Vim defaults for plain-text matching.
json
{
  "context": "VimControl && !menu",
  "bindings": {
    "*": ["vim::MoveToNext", { "regex": false, "caseSensitive": false }],
    "#": ["vim::MoveToPrev", { "regex": false, "caseSensitive": false }]
  }
}
Run a C main function directly from Zed using a task tagged c-main, compiling and executing the current file.
json
[
  {
    "label": "Run ${ZED_STEM}",
    "command": "gcc",
    "args": [
      "$ZED_FILE",
      "-o",
      "${ZED_DIRNAME}/${ZED_STEM}.out",
      "&&",
      "${ZED_DIRNAME}/${ZED_STEM}.out"
    ],
    "tags": ["c-main"]
  }
]
  • Adds regex and caseSensitive arguments to vim::MoveToNext and vim::MoveToPrev commands, enabling per-binding control over regex and case-sensitive search behavior.
  • Adds runnables for main functions in C, with a c-main tag for use in task configurations.
  • Adds color swatch previews in the language server completions list.
  • Streamlines new branch creation from the branch selector.
  • Adds a notice in the activity indicator when an error occurs while loading the shell environment.
└──▷ BREAKING ON UPGRADE
  • !Built-in support for Protocol Buffers has been removed; .proto files will now prompt download of the Protocol Buffers extension instead.
v0.156.0 NOTES STABLE

Zed v0.156.0 adds snippet management commands, terminal cursor shape setting, SSH assistant panel, llama3.2 support, and expanded Vim fold operations.

└──▷ GET THIS VERSION
$ git clone --branch v0.156.0 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.156.0
└──▷ USE IT
Set the terminal cursor to a bar shape by default instead of the standard block.
json
{
  "terminal": {
    "cursor_shape": "bar"
  }
}
Open your personal snippets folder to add or edit custom snippets for any language.
📍snippets: open folder
  • Adds snippets: configure snippets command to create and modify user snippets stored in ~/.config/zed/snippets.
  • Adds snippets: open folder command to open the ~/.config/zed/snippets directory directly.
  • Adds terminal.cursor_shape setting supporting values block, bar, hollow, and underline to control the terminal's default cursor shape.
  • Adds editor.document_highlight.bracket_background theme field to set the background color of highlighted brackets, falling back to editor.document_highlight.read_background when unset.
  • Adds new fold actions: cmd-k cmd-l (toggle folds), cmd-k cmd-0 (fold all), cmd-k cmd-j (unfold all), cmd-k cmd-[ (fold recursively), and cmd-k cmd-] (unfold recursively).
+12 moreshow less
  • Adds Vim fold commands :fo[ld], :foldo[pen], and :foldc[lose], plus motions za (toggle fold), zO/zC/zA (open/close/toggle recursively), and zR/zM (open/close all folds).
  • Enables assistant panel and inline assists when working over SSH remoting (running on client).
  • Adds support for running LSP adapters on the SSH remote host.
  • Adds llama3.2 model support in the AI assistant.
  • Adds ability to paste images into the Assistant Panel as context on Linux Wayland.
  • Adds support for using a locally installed pyright if available, rather than requiring the bundled version.
  • Adds file watching support for symlinks.
  • Adds keyboard shortcuts displayed inside tooltips in project search and buffer search panels.
  • Improves direnv integration to use direnv export json direct mode by default instead of relying on a shell hook.
  • Associates uv.lock files with the TOML language.
  • Adds PHP heredoc string syntax highlighting.
  • Improves C++ syntax highlighting.
└──▷ BREAKING ON UPGRADE
  • !Protocol Buffers language identifier renamed from proto to Proto; users must update file_types and languages settings from proto to Proto.
  • !To disable finding LSP adapters in your PATH, you must now specify {"lsp":{"<lsp-name>":{"binary":{"ignore_system_version": true}}}} — the previous key path_lookup: false no longer works.
v0.155.2 NOTES STABLE

Zed v0.155.2 adds parallel inline AI assists, a 'Fix with Assistant' action, and new Vim motions

└──▷ GET THIS VERSION
$ git clone --branch v0.155.2 https://github.com/zed-industries/zed.git
# already have the repo? check out this version:
$ git checkout v0.155.2
└──▷ USE IT
Run two models in parallel for every inline AI assist to compare outputs or increase confidence in suggestions.
json
{
  "assistant": {
    "inline_alternatives": ["gpt-4o", "claude-3-5-sonnet"]
  }
}
Keep Zed from downloading its own Node binary and instead use your project's managed Node version (e.g. via nvm or volta).
json
{
  "node": {
    "disable_path_lookup": true
  }
}
  • Adds assistant.inline_alternatives setting to configure additional models that run inline assists in parallel alongside the primary model.
  • Adds a Fix with Assistant action on code with errors or warnings, letting the AI address diagnostics inline.
  • Adds node.disable_path_lookup config key (true/false) to control whether Zed uses the Node.js binary on $PATH (now the default when Node ≥ v18 is found) instead of downloading its own.
  • Adds icons to the file finder for faster visual identification of file types.
  • Adds a notification when user settings or project-local settings fail to deserialize.
+5 moreshow less
  • Adds g-A and g-I Vim motions in visual select mode to spawn multiple cursors.
  • Adds gq and gw Vim commands for rewrapping lines.
  • Adds escape string highlights to JSON and JSONC files.
  • Improves performance in repositories using the Git fsmonitor--daemon feature.
  • Preview tabs are now permanently promoted when saved, reducing accidental tab replacement.
└──▷ BREAKING ON UPGRADE
  • !Zed now uses the Node.js binary on $PATH (if v18 or newer) instead of downloading its own; set {"node": {"disable_path_lookup": true}} in your settings to restore the previous download behavior.
Was this useful?
◆  AI Agent Frameworks

AutoGPT

Sources Release notes → agpt-platform-beta-v0.2.0 3 RELEASES · 2024-10-17 → 2024-10-31 NOTES STABLE

AutoGPT platform beta v0.2.0 adds Pinecone and Jina blocks and overhauls secrets management with rotation and resealing.

└──▷ GET THIS VERSION
$ git clone --branch agpt-platform-beta-v0.2.0 https://github.com/Significant-Gravitas/AutoGPT.git
# already have the repo? check out this version:
$ git checkout agpt-platform-beta-v0.2.0
  • Adds support for Pinecone and Jina blocks to the blocks system, expanding integrations available for automation workflows.
  • Introduces secret rotation and resealing in secrets management to reduce credential exposure risk.
  • Removes dotenv dependency in favor of a streamlined platform configuration process with default secrets support.
└──▷ BREAKING ON UPGRADE
  • !Environment variable names were updated as part of the infrastructure configuration change — existing environment configs may need to be updated to match the new variable names.
2 more releases in this issue · 2024-10-17 → 2024-10-31
agpt-platform-beta-v0.1.1 NOTES STABLE

AutoGPT Platform beta v0.1.1 adds Claude latest model support, LLM token usage tracking, and credit metering for Jina and LLM blocks.

└──▷ GET THIS VERSION
$ git clone --branch agpt-platform-beta-v0.1.1 https://github.com/Significant-Gravitas/AutoGPT.git
# already have the repo? check out this version:
$ git checkout agpt-platform-beta-v0.1.1
  • Tracks LLM token usage across LLM blocks, enabling consumption visibility for platform operators.
  • Adds credit metering for Jina/Search and LLM blocks so usage costs are accounted per execution.
  • Adds the latest Claude model version as a supported LLM option in the platform.
  • Merges the login and sign-in flows into a single unified authentication screen.
  • Improves block positioning logic in the flow editor to handle collisions and variable block dimensions when adding new blocks.
+1 moreshow less
  • Implements a custom save keyboard shortcut in the SaveControl component.
agpt-platform-beta-v0.1.0 NOTES STABLE

AutoGPT Platform beta adds cross-flow block copy/paste, credential management, health endpoints, and sealed secrets.

└──▷ GET THIS VERSION
$ git clone --branch agpt-platform-beta-v0.1.0 https://github.com/Significant-Gravitas/AutoGPT.git
# already have the repo? check out this version:
$ git checkout agpt-platform-beta-v0.1.0
  • Adds a health endpoint to the Platform/Backend for monitoring and security checks.
  • Adds a health router to the Platform for improved service monitoring.
  • Introduces sealed secrets for protecting sensitive data in platform deployments.
  • Introduces configmap support for builder configuration management.
  • Adds copy-and-paste of blocks across different flows in the UI.
+3 moreshow less
  • Adds credential listing and revocation in the user profile for account management.
  • Introduces a shared DB connection for executors to optimize resource usage.
  • Adds comprehensive documentation for all available blocks.
Was this useful?

CrewAI

Sources Release notes → 0.76.9 4 RELEASES · 2024-10-11 → 2024-10-30 NOTES STABLE

Framework for orchestrating role-playing, autonomous AI agents. By fostering collaborative intelligence, CrewAI empowers agents to work together seamlessly, tackling complex tasks.

CrewAI 0.76.9 adds crewai flow add-crew and updates the flow plot command to crewai flow plot.

└──▷ GET THIS VERSION
$ git clone --branch 0.76.9 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:
$ git checkout 0.76.9
└──▷ TRY IT
Add a new crew to an existing flow without manually editing boilerplate — useful when extending a flow with a parallel or sequential crew.
$ crewai flow add-crew
Visualize your flow's structure to review crew connections and routing logic before deploying.
$ crewai flow plot
  • New crewai flow add-crew CLI command lets you scaffold and add additional crews to an existing flow.
  • Flow visualization command updated to crewai flow plot.
  • Forwards install command options to uv sync for more flexible dependency management.
  • Python 3.10 support added via tomli dependency.
└──▷ BREAKING ON UPGRADE
  • !The flow plot command is renamed from its previous form to crewai flow plot; any scripts or docs referencing the old command will break.
3 more releases in this issue · 2024-10-11 → 2024-10-30
0.76.0 NOTES STABLE

CrewAI 0.76.0 adds unsafe code execution support with Docker install and runtime checks.

└──▷ GET THIS VERSION
$ git clone --branch 0.76.0 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:
$ git checkout 0.76.0
  • Supports unsafe code execution with Docker install and running checks for sandboxed agent workflows.
0.74.0 NOTES STABLE

CrewAI 0.74.0 adds model selection and API key submission via CLI, a new Memory Base, and migrates tooling to UV.

└──▷ GET THIS VERSION
$ git clone --branch 0.74.0 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:
$ git checkout 0.74.0
  • Migrates the project toolchain from Poetry to UV, with CLI adapted for UV workflows.
  • New CLI capability to select models and submit API keys directly from the command line.
  • Introduces a new Memory Base foundation for agent memory management.
└──▷ BREAKING ON UPGRADE
  • !Project toolchain has migrated from Poetry to UV; existing Poetry-based setups will require migration to continue working.
0.70.1 NOTES STABLE

CrewAI 0.70.1 adds Flows with a visual debugger, plus new CLI commands for scaffolding flows and tools.

└──▷ GET THIS VERSION
$ git clone --branch 0.70.1 https://github.com/crewAIInc/crewAI.git
# already have the repo? check out this version:
$ git checkout 0.70.1
└──▷ TRY IT
Scaffold a new Flow project to start building multi-step agentic pipelines.
$ crewai create flow
Scaffold a new custom tool ready for implementation and publishing.
$ crewai tool create <tool>
  • New Flow feature enables structured, multi-step agentic pipelines.
  • Flow visualizer lets practitioners inspect and debug Flow execution graphs.
  • New crewai create flow command scaffolds a Flow project from the CLI.
  • New crewai tool create <tool> command scaffolds a custom tool from the CLI.
  • Adds Git validations when publishing tools to enforce clean repository state.
Was this useful?

Stanford NLP DSPy

Sources Release notes → 2.5.21 6 RELEASES · 2024-10-08 → 2024-10-30 NOTES STABLE

DSPy 2.5.21 adds automatic retries to LM calls via LiteLLM and enables ReAct to handle functions without docstrings.

└──▷ GET THIS VERSION
$ git clone --branch 2.5.21 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:
$ git checkout 2.5.21
  • Adds automatic retry support to LM calls made through LiteLLM, improving resilience against transient API failures.
  • Enables ReAct to handle tool functions that have no docstring, removing a previous hard requirement on function documentation.
└──▷ BREAKING ON UPGRADE
  • !The retry_strategy parameter has been removed from LM; existing code that sets retry_strategy will break on upgrade.
5 more releases in this issue · 2024-10-08 → 2024-10-30
2.5.17 NOTES STABLE

DSPy 2.5.17 introduces JsonAdapter with automatic retries and a new callback mechanism for LM pipeline observability.

└──▷ GET THIS VERSION
$ git clone --branch 2.5.17 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:
$ git checkout 2.5.17
  • Adds JsonAdapter as a new adapter alongside the improved ChatAdapter, with default retries built in for more resilient LM calls.
  • Adds a callback mechanism enabling hooks into DSPy module execution for observability and instrumentation.
└──▷ BREAKING ON UPGRADE
  • !dspy.TypedPredictor and its variants are deprecated — callers should migrate to dspy.Predict, dspy.ChainOfThought, or other standard predictors.
2.5.11 NOTES STABLE

DSPy 2.5.11 adds SemanticF1 metric for evaluating semantic similarity of generated answers.

└──▷ GET THIS VERSION
$ git clone --branch 2.5.11 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:
$ git checkout 2.5.11
  • Adds SemanticF1 metric for evaluating semantic similarity between predicted and expected answers.
2.5.10 NOTES STABLE

DSPy 2.5.10 adds Text Embeddings Inference (TEI) support.

└──▷ GET THIS VERSION
$ git clone --branch 2.5.10 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:
$ git checkout 2.5.10
  • Adds support for Text Embeddings Inference (TEI) as an embedding backend.
2.5.9 NOTES STABLE

DSPy 2.5.9 adds reasoning/rationale support to MultiChainComparison.

└──▷ GET THIS VERSION
$ git clone --branch 2.5.9 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:
$ git checkout 2.5.9
  • Adds reasoning/rationale support to MultiChainComparison, enabling the module to incorporate chain-of-thought rationale when comparing multiple completions.
2.5.4 NOTES STABLE

DSPy 2.5.4 adds num_retries to typed signature optimization and filterable LM history content.

└──▷ GET THIS VERSION
$ git clone --branch 2.5.4 https://github.com/stanfordnlp/dspy.git
# already have the repo? check out this version:
$ git checkout 2.5.4
  • Adds num_retries parameter to signature_opt_typed to control retry behavior in typed signature optimization.
  • Enhances LM history with filterable content, enabling more targeted inspection of past interactions.
  • Formats Pydantic fields as JSON in chat_adapter, improving structured output handling for chat-based LMs.
Was this useful?

deepset Haystack

Sources Release notes → v2.6.0 NOTES

Haystack v2.6.0 adds JSONConverter, NLTKDocumentSplitter, zero-shot classifier, NDCG evaluator, and GreedyVariadic input type.

└──▷ GET THIS VERSION
$ git clone --branch v2.6.0 https://github.com/deepset-ai/haystack.git
# already have the repo? check out this version:
$ git checkout v2.6.0
└──▷ USE IT
Extract structured fields from a nested JSON source into separate Documents using jq filtering — useful for ingesting datasets where each record should become its own Document.
python
from haystack.components.converters import JSONConverter
from haystack.dataclasses import ByteStream
import json

data = {"laureates": [{"firstname": "Enrico", "surname": "Fermi", "motivation": "discovery of nuclear reactions"}]}
source = ByteStream.from_string(json.dumps(data))
converter = JSONConverter(jq_schema=".laureates[]", content_key="motivation", extra_meta_fields=["firstname", "surname"])
results = converter.run(sources=[source])
print(results["documents"][0].content)  # 'discovery of nuclear reactions'
print(results["documents"][0].meta)     # {'firstname': 'Enrico', 'surname': 'Fermi'}
Apply a domain-specific tokenization strategy (e.g., split on section headers) without subclassing DocumentSplitter.
python
from haystack.components.preprocessors import DocumentSplitter
from haystack.dataclasses import Document

def split_on_headers(text: str) -> list[str]:
    import re
    return [s for s in re.split(r'(?=^#{1,3} )', text, flags=re.MULTILINE) if s.strip()]

splitter = DocumentSplitter(split_by="function", splitting_function=split_on_headers)
result = splitter.run(documents=[Document(content="# Intro\nHello\n## Details\nMore info")])
print([d.content for d in result["documents"]])
  • New JSONConverter component converts JSON files to Documents, with optional jq_schema filtering, content_key selection, and extra_meta_fields extraction.
  • New TransformersZeroShotDocumentClassifier component enables binary and multi-label zero-shot document classification into user-defined classes using Hugging Face pre-trained models.
  • New NLTKDocumentSplitter component splits documents by word count, sentence boundaries, and page breaks with multi-language support and configurable abbreviation handling.
  • New CSVToDocument component loads CSV files as byte objects and produces Documents compatible with DocumentSplitter.
  • New DocumentNDCGEvaluator component computes normalized discounted cumulative gain for retrieval evaluation when multiple ground-truth relevant documents exist and ranking order matters.
+9 moreshow less
  • New GreedyVariadic input type replaces @component(is_greedy=True) — Pipeline runs the component as soon as any input arrives without waiting for all senders.
  • New max_runs_per_component init argument on Pipeline replaces max_loops_allowed with clearer semantics; adds companion PipelineMaxComponentRuns exception.
  • DocumentSplitter now accepts a custom splitting function via split_by='function' and splitting_function=<callable>, where the callable takes a string and returns a list of strings.
  • PromptBuilder templates now support dynamic date injection via {% now '<timezone>' %} syntax, with optional offset arithmetic and strftime format strings.
  • Adds azure_kwargs dictionary parameter to pass AzureOpenAI-supported parameters not explicitly defined in Haystack.
  • Exposes default_headers on Azure components to forward custom HTTP headers such as APIM subscription keys.
  • Adds usage meta field with prompt_tokens and completion_tokens keys to HuggingFaceAPIChatGenerator responses.
  • SentenceTransformersDocumentEmbedder and SentenceTransformersTextEmbedder now propagate model_max_length from tokenizer_kwargs to the underlying max_seq_length of the SentenceTransformer model.
  • Adds batching during inference in TransformerSimilarityRanker to prevent out-of-memory errors when ranking large document sets.
└──▷ BREAKING ON UPGRADE
  • !The legacy Haystack v1 filter syntax and operators ($and, $or, $eq, $lt, etc.) are fully removed; only the new filter syntax is accepted.
  • !The default model for all OpenAI-backed components changes from gpt-3.5-turbo to gpt-4o-mini.
Was this useful?

LangChain

Sources Release notes → langchain-core==0.2.43 15 RELEASES · 2024-10-04 → 2024-10-31 NOTES STABLE

LangChain Core 0.2.43 makes get_all_basemodel_annotations part of the public API

└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.2.43 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-core==0.2.43
  • Makes get_all_basemodel_annotations a public function, allowing callers to inspect all BaseModel field annotations programmatically.
14 more releases in this issue · 2024-10-04 → 2024-10-31
langchain-groq==0.2.1 NOTES STABLE

langchain-groq 0.2.1 adds support for tool_choice=any and tool_choice=required in Groq chat models.

└──▷ GET THIS VERSION
$ git clone --branch langchain-groq==0.2.1 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-groq==0.2.1
  • Supports tool_choice='any' and tool_choice='required' values when binding tools to Groq chat models, enabling stricter tool-use enforcement.
langchain-core==0.3.15 NOTES STABLE

langchain-core 0.3.15 adds public model-annotation utils, Bedrock↔OpenAI tool conversion, message trimming, and VectorStore id/index improvements.

└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.3.15 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-core==0.3.15
└──▷ USE IT
Convert a LangChain message list to OpenAI-compatible message dicts for direct use with the OpenAI API or any OpenAI-format endpoint.
python
from langchain_core.messages.utils import convert_to_openai_messages
from langchain_core.messages import HumanMessage, AIMessage

messages = [HumanMessage(content='Hello'), AIMessage(content='Hi there!')]
openai_messages = convert_to_openai_messages(messages)
print(openai_messages)
# [{'role': 'user', 'content': 'Hello'}, {'role': 'assistant', 'content': 'Hi there!'}]
Use custom vector field names when indexing documents into a VectorStore that supports non-default embedding field names.
python
from langchain_core.indexing import index

index(
    docs,
    record_manager,
    vector_store,
    cleanup='incremental',
    source_id_key='source',
    vector_field='my_custom_embedding_field'
)
  • Makes get_all_basemodel_annotations a public utility function for inspecting Pydantic model field annotations across the class hierarchy.
  • Adds convert_to_openai_messages utility to convert LangChain messages to the OpenAI messages format.
  • Adds convert_to_openai_tool support for Anthropic tool definitions, enabling cross-provider tool schema conversion.
  • Adds support for converting Bedrock Converse tool definitions to OpenAI tool format.
  • Adds utility functions for adding and subtracting UsageMetadata objects, plus additional detail fields on UsageMetadata.
+13 moreshow less
  • Expands **kwargs support on index and aindex functions to allow custom vector_field configuration in VectorStore indexing.
  • Improves VectorStore support for id fields, including more consistent handling across add/upsert operations.
  • Supports message trimming on single-message inputs via trim_messages.
  • Supports injected tool arguments of arbitrary types in tool invocation.
  • Adds **kwargs to Runnable base class for broader extensibility.
  • Supports ValidationError from Pydantic v1 in tool decorators, improving compatibility in mixed-version environments.
  • Improves type checking for the @tool decorator.
  • Improves performance of InMemoryVectorStore.
  • Supports Pydantic v2 compatibility across the library (v0.3 migration).
  • Removes RemoveMessage from beta, promoting it to stable API.
  • Adds project name propagation to runs from LangChainTracer.
  • Inherits tracing metadata and tags across nested chain invocations.
  • Propagates cancellation reason to inner tasks in astream_events.
langchain-community==0.3.4 NOTES STABLE

langchain-community 0.3.4 adds Writer integration, Naver chat/embeddings, and new OpenAIAssistantV2Runnable parameters

└──▷ GET THIS VERSION
$ git clone --branch langchain-community==0.3.4 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-community==0.3.4
└──▷ USE IT
Inspect token usage and model name in a streaming response from ChatZhipuAI — useful for cost tracking and audit logging in production pipelines.
python
from langchain_community.chat_models import ChatZhipuAI

llm = ChatZhipuAI(model="glm-4")
for chunk in llm.stream("Explain zero-trust networking in one paragraph."):
    print(chunk.content, end="")
    if chunk.response_metadata:
        print(chunk.response_metadata.get("token_usage"))
        print(chunk.response_metadata.get("model_name"))
  • Adds new parameters to OpenAIAssistantV2Runnable for finer control over assistant invocation.
  • Adds token_usage and model_name metadata fields to ChatZhipuAI stream() and astream() responses.
  • Adds Writer LLM integration via a new community integration module.
  • Adds Naver chat model and embeddings integration.
  • Adds async Azure AD token provider support for Azure OpenAI.
+3 moreshow less
  • Updates file_path type in JSONLoader.__init__() signature.
  • Modernizes the Cassandra Vector Store implementation.
  • Adds anthropic.claude-3-5-sonnet-20241022-v2:0 cost details for token usage tracking.
langchain-core==0.3.14 NOTES STABLE

LangChain Core 0.3.14 adds Bedrock-to-OpenAI tool conversion, single-message trimming, and faster InMemoryVectorStore.

└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.3.14 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-core==0.3.14
  • Supports converting Bedrock Converse tool format to OpenAI tool format, enabling cross-provider tool interoperability.
  • Extends message trimming to work on single messages, not just sequences.
  • Improves performance of InMemoryVectorStore.
  • Makes get_all_basemodel_annotations part of the public API.
  • Improves type checking for the tool decorator.
langchain-openai==0.2.4 NOTES STABLE

langchain-openai 0.2.4 adds JSON Schema response format passthrough and async Azure AD token provider support.

└──▷ GET THIS VERSION
$ git clone --branch langchain-openai==0.2.4 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-openai==0.2.4
  • Supports passing a raw JSON Schema object directly as the response format for OpenAI calls, bypassing previous schema conversion requirements.
  • Adds async Azure AD token provider support for Azure OpenAI, enabling non-blocking credential refresh in async applications.
langchain-community==0.3.3 NOTES STABLE

langchain-community 0.3.3 adds proxy support to RecursiveUrlLoader, TLS/auth for Infinispan VectorStore, CLOB datatype support for Oracle, and extended Cassandra metadata methods.

└──▷ GET THIS VERSION
$ git clone --branch langchain-community==0.3.3 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-community==0.3.3
  • Adds proxy support to RecursiveUrlLoader for crawling through HTTP proxies.
  • Adds TLS and authentication support to the VectorStore Infinispan integration.
  • Adds support for the CLOB datatype in the Oracle database integration.
  • Extends metadata-related methods in the Cassandra Vector Store integration.
  • Updates the Firecrawl Document Loader to v1 of the Firecrawl API.
+1 moreshow less
  • Updates the OCI Data Science integration.
langchain-openai==0.2.3 NOTES STABLE

langchain-openai 0.2.3 adds audio modality support and sets default temperature=1 for o1 models.

└──▷ GET THIS VERSION
$ git clone --branch langchain-openai==0.2.3 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-openai==0.2.3
  • Supports audio modality for OpenAI models, enabling audio-capable API interactions through the library.
  • Sets default temperature=1 for o1 models, aligning with OpenAI's recommended parameter for that model family.
langchain-core==0.3.11 NOTES STABLE

langchain-core 0.3.11 adds a convert_to_openai_messages utility for message format conversion.

└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.3.11 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-core==0.3.11
  • Adds convert_to_openai_messages utility function for converting messages to the OpenAI messages format.
langchain-couchbase==0.2.0 NOTES STABLE

langchain-couchbase 0.2.0 adds TTL support for caches and chat message history, plus Pydantic v2 compatibility.

└──▷ GET THIS VERSION
$ git clone --branch langchain-couchbase==0.2.0 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-couchbase==0.2.0
  • Adds TTL (time-to-live) support to Couchbase-backed caches and chat_message_history, enabling automatic expiry of cached entries and stored conversation history.
  • Adds Pydantic v2 compatibility across the integration, aligning with langchain-core v0.3 requirements.
langchain-community==0.3.2 NOTES STABLE

langchain-community 0.3.2 adds SambaStudio chat model, sqlite-vec vector store, and GVS-to-NetworkX graph conversions

└──▷ GET THIS VERSION
$ git clone --branch langchain-community==0.3.2 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-community==0.3.2
  • Adds sqlite-vec as a new vector store integration for lightweight, embedded vector similarity search.
  • Adds SambaStudio chat model integration.
  • Adds conversions from Graph Vector Store (GVS) to NetworkX for graph-based analysis workflows.
  • Adds timeout control and retry logic for Unity Catalog (UC) tool execution.
langchain-core==0.3.10 NOTES STABLE

LangChain Core 0.3.10 adds kwargs support for vector field customization and improves VectorStore ID handling.

└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.3.10 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-core==0.3.10
  • Adds **kwargs to index and aindex functions to support custom vector_field configuration in vector store indexing.
  • Improves support for id in VectorStore, enabling more reliable document identity handling.
  • Adds utility functions for adding and subtracting usage metadata.
langchain-fireworks==0.2.1 NOTES STABLE

langchain-fireworks 0.2.1 allows tool_choice with multiple tools and relaxes model_kwargs field validation.

└──▷ GET THIS VERSION
$ git clone --branch langchain-fireworks==0.2.1 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-fireworks==0.2.1
  • Supports tool_choice when multiple tools are provided, enabling tool selection control in multi-tool call scenarios.
  • No longer raises an error for unrecognized fields passed via model_kwargs, allowing forward-compatible model configurations.
langchain-anthropic==0.2.2 NOTES STABLE

langchain-anthropic 0.2.2 adds richer token-usage detail via usage_metadata.

└──▷ GET THIS VERSION
$ git clone --branch langchain-anthropic==0.2.2 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-anthropic==0.2.2
  • Adds usage_metadata details to Anthropic model responses, exposing richer token-usage information.
langchain-core==0.3.9 NOTES STABLE

langchain-core 0.3.9 adds detailed UsageMetadata fields and tolerates extra model_kwargs without errors.

└──▷ GET THIS VERSION
$ git clone --branch langchain-core==0.3.9 https://github.com/langchain-ai/langchain.git
# already have the repo? check out this version:
$ git checkout langchain-core==0.3.9
  • Adds details to UsageMetadata to expose richer token/usage information from model responses.
  • Stops raising errors when unknown fields are passed in model_kwargs, improving forward compatibility with new model parameters.
Was this useful?

LangChain LangGraph

Sources Release notes → 0.2.42 13 RELEASES · 2024-10-01 → 2024-10-31 NOTES STABLE

Build resilient agents.

LangGraph 0.2.42 improves nested streaming in RemoteGraph with proper parent-graph stream mode propagation.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.42 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.42
└──▷ USE IT
Stream a remote subgraph from a parent graph, letting the parent's stream modes flow through to the RemoteGraph automatically.
python
from langgraph.pregel.remote import RemoteGraph

remote = RemoteGraph("my-remote-graph", url="http://localhost:8000")

# When invoked as a subgraph, RemoteGraph now inherits and propagates
# the parent graph's stream modes and namespace context automatically.
async for chunk in remote.astream(
    {"input": "hello"},
    config={"configurable": {"thread_id": "abc"}},
    stream_mode="updates",
):
    print(chunk)
  • Enables RemoteGraph to accept stream-mode configuration from parent graphs and propagate it correctly through nested graph hierarchies.
  • Supports namespace information propagation between parent and child graphs during streaming sessions.
  • Removes events stream mode support in Pregel, as it was never functional.
└──▷ BREAKING ON UPGRADE
  • !The events stream mode is explicitly no longer supported in Pregel; any working setup that requested events as a stream mode will no longer function.
12 more releases in this issue · 2024-10-01 → 2024-10-31
0.2.40 NOTES STABLE

LangGraph 0.2.40 adds DuckDB checkpointing, richer ToolNode error handling, and concurrency limiting for async executors.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.40 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.40
└──▷ USE IT
Use a different state key for messages when your graph stores messages under a non-default key (e.g., chat_history).
python
tool_node = ToolNode(tools, messages_key="chat_history")
condition   = tools_condition(messages_key="chat_history")
Apply fine-grained ToolNode error handling: catch only specific exception types and format the error dynamically.
python
from langgraph.prebuilt import ToolNode

tool_node = ToolNode(
    tools,
    handle_tool_errors=(ValueError, KeyError),   # only catch these types
)

# — or use a callable for dynamic formatting —
tool_node = ToolNode(
    tools,
    handle_tool_errors=lambda exc: f"Tool failed: {type(exc).__name__}: {exc}",
)
  • Adds DuckDB checkpointing support via the new langgraph-checkpoint-duckdb package.
  • Adds messages_key parameter to ToolNode and tools_condition for flexible integration with non-standard state schemas.
  • Enhances ToolNode error handling: accepts a boolean, custom string, callable, or tuple of exception types to selectively catch and format errors, and attaches status="error" to error tool messages.
  • Adds concurrency limiting to AsyncBackgroundExecutor via max_concurrency config parameter and semaphore-based gated utility.
  • Adds node_finished callback parameter to PregelRunner via CONFIG_KEY_NODE_FINISHED for node-completion hooks.
+1 moreshow less
  • Improves schema inference in StateGraph for class method node functions via the extracted _get_input_schema_from_type_hint helper.
sdk==0.1.35 NOTES STABLE

LangGraph SDK 0.1.35 adds error-handling control to wait and raises default timeouts to 300 s

└──▷ GET THIS VERSION
$ git clone --branch sdk==0.1.35 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout sdk==0.1.35
└──▷ USE IT
Poll a long-running graph run without crashing your process on error — inspect the result yourself instead of catching an exception.
python
result = await client.wait(thread_id, run_id, raise_error=False)
if "__error__" in result:
    print("Run failed:", result["__error__"])
  • Adds raise_error parameter to LangGraphClient.wait and SyncLangGraphClient.wait, letting callers suppress exception raising and inspect error objects directly.
  • Increases default read/write timeouts from 60 s to 300 s in get_client and get_sync_client, enabling reliable use with long-running graph operations.
sdk==0.1.34 NOTES STABLE

LangGraph SDK 0.1.34 adds if_not_exists parameter and new "error" thread status for safer run handling.

└──▷ GET THIS VERSION
$ git clone --branch sdk==0.1.34 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout sdk==0.1.34
└──▷ USE IT
Auto-provision a thread on first run so a new user session starts without a separate thread-creation step.
python
async for chunk in client.runs.stream(
    thread_id=user_thread_id,
    assistant_id="my-assistant",
    input={"messages": [{"role": "user", "content": "Hello"}]},
    if_not_exists="create",
):
    print(chunk)
Gate on thread existence explicitly — raise fast if the thread ID supplied by a client is stale or invalid.
python
result = await client.runs.wait(
    thread_id=incoming_thread_id,
    assistant_id="my-assistant",
    input={"messages": [{"role": "user", "content": "Continue"}]},
    if_not_exists="reject",  # raises if thread_id not found
)
  • Adds if_not_exists parameter to stream, create, and wait client methods, letting callers auto-create a missing thread ("create") or reject the operation ("reject") instead of always raising.
  • Adds "error" as a valid ThreadStatus value, surfacing when an exception occurred during task processing.
  • Widens type annotations for stream_mode, interrupt_before, interrupt_after, and feedback_keys from list to Sequence, accepting tuples and other sequences without casting.
0.2.39 NOTES STABLE

LangGraph 0.2.39 adds TAG_NOSTREAM constant, structured error codes, and finer streaming control.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.39 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.39
└──▷ USE IT
Suppress a cost-tracking or internal chat model call from appearing in the user-facing stream.
python
from langgraph.constants import TAG_NOSTREAM

# When binding or invoking a chat model you want kept off the stream,
# pass TAG_NOSTREAM as a tag so StreamMessagesHandler skips it.
silent_model = llm.with_config({"tags": [TAG_NOSTREAM]})

# Use silent_model inside a node as normal — its tokens won't be streamed.
def my_node(state):
    result = silent_model.invoke(state["messages"])
    return {"messages": [result]}
Catch and branch on specific LangGraph error categories in production error handlers.
python
from langgraph.errors import ErrorCode
from langgraph.errors import GraphRecursionError

try:
    graph.invoke(inputs)
except GraphRecursionError as e:
    if ErrorCode.GRAPH_RECURSION_LIMIT.value in str(e):
        # surface a user-friendly message or increase recursion_limit
        print("Graph hit recursion limit — consider increasing recursion_limit or breaking cycles.")
  • New TAG_NOSTREAM constant in langgraph.constants lets you tag chat models to suppress their output from the stream.
  • New ErrorCode enum in langgraph.errors provides standardized codes (GRAPH_RECURSION_LIMIT, INVALID_CONCURRENT_GRAPH_UPDATE, INVALID_GRAPH_NODE_RETURN_VALUE, MULTIPLE_SUBGRAPHS) for programmatic error handling.
  • New create_error_message helper in langgraph.errors generates consistent error messages with links to troubleshooting documentation.
  • StreamMessagesHandler now respects TAG_NOSTREAM on chat model starts and TAG_HIDDEN on chain starts for fine-grained control over what gets streamed.
0.2.37 NOTES STABLE

LangGraph 0.2.37 adds RemainingSteps managed value and LoopProtocol for finer-grained loop termination control.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.37 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.37
└──▷ USE IT
Guard an agent node against runaway tool calls by checking how many steps remain — useful when you want to abort gracefully before hitting the recursion limit.
python
from langgraph.managed import RemainingSteps

def agent_node(state, remaining_steps: RemainingSteps):
    if remaining_steps < 2:
        # Not enough headroom — return a safe fallback instead of calling tools
        return {"messages": [AIMessage(content="Stopping early: too few steps remaining.")]}
    # ... normal tool-calling logic
    return model_with_tools.invoke(state["messages"])
  • Adds RemainingSteps managed value to expose the number of remaining steps during loop execution, usable alongside IsLastStep for precise loop control.
  • Introduces LoopProtocol interface, giving managed values and channels structured access to loop execution context (config, store, stream, step, stop).
  • Improves checkpointing in nested loops with proper parent configuration propagation via updated patch_checkpoint_map.
└──▷ BREAKING ON UPGRADE
  • !The ManagedValue.__call__ signature no longer accepts a step parameter; callers that passed step explicitly will break.
0.2.36 NOTES STABLE

LangGraph 0.2.36 adds RemoteGraph for interacting with hosted LangGraph deployments via the LangGraph API.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.36 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.36
└──▷ USE IT
Connect to a remotely hosted LangGraph deployment and stream results — useful when your graph runs in production and you want to interact with it programmatically from a client.
python
from langgraph.pregel.remote import RemoteGraph

remote_graph = RemoteGraph(
    url="https://my-deployment.langgraph.app",
    api_key="<your-api-key>",
    graph_id="my-graph"
)

async for chunk in remote_graph.astream({"input": "Hello"}):
    print(chunk)
  • New RemoteGraph class enables invoking, streaming, and inspecting state on remote LangGraph deployments through the LangGraph API.
  • New PregelProtocol defines a standard interface for interacting with graphs, providing both sync and async methods for state management, visualization, subgraph traversal, and execution.
  • Adds a result field to PregelTask to store and access structured task execution results in state snapshots.
sdk==0.1.33 NOTES STABLE

LangGraph SDK 0.1.33 adds wildcard node interrupts, custom stream mode, and richer update_state returns.

└──▷ GET THIS VERSION
$ git clone --branch sdk==0.1.33 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout sdk==0.1.33
└──▷ USE IT
Inspect the checkpoint produced after patching thread state, so you can resume from or verify the exact saved point.
python
response = await client.threads.update_state(
    thread_id=thread_id,
    values={"messages": [{"role": "assistant", "content": "Corrected reply"}]},
)
print(response)  # ThreadUpdateStateResponse with checkpoint info
Consume custom stream events alongside standard ones to handle application-defined data emitted during a run.
python
async for chunk in client.runs.stream(
    thread_id=thread_id,
    assistant_id=assistant_id,
    input={"messages": [{"role": "user", "content": "Hello"}]},
    stream_mode=["messages", "custom"],
):
    print(chunk)
  • Supports passing "*" to interrupt_before/interrupt_after parameters in RunsClient and CronClient to interrupt all nodes without listing them individually.
  • Adds "custom" option to StreamMode, giving more flexibility in how streams are handled.
  • update_state now returns a ThreadUpdateStateResponse containing checkpoint information instead of None.
  • Expands update_state values parameter to accept Sequence[dict] in addition to a single dict, enabling multi-dictionary state updates.
└──▷ BREAKING ON UPGRADE
  • !update_state on ThreadsClient and SyncThreadsClient now returns ThreadUpdateStateResponse instead of None — code that assumes a None return (e.g., ignores or asserts on the return value) will behave differently.
0.2.35 NOTES STABLE

LangGraph 0.2.35 adds cross-thread memory for agents and a new find_subgraph_pregel utility for nested graph introspection.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.35 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.35
└──▷ USE IT
Inspect a compiled runnable to find whether it contains a Pregel subgraph, useful before attaching a checkpointer to a nested graph.
python
from langgraph.pregel.utils import find_subgraph_pregel

subgraph = find_subgraph_pregel(my_runnable)
if subgraph:
    print("Found Pregel subgraph:", subgraph)
  • Adds cross-thread memory support in agent executors, enabling agents to retain information across separate conversation threads.
  • Introduces find_subgraph_pregel utility to recursively locate Pregel subgraphs within runnable components — useful for checkpoint handling and graph introspection.
  • Enhances map_debug_checkpoint to include task state information and properly maintain checkpoint namespaces for nested subgraph debugging.
checkpointpostgres==2.0.1 NOTES STABLE

AsyncPostgresStore now inherits from AsyncBatchedBaseStore, enabling efficient batched async operations.

└──▷ GET THIS VERSION
$ git clone --branch checkpointpostgres==2.0.1 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout checkpointpostgres==2.0.1
  • Enables batched async operations in AsyncPostgresStore via AsyncBatchedBaseStore inheritance, reducing round-trips for high-throughput workloads.
  • Adds explicit ORDER BY updated_at DESC to search queries in PostgresStore, providing consistent, deterministic result ordering.
└──▷ BREAKING ON UPGRADE
  • !BasePostgresStore is no longer a direct subclass of BaseStore; code that relied on that inheritance chain (e.g., isinstance checks or super() calls through BasePostgresStore) will break.
  • !_deserializer is now a class attribute on BasePostgresStore rather than an instance attribute set in __init__; subclasses that override or reference self._deserializer set during __init__ may behave differently.
0.2.34 NOTES STABLE

LangGraph 0.2.34 adds a store parameter to create_react_agent for cross-thread persistence.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.34 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.34
└──▷ USE IT
Persist memory across multiple user conversations by wiring a store into a ReAct agent at creation time.
python
from langgraph.prebuilt import create_react_agent

agent = create_react_agent(
    model=llm,
    tools=tools,
    checkpointer=checkpointer,  # single-thread (per-conversation) state
    store=store,                # cross-thread (multi-user) persistence
)
  • Adds store parameter to create_react_agent, enabling data persistence across multiple threads (e.g., different users or conversations) alongside the existing checkpointer parameter.
  • Adds a warning when InjectedStore annotation is used without langchain-core >= 0.3.8, surfacing the dependency requirement at runtime.
0.2.33 NOTES STABLE

LangGraph 0.2.33 adds InjectedStore annotation so tools can read/write the LangGraph store without exposing it to the model.

└──▷ GET THIS VERSION
$ git clone --branch 0.2.33 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout 0.2.33
└──▷ USE IT
Give a tool direct access to the LangGraph store (e.g. to look up or persist memory) without surfacing the store parameter to the LLM.
python
from typing import Annotated
from langgraph.prebuilt.tool_node import InjectedStore
from langgraph.store.base import BaseStore

def save_note(note: str, store: Annotated[BaseStore, InjectedStore()]) -> str:
    """Save a note to the store."""
    store.put(("notes",), "latest", {"text": note})
    return "Saved."
  • Adds InjectedStore annotation to inject LangGraph store objects directly into tool arguments, hiding them from the tool-calling model (similar to InjectedState).
  • Enhances ToolNode to automatically detect and inject the store for tools annotated with InjectedStore, with precomputed caching of state and store arguments for efficiency.
  • Enables RunnableCallable keyword arguments to override config values in invoke and ainvoke, giving callers finer control over execution.
sdk==0.1.32 NOTES STABLE

LangGraph SDK 0.1.32 adds a key-value Store API with namespaced put, get, delete, search, and list operations for both async and sync clients.

└──▷ GET THIS VERSION
$ git clone --branch sdk==0.1.32 https://github.com/langchain-ai/langgraph.git
# already have the repo? check out this version:
$ git checkout sdk==0.1.32
└──▷ USE IT
Persist and retrieve agent memory across runs by storing key-value data in a user-scoped namespace.
python
from langgraph_sdk import get_client

client = get_client()

# Store a user preference
await client.store.put_item(
    namespace=("users", "alice"),
    key="preferences",
    value={"theme": "dark", "language": "en"}
)

# Retrieve it later
item = await client.store.get_item(
    namespace=("users", "alice"),
    key="preferences"
)
print(item["value"])
Search stored items within a namespace prefix to find relevant context for an agent, with filtering.
python
from langgraph_sdk import get_client

client = get_client()

results = await client.store.search_items(
    namespace_prefix=("users",),
    filter={"language": "en"}
)
for item in results["items"]:
    print(item["namespace"], item["key"], item["value"])
Use the synchronous client in a non-async script to list all namespaces under a given prefix.
python
from langgraph_sdk import get_sync_client

client = get_sync_client()

namespaces = client.store.list_namespaces(prefix=("users",))
for ns in namespaces["namespaces"]:
    print(ns)
  • New StoreClient and SyncStoreClient classes provide async and sync key-value storage with put_item, get_item, delete_item, search_items, and list_namespaces methods.
  • Adds store property to LangGraphClient and SyncLangGraphClient for direct access to the new store API.
  • Exposes get_sync_client in module exports for easier access to the synchronous client.
  • New Item, ListNamespaceResponse, and SearchItemsResponse TypedDicts formalize storage operation schemas.
  • Adds output_schema field to the GraphSchema TypedDict.
+1 moreshow less
  • HttpClient and SyncHttpClient now support JSON payloads in DELETE requests.
Was this useful?

Letta (formerly MemGPT)

Sources Release notes → 0.5.1 3 RELEASES · 2024-10-04 → 2024-10-23 NOTES STABLE

Letta 0.5.1 adds Composio/CrewAI/LangChain tool auto-loading, multi-agent swarm support, and new context-window and tool APIs.

└──▷ GET THIS VERSION
$ git clone --branch 0.5.1 https://github.com/letta-ai/letta.git
# already have the repo? check out this version:
$ git checkout 0.5.1
└──▷ TRY IT
Auto-load Composio tools on server startup so agents can use them without manual registration.
$ export LETTA_LOAD_DEFAULT_EXTERNAL_TOOLS=true
export COMPOSIO_API_KEY=<your_key>
pip install 'letta[external-tools,server]'
letta server
  • Adds LETTA_LOAD_DEFAULT_EXTERNAL_TOOLS=true environment variable to auto-load tools from Composio, CrewAI, and LangChain when running letta server (install via letta[external-tools,server]).
  • Adds put_inner_thoughts_in_kwargs field to LLMConfig so models like gpt-4o-mini that require inner thoughts as keyword arguments in tool calls work correctly, including streaming support.
  • Adds a GET route to retrieve the breakdown of an agent's context window, plus library functions to get a context window overview.
  • Adds a DELETE endpoint to remove a file from a source.
  • Adds an endpoint to retrieve full Tool objects belonging to an agent.
+4 moreshow less
  • Adds pagination support for the list-tools endpoint.
  • Adds function IDs to LettaMessage function calls and responses.
  • Adds support for agent 'swarm' (multi-agent) orchestration.
  • Removes the requirement for authentication to use the Letta server and ADE; agents are now assigned a default user_id automatically, and user_id can still be passed via BEARER_TOKEN.
└──▷ BREAKING ON UPGRADE
  • !The Admin client and admin authentication are removed; Letta server no longer requires creating a user before creating an agent, and external services are now expected to manage users and authentication.
2 more releases in this issue · 2024-10-04 → 2024-10-23
0.5.0 NOTES STABLE

Letta 0.5.0 adds env-var-driven multi-provider model listing, Groq/Mistral/vLLM support, agent types, automated DB migrations, and a multi-message POST API.

└──▷ GET THIS VERSION
$ git clone --branch 0.5.0 https://github.com/letta-ai/letta.git
# already have the repo? check out this version:
$ git checkout 0.5.0
└──▷ TRY IT
Run a Letta server with multiple providers active simultaneously, so agents can use any available model without restarting.
$ export OPENAI_API_KEY=sk-...
export ANTHROPIC_API_KEY=sk-ant-...
export OLLAMA_BASE_URL=http://localhost:11434
letta server
  • Enables model providers via environment variables (OPENAI_API_KEY, ANTHROPIC_API_KEY, OLLAMA_BASE_URL) so a single letta server can serve agents with different model configurations concurrently without restart.
  • Adds VLLMProvider support, enabling vLLM-served models to appear in the CLI and ADE model dropdowns when configured.
  • Adds Groq as a provider option, with Llama 3.1 70b available for selection.
  • Adds MistralProvider as a new model provider option.
  • Refactors the POST agent/messages API endpoint to accept multiple messages in a single request.
+6 moreshow less
  • Adds AssistantMessage subtype support for LettaMessage in the API.
  • Introduces agent types via a new agent types capability.
  • Supports automated database migrations via Alembic, enabling future schema changes without manual intervention.
  • Persists tools to the database when saving an agent.
  • Lists available LLM and embedding models dynamically for Ollama, Azure OpenAI, and Google AI (Gemini) providers in the CLI and ADE dropdowns.
  • Enables adding files to agents via the ADE.
└──▷ BREAKING ON UPGRADE
  • !The letta configure and letta quickstart commands are deprecated and removed; provider configuration is now done via environment variables.
  • !The ~/.letta/config file is no longer used for specifying default LLMConfig and EmbeddingConfig; these must now be explicitly specified per agent at creation time.
  • !LLMConfig and EmbeddingConfig are now required fields for agent creation.
0.4.1 NOTES STABLE

Letta 0.4.1 adds Composio, LangChain, and CrewAI tool integrations, source detachment, org endpoints, and a health-check route.

└──▷ GET THIS VERSION
$ git clone --branch 0.4.1 https://github.com/letta-ai/letta.git
# already have the repo? check out this version:
$ git checkout 0.4.1
└──▷ TRY IT
Install external tool support and use a LangChain or CrewAI tool with a Letta agent on the same day.
$ pip install 'letta[external-tools]'
  • Adds letta[external-tools] install extra to enable Composio, LangChain, and CrewAI tool integrations with agents.
  • Adds user_id header support to the API, allowing per-request user identification.
  • Adds DEFAULT_USER_ID and DEFAULT_ORG_ID environment variables for local usage without explicit user/org setup.
  • Adds organization endpoints and schemas to the REST API.
  • Adds a health-check route to the server.
+4 moreshow less
  • Supports filtering jobs by source_id.
  • Supports detaching data sources from agents.
  • Makes tags optional (no longer required) when creating tools.
  • Adds defaults to Docker Compose config and .env.example to simplify local deployment.
Was this useful?

Microsoft AutoGen

Sources Release notes → v0.2.37 2 RELEASES · 2024-10-02 → 2024-10-23 NOTES STABLE

AutoGen v0.2.37 adds Kubernetes code execution, Gemini function calling, and AutoBuild function calling support.

└──▷ GET THIS VERSION
$ git clone --branch v0.2.37 https://github.com/microsoft/autogen.git
# already have the repo? check out this version:
$ git checkout v0.2.37
  • Adds a Kubernetes code executor, enabling sandboxed code execution inside K8s pods.
  • Adds function calling support for Gemini models (Part 2), expanding tool-use capabilities to Google's Gemini backend.
  • Enables function calling in AutoBuild, allowing automatically constructed agent teams to invoke tools.
  • Adds LangChain integration example, demonstrating interoperability between LangChain and AutoGen agents.
  • Adds Couchbase as a supported vector database backend with an example notebook.
+1 moreshow less
  • Adds Zep memory integration with documentation and notebook.
└──▷ BREAKING ON UPGRADE
  • !The Text Cache default is changed to None (previously a non-None default); setups relying on the old default cache behavior will no longer cache by default after upgrading.
1 more release in this issue · 2024-10-02 → 2024-10-23
v0.2.36 NOTES STABLE

AutoGen v0.2.36 adds Mem0 long-term memory, Amazon Bedrock, Cerebras, Ollama (with tool calling), Couchbase VectorDB, and Portkey integrations.

└──▷ GET THIS VERSION
$ git clone --branch v0.2.36 https://github.com/microsoft/autogen.git
# already have the repo? check out this version:
$ git checkout v0.2.36
└──▷ USE IT
Apply a MessageTransform to the GroupChat speaker-selection nested chat to control context sent to the selector LLM.
python
from autogen.agentchat.contrib.capabilities.transform_messages import TransformMessages
from autogen.agentchat.contrib.capabilities.transforms import MessageHistoryLimiter
from autogen import GroupChat, GroupChatManager

transforms = TransformMessages(transforms=[MessageHistoryLimiter(max_messages=10)])

groupchat = GroupChat(
    agents=[agent1, agent2, agent3],
    messages=[],
    speaker_selection_method="auto",
    select_speaker_transform_messages=transforms,
)
manager = GroupChatManager(groupchat=groupchat, llm_config=llm_config)
  • Adds Mem0 integration for long-term memory support in AI agents.
  • Adds Amazon Bedrock client for model access via AWS.
  • Adds Cerebras integration as a new LLM provider.
  • Adds Ollama client with tool-calling support.
  • Adds Couchbase VectorDB support for retrieval-augmented generation workflows.
+11 moreshow less
  • Adds Portkey integration for LLM observability and routing.
  • Enables MessageTransforms on GroupChat's Select Speaker nested chat when using speaker_selection_method='auto'.
  • Adds a MessageTransform that injects an agent's name into message content.
  • Adds GraphRAG interfaces for graph-based retrieval-augmented generation.
  • Adds Human Input Mode support in AutoGen Studio.
  • Updates WebSurfer with Selenium, Playwright, and support for many additional file types.
  • Adds async user hook support.
  • Adds kwargs passthrough to the Docker container running the Jupyter Server.
  • Adds session cookie forwarding from HTTP session to the WebSocket used by JupyterCodeExecutor.
  • Adds API call throttling capability.
  • AutoGen is now published on PyPI as autogen-agentchat starting with this version.
Was this useful?

PydanticAI

Sources Release notes → v0.0.2 NOTES

PydanticAI v0.0.2 adds timezone support and TypeAliasType union handling.

└──▷ GET THIS VERSION
$ git clone --branch v0.0.2 https://github.com/pydantic/pydantic-ai.git
# already have the repo? check out this version:
$ git checkout v0.0.2
  • Supports TypeAliasType unions, allowing type aliases defined with Python's TypeAliasType to be used in agent result schemas and tool signatures.
  • Adds timezone support to datetime handling within agents.
Was this useful?

Microsoft Semantic Kernel

Sources Release notes → dotnet-1.26.0 9 RELEASES · 2024-10-02 → 2024-10-31 NOTES STABLE

Semantic Kernel 1.26.0 adds AWS Bedrock connector, parallel function calls, ME.AI bidirectional adapters, and Native AOT support.

└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.26.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout dotnet-1.26.0
└──▷ USE IT
Interop between Semantic Kernel services and Microsoft.Extensions.AI consumers using the new bidirectional adapters.
csharp
// Wrap an SK IChatCompletionService as an ME.AI IChatClient
IChatClient chatClient = kernel.GetRequiredService<IChatCompletionService>().AsChatClient();
  • Adds ParallelFunctionCalls option to control parallel function call execution in .NET.
  • Adds a streaming flag to filter context models, enabling streaming-aware filtering.
  • Adds Amazon AWS Bedrock connector for .NET, expanding model provider integrations.
  • Enables bidirectional adapters between Semantic Kernel and Microsoft.Extensions.AI interfaces.
  • Adds GenericDataModel support to the Pinecone VectorStore connector.
+5 moreshow less
  • Allows any key type when using a custom collection factory in VectorStore.
  • Adds Native AOT support for .NET.
  • Adds state management support to Processes (Part 1), enabling stateful process steps.
  • Facilitates parallel execution of LocalProcess in .NET Processes.
  • Updates Azure AI Inference to beta.2.
8 more releases in this issue · 2024-10-02 → 2024-10-31
python-1.13.0 NOTES STABLE

Semantic Kernel Python 1.13.0 adds Ollama tool call and image content support plus parallel tool call control for OpenAI.

└──▷ GET THIS VERSION
$ git clone --branch python-1.13.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout python-1.13.0
└──▷ USE IT
Disable parallel tool calls in an OpenAI chat completion request to force sequential tool execution.
python
from semantic_kernel.connectors.ai.open_ai import OpenAIChatPromptExecutionSettings

settings = OpenAIChatPromptExecutionSettings(
    parallel_tool_calls=False
)
  • Adds parallel_tool_calls attribute to OpenAI chat prompt execution settings, enabling control over whether OpenAI calls tools in parallel during a completion.
  • Adds support for Ollama tool calls and image content, bringing multimodal and function-calling capabilities to the Ollama connector.
  • Allows callers to specify pre-existing file IDs when creating an assistant, avoiding redundant file uploads.
python-1.12.0 NOTES STABLE

Semantic Kernel Python 1.12.0 adds ONNX and AWS Bedrock connectors, PostgreSQL vector store, process framework, and structured output support.

└──▷ GET THIS VERSION
$ git clone --branch python-1.12.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout python-1.12.0
  • Adds 'low' severity level to the ContentFilterResultSeverity enum, expanding content filter granularity.
  • Adds a new ONNX connector for local model inference via the Semantic Kernel connector interface.
  • Adds a new AWS Bedrock connector for integrating Bedrock-hosted models.
  • Adds Vector Store support to the PostgreSQL connector.
  • Adds OpenAI Structured Output response_format support for constrained, schema-driven completions.
+3 moreshow less
  • Adds streaming code output for OpenAI Assistants, surfacing code interpreter results in real time.
  • Adds ability to specify a default timeout for the Assistant polling operation.
  • Introduces the Python process framework for orchestrating multi-step agent processes.
dotnet-1.25.0 NOTES STABLE

Semantic Kernel .NET 1.25.0 adds Pinecone vector search, MongoDB memory connector, SQL Server vector support, concurrent parallel function calls, and streaming tool call output.

└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.25.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout dotnet-1.25.0
  • Adds vector search support to the Pinecone connector for .NET.
  • Adds a MongoDB connector implementation for the new memory/vector design in .NET.
  • Adds SQL Server vector support (Dm/sqlserver/vector) for .NET.
  • Invokes parallel function calls concurrently in .NET, enabling parallel tool execution in a single inference turn.
  • Scopes step IDs to a process in .NET Processes, reducing cross-process ID collisions.
+9 moreshow less
  • Supports shared runtime code for .NET Processes.
  • Emits streaming function call content for the Assistant Agent in .NET.
  • Adds server URLs to additional properties in .NET OpenAPI/connector metadata.
  • Adds the ability to specify a default timeout for polling operations in the Python SDK.
  • Returns streaming tool call output to the caller in the Python SDK.
  • Improves vector search query in the Azure CosmosDB NoSQL connector for .NET.
  • Adds image-to-text support to the RAG sample for .NET.
  • Adds .NET samples showing interop with LangChain-ingested data.
  • Adds an example for retrieving citations from a 'chat with data' response in .NET.
dotnet-1.24.1 NOTES STABLE

Semantic Kernel dotnet-1.24.1 adds a SQLite vector store connector and JSON Schema generation for .NET Processes.

└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.24.1 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout dotnet-1.24.1
  • Adds SQLite connector for the new memory/vector store design (Microsoft.SemanticKernel.Connectors.Sqlite or equivalent vectordata implementation).
  • .NET Processes now generates JSON Schema from a Type directly, replacing manual schema definition.
dotnet-1.24.0 NOTES STABLE

Semantic Kernel .NET adds a Dapr runtime backend for the Process framework.

└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.24.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout dotnet-1.24.0
  • Adds a Dapr runtime for the Processes framework, enabling distributed, durable process orchestration via Dapr.
dotnet-1.23.0 NOTES STABLE

Semantic Kernel .NET 1.23.0 adds new Process error handling, fluent edge building, VectorStore search, ONNX and Bedrock connectors, and CreateFromType factory methods.

└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.23.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout dotnet-1.23.0
  • Adds OnError event handling exposure in .NET Processes via Expose OnError Event Handling, enabling structured error routing within process graphs.
  • Adds fluent edge building API for .NET Processes, allowing process step connections to be defined with a fluent builder pattern.
  • Adds CreateFromType and CreateMetadataFromType static factory methods for constructing kernel function metadata from CLR types.
  • Adds AddVectorStoreTextSearch support for service IDs on dependencies, allowing named DI registrations to be resolved for text search services.
  • Adds collection registration methods for the InMemory vector store connector, enabling IVectorStore collection lifecycle management in-process.
+14 moreshow less
  • Removes the class constraint from VectorStore record generics, allowing value types and non-reference types as vector store records.
  • Removes the notnull constraint from the generic data model for vector records.
  • Adds default index kind and distance function defaults for the Azure CosmosDB MongoDB connector.
  • Adds default index kind and distance function defaults for the Azure CosmosDB NoSQL connector.
  • Adds getting-started samples for Text Search, covering InMemory, Qdrant, and Google text search integrations.
  • Adds vector search RAG sample demonstrating retrieval-augmented generation with the VectorStore abstraction.
  • Moves VectorStore abstractions and VolatileVectorStore to updated package locations in preparation for stable release.
  • Adds OpenAI support to the RAG sample.
  • Makes the endpoint parameter in AddHuggingFaceChatCompletion optional.
  • Adds backward compatibility and data migration examples for VectorStore record schemas.
  • Adds Python Bedrock connector for Amazon Bedrock model access.
  • Adds Python ONNX connector for local ONNX model inference.
  • Adds low severity level to the Python ContentFilterResultSeverity enum.
  • Adds process abstractions and core builders updated in preparation for Dapr runtime support.
dotnet-1.22.0 NOTES STABLE

Semantic Kernel 1.22.0 adds sub-process support, code-interpreter streaming, usage metadata, and richer ITextToImageService abstractions.

└──▷ GET THIS VERSION
$ git clone --branch dotnet-1.22.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout dotnet-1.22.0
  • Adds optional version parameter to Azure OpenAI API connectors, allowing callers to pin a specific API version per request.
  • Expands ITextToImageService abstractions to support ExecutionSettings, enabling per-call generation configuration.
  • Adds token usage and other metadata to Assistant agent responses for cost and observability tracking.
  • Adds usage metadata to OpenAI streaming chunks, surfacing token counts during streamed completions.
  • Implements generic data model support for the Weaviate connector, matching the generic data model pattern available in other vector store connectors.
+7 moreshow less
  • Supports sub-processes in the Process Framework, enabling nested process composition.
  • Includes code and output generated by the code-interpreter tool in streaming output for agent runs.
  • Adds lazy step initialization to the Process Framework.
  • Improves mapper efficiency for Pinecone and Redis hashsets.
  • Improves mapping efficiency for Qdrant by removing the JSON intermediary layer.
  • Updates OpenAI connector to 2.0.0-beta.12 and Azure OpenAI connector to 2.0.0-beta.6.
  • Updates Azure/OpenAI connectors to 2.1.0-beta.1.
└──▷ BREAKING ON UPGRADE
  • !Gemini connector no longer throws an exception on invalid responses — previously raised exceptions are suppressed, which may change error-handling behavior in code that caught those exceptions.
python-1.11.0 NOTES STABLE

Semantic Kernel Python 1.11.0 adds streaming support for OpenAI Assistants and improved Anthropic function calling.

└──▷ GET THIS VERSION
$ git clone --branch python-1.11.0 https://github.com/microsoft/semantic-kernel.git
# already have the repo? check out this version:
$ git checkout python-1.11.0
  • Adds streaming support for OpenAI Assistants, enabling real-time token-by-token output from assistant runs.
  • Updates Anthropic function calling to support latest function-calling capabilities in the Anthropic integration.
Was this useful?

camel-ai

Sources Release notes → v0.2.3 2 RELEASES · 2024-10-10 → 2024-10-22 NOTES STABLE

camel-ai v0.2.3 adds WhatsApp, Discord, Slack, Arxiv, Google Scholar, AskNews, and Chunkr integrations plus FunctionTool refactor

└──▷ GET THIS VERSION
$ git clone --branch v0.2.3 https://github.com/camel-ai/camel.git
# already have the repo? check out this version:
$ git checkout v0.2.3
└──▷ USE IT
Drop system_message to spin up a minimal ChatAgent without boilerplate role definition.
python
from camel.agents import ChatAgent

agent = ChatAgent()  # system_message now optional
response = agent.step('Summarize the latest AI news')
print(response.msg.content)
Wrap a plain Python function as a FunctionTool (formerly OpenAIFunction) and attach it to an agent.
python
from camel.toolkits import FunctionTool
from camel.agents import ChatAgent

def get_weather(city: str) -> str:
    return f'Sunny in {city}'

tool = FunctionTool(get_weather)
agent = ChatAgent(tools=[tool])
response = agent.step('What is the weather in Paris?')
print(response.msg.content)
  • Renames OpenAIFunction to FunctionTool, providing a unified interface for defining callable tools across agents.
  • Makes system_message optional in ChatAgent, reducing boilerplate for minimal agent setups.
  • Adds ChatAgent interface enhancements and a configurable default model setting.
  • New ArxivToolkit for querying and retrieving academic papers from arXiv.
  • New GoogleScholarToolkit for searching Google Scholar from within agents.
+7 moreshow less
  • New AskNewsToolkit for fetching live news context inside agent workflows.
  • Integrates WhatsApp messaging as a new toolkit for agent-driven communication.
  • Integrates Discord as a new app toolkit, enabling agents to interact with Discord channels.
  • Integrates Slack as a new app toolkit, enabling agents to interact with Slack workspaces.
  • Integrates Chunkr for document chunking and processing workflows.
  • Adds Mistral ministral-3b and ministral-8b model support.
  • Adds AgentOps observability support for SambaNova-hosted models.
└──▷ BREAKING ON UPGRADE
  • !The model parameter in ModelFactory is renamed to model_type; any code passing model= as a keyword argument will break.
1 more release in this issue · 2024-10-10 → 2024-10-22
v0.2.2 NOTES STABLE

camel-ai v0.2.2 adds Llama tool calling, Nebula Graph integration, Mistral Pixtral support, and bytes handling for vector retrieval.

└──▷ GET THIS VERSION
$ git clone --branch v0.2.2 https://github.com/camel-ai/camel.git
# already have the repo? check out this version:
$ git checkout v0.2.2
  • Adds tool calling support for Llama models.
  • Adds Nebula Graph integration for graph-based storage and retrieval.
  • Supports the Mistral Pixtral multimodal model.
  • Adds support for handling bytes input in vector retrieval.
Was this useful?

holmesgpt

Sources Release notes → 0.5.0 2 RELEASES · 2024-10-03 → 2024-10-08 NOTES STABLE

SRE Agent - CNCF Sandbox Project

HolmesGPT 0.5.0 adds custom toolsets to the Helm chart and improved in-cluster authentication.

└──▷ GET THIS VERSION
$ git clone --branch 0.5.0 https://github.com/HolmesGPT/holmesgpt.git
# already have the repo? check out this version:
$ git checkout 0.5.0
  • Adds custom toolsets support to the Helm chart deployment.
  • Adds improved in-cluster authentication handling.
1 more release in this issue · 2024-10-03 → 2024-10-08
0.4.0 NOTES STABLE

HolmesGPT 0.4.0 adds tool_calls to the /api/conversation endpoint and lets you override the UI token via environment variable.

└──▷ GET THIS VERSION
$ git clone --branch 0.4.0 https://github.com/HolmesGPT/holmesgpt.git
# already have the repo? check out this version:
$ git checkout 0.4.0
  • The POST /api/conversation endpoint now returns tool_calls in its response, exposing which tools Holmes invoked during an investigation.
  • Allows overriding the UI token with an environment variable instead of requiring it to be set in config.
  • Improves CLI logging and expands the --verbose flag for more detailed diagnostic output.
  • Improves prompt output to produce more detailed investigation results.
Was this useful?
◆  Local LLM Runtimes

Jan AI Jan

Sources Release notes → v0.5.7 2 RELEASES · 2024-10-02 → 2024-10-24 NOTES STABLE

Jan v0.5.7 adds markdown rendering in user messages and promotes persistent thread instructions to a stable feature.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.7 https://github.com/janhq/jan.git
# already have the repo? check out this version:
$ git checkout v0.5.7
  • Adds markdown rendering support for user messages in chat threads.
  • Promotes saved instructions for new threads from experimental to a stable feature.
  • Introduces a Jan beta version channel.
1 more release in this issue · 2024-10-02 → 2024-10-24
v0.5.5 NOTES STABLE

Jan v0.5.5 adds textarea auto-resize and an enhanced tabbed model-selection UI.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.5 https://github.com/janhq/jan.git
# already have the repo? check out this version:
$ git checkout v0.5.5
  • Adds auto-resizing textarea in the chat input area, expanding as content grows.
  • Enhances the model selection UI with a new tabs component for browsing models.
Was this useful?

KoboldCpp

Sources Release notes → v1.76 NOTES

KoboldCpp v1.76 adds Anti-Slop phrase banning via banned_strings and a new Roleplay Character Creator scenario in Kobold Lite.

└──▷ GET THIS VERSION
$ git clone --branch v1.76 https://github.com/LostRuins/koboldcpp.git
# already have the repo? check out this version:
$ git checkout v1.76
└──▷ TRY IT
Block overused filler phrases from LLM output to reduce 'slop' — useful when running automated generation pipelines where clichéd phrases degrade quality.
$ curl -s http://localhost:5001/api/v1/generate -H 'Content-Type: application/json' -d '{"prompt": "Tell me a story.", "banned_strings": ["In the realm of", "suddenly", "little did he know"]}'
  • Adds Anti-Slop Sampling (Phrase Banning) via the banned_strings field: up to 48 case-insensitive words or phrases can be blocked by backtracking and regenerating when they appear in output.
  • The /api/extra/perf/ endpoint now returns whether the instance was launched in quiet mode (terminal output suppression).
  • Adds timestamp information to each request start event.
  • Adds a new Roleplay Character Creator scenario in Kobold Lite: a wizard-driven UI for building roleplay bots with the Aesthetic UI, with support for loading pre-existing Tavern Character Cards.
Was this useful?

LocalAI

Sources Release notes → v2.22.1 2 RELEASES · 2024-10-12 → 2024-10-21 NOTES STABLE

LocalAI v2.22.1 adds Sprig templating and text extraction for multimodal requests, plus Phi-3 Vision and 30+ new gallery models.

└──▷ GET THIS VERSION
$ git clone --branch v2.22.1 https://github.com/mudler/LocalAI.git
# already have the repo? check out this version:
$ git checkout v2.22.1
  • Adds Sprig template functions to multimodal templates, enabling richer data manipulation in prompt construction.
  • Adds text extraction from multimodal requests in templates, allowing templates to pull plain text out of mixed-media inputs.
  • Adds phi-3 vision to the model gallery, enabling multimodal vision inference locally.
  • Adds 30+ new models to the gallery, including llama-3.1-nemotron-70b-instruct-hf, supernova-medius, cursorcore-qw2.5-7b-i1, ml-ms-etheris-123b, and multiple CursorCore, Hermes-3, and Llama-3.x variants.
1 more release in this issue · 2024-10-12 → 2024-10-21
v2.22.0 NOTES STABLE

LocalAI v2.22.0 adds vLLM video/image-to-text, a tokenization endpoint, loaded-model listing via /system, and configurable multimodal placeholders.

└──▷ GET THIS VERSION
$ git clone --branch v2.22.0 https://github.com/mudler/LocalAI.git
# already have the repo? check out this version:
$ git checkout v2.22.0
└──▷ TRY IT
Submit a video to a vLLM-backed model for description — extend the OpenAI chat API with the new video_url content type.
$ curl http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o",
    "messages": [
      {
        "role": "user",
        "content": [
          {"type": "text", "text": "What is in this video?"},
          {"type": "video_url", "video_url": {"url": "https://example.com/clip.mp4"}}
        ]
      }
    ],
    "max_tokens": 300
  }'
Override the default image and video placeholder format for a vLLM model that uses a non-standard notation.
yaml
template:
  image: "<|image_{{.ID}}|> {{.Text}}"
  video: "<|video_{{.ID}}|> {{.Text}}"
  audio: "<|audio_{{.ID}}|> {{.Text}}"
  • Adds template.video, template.image, and template.audio keys to model YAML config to override per-backend multimodal placeholder notation (e.g. <|video_{{.ID}}|> {{.Text}}).
  • Extends the chat completions API to accept video_url and audio content types alongside images, enabling video and audio understanding via the vLLM backend.
  • Lists all currently loaded models via the GET /system endpoint for real-time model management.
  • Adds a tokenization endpoint to the API.
  • Adds token metrics retrieval to the GRPC server.
+3 moreshow less
  • Adds a correlationID field to chat request tracking via the API.
  • Adds force-shutdown capability for backends.
  • The Transformers backend now reuses an already-downloaded model instead of re-downloading it.
Was this useful?

SGLang

Sources Release notes → v0.3.4.post1 2 RELEASES · 2024-10-02 → 2024-10-22 NOTES STABLE

SGLang v0.3.4.post1 adds an offline Engine API, overlap scheduler, async/streaming engine support, and new model/hardware coverage.

└──▷ GET THIS VERSION
$ git clone --branch v0.3.4.post1 https://github.com/sgl-project/sglang.git
# already have the repo? check out this version:
$ git checkout v0.3.4.post1
└──▷ TRY IT
Tune continuous decode batch size from the CLI to reduce CPU overhead on high-throughput serving deployments.
$ python -m sglang.launch_server --model-path meta-llama/Llama-3.2-8B --num-continuous-decode-steps 4
  • Exposes --num-continuous-decode-steps as a CLI argument to control continuous decode step count.
  • Adds an offline Engine API for inference without an HTTP server, with reduced overhead and support for async and streaming generation.
  • Adds get_tokenizer function to the Engine class for direct tokenizer access in offline workflows.
  • Adds HTTP API endpoints to enable and disable the PyTorch profiler at runtime.
  • Adds an overlap scheduler to hide CPU overhead during inference.
+8 moreshow less
  • Supports min_tokens parameter in sgl.gen for minimum output length control.
  • Adds support for reward models.
  • Adds support for Intel XPU GPUs via PyTorch.
  • Adds support for new models: Llama 3.2, QWen-VL2, OLMo, and GLM 4.
  • Accelerates multi-LoRA serving throughput.
  • Adds float8 dynamic quantization support via torchao_utils.
  • Adds support for double sparsity attention.
  • Adds MoE tuning optimizations for AMD MI300x GPUs.
1 more release in this issue · 2024-10-02 → 2024-10-22
v0.3.2 NOTES STABLE

SGLang v0.3.2 adds multi-LoRA serving, AMD/ROCm support, torchao quantization, and a new --attention-backend flag.

└──▷ GET THIS VERSION
$ git clone --branch v0.3.2 https://github.com/sgl-project/sglang.git
# already have the repo? check out this version:
$ git checkout v0.3.2
└──▷ TRY IT
Switch to the Triton attention backend (with torch.compile and CUDA graph) instead of the default FlashInfer backend.
$ python -m sglang.launch_server --model-path meta-llama/Meta-Llama-3-8B --attention-backend triton
  • Introduces --attention-backend CLI flag to select the attention backend, replacing the deprecated --disable-flashinfer.
  • Adds constrained_json_whitespace_pattern to ServerArgs for fine-grained control over JSON whitespace in constrained decoding.
  • Passes model_override_args to launch_server via the CLI, enabling runtime model config overrides without code changes.
  • Supports OpenAI API json_schema response format for structured output.
  • Supports response prefill via the OpenAI-compatible API.
+7 moreshow less
  • Initial support for multi-LoRA serving, including LoRA path renaming.
  • Integrates torchao quantization (int4, int8, fp8) for Llama, Mixtral, and Qwen MoE models.
  • Enables torch.compile and CUDA graph support for the Triton attention backend, including DeepSeek MLA.
  • Enables Multi-head Latent Attention (MLA) by default for DeepSeek-v2.
  • Adds AMD GPU support via PyTorch for ROCm backend.
  • Adds new model support: MiniCPM3, OLMoE, BaiChuan2, XVERSE (Dense and MoE), and SmolLM.
  • Adds bench_server_latency.py for server latency benchmarking.
└──▷ BREAKING ON UPGRADE
  • !The --disable-flashinfer flag is deprecated and replaced by --attention-backend; existing scripts using --disable-flashinfer will need to be updated.
Was this useful?

oobabooga's Text Generation WebUI (textgen)

Sources Release notes → v1.16 2 RELEASES · 2024-10-01 → 2024-10-25 NOTES STABLE

oobabooga text-gen v1.16 adds Whisper Turbo transcription and RWKV-World instruction template support.

└──▷ GET THIS VERSION
$ git clone --branch v1.16 https://github.com/oobabooga/textgen.git
# already have the repo? check out this version:
$ git checkout v1.16
  • Adds Whisper Turbo as a selectable transcription model option.
  • Adds RWKV-World instruction template for use with RWKV-World models.
1 more release in this issue · 2024-10-01 → 2024-10-25
v1.15 NOTES STABLE

oobabooga textgen v1.15 adds XTC sampler, sortable repetition penalties, and ExLlamaV2 tensor parallelism for multi-GPU inference.

└──▷ GET THIS VERSION
$ git clone --branch v1.15 https://github.com/oobabooga/textgen.git
# already have the repo? check out this version:
$ git checkout v1.15
  • Adds xtc to the Sampler priority ordering keywords, alongside new keywords repetition_penalty, presence_penalty, frequency_penalty, dry, encoder_repetition_penalty, and no_repeat_ngram, enabling fine-grained control over the order repetition penalties are applied.
  • Adds Exclude Top Choices (XTC) sampler to boost creativity, break writing clichés, and inhibit non-verbatim repetition.
  • Enables ExLlamaV2 tensor parallelism to increase multi-GPU inference speeds.
  • Removes AutoAWQ, AutoGPTQ, HQQ, and AQLM from requirements.txt; these can still be installed manually.
  • Adds a beforeunload confirmation dialog when leaving the page to prevent accidental session loss.
+2 moreshow less
  • Updates API documentation with examples to list and load models.
  • Defers PEFT import until needed, reducing web UI launch time.
└──▷ BREAKING ON UPGRADE
  • !AutoAWQ and AutoGPTQ are removed from requirements.txt due to lack of support for PyTorch 2.4.1 and CUDA 12.1; setups relying on these quantization backends must install them manually.
  • !HQQ and AQLM are removed from requirements.txt; setups using these experimental backends must install them manually.
Was this useful?

vLLM

Sources Release notes → v0.6.3.post1 2 RELEASES · 2024-10-14 → 2024-10-17 NOTES STABLE

vLLM v0.6.3.post1 adds multimodal embedding support, new Mistral models, and Exllama compressed-tensors backend

└──▷ GET THIS VERSION
$ git clone --branch v0.6.3.post1 https://github.com/vllm-project/vllm.git
# already have the repo? check out this version:
$ git checkout v0.6.3.post1
  • Adds Exllama as a backend for compressed-tensors quantization, expanding quantized inference options.
  • Adds CUDA time layer-wise profiler for per-layer GPU timing analysis.
  • Adds compressed-tensors INT8 W8A8 AZP support on CPU hardware.
  • Supports VLM2Vec, the first multimodal embedding model in vLLM, enabling vision-language embedding use cases.
  • Supports Ministral 3B and Ministral 8B via interleaved attention.
+5 moreshow less
  • Supports multiple and interleaved images for Llama 3.2 vision models.
  • Supports SDPA attention for Molmo vision backbone.
  • Improves continuous batching for Jamba and Mamba models.
  • Optimizes speculative decoding ngram lookup performance.
  • Block manager v2 is now the default; block manager v1 is removed.
└──▷ BREAKING ON UPGRADE
  • !Block manager v1 is removed; block manager v2 is now the default. Any configuration or workflow relying on block manager v1 will break on upgrade.
1 more release in this issue · 2024-10-14 → 2024-10-17
v0.6.3 NOTES STABLE

vLLM v0.6.3 adds Granite MoE, Mamba, GLM-4V, Molmo, NVLM-D, Molmo vision models, Llama 3.1/3.2 tool use, and VLLM_TORCH_COMPILE_LEVEL env var for full Inductor graph compilation.

└──▷ GET THIS VERSION
$ git clone --branch v0.6.3 https://github.com/vllm-project/vllm.git
# already have the repo? check out this version:
$ git checkout v0.6.3
└──▷ TRY IT
Enable full Inductor graph compilation to maximize throughput when serving a model, bypassing vLLM custom ops.
$ VLLM_TORCH_COMPILE_LEVEL=3 vllm serve meta-llama/Llama-3.1-8B-Instruct
Skip P2P GPU connectivity checks in environments where the check hangs or incorrectly fails (e.g., certain cloud multi-GPU setups).
$ VLLM_SKIP_P2P_CHECK=1 vllm serve meta-llama/Llama-3.1-70B-Instruct --tensor-parallel-size 4
  • Adds VLLM_TORCH_COMPILE_LEVEL environment variable to control torch.compile compilation levels; setting VLLM_TORCH_COMPILE_LEVEL=3 enables Inductor full graph compilation without vLLM custom ops.
  • Adds VLLM_SKIP_P2P_CHECK flag to skip peer-to-peer GPU connectivity checks in distributed deployments.
  • Moves guided decoding params into SamplingParams, unifying the interface for structured-output control.
  • Makes scheduling policy settable via EngineArgs, enabling priority-based scheduling to be configured at engine startup.
  • Adds support for Llama 3.1 and 3.2 tool use via the tool calling interface.
+21 moreshow less
  • Adds tool calling support for InternLM2.5 models.
  • Adds new text models: Granite MoE and Mamba.
  • Adds new vision-language models: GLM-4V, Molmo, and NVLM-D.
  • Adds reward model support for Qwen2.5-Math-RM-72B.
  • Adds Gemma2 embedding model support.
  • Adds input embeddings support for Qwen2-VL and MiniCPMV.
  • Adds LoRA support for MiniCPMV2.5 and MiniCPMV2.6.
  • Expands LoRA modules for Mixtral.
  • Expands bitsandbytes quantization support to Falcon, OPT, Gemma, Gemma2, and Phi models.
  • Adds AWQ quantization support for the CPU backend.
  • Adds cross-attention and encoder-decoder model support on the x86 CPU backend.
  • Adds async output processor for the XPU backend.
  • Adds on-device sampling support for Neuron.
  • Enables OpenVINO GPU backend support.
  • Enables combined multi-step scheduling, chunked prefill, and prefix caching simultaneously.
  • Enables CUDA Graphs for multi-step scheduling combined with chunked prefill.
  • Adds priority scheduling support for embedding requests and via the OpenAI-compatible API.
  • Extends pipeline parallelism support to remaining text and embedding models.
  • Adds explicit out-of-tree (OOT) interface for vLLM models including OOT embedding models.
  • Adds support for HuggingFace's continue_final_message parameter in the frontend.
  • Exposes InternVL2 max_dynamic_patch as a mm_processor_kwarg for multimodal processing control.
└──▷ BREAKING ON UPGRADE
  • !BlockSpaceManagerV2 is now the default block manager, replacing BlockSpaceManagerV1; deployments relying on V1 behavior will use the new code path automatically on upgrade.
Was this useful?
◆  AI Model & Data Infrastructure

Ollama

Sources Release notes → v0.4.0 3 RELEASES · 2024-10-11 → 2024-10-21 NOTES STABLE

Get up and running with Kimi-K2.6, GLM-5.2, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other models.

Ollama v0.4 adds Llama 3.2 Vision (multimodal) support and Safetensors import without a Modelfile.

└──▷ GET THIS VERSION
$ git clone --branch v0.4.0 https://github.com/ollama/ollama.git
# already have the repo? check out this version:
$ git checkout v0.4.0
└──▷ TRY IT
Run the 90B Llama 3.2 Vision model locally for large-scale image-understanding tasks.
$ ollama run llama3.2-vision:90b
Import a Safetensors model checkpoint directly without authoring a Modelfile first.
$ ollama create my-model
  • Supports the Llama 3.2 Vision (Mllama) multimodal architecture, enabling image-understanding workloads via ollama run llama3.2-vision.
  • Enables importing models directly from Safetensors files without requiring a Modelfile when running ollama create.
  • Follow-on requests to vision models are now significantly faster, enabling more responsive multi-turn visual conversations.
2 more releases in this issue · 2024-10-11 → 2024-10-21
v0.3.14 NOTES STABLE

Ollama v0.3.14 adds IBM Granite 3 MoE and Dense model support for low-latency and RAG/tool-use workloads.

└──▷ GET THIS VERSION
$ git clone --branch v0.3.14 https://github.com/ollama/ollama.git
# already have the repo? check out this version:
$ git checkout v0.3.14
└──▷ TRY IT
Pull and run the IBM Granite 3 MoE 3B model for low-latency inference tasks.
$ ollama run granite3-moe
Pull and run the IBM Granite 3 Dense 8B model for tool-use or RAG-backed workflows.
$ ollama run granite3-dense
  • Adds Granite 3 MoE (1B and 3B): IBM's first mixture-of-experts Granite models optimized for low-latency inference.
  • Adds Granite 3 Dense (2B and 8B): IBM Granite models designed for tool-use, RAG, code generation, and translation.
  • Supports the IBM Granite and GraniteMoE model architectures natively.
v0.3.13 NOTES STABLE

Ollama v0.3.13 adds Llama Guard 3 and ShieldGemma safety classification models for LLM input/output screening.

└──▷ GET THIS VERSION
$ git clone --branch v0.3.13 https://github.com/ollama/ollama.git
# already have the repo? check out this version:
$ git checkout v0.3.13
  • Adds Llama Guard 3 support: Meta's fine-tuned content safety classification models for screening LLM inputs and outputs.
  • Adds ShieldGemma support: Google DeepMind's instruction-tuned models for evaluating text prompts and responses against defined safety policies.
Was this useful?

NVIDIA Triton Inference Server

Sources Release notes → v2.51.0 NOTES

Triton Inference Server v2.51.0 optimizes vLLM performance with custom metrics support.

└──▷ GET THIS VERSION
$ git clone --branch v2.51.0 https://github.com/triton-inference-server/server.git
# already have the repo? check out this version:
$ git checkout v2.51.0
  • Optimizes vLLM performance with custom metrics.
Was this useful?
Other / Uncategorized
◆  AI OBSERVABILITY

Arize Phoenix

Sources Release notes → arize-phoenix-v5.6.0 6 RELEASES · 2024-10-05 → 2024-10-29 NOTES STABLE

Phoenix 5.6.0 adds LLMRelationalEvaluator, Anthropic token counts in playground, and tool call support for span replay.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v5.6.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v5.6.0
  • Adds LLMRelationalEvaluator to the Phoenix experiments library for relational LLM-based evaluation tasks.
  • Playground now surfaces tool_calls from spans and plumbs span-defined tools into the playground UI, enabling full tool-call replay from production traces.
  • Playground displays token counts for Anthropic models alongside existing providers.
  • Playground adds tool role messages to the conversation UI, rounding out multi-turn message type support.
  • Adds a model invocation parameters form scaffold to the playground for configuring model-specific parameters.
+2 moreshow less
  • Adds a markdown toggle to playground output cards so LLM responses can be rendered as formatted markdown.
  • Adds an Annotate button and slide-over panel to the run metadata footer for inline annotation of experiment runs.
5 more releases in this issue · 2024-10-05 → 2024-10-29
arize-phoenix-v5.5.0 NOTES STABLE

Arize Phoenix v5.5.0 adds Anthropic support to subscription streaming.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v5.5.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v5.5.0
  • Adds Anthropic model support to subscription streaming.
arize-phoenix-v5.4.0 NOTES STABLE

Phoenix 5.4.0 adds secure WSS connection support and playground span details on run completion.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v5.4.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v5.4.0
  • Adds support for secure wss connections to Phoenix.
  • Playground now returns the finalized span at the end of a subscription, making trace data available immediately after a run.
  • Playground now displays span details when a run ends, surfacing trace information inline.
arize-phoenix-v5.3.0 NOTES STABLE

Phoenix 5.3.0 ships a full Playground UI for LLM span replay, streaming completions, tool calling, Azure OpenAI support, and a TypeScript client scaffold.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v5.3.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v5.3.0
  • Playground replays LLM spans by parsing the llm.input_messages span attribute and pre-populating the prompt editor, letting teams iterate on prompts directly from a captured trace.
  • Playground supports streaming chat completions, letting practitioners see model output token-by-token during interactive prompt tuning.
  • Playground adds a tools UI with full tool-calling backend support, including wiring up tool choice to the model invocation.
  • Playground supports Azure OpenAI as a provider alongside existing providers, with model name and provider inferred automatically from the span.
  • Playground allows up to 4 side-by-side instances, distinguished alphabetically, for parallel prompt comparison.
+6 moreshow less
  • Playground includes a template language toggle and a CodeMirror-based template string editor that extracts and displays variables from all message templates as 'inputs'.
  • Playground provides credential storage so API keys are persisted across sessions without re-entry.
  • Playground creates an LLM span for each playground run, recording invocation parameters for traceability.
  • Adds a LiteLLM integrations UI surface for configuring LiteLLM-backed models.
  • Adds a generic model listing UI, enabling selection of models from configured providers.
  • Scaffolds a TypeScript Phoenix client (ts package) for programmatic access to Phoenix from JavaScript/TypeScript environments.
arize-phoenix-evals-v0.17.0 NOTES STABLE

Phoenix Evals now always sends prompts as system messages for OpenAI models.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-evals-v0.17.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-evals-v0.17.0
  • OpenAI model evaluations now always send prompts as system-role messages instead of user-role messages.
arize-phoenix-v5.2.0 NOTES STABLE

Arize Phoenix v5.2.0 introduces a new Phoenix CLI.

└──▷ GET THIS VERSION
$ git clone --branch arize-phoenix-v5.2.0 https://github.com/Arize-ai/phoenix.git
# already have the repo? check out this version:
$ git checkout arize-phoenix-v5.2.0
  • Adds a Phoenix command-line interface (phoenix CLI) for interacting with Phoenix from the terminal.
Was this useful?

Langfuse

Sources Release notes → v2.86.0 5 RELEASES · 2024-10-04 → 2024-10-22 NOTES STABLE

Langfuse v2.86.0 adds a Comments API, queueId and traceTags filters on GET /scores, markdown rendering, and playground message reordering.

└──▷ GET THIS VERSION
$ git clone --branch v2.86.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:
$ git checkout v2.86.0
└──▷ TRY IT
Filter annotation scores to only those belonging to a specific review queue, useful when multiple teams run parallel annotation workflows.
$ curl -X GET 'https://<your-langfuse-host>/api/public/scores?queueId=<queue-id>' \
  -H 'Authorization: Basic <base64-encoded-key>'
Retrieve scores only for traces carrying a specific tag, e.g. isolating production traffic scored for a nightly eval run.
$ curl -X GET 'https://<your-langfuse-host>/api/public/scores?traceTags=production' \
  -H 'Authorization: Basic <base64-encoded-key>'
Attach a reviewer comment to a trace programmatically after an automated eval flags it for human review.
$ curl -X POST 'https://<your-langfuse-host>/api/public/comments' \
  -H 'Authorization: Basic <base64-encoded-key>' \
  -H 'Content-Type: application/json' \
  -d '{"traceId": "<trace-id>", "content": "Flagged for hallucination — needs human review"}'
  • Adds POST /comments, GET /comments, and GET /comments/${commentId} API endpoints for programmatic comment management on traces and observations.
  • Adds queueId query parameter to GET /scores to filter scores by annotation queue.
  • Adds traceTags query parameter to GET /scores to filter scores by tags on the parent trace.
  • Adds comment support in the annotation queue view, allowing reviewers to leave notes directly while scoring items.
  • Renders plain string outputs as Markdown by default on single trace/observation pages.
+3 moreshow less
  • Adds 'Select All' / 'Deselect All' buttons to column visibility pickers across all tables.
  • Supports drag-and-drop reordering of messages in the prompt playground.
  • Adds ingestion delay configuration to control when ingested events are processed.
4 more releases in this issue · 2024-10-04 → 2024-10-22
v2.85.0 NOTES STABLE

Langfuse v2.85.0 adds AWS Bedrock support in the playground and evals, plus a color-coding toggle for trace tree metrics.

└──▷ GET THIS VERSION
$ git clone --branch v2.85.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:
$ git checkout v2.85.0
  • Adds AWS Bedrock support in the Playground and LLM-as-a-judge evaluations.
  • Adds a toggle in the UI to enable or disable color coding of metrics on the trace tree.
  • Enables annotation queues for cloud hobby-tier plans.
v2.84.0 NOTES STABLE

Langfuse v2.84.0 adds annotation queues (beta) and API key invalidation via cloud admin API.

└──▷ GET THIS VERSION
$ git clone --branch v2.84.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:
$ git checkout v2.84.0
  • Adds API key invalidation via the cloud admin API.
  • Introduces annotation queues as a feature-flagged beta, with support for updating queue names.
v2.83.0 NOTES STABLE

Langfuse v2.83.0 adds GitLab as an authentication provider.

└──▷ GET THIS VERSION
$ git clone --branch v2.83.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:
$ git checkout v2.83.0
  • Adds GitLab as an OAuth authentication provider for self-hosted deployments.
v2.82.0 NOTES STABLE

Langfuse v2.82.0 adds tokens-per-second to the generations table and improves cost/latency rendering in the trace view.

└──▷ GET THIS VERSION
$ git clone --branch v2.82.0 https://github.com/langfuse/langfuse.git
# already have the repo? check out this version:
$ git checkout v2.82.0
  • Adds tokens-per-second display to the generations table, giving practitioners a quick throughput signal alongside existing latency and cost columns.
  • Improves cost and latency rendering on the trace tree and trace preview for clearer at-a-glance performance inspection.
  • Supports initializing environment variables via Docker Compose to streamline self-hosted deployments.
Was this useful?

Weights & Biases Weave

Sources Release notes → v0.51.17 3 RELEASES · 2024-10-09 → 2024-10-17 NOTES STABLE

Weave v0.51.17 adds NotDiamond integration, paginated table queries, display_name for ops, a finish handler for ops, and a Callout UI component.

└──▷ GET THIS VERSION
$ git clone --branch v0.51.17 https://github.com/wandb/weave.git
# already have the repo? check out this version:
$ git checkout v0.51.17
└──▷ USE IT
Attach a human-readable label to a traced op so it appears clearly in the Weave UI instead of the raw function name.
python
import weave

@weave.op(display_name='My Summarizer')
def summarize(text: str) -> str:
    return text[:100]
Run logic after an op finishes — useful for logging, cleanup, or post-processing traced outputs.
python
import weave

def on_finish(result):
    print('Op finished with:', result)

@weave.op(finish_handler=on_finish)
def my_op(x: int) -> int:
    return x * 2
  • Adds display_name field to ops, allowing human-readable labels to be attached to traced operations.
  • Exposes TableQueryStats and paginated table queries via a new streaming interface, enabling efficient traversal of large tables.
  • Adds a finish handler for ops, giving callers a hook to run logic when an op completes.
  • Adds NotDiamond integration for tracing calls through the NotDiamond routing API.
  • Minimizes blocking calls during tracing to reduce latency overhead in instrumented code.
+2 moreshow less
  • Adds a new Callout UI component to the frontend component library.
  • Improves table query performance by splitting metadata and value retrieval in object queries.
2 more releases in this issue · 2024-10-09 → 2024-10-17
v0.51.16 NOTES STABLE

Weave v0.51.16 adds NotDiamond integration, paginated table queries, op display names, finish handlers, and async-friendly tracing.

└──▷ GET THIS VERSION
$ git clone --branch v0.51.16 https://github.com/wandb/weave.git
# already have the repo? check out this version:
$ git checkout v0.51.16
└──▷ USE IT
Give a traced op a human-readable label that appears in the Weave UI instead of the raw function name.
python
import weave

@weave.op(display_name='My Summarizer')
def summarize(text: str) -> str:
    return text[:100]
Run post-processing logic (e.g. logging, cleanup) immediately after an op finishes, using the new finish handler hook.
python
import weave

def on_finish(call):
    print('Op finished:', call)

@weave.op()
def my_op(x: int) -> int:
    return x * 2

my_op.finish_handler = on_finish
  • Exposes TableQueryStats and paginated table queries via a new streaming interface, enabling efficient traversal of large datasets without loading all rows into memory.
  • Adds display_name field to ops, letting practitioners label operations with human-readable names distinct from their code identifiers.
  • Adds a finish handler for ops, allowing post-execution callbacks to be registered on op completion.
  • Minimizes blocking calls during tracing, reducing latency impact on instrumented code paths.
  • New NotDiamond integration for automatic LLM routing tracking within Weave traces.
+1 moreshow less
  • New Callout UI component available in the frontend component library.
v0.51.14 NOTES STABLE

Weave v0.51.14 adds paginated table queries, TableQueryStats exposure, minimized blocking during tracing, and a finish handler for ops.

└──▷ GET THIS VERSION
$ git clone --branch v0.51.14 https://github.com/wandb/weave.git
# already have the repo? check out this version:
$ git checkout v0.51.14
  • Exposes TableQueryStats and supports paginated table queries, enabling callers to retrieve large tables in pages rather than a single blocking fetch.
  • Minimizes blocking calls while tracing, reducing latency impact on instrumented code paths.
  • Adds a finish handler for ops, allowing post-execution hooks to be registered on operations.
  • New Callout UI component added to the frontend component library.
Was this useful?
◆  VECTOR DB RAG

Chroma

Sources Release notes → 0.5.16 3 RELEASES · 2024-10-08 → 2024-10-29 NOTES STABLE

Chroma 0.5.16 adds rate limiting across all operations, tenant/database scoping for collection ops, and RUST_LOG-driven tracing configuration.

└──▷ GET THIS VERSION
$ git clone --branch 0.5.16 https://github.com/chroma-core/chroma.git
# already have the repo? check out this version:
$ git checkout 0.5.16
└──▷ TRY IT
Configure Chroma's Rust tracing verbosity at startup to observe cache and query internals.
$ RUST_LOG=chroma=debug ./chroma-server
  • Adds RUST_LOG environment variable support to configure tracing verbosity for Chroma's Rust components.
  • Introduces rate limiting via @rate_limit applied to all collection operations, including add and query.
  • Adds tenant and database scoping to Collection operations, threading tenant/database identifiers through the full request path.
  • Overhauled HTTP API routes for the Chroma server.
  • Adds a count index to the blockfile layer, improving internal data structure capabilities.
+5 moreshow less
  • Flushes blocks in parallel, improving write throughput for large datasets.
  • Enables distributed tracing instrumentation (tracing::instrument) for foyer cache calls.
  • Adds typed UUIDs (IndexUuid, CollectionUuid) to distinguish index and collection identifiers in the Rust codebase.
  • Introduces a Sparse Index Reader/Writer split, separating read and write paths for the sparse index.
  • Disables PostHog profile telemetry collection.
2 more releases in this issue · 2024-10-08 → 2024-10-29
0.5.13 NOTES STABLE

Chroma 0.5.13 brings persistent block/sparse index caches and binary search for range filter operators.

└──▷ GET THIS VERSION
$ git clone --branch 0.5.13 https://github.com/chroma-core/chroma.git
# already have the repo? check out this version:
$ git checkout 0.5.13
  • Switches block and sparse index caches to a persistent type, improving cache durability across restarts.
  • Accelerates gt, gte, lt, and lte metadata filter operations using binary search, reducing lookup time on large indexes.
0.5.12 NOTES STABLE

Chroma 0.5.12 delivers 21x faster full-text queries, unified filter-operator semantics, and a new disk/memory-backed cache.

└──▷ GET THIS VERSION
$ git clone --branch 0.5.12 https://github.com/chroma-core/chroma.git
# already have the repo? check out this version:
$ git checkout 0.5.12
  • Changes the semantics of $ne, $nin, and $not_contains operators for local Chroma to align with hosted Chroma behavior.
  • Delivers 21x faster full-text querying via internal index improvements.
  • Adds disk- and memory-backed caching powered by Foyer 0.10, enabling larger-than-RAM working sets.
  • Adds tenant, database, and collection IDs to distributed traces when available, improving observability.
  • Introduces a RateLimitEnforcer abstract class for implementing rate-limiting policies.
+1 moreshow less
  • Makes Chroma available in early access on hosted infrastructure.
└──▷ BREAKING ON UPGRADE
  • !The semantics of $ne, $nin, and $not_contains for local Chroma have changed — queries relying on the previous local behavior may return different results after upgrading.
Was this useful?

LanceDB

Sources Release notes → python-v0.15.0 6 RELEASES · 2024-10-09 → 2024-10-29 NOTES STABLE

LanceDB python-v0.15.0 adds fast_search on remote tables, distance type control in hybrid search, and add_embedding on empty tables.

└──▷ GET THIS VERSION
$ git clone --branch python-v0.15.0 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:
$ git checkout python-v0.15.0
  • Enables fast_search on Python remote tables for approximate nearest-neighbor queries against cloud-hosted indexes.
  • Allows distance type (metric) to be specified during hybrid search, giving control over similarity scoring per query.
  • Supports add_embedding on create_empty_table in Rust, letting embedding functions be attached at table-creation time before any data is added.
  • Upgrades underlying Lance storage to 0.19.1, bringing its associated storage and performance improvements.
└──▷ BREAKING ON UPGRADE
  • !Upgrading Lance to 0.19.1 is a breaking change; any setup depending on Lance 0.18.x behavior or on-disk format compatibility should review the Lance 0.19.1 changelog before upgrading.
5 more releases in this issue · 2024-10-09 → 2024-10-29
v0.12.0 NOTES STABLE

LanceDB v0.12.0 adds hybrid search distance types, fast_search on remote tables, and embedding support on empty table creation.

└──▷ GET THIS VERSION
$ git clone --branch v0.12.0 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:
$ git checkout v0.12.0
  • Allows distance type (metric) to be specified during hybrid search queries.
  • Enables fast_search on Python remote tables.
  • Supports add_embedding on create_empty_table in the Rust client.
  • Enables logging and full error display in the Node.js client.
└──▷ BREAKING ON UPGRADE
  • !Upgrades lance to 0.19.1, which may break existing setups dependent on prior lance behavior.
v0.11.1-beta.0 NOTES STABLE

LanceDB v0.11.1-beta.0 adds fast_search on Python remote tables and add_embedding support on empty table creation in Rust.

└──▷ GET THIS VERSION
$ git clone --branch v0.11.1-beta.0 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:
$ git checkout v0.11.1-beta.0
  • Enables add_embedding on create_empty_table in the Rust API, allowing embedding configurations to be attached at table creation time.
  • Supports fast_search on Python remote tables, extending the fast search capability to remote table workflows.
  • Upgrades lance to 0.18.3, bringing underlying engine improvements.
python-v0.14.1-beta.0 NOTES STABLE

LanceDB python-v0.14.1-beta.0 adds fast_search on remote tables and embedding support on empty table creation.

└──▷ GET THIS VERSION
$ git clone --branch python-v0.14.1-beta.0 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:
$ git checkout python-v0.14.1-beta.0
  • Enables fast_search on Python remote tables for accelerated vector search against remote LanceDB deployments.
  • Allows add_embedding to be used on create_empty_table in the Rust client, enabling embedding configuration at table creation time before data is added.
python-v0.14.0 NOTES STABLE

LanceDB python-v0.14.0 adds async merge_insert, fast_search, hybrid search in SaaS, trust_remote_code for HF embeddings, and a Rust-backed remote SDK.

└──▷ GET THIS VERSION
$ git clone --branch python-v0.14.0 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:
$ git checkout python-v0.14.0
└──▷ USE IT
Run a faster approximate vector search by enabling fast_search to skip full index traversal.
python
results = table.search(query_vector).fast_search().limit(10).to_list()
Load a Hugging Face embedding model that requires remote code execution.
python
embeddings = get_registry().get("huggingface").create(name="trust-remote/model", trust_remote_code=True)
  • Adds merge_insert to the async Python API, enabling upsert workflows without blocking the event loop.
  • Adds fast_search option to vector queries for approximate nearest-neighbor searches that trade recall for speed.
  • Adds trust_remote_code support in Hugging Face embeddings, allowing models that require remote code execution to be loaded directly.
  • Enables explicit hybrid search query patterns in the SaaS (remote) Python SDK, reaching feature parity with the local SDK.
  • Adds with_row_id to the Rust SDK for queries that need to surface internal row identifiers.
+12 moreshow less
  • Adds list_indices endpoint to the remote Rust SDK for inspecting available indexes on a table.
  • Exposes the underlying dataset URI of a table, making it possible to access the raw Lance dataset path programmatically.
  • Upgrades Lance to v0.18.2, pulling in the latest engine improvements.
  • Binds the async Python remote client to the Rust client implementation, replacing the prior pure-Python remote backend.
  • Binds the Node remote SDK to the Rust implementation for consistency and performance.
  • Adds remote index stats retrieval to the remote SDK.
  • Adds remote query and create_index endpoints to the Rust remote client.
  • Adds remote rename table capability to the Rust remote client.
  • Adds remote endpoints for schema, version, and count_rows to the Rust remote client.
  • Adds a write data endpoint to the Rust remote client.
  • Adds client configuration options for the Rust remote client.
  • Sets embedding values to Null when an embedding function returns invalid results, rather than propagating errors.
└──▷ BREAKING ON UPGRADE
  • !Embedding functions that return invalid results now produce Null embeddings instead of raising an error, which changes downstream query behaviour for any pipeline that previously relied on the error being surfaced.
  • !Table.add no longer accepts a plain dictionary as input; callers must migrate to a supported data format (e.g. list of dicts, Arrow RecordBatch, pandas DataFrame).
v0.11.0 NOTES STABLE

LanceDB v0.11.0 adds full remote SDK support in Rust and Node, fast search, async merge_insert, and hybrid search parity in SaaS.

└──▷ GET THIS VERSION
$ git clone --branch v0.11.0 https://github.com/lancedb/lancedb.git
# already have the repo? check out this version:
$ git checkout v0.11.0
└──▷ TRY IT
Load a Hugging Face embedding model that requires custom remote code, such as a fine-tuned model with non-standard architecture.
$ embeddings = get_registry().get('huggingface').create(name='org/custom-model', trust_remote_code=True)
  • Adds with_row_id option to the Rust SDK for queries that need to retrieve internal row identifiers.
  • Adds fast_search option to vector search, enabling approximate search without scanning the full index.
  • Adds trust_remote_code support in Hugging Face embeddings via Python SDK, allowing custom model code to run during embedding.
  • Adds merge_insert to the async Python API, enabling upsert workflows without blocking the event loop.
  • Adds list_indices endpoint to the Rust remote SDK for programmatic index discovery.
+8 moreshow less
  • Adds index_stats to the remote SDK; all index_stats APIs now accept index name instead of UUID.
  • Adds hybrid search query support in the Python SaaS (remote) client, reaching feature parity with the local client.
  • Exposes the underlying dataset URI of a table, making it possible to access raw Lance data directly.
  • Implements full remote connection support for the Rust SDK, including query, create_index, rename_table, schema, version, count_rows, and write-data endpoints.
  • Binds the Python async remote client to the Rust client implementation, and similarly binds the Node remote SDK to the Rust implementation.
  • Sets embedding column values to Null (instead of erroring) when an embedding function returns invalid results.
  • NODE API region now defaults to us-east-1 when no region is specified.
  • Upgrades Lance to v0.18.2, bringing underlying storage engine improvements.
└──▷ BREAKING ON UPGRADE
  • !The return value of the index_stats method has changed shape, and all index_stats APIs now take an index name instead of a UUID; several deprecated index statistics methods were removed.
  • !Embedding functions that return invalid results now set the embedding column to Null instead of propagating an error — pipelines that relied on the error to detect bad embeddings will no longer see one.
  • !Table.add no longer accepts a dictionary as input in the Python SDK; callers must pass a supported tabular type instead.
  • !Lance upgraded to 0.18.0 (and subsequently 0.18.2); any behavior changes introduced by Lance 0.18.x apply on upgrade.
Was this useful?

Milvus

Sources Release notes → v2.4.14 3 RELEASES · 2024-10-08 → 2024-10-29 NOTES STABLE

Milvus 2.4.14 adds memory-mode chunk cache, database-scoped bulk insert, and a dynamically tunable import concurrency config key.

└──▷ GET THIS VERSION
$ git clone --branch v2.4.14 https://github.com/milvus-io/milvus.git
# already have the repo? check out this version:
$ git checkout v2.4.14
└──▷ USE IT
Tune import concurrency live on a busy cluster without restarting DataNode.
yaml
# In milvus.yaml or via dynamic config update:
datanode:
  import:
    maxconcurrenttasknum: 16
Enable memory-mapped interim indexes on growing segments to reduce latency for freshly ingested data.
yaml
queryNode:
  mmap:
    growingMmapEnabled: true
  • Adds datanode.import.maxconcurrenttasknum as a dynamically adjustable configuration item to tune import concurrency at runtime without restarting.
  • Adds queryNode.mmap.growingMmapEnabled configuration key to control interim index behavior for growing segments.
  • Supports memory-mode chunk cache for faster in-memory data access.
  • Supports database (db) scoping for bulk insert operations.
  • Allows deleting data when disk quota is exhausted, preventing quota-induced write deadlocks.
+8 moreshow less
  • Adds metrics for QueryNode delete buffer info and collection name labels to existing metrics for improved observability.
  • Adds middleware-based observability for RESTful v2 inbound/outbound RPC stats.
  • Enables parallel execution of L0 compactions to improve compaction throughput.
  • Adds prioritization of compaction tasks in DataCoord.
  • Upgrades Minio dependency to support EKS Pod Identities.
  • Limits the maximum number of concurrent import jobs.
  • Refactors CreateCollection in the RESTful API.
  • Updates Knowhere to version 2.3.12.
2 more releases in this issue · 2024-10-08 → 2024-10-29
v2.4.13 NOTES STABLE

Milvus 2.4.13 adds dynamic replica adjustment, sparse vector MMAP in growing segments, and a new import-jobs REST endpoint.

└──▷ GET THIS VERSION
$ git clone --branch v2.4.13 https://github.com/milvus-io/milvus.git
# already have the repo? check out this version:
$ git checkout v2.4.13
  • Adds a new RESTful URL to describe import jobs, enabling programmatic monitoring of bulk-import progress.
  • Supports dynamic replica adjustment for loaded collections, letting users change replica counts without releasing and reloading the collection.
  • Enables MMAP for sparse vectors in growing segment types, reducing memory footprint for sparse workloads.
  • Enables load balancing across query nodes with varying memory capacities.
  • Enables manual compaction for collections that have no indexes.
+3 moreshow less
  • Adds metrics to monitor import throughput and imported row count.
  • Adds a streaming forward policy switch for the delegator.
  • Adds a balance report log for the query coordinator balancer.
v2.3.22 NOTES STABLE

Milvus v2.3.22 adds trace ID propagation from client to server for distributed request tracing.

└──▷ GET THIS VERSION
$ git clone --branch v2.3.22 https://github.com/milvus-io/milvus.git
# already have the repo? check out this version:
$ git checkout v2.3.22
  • Propagates trace IDs from the client through the system, enabling end-to-end distributed tracing of requests.
Was this useful?

Qdrant

Sources Release notes → v1.12.0 NOTES

Qdrant v1.12.0 adds Facets API, Distance Matrix API, mmap vector storage by default, and on-disk text/geo index offloading.

└──▷ GET THIS VERSION
$ git clone --branch v1.12.0 https://github.com/qdrant/qdrant.git
# already have the repo? check out this version:
$ git checkout v1.12.0
  • New Facets API retrieves unique payload values with counts for a given index field under a given filter, enabling faceted search workflows.
  • New Distance Matrix API calculates many-to-many distances between stored vectors, supporting clustering, dimensionality reduction, and data visualization use cases.
  • Switches default vector storage to memory-mapped files (mmap), replacing rocksdb to accelerate uploads for large datasets and reduce RSS anonymous memory consumption — Qdrant now slows gracefully under memory pressure instead of OOM-crashing.
  • Enables sparse snapshots so that allocated-but-empty files in vector storage no longer consume extra disk space in snapshot archives.
  • Adds ability to offload text-index to disk, reducing in-memory footprint for text-indexed collections.
+4 moreshow less
  • Adds ability to offload geo-index to disk.
  • Triggers optimizers automatically when uploading snapshots.
  • Instantly self-elects a Raft leader when the cluster contains a single peer, reducing startup latency in single-node deployments.
  • Improved Web UI graph visualization allows sampling large chunks of data from a collection, with improved panning UX and more interactive tutorials.
Was this useful?

Weaviate

Sources Release notes → v1.27.1 2 RELEASES · 2024-10-16 → 2024-10-31 NOTES STABLE

Weaviate v1.27.1 adds configurable gRPC message size, HNSW visited-list pool limit, Dynamic RAG module config, and parallel compressed vector cache prefill.

└──▷ GET THIS VERSION
$ git clone --branch v1.27.1 https://github.com/weaviate/weaviate.git
# already have the repo? check out this version:
$ git checkout v1.27.1
  • Adds an option to limit the HNSW visited list pool size, enabling memory cap on high-concurrency search workloads.
  • Adds support for Dynamic RAG module configuration parameters, allowing per-request generative module tuning.
  • Allows updating generative and reranker module configurations on existing collections without recreation.
  • Prefills compressed (PQ/BQ) vector caches in parallel, accelerating startup time for quantized indexes.
  • Performs non-blocking segment drops during compaction, reducing latency spikes on write-heavy workloads.
+1 moreshow less
  • Improves segment cleanup to reduce storage overhead over time.
1 more release in this issue · 2024-10-16 → 2024-10-31
v1.27.0 NOTES STABLE

Weaviate v1.27.0 adds ACORN-based HNSW filters, backup cancellation APIs, experimental read-compute scaling, dynamic RAG via gRPC, and new embedding/generative modules.

└──▷ GET THIS VERSION
$ git clone --branch v1.27.0 https://github.com/weaviate/weaviate.git
# already have the repo? check out this version:
$ git checkout v1.27.0
  • Adds a backup cancellation endpoint and a 'list backups in progress' endpoint, with CANCELED status now propagated across all backup API responses and a path field added to list backup responses.
  • Adds experimental read-compute scaling via a separate querier component (exp/query) supporting vector search, property filters, and object retrieval from the LSMKV store for offloaded (FROZEN) tenants.
  • Supports dynamic RAG syntax through the gRPC API.
  • Supports sending Azure OpenAI deployment ID and resource name via request headers.
  • Adds support for custom number of dimensions when using Azure OpenAI.
+13 moreshow less
  • Adds weaviate_build_info Prometheus metric for build observability.
  • Adds batch-size metrics for Prometheus observability.
  • Adds SIMD implementation for Bitwise Hamming distance on x86 and ARM architectures.
  • Adds ACORN-based minority filter improvements to HNSW for more accurate filtered vector search.
  • Supports multiple inputs for a single target vector in multi-target vector search.
  • Adds a Weaviate-hosted embeddings module.
  • Adds a Generative FriendliAI module.
  • Adds support for the JinaAI reranker API.
  • Enables arrays in generative searches.
  • Adds gpt-4o model support in the Generative-OpenAI module.
  • Renames generative-palm module to generative-google, multi2vec-palm to multi2vec-google, and text2vec-palm to text2vec-google, with AltNames support for backward compatibility.
  • Adds a progress indicator for schema catchup on restart.
  • Adds segment cleanup for LSM storage.
Was this useful?
◆  MCP TOOLING

Composio

Sources Release notes → v0.5.37 6 RELEASES · 2024-10-11 → 2024-10-28 NOTES STABLE

Composio v0.5.37 adds a to-do list generator agent and boosts SWE-bench score to 48.6% with Claude v2.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.37 https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout v0.5.37
  • Adds a to-do list generator agent to the agent library.
  • Upgrades the SWE-bench agent LLM to Claude v2, achieving a 48.6% SWE-bench score.
5 more releases in this issue · 2024-10-11 → 2024-10-28
v0.5.36 NOTES STABLE

Composio v0.5.36 adds check_connected_accounts flag to get_tools and auth_scheme support on get_expected_params_for_user.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.36 https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout v0.5.36
  • Adds check_connected_accounts flag to get_tools to filter tools based on whether the entity has connected accounts.
  • Adds auth_scheme parameter support on get_expected_params_for_user to specify the authentication scheme when retrieving expected auth params for a user.
  • Adds API key and entityId support for auth handling, enabling per-entity authentication flows.
v0.5.35 NOTES STABLE

Composio v0.5.35 adds user-defined auth for action execution and custom auth data support in the JS SDK.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.35 https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout v0.5.35
  • Adds support for user-defined auth parameters during action execution in the Python SDK, enabling callers to supply custom credentials at runtime rather than relying solely on stored connections.
  • Adds custom auth data support in the JS SDK (released as JS SDK v0.2.3), bringing parity with the Python SDK for runtime auth overrides.
  • Makes is_secret a default argument in auth parameter definitions, simplifying how sensitive fields are declared.
  • Adds a Cloudflare + OpenAI integration example.
v0.5.34 NOTES STABLE

Composio v0.5.34 adds getExpectedParamsForUser method across all framework integrations.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.34 https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout v0.5.34
  • Adds getExpectedParamsForUser method (and Python equivalent get_expected_params_for_user) to all framework integrations, enabling callers to retrieve the expected connection parameters for a given user.
v0.5.32 NOTES STABLE

Composio v0.5.32 adds user-defined auth params for connectors, integration ID lookup by app, and ExpectedFieldInput support

└──▷ GET THIS VERSION
$ git clone --branch v0.5.32 https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout v0.5.32
  • Adds ExpectedFieldInput attribute and a separate method for customer expected fields, enabling more precise definition of required auth inputs when configuring connectors.
  • Adds support for user-defined auth params when initialising connectors, giving practitioners control over custom authentication parameters at connector setup time.
  • Adds support for specifying connected account params when initialising a connected account.
  • Adds support for fetching integration ID using app name, simplifying programmatic lookup of integrations.
  • Logs session ID when ingesting logs and executing an action, improving traceability across action executions.
+2 moreshow less
  • Adds top-level utils module for broader access to shared utilities.
  • Workspace dependencies are now definable as extras, allowing optional installation of workspace-specific dependencies.
v0.5.31 NOTES STABLE

Composio v0.5.31 adds log ingestion for local tool execution, an auth params API, and connection info in the JS SDK.

└──▷ GET THIS VERSION
$ git clone --branch v0.5.31 https://github.com/ComposioHQ/composio.git
# already have the repo? check out this version:
$ git checkout v0.5.31
  • Adds log ingestion for local tool execution, enabling visibility into locally run tool actions.
  • Adds an auth params API for retrieving authentication parameters programmatically.
  • Adds connection info support and fixes the initConnection flow in the JavaScript SDK.
Was this useful?
my-toolchain — 0 tools
paste an install list to detect your tools

A brew list, a Brewfile, requirements.txt, a Dockerfile — or just the product names, free-form. Nothing leaves your browser.

    browse all tools →