diff --git a/.release-please-manifest.json b/.release-please-manifest.json index b5fb548..d69d277 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,5 +1,6 @@ { - "packages/sdk/server-ai": "0.16.1", - "packages/ai-providers/server-ai-langchain": "0.3.2", - "packages/ai-providers/server-ai-openai": "0.2.1" + "packages/sdk/server-ai": "0.17.0", + "packages/ai-providers/server-ai-langchain": "0.4.0", + "packages/ai-providers/server-ai-openai": "0.3.0", + "packages/optimization": "0.1.0" } diff --git a/packages/ai-providers/server-ai-langchain/CHANGELOG.md b/packages/ai-providers/server-ai-langchain/CHANGELOG.md index 67f7bc9..936e2b2 100644 --- a/packages/ai-providers/server-ai-langchain/CHANGELOG.md +++ b/packages/ai-providers/server-ai-langchain/CHANGELOG.md @@ -1,5 +1,29 @@ # Changelog +All notable changes to the LaunchDarkly Python AI LangChain provider package will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org). + +## [0.4.0](https://github.com/launchdarkly/python-server-sdk-ai/compare/launchdarkly-server-sdk-ai-langchain-0.3.2...launchdarkly-server-sdk-ai-langchain-0.4.0) (2026-04-02) + + +### ⚠ BREAKING CHANGES + +* Bump minimum LangChain version to 1.0.0 +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) +* Extract shared utilities to langchain_helper + +### Features + +* Add LangGraphAgentGraphRunner ([56ce0fd](https://github.com/launchdarkly/python-server-sdk-ai/commit/56ce0fd63b4301b58f33c17c55c4ecd47e9f8559)) +* Extract shared utilities to langchain_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Add get_ai_usage_from_response to langchain_helper ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Add get_tool_calls_from_response and sum_token_usage_from_messages to langchain_helper ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Drop support for python 3.9 ([#114](https://github.com/launchdarkly/python-server-sdk-ai/issues/114)) ([dc592c5](https://github.com/launchdarkly/python-server-sdk-ai/commit/dc592c5a2e2bf3bf679af14a9aa63e81678a69ab)) + + +### Bug Fixes + +* Use time.perf_counter_ns() for sub-millisecond precision in duration calculations ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) + ## [0.3.2](https://github.com/launchdarkly/python-server-sdk-ai/compare/launchdarkly-server-sdk-ai-langchain-0.3.1...launchdarkly-server-sdk-ai-langchain-0.3.2) (2026-03-16) diff --git a/packages/ai-providers/server-ai-langchain/pyproject.toml b/packages/ai-providers/server-ai-langchain/pyproject.toml index abb128a..71f8b11 100644 --- a/packages/ai-providers/server-ai-langchain/pyproject.toml +++ b/packages/ai-providers/server-ai-langchain/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "launchdarkly-server-sdk-ai-langchain" -version = "0.3.2" +version = "0.4.0" description = "LaunchDarkly AI SDK LangChain Provider" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} @@ -19,7 +19,7 @@ classifiers = [ "Topic :: Software Development :: Libraries", ] dependencies = [ - "launchdarkly-server-sdk-ai>=0.16.0", + "launchdarkly-server-sdk-ai>=0.17.0", "langchain-core>=1.0.0", "langchain>=1.0.0", ] diff --git a/packages/ai-providers/server-ai-openai/CHANGELOG.md b/packages/ai-providers/server-ai-openai/CHANGELOG.md index 5c719f1..8381fcf 100644 --- a/packages/ai-providers/server-ai-openai/CHANGELOG.md +++ b/packages/ai-providers/server-ai-openai/CHANGELOG.md @@ -1,5 +1,23 @@ # Changelog +All notable changes to the LaunchDarkly Python AI OpenAI provider package will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org). + +## [0.3.0](https://github.com/launchdarkly/python-server-sdk-ai/compare/launchdarkly-server-sdk-ai-openai-0.2.1...launchdarkly-server-sdk-ai-openai-0.3.0) (2026-04-02) + + +### ⚠ BREAKING CHANGES + +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) +* Extract shared utilities to openai_helper + +### Features + +* Add OpenAIAgentRunner with agentic tool-calling loop ([53fd95e](https://github.com/launchdarkly/python-server-sdk-ai/commit/53fd95e2cfb66f4c53c6844cc41170077e6eee8c)) +* Add OpenAIAgentGraphRunner ([56ce0fd](https://github.com/launchdarkly/python-server-sdk-ai/commit/56ce0fd63b4301b58f33c17c55c4ecd47e9f8559)) +* Extract shared utilities to openai_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Add get_ai_usage_from_response to openai_helper ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Drop support for python 3.9 ([#114](https://github.com/launchdarkly/python-server-sdk-ai/issues/114)) ([dc592c5](https://github.com/launchdarkly/python-server-sdk-ai/commit/dc592c5a2e2bf3bf679af14a9aa63e81678a69ab)) + ## [0.2.1](https://github.com/launchdarkly/python-server-sdk-ai/compare/launchdarkly-server-sdk-ai-openai-0.2.0...launchdarkly-server-sdk-ai-openai-0.2.1) (2026-03-16) diff --git a/packages/ai-providers/server-ai-openai/pyproject.toml b/packages/ai-providers/server-ai-openai/pyproject.toml index 0f7f78c..5f06744 100644 --- a/packages/ai-providers/server-ai-openai/pyproject.toml +++ b/packages/ai-providers/server-ai-openai/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "launchdarkly-server-sdk-ai-openai" -version = "0.2.1" +version = "0.3.0" description = "LaunchDarkly AI SDK OpenAI Provider" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} @@ -19,7 +19,7 @@ classifiers = [ "Topic :: Software Development :: Libraries", ] dependencies = [ - "launchdarkly-server-sdk-ai>=0.16.0", + "launchdarkly-server-sdk-ai>=0.17.0", "openai>=1.0.0", ] diff --git a/packages/optimization/CHANGELOG.md b/packages/optimization/CHANGELOG.md index 1790adf..a26deff 100644 --- a/packages/optimization/CHANGELOG.md +++ b/packages/optimization/CHANGELOG.md @@ -1,5 +1,18 @@ # Changelog +## 0.1.0 (2026-04-02) + + +### Features + +* Add optimization package stub ([#109](https://github.com/launchdarkly/python-server-sdk-ai/issues/109)) ([ebd5166](https://github.com/launchdarkly/python-server-sdk-ai/commit/ebd5166d86c2d58e4c2fcc0b3fcc983eb49574e6)) ([58b7731](https://github.com/launchdarkly/python-server-sdk-ai/commit/58b7731aa4f0efbd42ff0b93760eb357cdfe219f)) ([cc85a05](https://github.com/launchdarkly/python-server-sdk-ai/commit/cc85a05f0e81acdc33437b51238d67ddf8a92b80)) +* Drop support for python 3.9 ([#114](https://github.com/launchdarkly/python-server-sdk-ai/issues/114)) ([dc592c5](https://github.com/launchdarkly/python-server-sdk-ai/commit/dc592c5a2e2bf3bf679af14a9aa63e81678a69ab)) + + +### Bug Fixes + +* consistency with other makefiles ([b9a5601](https://github.com/launchdarkly/python-server-sdk-ai/commit/b9a560110b9ef1746b1b1cff2b50ea8b90297acd)) + ## 0.0.0 (2026-03-24) ### Features diff --git a/packages/optimization/pyproject.toml b/packages/optimization/pyproject.toml index 375e45e..1cac065 100644 --- a/packages/optimization/pyproject.toml +++ b/packages/optimization/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "launchdarkly-server-sdk-ai-optimization" -version = "0.0.0" # x-release-please-version +version = "0.1.0" # x-release-please-version description = "LaunchDarkly AI SDK optimization helpers" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} diff --git a/packages/optimization/src/ldai_optimization/__init__.py b/packages/optimization/src/ldai_optimization/__init__.py index 7df6ed3..a0b379c 100644 --- a/packages/optimization/src/ldai_optimization/__init__.py +++ b/packages/optimization/src/ldai_optimization/__init__.py @@ -5,7 +5,7 @@ from ldai_optimization.client import ApiAgentOptimizationClient -__version__ = "0.0.0" +__version__ = "0.1.0" # x-release-please-version __all__ = [ '__version__', diff --git a/packages/sdk/server-ai/CHANGELOG.md b/packages/sdk/server-ai/CHANGELOG.md index 1b2ef6a..33e197a 100644 --- a/packages/sdk/server-ai/CHANGELOG.md +++ b/packages/sdk/server-ai/CHANGELOG.md @@ -2,6 +2,35 @@ All notable changes to the LaunchDarkly Python AI package will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org). +## [0.17.0](https://github.com/launchdarkly/python-server-sdk-ai/compare/launchdarkly-server-sdk-ai-0.16.1...launchdarkly-server-sdk-ai-0.17.0) (2026-04-02) + + +### ⚠ BREAKING CHANGES + +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) +* Split track_metrics_of into sync and async variants ([#112](https://github.com/launchdarkly/python-server-sdk-ai/issues/112)) +* Remove node-scoped methods from AIGraphTracker (track_node_invocation, track_tool_call, track_node_judge_response), use related AIConfigTracker methods instead + +### Features + +* Introduce ManagedModel and ModelRunner ([#104](https://github.com/launchdarkly/python-server-sdk-ai/issues/104)) ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Introduce ManagedAgent and AgentRunner implementations ([#110](https://github.com/launchdarkly/python-server-sdk-ai/issues/110)) ([53fd95e](https://github.com/launchdarkly/python-server-sdk-ai/commit/53fd95e2cfb66f4c53c6844cc41170077e6eee8c)) +* Add LDAIClient.create_agent() returning ManagedAgent ([53fd95e](https://github.com/launchdarkly/python-server-sdk-ai/commit/53fd95e2cfb66f4c53c6844cc41170077e6eee8c)) +* Add ManagedAgentGraph support ([#111](https://github.com/launchdarkly/python-server-sdk-ai/issues/111)) ([56ce0fd](https://github.com/launchdarkly/python-server-sdk-ai/commit/56ce0fd63b4301b58f33c17c55c4ecd47e9f8559)) +* Add ModelRunner protocol with invoke_model() and invoke_structured_model() ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Add optional graph_key to all LDAIConfigTracker track_* methods for graph correlation ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Add track_tool_call/track_tool_calls to LDAIConfigTracker ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Deprecated Chat object in favor of ManagedModel ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Deprecated create_chat(), use create_model() on the LDAIClient ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Drop support for python 3.9 ([#114](https://github.com/launchdarkly/python-server-sdk-ai/issues/114)) ([dc592c5](https://github.com/launchdarkly/python-server-sdk-ai/commit/dc592c5a2e2bf3bf679af14a9aa63e81678a69ab)) + + +### Bug Fixes + +* Make AIGraphTracker.track_total_tokens accept Optional[TokenUsage], skip when None or total <= 0 ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Remove node-scoped methods from AIGraphTracker (track_node_invocation, track_tool_call, track_node_judge_response), use related AIConfigTracker methods instead ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) +* Use time.perf_counter_ns() for sub-millisecond precision in duration calculations ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) + ## [0.16.1](https://github.com/launchdarkly/python-server-sdk-ai/compare/launchdarkly-server-sdk-ai-0.16.0...launchdarkly-server-sdk-ai-0.16.1) (2026-03-16) diff --git a/packages/sdk/server-ai/PROVENANCE.md b/packages/sdk/server-ai/PROVENANCE.md index 1483ebe..28257d9 100644 --- a/packages/sdk/server-ai/PROVENANCE.md +++ b/packages/sdk/server-ai/PROVENANCE.md @@ -9,7 +9,7 @@ To verify build provenance attestations, we recommend using the [GitHub CLI `att ``` # Set the version of the library to verify -VERSION=0.16.1 +VERSION=0.17.0 ``` diff --git a/packages/sdk/server-ai/pyproject.toml b/packages/sdk/server-ai/pyproject.toml index 35d8987..4aa78ec 100644 --- a/packages/sdk/server-ai/pyproject.toml +++ b/packages/sdk/server-ai/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "launchdarkly-server-sdk-ai" -version = "0.16.1" # x-release-please-version +version = "0.17.0" # x-release-please-version description = "LaunchDarkly SDK for AI" authors = [{name = "LaunchDarkly", email = "dev@launchdarkly.com"}] license = {text = "Apache-2.0"} diff --git a/packages/sdk/server-ai/src/ldai/__init__.py b/packages/sdk/server-ai/src/ldai/__init__.py index 5d5ee77..c70d941 100644 --- a/packages/sdk/server-ai/src/ldai/__init__.py +++ b/packages/sdk/server-ai/src/ldai/__init__.py @@ -1,4 +1,4 @@ -__version__ = "0.16.1" # x-release-please-version +__version__ = "0.17.0" # x-release-please-version from ldclient import log