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..4ab6a71 100644 --- a/packages/ai-providers/server-ai-langchain/CHANGELOG.md +++ b/packages/ai-providers/server-ai-langchain/CHANGELOG.md @@ -1,5 +1,40 @@ # Changelog +## [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-03-26) + + +### ⚠ BREAKING CHANGES + +* 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 +* Extract shared utilities to openai_helper +* Extract shared utilities to langchain_helper +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) + +### Features + +* Add get_ai_usage_from_response to openai_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)) +* Add ModelRunner ABC with invoke_model() and ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* add optimization package stub ([872e81e](https://github.com/launchdarkly/python-server-sdk-ai/commit/872e81e29854ec03c434a32a287e9c94feb0b449)) +* 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)) +* Adds optimization package stub ([58b7731](https://github.com/launchdarkly/python-server-sdk-ai/commit/58b7731aa4f0efbd42ff0b93760eb357cdfe219f)) +* 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)) +* Extract shared utilities to langchain_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Extract shared utilities to openai_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Introduce ManagedModel and ModelRunner (PR-3) ([#104](https://github.com/launchdarkly/python-server-sdk-ai/issues/104)) ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) ([e6e4907](https://github.com/launchdarkly/python-server-sdk-ai/commit/e6e49076b3b89b9bf4996d3ba8e4b4c9fb7b2078)) +* Split track_metrics_of into sync and async variants ([#112](https://github.com/launchdarkly/python-server-sdk-ai/issues/112)) ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) + + +### 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.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 0f51402..89e8490 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"} diff --git a/packages/ai-providers/server-ai-openai/CHANGELOG.md b/packages/ai-providers/server-ai-openai/CHANGELOG.md index 5c719f1..229236e 100644 --- a/packages/ai-providers/server-ai-openai/CHANGELOG.md +++ b/packages/ai-providers/server-ai-openai/CHANGELOG.md @@ -1,5 +1,26 @@ # Changelog +## [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-03-26) + + +### ⚠ BREAKING CHANGES + +* Extract shared utilities to openai_helper +* Extract shared utilities to langchain_helper +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) + +### Features + +* Add ModelRunner ABC with invoke_model() and ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* add optimization package stub ([872e81e](https://github.com/launchdarkly/python-server-sdk-ai/commit/872e81e29854ec03c434a32a287e9c94feb0b449)) +* Adds optimization package stub ([58b7731](https://github.com/launchdarkly/python-server-sdk-ai/commit/58b7731aa4f0efbd42ff0b93760eb357cdfe219f)) +* 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)) +* Extract shared utilities to langchain_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Extract shared utilities to openai_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Introduce ManagedModel and ModelRunner (PR-3) ([#104](https://github.com/launchdarkly/python-server-sdk-ai/issues/104)) ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) ([e6e4907](https://github.com/launchdarkly/python-server-sdk-ai/commit/e6e49076b3b89b9bf4996d3ba8e4b4c9fb7b2078)) + ## [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 9644628..6713295 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"} diff --git a/packages/optimization/CHANGELOG.md b/packages/optimization/CHANGELOG.md index 1790adf..3e6ac61 100644 --- a/packages/optimization/CHANGELOG.md +++ b/packages/optimization/CHANGELOG.md @@ -1,5 +1,19 @@ # Changelog +## 0.1.0 (2026-03-26) + + +### 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)) +* Adds optimization package stub ([58b7731](https://github.com/launchdarkly/python-server-sdk-ai/commit/58b7731aa4f0efbd42ff0b93760eb357cdfe219f)) +* Adds optimization package stub ([cc85a05](https://github.com/launchdarkly/python-server-sdk-ai/commit/cc85a05f0e81acdc33437b51238d67ddf8a92b80)) + + +### 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 3584bf4..07ff47a 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/sdk/server-ai/CHANGELOG.md b/packages/sdk/server-ai/CHANGELOG.md index 1b2ef6a..b1ef08a 100644 --- a/packages/sdk/server-ai/CHANGELOG.md +++ b/packages/sdk/server-ai/CHANGELOG.md @@ -2,6 +2,41 @@ 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-03-26) + + +### ⚠ BREAKING CHANGES + +* 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 +* Extract shared utilities to openai_helper +* Extract shared utilities to langchain_helper +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) + +### Features + +* Add get_ai_usage_from_response to openai_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)) +* Add ModelRunner ABC with invoke_model() and ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* add optimization package stub ([872e81e](https://github.com/launchdarkly/python-server-sdk-ai/commit/872e81e29854ec03c434a32a287e9c94feb0b449)) +* 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)) +* Adds optimization package stub ([58b7731](https://github.com/launchdarkly/python-server-sdk-ai/commit/58b7731aa4f0efbd42ff0b93760eb357cdfe219f)) +* 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)) +* Extract shared utilities to langchain_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Extract shared utilities to openai_helper ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Introduce ManagedModel and ModelRunner (PR-3) ([#104](https://github.com/launchdarkly/python-server-sdk-ai/issues/104)) ([453c71c](https://github.com/launchdarkly/python-server-sdk-ai/commit/453c71c84adcc6b8a3e316a98907dcb511bc9d41)) +* Restructure provider factory and support additional create methods ([#102](https://github.com/launchdarkly/python-server-sdk-ai/issues/102)) ([e6e4907](https://github.com/launchdarkly/python-server-sdk-ai/commit/e6e49076b3b89b9bf4996d3ba8e4b4c9fb7b2078)) +* Split track_metrics_of into sync and async variants ([#112](https://github.com/launchdarkly/python-server-sdk-ai/issues/112)) ([4fab18f](https://github.com/launchdarkly/python-server-sdk-ai/commit/4fab18fa62375b6c97cb12a89225805c81ca4ee8)) + + +### 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 def920c..ed70098 100644 --- a/packages/sdk/server-ai/PROVENANCE.md +++ b/packages/sdk/server-ai/PROVENANCE.md @@ -10,7 +10,7 @@ To verify SLSA provenance attestations, we recommend using [slsa-verifier](https ``` # 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 15e2fca..5237899 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 944a0cb..e0b2796 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