Skip to content

Python: Ability to get rendered template or token count estimate #6572

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
nmccann opened this issue Jun 5, 2024 · 3 comments
Closed

Python: Ability to get rendered template or token count estimate #6572

nmccann opened this issue Jun 5, 2024 · 3 comments
Labels
python Pull requests for the Python Semantic Kernel triage

Comments

@nmccann
Copy link

nmccann commented Jun 5, 2024

While trying to support dynamically trimming chat history or other input parameters, I've found it useful to be able to render a template for a given function, so that it can then be passed to a tokenizer. The tokenizer's output can then be used to determine if the input should be trimmed, and then the process is repeated until it fits within the model's token limit or some other criteria is met.

However, with the Python library the only way I've found to do this ends up being quite hacky, for example:

# prompt_template is a PromptTemplateConfig used to create a function that is registered with the kernel
prompt_template = TEMPLATE_FORMAT_MAP[prompt_template_config.template_format](
        prompt_template_config=prompt_template_config
)

result = await prompt_template.render(
        kernel,
        arguments=KernelArguments(input=user_prompt, history=chat_history),
)

# Tokenize the result, and trim chat_history if necessary

I suspect the reason that such a feature doesn't exist yet is because more complex uses of SemanticKernel make it impossible to preemptively calculate the token count like this, but perhaps it would be possible to at least provide an estimate?

Note that as per the title, the feature could either return just a rendered template or a token count estimate. There are cases where the rendered template itself might be useful, but I think most of the time users would want the token count. However that may be more difficult to generalize as different users may want to use different tokenizers, so returning the template allows for that.

Thank you!

@markwallace-microsoft markwallace-microsoft added python Pull requests for the Python Semantic Kernel triage labels Jun 5, 2024
@eavanvalkenburg
Copy link
Member

This would be a perfect scenario for the prompt rendering filter, have a look at that, and let us know! Cc @matthewbolanos

@nmccann
Copy link
Author

nmccann commented Jun 6, 2024

@eavanvalkenburg that does sound like exactly what I'm looking for, and helped me to search the samples to find this. Thank you - I'll try that out :)

@nmccann nmccann closed this as completed Jun 6, 2024
@nmccann
Copy link
Author

nmccann commented Jun 7, 2024

For reference, I was able to get this working and it's quite a bit cleaner then my previous approach. Thank you for the suggestion!

# Other Kernel Setup...
kernel.add_filter(
            FilterTypes.PROMPT_RENDERING,
            prompt_rendering_filter(max_in_tokens, below_token_func),
        )

def prompt_rendering_filter(max_tokens: int, is_below_token_limit_func):
    async def inner(context: PromptRenderContext, next):
        await next(context)
        history: ChatHistory = context.arguments["history"]

        def _should_trim():
            input = context.rendered_prompt or ""
            return not is_below_token_limit_func(input, max_tokens) and len(history) > 0

        while _should_trim():
            history.messages.pop(0)
            await next(context)

    return inner

github-actions bot added a commit to Bryan-Roe-ai/semantic-kernel that referenced this issue Oct 21, 2024
Bumps the npm_and_yarn group with 1 update in the
/DevSkim-main/DevSkim-VSCode-Plugin directory:
[braces](https://github.com/micromatch/braces).
Bumps the npm_and_yarn group with 1 update in the
/vscode-azure-account-main directory:
[webpack](https://github.com/webpack/webpack).
Bumps the npm_and_yarn group with 1 update in the
/vscode-azure-account-main/sample directory:
[axios](https://github.com/axios/axios).

Updates `braces` from 3.0.2 to 3.0.3
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/micromatch/braces/commit/74b2db2938fad48a2ea54a9c8bf27a37a62c350d"><code>74b2db2</code></a>
3.0.3</li>
<li><a
href="https://github.com/micromatch/braces/commit/88f1429a0f47e1dd3813de35211fc97ffda27f9e"><code>88f1429</code></a>
update eslint. lint, fix unit tests.</li>
<li><a
href="https://github.com/micromatch/braces/commit/415d660c3002d1ab7e63dbf490c9851da80596ff"><code>415d660</code></a>
Snyk js braces 6838727 (<a
href="https://redirect.github.com/micromatch/braces/issues/40">#40</a>)</li>
<li><a
href="https://github.com/micromatch/braces/commit/190510f79db1adf21d92798b0bb6fccc1f72c9d6"><code>190510f</code></a>
fix tests, skip 1 test in test/braces.expand</li>
<li><a
href="https://github.com/micromatch/braces/commit/716eb9f12d820b145a831ad678618731927e8856"><code>716eb9f</code></a>
readme bump</li>
<li><a
href="https://github.com/micromatch/braces/commit/a5851e57f45c3431a94d83fc565754bc10f5bbc3"><code>a5851e5</code></a>
Merge pull request <a
href="https://redirect.github.com/micromatch/braces/issues/37">#37</a>
from coderaiser/fix/vulnerability</li>
<li><a
href="https://github.com/micromatch/braces/commit/2092bd1fb108d2c59bd62e243b70ad98db961538"><code>2092bd1</code></a>
feature: braces: add maxSymbols (<a
href="https://github.com/micromatch/braces/issues/">https://github.com/micromatch/braces/issues/</a>...</li>
<li><a
href="https://github.com/micromatch/braces/commit/9f5b4cf47329351bcb64287223ffb6ecc9a5e6d3"><code>9f5b4cf</code></a>
fix: vulnerability (<a
href="https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727">https://security.snyk.io/vuln/SNYK-JS-BRACES-6838727</a>)</li>
<li><a
href="https://github.com/micromatch/braces/commit/98414f9f1fabe021736e26836d8306d5de747e0d"><code>98414f9</code></a>
remove funding file</li>
<li><a
href="https://github.com/micromatch/braces/commit/665ab5d561c017a38ba7aafd92cc6655b91d8c14"><code>665ab5d</code></a>
update keepEscaping doc (<a
href="https://redirect.github.com/micromatch/braces/issues/27">#27</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/micromatch/braces/compare/3.0.2...3.0.3">compare
view</a></li>
</ul>
</details>
<br />

Updates `webpack` from 5.76.2 to 5.94.0
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/webpack/webpack/releases">webpack's
releases</a>.</em></p>
<blockquote>
<h2>v5.94.0</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Added runtime condition for harmony reexport checked</li>
<li>Handle properly
<code>data</code>/<code>http</code>/<code>https</code> protocols in
source maps</li>
<li>Make <code>bigint</code> optimistic when browserslist not found</li>
<li>Move <code>@​types/eslint-scope</code> to dev deps</li>
<li>Related in asset stats is now always an array when no related
found</li>
<li>Handle ASI for export declarations</li>
<li>Mangle destruction incorrect with export named default properly</li>
<li>Fixed unexpected asi generation with sequence expression</li>
<li>Fixed a lot of types</li>
</ul>
<h2>New Features</h2>
<ul>
<li>Added new external type &quot;module-import&quot;</li>
<li>Support <code>webpackIgnore</code> for <code>new URL()</code>
construction</li>
<li>[CSS] <code>@import</code> pathinfo support</li>
</ul>
<h2>Security</h2>
<ul>
<li>Fixed DOM clobbering in auto public path</li>
</ul>
<h2>v5.93.0</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Generate correct relative path to runtime chunks</li>
<li>Makes <code>DefinePlugin</code> quieter under default log level</li>
<li>Fixed mangle destructuring default in namespace import</li>
<li>Fixed consumption of eager shared modules for module federation</li>
<li>Strip slash for pretty regexp</li>
<li>Calculate correct contenthash for CSS generator options</li>
</ul>
<h2>New Features</h2>
<ul>
<li>Added the <code>binary</code> generator option for asset modules to
explicitly keep source maps produced by loaders</li>
<li>Added the <code>modern-module</code> library value for tree shakable
output</li>
<li>Added the <code>overrideStrict</code> option to override strict or
non-strict mode for javascript modules</li>
</ul>
<h2>v5.92.1</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Doesn't crash with an error when the css experiment is enabled and
contenthash is used</li>
</ul>
<h2>v5.92.0</h2>
<h2>Bug Fixes</h2>
<ul>
<li>Correct tidle range's comutation for module federation</li>
<li>Consider runtime for pure expression dependency update hash</li>
<li>Return value in the <code>subtractRuntime</code> function for
runtime logic</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/webpack/webpack/commit/eabf85d8580dfcb876b56957ba5488222a4f7873"><code>eabf85d</code></a>
chore(release): 5.94.0</li>
<li><a
href="https://github.com/webpack/webpack/commit/955e057abc6cc83cbc3fa1e1ef67a49758bf5a61"><code>955e057</code></a>
security: fix DOM clobbering in auto public path</li>
<li><a
href="https://github.com/webpack/webpack/commit/98223873625a029b9903d5ec6c0235b8f9fb5a66"><code>9822387</code></a>
test: fix</li>
<li><a
href="https://github.com/webpack/webpack/commit/cbb86ede32ab53d8eade6efee30da2463f0082ec"><code>cbb86ed</code></a>
test: fix</li>
<li><a
href="https://github.com/webpack/webpack/commit/5ac3d7f2cdce6da63a8dfb07e9dbbd95756bf7a2"><code>5ac3d7f</code></a>
fix: unexpected asi generation with sequence expression</li>
<li><a
href="https://github.com/webpack/webpack/commit/2411661bd1bedf1b2efc23c76d595c189425d39f"><code>2411661</code></a>
security: fix DOM clobbering in auto public path</li>
<li><a
href="https://github.com/webpack/webpack/commit/b8c03d47726a57e0dc6ba58b4f96f0e81b168268"><code>b8c03d4</code></a>
fix: unexpected asi generation with sequence expression</li>
<li><a
href="https://github.com/webpack/webpack/commit/f46a03ccbc2b96ff3552642fea0d7402f7880865"><code>f46a03c</code></a>
revert: do not use heuristic fallback for &quot;module-import&quot;</li>
<li><a
href="https://github.com/webpack/webpack/commit/60f189871a4cdc5d595663d6babadac74f2f6a7d"><code>60f1898</code></a>
fix: do not use heuristic fallback for &quot;module-import&quot;</li>
<li><a
href="https://github.com/webpack/webpack/commit/66306aa45659ef4e8dac8226798931c228fdb204"><code>66306aa</code></a>
Revert &quot;fix: module-import get fallback from
externalsPresets&quot;</li>
<li>Additional commits viewable in <a
href="https://github.com/webpack/webpack/compare/v5.76.2...v5.94.0">compare
view</a></li>
</ul>
</details>
<br />

Updates `axios` from 1.7.3 to 1.7.7
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/axios/axios/releases">axios's
releases</a>.</em></p>
<blockquote>
<h2>Release v1.7.7</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>fetch:</strong> fix stream handling in Safari by fallback to
using a stream reader instead of an async iterator; (<a
href="https://redirect.github.com/axios/axios/issues/6584">#6584</a>)
(<a
href="https://github.com/axios/axios/commit/d1980854fee1765cd02fa0787adf5d6e34dd9dcf">d198085</a>)</li>
<li><strong>http:</strong> fixed support for IPv6 literal strings in url
(<a
href="https://redirect.github.com/axios/axios/issues/5731">#5731</a>)
(<a
href="https://github.com/axios/axios/commit/364993f0d8bc6e0e06f76b8a35d2d0a35cab054c">364993f</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a href="https://github.com/Rishi556"
title="+39/-1 ([microsoft#5731](axios/axios#5731)
)">Rishi556</a></li>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+27/-7
([microsoft#6584](axios/axios#6584) )">Dmitriy
Mozgovoy</a></li>
</ul>
<h2>Release v1.7.6</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>fetch:</strong> fix content length calculation for FormData
payload; (<a
href="https://redirect.github.com/axios/axios/issues/6524">#6524</a>)
(<a
href="https://github.com/axios/axios/commit/085f56861a83e9ac02c140ad9d68dac540dfeeaa">085f568</a>)</li>
<li><strong>fetch:</strong> optimize signals composing logic; (<a
href="https://redirect.github.com/axios/axios/issues/6582">#6582</a>)
(<a
href="https://github.com/axios/axios/commit/df9889b83c2cc37e9e6189675a73ab70c60f031f">df9889b</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+98/-46
([#6582](axios/axios#6582) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/jacquesg"
title="+5/-1 ([microsoft#6524](axios/axios#6524)
)">Jacques Germishuys</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/kuroino721"
title="+3/-1 ([microsoft#6575](axios/axios#6575)
)">kuroino721</a></li>
</ul>
<h2>Release v1.7.5</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>adapter:</strong> fix undefined reference to hasBrowserEnv
(<a
href="https://redirect.github.com/axios/axios/issues/6572">#6572</a>)
(<a
href="https://github.com/axios/axios/commit/7004707c4180b416341863bd86913fe4fc2f1df1">7004707</a>)</li>
<li><strong>core:</strong> add the missed implementation of
AxiosError#status property; (<a
href="https://redirect.github.com/axios/axios/issues/6573">#6573</a>)
(<a
href="https://github.com/axios/axios/commit/6700a8adac06942205f6a7a21421ecb36c4e0852">6700a8a</a>)</li>
<li><strong>core:</strong> fix <code>ReferenceError: navigator is not
defined</code> for custom environments; (<a
href="https://redirect.github.com/axios/axios/issues/6567">#6567</a>)
(<a
href="https://github.com/axios/axios/commit/fed1a4b2d78ed4a588c84e09d32749ed01dc2794">fed1a4b</a>)</li>
<li><strong>fetch:</strong> fix credentials handling in Cloudflare
workers (<a
href="https://redirect.github.com/axios/axios/issues/6533">#6533</a>)
(<a
href="https://github.com/axios/axios/commit/550d885eb90fd156add7b93bbdc54d30d2f9a98d">550d885</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+187/-83
([microsoft#6573](axios/axios#6573)
[microsoft#6567](axios/axios#6567)
[microsoft#6566](axios/axios#6566)
[microsoft#6564](axios/axios#6564)
[microsoft#6563](axios/axios#6563)
[#6557](axios/axios#6557)
[microsoft#6556](axios/axios#6556)
[microsoft#6555](axios/axios#6555)
[microsoft#6554](axios/axios#6554)
[microsoft#6552](axios/axios#6552) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/antoninbas"
title="+6/-6 ([microsoft#6572](axios/axios#6572)
)">Antonin Bas</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/hansottowirtz"
title="+4/-1 ([microsoft#6533](axios/axios#6533)
)">Hans Otto Wirtz</a></li>
</ul>
<h2>Release v1.7.4</h2>
<h2>Release notes:</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>sec:</strong> CVE-2024-39338 (<a
href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>)
(<a
href="https://redirect.github.com/axios/axios/issues/6543">#6543</a>)
(<a
href="https://github.com/axios/axios/commit/6b6b605eaf73852fb2dae033f1e786155959de3a">6b6b605</a>)</li>
<li><strong>sec:</strong> disregard protocol-relative URL to remediate
SSRF (<a
href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>)
(<a
href="https://github.com/axios/axios/commit/07a661a2a6b9092c4aa640dcc7f724ec5e65bdda">07a661a</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a href="https://github.com/levpachmanov"
title="+47/-11 ([microsoft#6543](axios/axios#6543)
)">Lev Pachmanov</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/axios/axios/blob/v1.x/CHANGELOG.md">axios's
changelog</a>.</em></p>
<blockquote>
<h2><a
href="https://github.com/axios/axios/compare/v1.7.6...v1.7.7">1.7.7</a>
(2024-08-31)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>fetch:</strong> fix stream handling in Safari by fallback to
using a stream reader instead of an async iterator; (<a
href="https://redirect.github.com/axios/axios/issues/6584">#6584</a>)
(<a
href="https://github.com/axios/axios/commit/d1980854fee1765cd02fa0787adf5d6e34dd9dcf">d198085</a>)</li>
<li><strong>http:</strong> fixed support for IPv6 literal strings in url
(<a
href="https://redirect.github.com/axios/axios/issues/5731">#5731</a>)
(<a
href="https://github.com/axios/axios/commit/364993f0d8bc6e0e06f76b8a35d2d0a35cab054c">364993f</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a href="https://github.com/Rishi556"
title="+39/-1 ([microsoft#5731](axios/axios#5731)
)">Rishi556</a></li>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+27/-7
([microsoft#6584](axios/axios#6584) )">Dmitriy
Mozgovoy</a></li>
</ul>
<h2><a
href="https://github.com/axios/axios/compare/v1.7.5...v1.7.6">1.7.6</a>
(2024-08-30)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>fetch:</strong> fix content length calculation for FormData
payload; (<a
href="https://redirect.github.com/axios/axios/issues/6524">#6524</a>)
(<a
href="https://github.com/axios/axios/commit/085f56861a83e9ac02c140ad9d68dac540dfeeaa">085f568</a>)</li>
<li><strong>fetch:</strong> optimize signals composing logic; (<a
href="https://redirect.github.com/axios/axios/issues/6582">#6582</a>)
(<a
href="https://github.com/axios/axios/commit/df9889b83c2cc37e9e6189675a73ab70c60f031f">df9889b</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+98/-46
([#6582](axios/axios#6582) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/jacquesg"
title="+5/-1 ([microsoft#6524](axios/axios#6524)
)">Jacques Germishuys</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/kuroino721"
title="+3/-1 ([microsoft#6575](axios/axios#6575)
)">kuroino721</a></li>
</ul>
<h2><a
href="https://github.com/axios/axios/compare/v1.7.4...v1.7.5">1.7.5</a>
(2024-08-23)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>adapter:</strong> fix undefined reference to hasBrowserEnv
(<a
href="https://redirect.github.com/axios/axios/issues/6572">#6572</a>)
(<a
href="https://github.com/axios/axios/commit/7004707c4180b416341863bd86913fe4fc2f1df1">7004707</a>)</li>
<li><strong>core:</strong> add the missed implementation of
AxiosError#status property; (<a
href="https://redirect.github.com/axios/axios/issues/6573">#6573</a>)
(<a
href="https://github.com/axios/axios/commit/6700a8adac06942205f6a7a21421ecb36c4e0852">6700a8a</a>)</li>
<li><strong>core:</strong> fix <code>ReferenceError: navigator is not
defined</code> for custom environments; (<a
href="https://redirect.github.com/axios/axios/issues/6567">#6567</a>)
(<a
href="https://github.com/axios/axios/commit/fed1a4b2d78ed4a588c84e09d32749ed01dc2794">fed1a4b</a>)</li>
<li><strong>fetch:</strong> fix credentials handling in Cloudflare
workers (<a
href="https://redirect.github.com/axios/axios/issues/6533">#6533</a>)
(<a
href="https://github.com/axios/axios/commit/550d885eb90fd156add7b93bbdc54d30d2f9a98d">550d885</a>)</li>
</ul>
<h3>Contributors to this release</h3>
<ul>
<li><!-- raw HTML omitted --> <a
href="https://github.com/DigitalBrainJS" title="+187/-83
([microsoft#6573](axios/axios#6573)
[microsoft#6567](axios/axios#6567)
[microsoft#6566](axios/axios#6566)
[microsoft#6564](axios/axios#6564)
[microsoft#6563](axios/axios#6563)
[#6557](axios/axios#6557)
[microsoft#6556](axios/axios#6556)
[microsoft#6555](axios/axios#6555)
[microsoft#6554](axios/axios#6554)
[microsoft#6552](axios/axios#6552) )">Dmitriy
Mozgovoy</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/antoninbas"
title="+6/-6 ([microsoft#6572](axios/axios#6572)
)">Antonin Bas</a></li>
<li><!-- raw HTML omitted --> <a href="https://github.com/hansottowirtz"
title="+4/-1 ([microsoft#6533](axios/axios#6533)
)">Hans Otto Wirtz</a></li>
</ul>
<h2><a
href="https://github.com/axios/axios/compare/v1.7.3...v1.7.4">1.7.4</a>
(2024-08-13)</h2>
<h3>Bug Fixes</h3>
<ul>
<li><strong>sec:</strong> CVE-2024-39338 (<a
href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>)
(<a
href="https://redirect.github.com/axios/axios/issues/6543">#6543</a>)
(<a
href="https://github.com/axios/axios/commit/6b6b605eaf73852fb2dae033f1e786155959de3a">6b6b605</a>)</li>
<li><strong>sec:</strong> disregard protocol-relative URL to remediate
SSRF (<a
href="https://redirect.github.com/axios/axios/issues/6539">#6539</a>)
(<a
href="https://github.com/axios/axios/commit/07a661a2a6b9092c4aa640dcc7f724ec5e65bdda">07a661a</a>)</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/axios/axios/commit/5b8a826771b77ab30081d033fdba9ef3b90e439a"><code>5b8a826</code></a>
chore(release): v1.7.7 (<a
href="https://redirect.github.com/axios/axios/issues/6585">#6585</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/364993f0d8bc6e0e06f76b8a35d2d0a35cab054c"><code>364993f</code></a>
fix(http): fixed support for IPv6 literal strings in url (<a
href="https://redirect.github.com/axios/axios/issues/5731">#5731</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/d1980854fee1765cd02fa0787adf5d6e34dd9dcf"><code>d198085</code></a>
fix(fetch): fix stream handling in Safari by fallback to using a stream
reade...</li>
<li><a
href="https://github.com/axios/axios/commit/d584fcfa62ba5217baf2be0748b7c5eda6da16ad"><code>d584fcf</code></a>
chore(release): v1.7.6 (<a
href="https://redirect.github.com/axios/axios/issues/6583">#6583</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/bc03c6cbc41eb8449daa2f4b6b8048671a05bded"><code>bc03c6c</code></a>
chore(examples): fix module import (<a
href="https://redirect.github.com/axios/axios/issues/6575">#6575</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/df9889b83c2cc37e9e6189675a73ab70c60f031f"><code>df9889b</code></a>
fix(fetch): optimize signals composing logic; (<a
href="https://redirect.github.com/axios/axios/issues/6582">#6582</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/ee208cfcae8770ac579f26e7278867567886e026"><code>ee208cf</code></a>
chore(sponsor): update sponsor block (<a
href="https://redirect.github.com/axios/axios/issues/6576">#6576</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/085f56861a83e9ac02c140ad9d68dac540dfeeaa"><code>085f568</code></a>
fix(fetch): fix content length calculation for FormData payload; (<a
href="https://redirect.github.com/axios/axios/issues/6524">#6524</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/59cd6b0dece4050b190717a7c5cdf77906ce2104"><code>59cd6b0</code></a>
chore(release): v1.7.5 (<a
href="https://redirect.github.com/axios/axios/issues/6574">#6574</a>)</li>
<li><a
href="https://github.com/axios/axios/commit/6700a8adac06942205f6a7a21421ecb36c4e0852"><code>6700a8a</code></a>
fix(core): add the missed implementation of AxiosError#status property;
(<a
href="https://redirect.github.com/axios/axios/issues/6573">#6573</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/axios/axios/compare/v1.7.3...v1.7.7">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter 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 edits
that 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 after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore <dependency name> major version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's major version (unless you unignore this specific
dependency's major version or upgrade to it yourself)
- `@dependabot ignore <dependency name> minor version` will close this
group update PR and stop Dependabot creating any more for the specific
dependency's minor version (unless you unignore this specific
dependency's minor version or upgrade to it yourself)
- `@dependabot ignore <dependency name>` will close this group update PR
and stop Dependabot creating any more for the specific dependency
(unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore <dependency name>` will remove all of the ignore
conditions of the specified dependency
- `@dependabot unignore <dependency name> <ignore condition>` will
remove the ignore condition of the specified dependency and ignore
conditions
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/Bryan-Roe/semantic-kernel/network/alerts).

</details>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
python Pull requests for the Python Semantic Kernel triage
Projects
None yet
Development

No branches or pull requests

3 participants