- Notifications
You must be signed in to change notification settings - Fork4.1k
Comparing changes
Open a pull request
base repository:microsoft/semantic-kernel
Uh oh!
There was an error while loading.Please reload this page.
base:python-1.35.0
head repository:microsoft/semantic-kernel
Uh oh!
There was an error while loading.Please reload this page.
compare:main
- 10commits
- 57files changed
- 10contributors
Commits on Jul 16, 2025
.Net Fix - Display thread type name in error message (#12723)
### Motivation and Context<!-- Thank you for your contribution to the semantic-kernel repo!Please help reviewers and future users, providing the followinginformation: 1. Why is this change required? 2. What problem does it solve? 3. What scenario does it contribute to? 4. If it fixes an open issue, please link to the issue here.-->Error message confusing### Description<!-- Describe your changes, the overall approach, the underlying design.These notes will help understanding how your code works. Thanks! -->Error message does not display thread type and instead displays the nameof the generic parameter:`Microsoft.SemanticKernel.KernelException: OpenAIResponseAgent currentlyonly supports agent threads of type TThreadType.`(Customer reported an error using the erroneous error message.)### Contribution Checklist<!-- Before submitting this PR, please make sure: -->- [X] The code builds clean without any errors or warnings- [X] The PR follows the [SK ContributionGuidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)and the [pre-submission formattingscript](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)raises no violations- [X] All unit tests pass, and I have added new tests where possible- [X] I didn't break anyone 😄
.Net: Google Gemini - Move API key from the URL to
x-goog-api-key
H……TTP header (#12717)### Motivation and Context-Resolves#12666The implementation successfully addresses the security concern raised inGitHub issue#12666 by moving the Google API key from the URL queryparameter to the secure x-goog-api-key HTTP header, preventing sensitiveinformation from being logged or traced.- Modified ClientBase class to support API key in headers- Updated all Google AI clients (Chat, Streaming, Token Counter,Embeddings) to use header-based authentication- Removed API key from URLs to prevent exposure in logs and OTEL traces- Comprehensive Testing:
Commits on Jul 17, 2025
Python: Update sentence-transformers requirement from <5.0,>=2.2 to >…
…=2.2,<6.0 in /python (#12679)Updates the requirements on[sentence-transformers](https://github.com/UKPLab/sentence-transformers)to permit the latest version.<details><summary>Release notes</summary><p><em>Sourced from <ahref="https://github.com/UKPLab/sentence-transformers/releases">sentence-transformers'sreleases</a>.</em></p><blockquote><h2>v5.0.0 - SparseEncoder support; encode_query & encode_document;multi-processing in encode; Router; and more</h2><p>This release consists of significant updates including theintroduction of Sparse Encoder models, new methods<code>encode_query</code> and <code>encode_document</code>,multi-processing support in <code>encode</code>, the <code>Router</code>module for asymmetric models, custom learning rates for parametergroups, composite loss logging, and various small improvements and bugfixes.</p><p>Install this version with</p><pre lang="bash"><code># Training + Inferencepip install sentence-transformers[train]==5.0.0<h1>Inference only, use one of:</h1><p>pip install sentence-transformers==5.0.0pip install sentence-transformers[onnx-gpu]==5.0.0pip install sentence-transformers[onnx]==5.0.0pip install sentence-transformers[openvino]==5.0.0</code></pre></p><blockquote><p>[!TIP]Our <a href="https://huggingface.co/blog/train-sparse-encoder">Trainingand Finetuning Sparse Embedding Models with Sentence Transformers v5blogpost</a> is an excellent place to learn about finetuning sparseembedding models!</p></blockquote><blockquote><p>[!NOTE]This release is designed to be fully backwards compatible, meaning thatyou should be able to upgrade from older versions to v5.x without anyissues. If you are running into issues when upgrading, feel free to open<a href="https://github.com/uKPLab/sentence-transformers/issues/new">anissue</a>. Also see the <ahref="https://sbert.net/docs/migration_guide.html">Migration Guide</a>for changes that we would recommend.</p></blockquote><h2>Sparse Encoder models</h2><p>The Sentence Transformers v5.0 release introduces Sparse Embeddingmodels, also known as Sparse Encoders. These models generatehigh-dimensional embeddings, often with 30,000+ dimensions, where oftenonly <1% of dimensions are non-zero. This is in contrast to thestandard dense embedding models, which produce low-dimensionalembeddings (e.g., 384, 768, or 1024 dimensions) where all values arenon-zero.</p><p>Usually, each active dimension (i.e. the dimension with a non-zerovalue) in a sparse embedding corresponds to a specific token in themodel's vocabulary, allowing for interpretability. This means that youcan e.g. see exactly which words/tokens are important in an embedding,and that you can inspect exactly because of which words/tokens two textsare deemed similar.</p><p>Let's have a look at <ahref="https://huggingface.co/naver/splade-v3">naver/splade-v3</a>, astrong sparse embedding model, as an example:</p><pre lang="python"><code>from sentence_transformers import SparseEncoder<h1>Download from the 🤗 Hub</h1><p>model = SparseEncoder("naver/splade-v3")</p><h1>Run inference</h1><p>sentences = ["The weather is lovely today.","It's so sunny outside!","He drove to the stadium.",]embeddings = model.encode(sentences)print(embeddings.shape)</p><h1>(3, 30522)</h1><h1>Get the similarity scores for the embeddings</h1><p>similarities = model.similarity(embeddings, embeddings)print(similarities)</p><h1>tensor([[ 32.4323, 5.8528, 0.0258],</h1><p></tr></table></code></pre></p></blockquote><p>... (truncated)</p></details><details><summary>Commits</summary><ul><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/8dc0fca767afd74208764fd28f89dd83e8743241"><code>8dc0fca</code></a>Release v5.0.0</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/e91af6ac3e160aa0d610ea32aeb295f3ff648e67"><code>e91af6a</code></a>Update links for SPLADE and Inference-Free SPLADE models collections indocum...</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/4c00aea59d4b25061ba03761804a4266c3e8fd33"><code>4c00aea</code></a>[<code>fix</code>] Remove hub_kwargs in SparseStaticEmbedding.from_jsonin favor of more...</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/28685bb1d771b8609c5e4d4115a8b862267358ce"><code>28685bb</code></a>Clean up gitignore (<ahref="https://redirect.github.com/UKPLab/sentence-transformers/issues/3409">#3409</a>)</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/85dd17518f15a8466ec131a4f82e1e93e4ada631"><code>85dd175</code></a>Fix formatting of docstring arguments inSpladeRegularizerWeightSchedulerCall...</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/14afc4b6681f0b83bded05fe91a8fd3320d453f9"><code>14afc4b</code></a>Merge PR <ahref="https://redirect.github.com/UKPLab/sentence-transformers/issues/3401">#3401</a>:[<code>v5</code>] Add support for Sparse Embedding models</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/2d248419eb47c3710d50fa560d41e7fd17459846"><code>2d24841</code></a>Update tip phrasing and fix links</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/ed043c56b21d4a6c8f600e9d2a74523e522d6823"><code>ed043c5</code></a>typo</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/b2679d12294f9e0e5a2250cbcb400e9b4111f856"><code>b2679d1</code></a>fix broken link</li><li><ahref="https://github.com/UKPLab/sentence-transformers/commit/d30341ec2f3a8fa50eb41f924273e414bb7c0db7"><code>d30341e</code></a>Update tips to prepared for v5.0</li><li>Additional commits viewable in <ahref="https://github.com/UKPLab/sentence-transformers/compare/v2.2.0...v5.0.0">compareview</a></li></ul></details><br />Dependabot will resolve any conflicts with this PR as long as you don'talter it yourself. You can also trigger a rebase manually by commenting`@dependabot rebase`.[//]: # (dependabot-automerge-start)[//]: # (dependabot-automerge-end)---<details><summary>Dependabot commands and options</summary><br />You can trigger Dependabot actions by commenting on this PR:- `@dependabot rebase` will rebase this PR- `@dependabot recreate` will recreate this PR, overwriting any editsthat have been made to it- `@dependabot merge` will merge this PR after your CI passes on it- `@dependabot squash and merge` will squash and merge this PR afteryour CI passes on it- `@dependabot cancel merge` will cancel a previously requested mergeand block automerging- `@dependabot reopen` will reopen this PR if it is closed- `@dependabot close` will close this PR and stop Dependabot recreatingit. You can achieve the same result by closing it manually- `@dependabot show <dependency name> ignore conditions` will show allof the ignore conditions of the specified dependency- `@dependabot ignore this major version` will close this PR and stopDependabot creating any more for this major version (unless you reopenthe PR or upgrade to it yourself)- `@dependabot ignore this minor version` will close this PR and stopDependabot creating any more for this minor version (unless you reopenthe PR or upgrade to it yourself)- `@dependabot ignore this dependency` will close this PR and stopDependabot creating any more for this dependency (unless you reopen thePR or upgrade to it yourself)</details>Signed-off-by: dependabot[bot] <support@github.com>Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>Co-authored-by: Evan Mattson <35585003+moonbox3@users.noreply.github.com>
Fixed typo in README.md (#12735)
### DescriptionFixed the casing of word Core in the name of the package.### Contribution Checklist- [x] The code builds clean without any errors or warnings- [x] The PR follows the [SK ContributionGuidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)and the [pre-submission formattingscript](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)raises no violations- [x] All unit tests pass, and I have added new tests where possible- [x] I didn't break anyone 😄
.Net: Ensure MongoDB filter/offset tests don't conflict (#12739)
### Motivation and ContextTwo of the MongoDB tests intermittently fail when run on our CI (oncethey are enabled).This is, I believe, because two different tests are using and setting upthe same collection name.### DescriptionRename the Filter test to not use the Offset test collection name.### Contribution Checklist- [x] The code builds clean without any errors or warnings- [x] The PR follows the [SK ContributionGuidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)and the [pre-submission formattingscript](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)raises no violations- [x] All unit tests pass, and I have added new tests where possible- [x] I didn't break anyone 😄
Commits on Jul 18, 2025
Python: Support AzureAI agent MCP tools for streaming and non-streami…
…ng invocations (#12736)### Motivation and ContextMCP tool support was released for the AzureAI Agent and it has yet to beadded to the SK Python AzureAIAgent. This PR adds functionality tohandle the MCP tools for both streaming and non-streaming invocations.<!-- Thank you for your contribution to the semantic-kernel repo!Please help reviewers and future users, providing the followinginformation: 1. Why is this change required? 2. What problem does it solve? 3. What scenario does it contribute to? 4. If it fixes an open issue, please link to the issue here.-->### DescriptionAdds MCP support for the Python AzureAI Agent.- Upgrades dependent packages to be able to use the mcp tool from theAzure SDK.<!-- Describe your changes, the overall approach, the underlying design.These notes will help understanding how your code works. Thanks! -->### Contribution Checklist<!-- Before submitting this PR, please make sure: -->- [X] The code builds clean without any errors or warnings- [X] The PR follows the [SK ContributionGuidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)and the [pre-submission formattingscript](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)raises no violations- [X] All unit tests pass, and I have added new tests where possible- [X] I didn't break anyone 😄
.Net: Update to latest M.E.AI{.Abstractions} + OpenAI Related Packages (
#12685)This pull request updates package dependencies, refactors the OpenAIRealtime demo to align with API changes, and modifies related unit teststo reflect these updates. The most significant changes include updatingpackage versions, transitioning from the `RealtimeConversation` API tothe `Realtime` API, and adjusting test logic to accommodate updated datastructures.### Dependency Updates:* Updated `Azure.AI.OpenAI` to version `2.2.0-beta.5` and `OpenAI` toversion `2.2.0`.[[1]](diffhunk://#diff-21abc2ac38e0ade95299a2450724507fe1d080c383a3024337f9177278c64186L22-R22)[[2]](diffhunk://#diff-21abc2ac38e0ade95299a2450724507fe1d080c383a3024337f9177278c64186L73-R73)* Updated `System.Text.Json` to version `8.0.6`.* Upgraded `Microsoft.Extensions.AI` and related libraries to version`9.7.1`.### OpenAI Realtime Demo Refactor:* Replaced `RealtimeConversationClient` and related classes with`RealtimeClient` and its updated API. This includes changes to sessioninitialization, configuration, and item handling in `Program.cs`.[[1]](diffhunk://#diff-fa8b1514e6458341bf08441b1dc14550fb9bb75d2a0c108c75e1615c2e2ba09dL11-R19)[[2]](diffhunk://#diff-fa8b1514e6458341bf08441b1dc14550fb9bb75d2a0c108c75e1615c2e2ba09dL36-R45)[[3]](diffhunk://#diff-fa8b1514e6458341bf08441b1dc14550fb9bb75d2a0c108c75e1615c2e2ba09dL378-R400)* Adjusted method calls and data types to align with the new API, suchas replacing `ConversationItem` with `RealtimeItem` and updating eventtypes like `ConversationUpdate` to `RealtimeUpdate`.[[1]](diffhunk://#diff-fa8b1514e6458341bf08441b1dc14550fb9bb75d2a0c108c75e1615c2e2ba09dL65-R70)[[2]](diffhunk://#diff-fa8b1514e6458341bf08441b1dc14550fb9bb75d2a0c108c75e1615c2e2ba09dL85-R84)[[3]](diffhunk://#diff-fa8b1514e6458341bf08441b1dc14550fb9bb75d2a0c108c75e1615c2e2ba09dL229-R228)### Unit Test Updates:* Updated test cases to use new data structures, such as replacing`IReadOnlyList<string>` with `IReadOnlyList<ReasoningSummaryPart>` andadapting related assertions.[[1]](diffhunk://#diff-3e486c31e4424c1a3ea61e23b1f7a266d186a4016ad57d7187dacf7b4bc8140fL198-R206)[[2]](diffhunk://#diff-8ea1809160a96b9a3ebca5c1695353800f302aa2c5aabb4a2be51c6494f6f315L105-R105)* Added `OPENAI001` to `NoWarn` lists in several `.csproj` files tosuppress warnings related to the OpenAI SDK.[[1]](diffhunk://#diff-ae520434a4ad683f6736397dfbd0b308dda10dbce75af0c5064efbb3b0059dc0L11-R11)[[2]](diffhunk://#diff-5703c2716d4b9753ae67ce3c1434595c4adbff1eb6564dd2fa0a0882c3925551L8-R8)[[3]](diffhunk://#diff-8788687b51a5a626ca287b5c18f667bf1f5fa9b13af4ee425765f8e84b765ac3L10-R10)---------Co-authored-by: Mark Wallace <127216156+markwallace-microsoft@users.noreply.github.com>Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
.Net: Update GettingStarted to use M.E.AI.ChatClient (#12740)
### Motivation and ContextThis pull request updates the `GettingStarted` samples to replace theuse of `AddOpenAIChatCompletion` with `AddOpenAIChatClient` for creatingkernels, aligning the code with the newer `ChatClient` API.Additionally, it updates documentation and examples to reflect thischange and introduces minor improvements to the dependency injectionsetup.
Removing Java related extensions and settings. (#11290)
Removing unused extensions and VS Code settings.### Contribution Checklist<!-- Before submitting this PR, please make sure: -->- [ ] The code builds clean without any errors or warnings- [ ] The PR follows the [SK ContributionGuidelines](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md)and the [pre-submission formattingscript](https://github.com/microsoft/semantic-kernel/blob/main/CONTRIBUTING.md#development-scripts)raises no violations- [ ] All unit tests pass, and I have added new tests where possible- [ ] I didn't break anyone 😄Co-authored-by: Ben Thomas <bentho@microsoft.com>Co-authored-by: Roger Barreto <19890735+rogerbarreto@users.noreply.github.com>
.Net: Bump danielpalme/ReportGenerator-GitHub-Action from 5.4.7 to 5.…
…4.8 (#12497)Bumps[danielpalme/ReportGenerator-GitHub-Action](https://github.com/danielpalme/reportgenerator-github-action)from 5.4.7 to 5.4.8.<details><summary>Release notes</summary><p><em>Sourced from <ahref="https://github.com/danielpalme/reportgenerator-github-action/releases">danielpalme/ReportGenerator-GitHub-Action'sreleases</a>.</em></p><blockquote><h2>5.4.8</h2><ul><li><ahref="https://redirect.github.com/danielpalme/reportgenerator-github-action/issues/737">#737</a>Improved lcov support (take FNDA elements into account to determinewhether a code element has been covered)</li><li><ahref="https://redirect.github.com/danielpalme/reportgenerator-github-action/issues/741">#741</a>Charts does not render "Full method coverage" elements ifcoverage information is not available</li><li>Added new setting "applyMaximumGroupingLevel". This allowsto apply the maximum grouping level instead of the default 'By assembly'grouping in HTML reports.</li></ul></blockquote></details><details><summary>Commits</summary><ul><li><ahref="https://github.com/danielpalme/ReportGenerator-GitHub-Action/commit/4c0f60daf67483745c34efdeadd4c4e78a19991e"><code>4c0f60d</code></a>5.4.8</li><li><ahref="https://github.com/danielpalme/ReportGenerator-GitHub-Action/commit/3f60523236d7e9c35234305c1161b032a5021a2d"><code>3f60523</code></a>FixCVE-2025-47279</li><li>See full diff in <ahref="https://github.com/danielpalme/reportgenerator-github-action/compare/5.4.7...5.4.8">compareview</a></li></ul></details><br />[](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)Dependabot will resolve any conflicts with this PR as long as you don'talter it yourself. You can also trigger a rebase manually by commenting`@dependabot rebase`.[//]: # (dependabot-automerge-start)[//]: # (dependabot-automerge-end)---<details><summary>Dependabot commands and options</summary><br />You can trigger Dependabot actions by commenting on this PR:- `@dependabot rebase` will rebase this PR- `@dependabot recreate` will recreate this PR, overwriting any editsthat have been made to it- `@dependabot merge` will merge this PR after your CI passes on it- `@dependabot squash and merge` will squash and merge this PR afteryour CI passes on it- `@dependabot cancel merge` will cancel a previously requested mergeand block automerging- `@dependabot reopen` will reopen this PR if it is closed- `@dependabot close` will close this PR and stop Dependabot recreatingit. You can achieve the same result by closing it manually- `@dependabot show <dependency name> ignore conditions` will show allof the ignore conditions of the specified dependency- `@dependabot ignore this major version` will close this PR and stopDependabot creating any more for this major version (unless you reopenthe PR or upgrade to it yourself)- `@dependabot ignore this minor version` will close this PR and stopDependabot creating any more for this minor version (unless you reopenthe PR or upgrade to it yourself)- `@dependabot ignore this dependency` will close this PR and stopDependabot creating any more for this dependency (unless you reopen thePR or upgrade to it yourself)</details>Signed-off-by: dependabot[bot] <support@github.com>Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:git diff python-1.35.0...main
Uh oh!
There was an error while loading.Please reload this page.