mirror of
https://github.com/hwchase17/langchain.git
synced 2026-07-30 13:33:36 +00:00
c19eee28fa704d33f7fcd9eb3dc55fe8705a2415
16464 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
b255847eb4 |
chore: bump langsmith from 0.9.5 to 0.10.2 in /libs/partners/fireworks (#38830)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.9.5 to 0.10.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.10.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): 0.8.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3185">langchain-ai/langsmith-sdk#3185</a></li> <li>refactor(voice): move span attribute setters onto TranslatedSpan by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3179">langchain-ai/langsmith-sdk#3179</a></li> <li>feat: add SmithDB by-key path to add_runs_to_annotation_queue (runs= param) [LSDK-287] by <a href="https://github.com/ayoung19"><code>@ayoung19</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> <li>refactor(livekit + pipecat): Refactor for clarity by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3187">langchain-ai/langsmith-sdk#3187</a></li> <li>feat(py): re-export OpenAPI client exceptions from langsmith package by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3188">langchain-ai/langsmith-sdk#3188</a></li> <li>release(python): bump py version to 0.10.2 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3189">langchain-ai/langsmith-sdk#3189</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/ayoung19"><code>@ayoung19</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2</a></p> <h2>v0.10.1</h2> <h2>What's Changed</h2> <ul> <li>fix: bound voice streaming audio buffers by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3169">langchain-ai/langsmith-sdk#3169</a></li> <li>fix: escape insights report html repr by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.12rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3178">langchain-ai/langsmith-sdk#3178</a></li> <li>Fix URL Path Injection via Unencoded Resource Names in Python Sandbox Client (Sync) by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3177">langchain-ai/langsmith-sdk#3177</a></li> <li>feat(js): expose openapi client error classes by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3181">langchain-ai/langsmith-sdk#3181</a></li> <li>release(py): 0.10.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3184">langchain-ai/langsmith-sdk#3184</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1</a></p> <h2>v0.10.0</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3152">langchain-ai/langsmith-sdk#3152</a></li> <li>release(js): bump JS SDK to 0.7.16 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3160">langchain-ai/langsmith-sdk#3160</a></li> <li>feat: expose OTel-safe metadata helpers [closes LSDK-262] by <a href="https://github.com/open-swe"><code>@open-swe</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3091">langchain-ai/langsmith-sdk#3091</a></li> <li>feat(integrations): helpers to build LangSmith run URLs from OTel spans [LSDK-273] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3142">langchain-ai/langsmith-sdk#3142</a></li> <li>fix(python): remove projects accessor from AsyncClient by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3163">langchain-ai/langsmith-sdk#3163</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3162">langchain-ai/langsmith-sdk#3162</a></li> <li>feat(js): Extends wrapAnthropic JS wrapper to support Claude Managed Agents methods by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3155">langchain-ai/langsmith-sdk#3155</a></li> <li>release(js): 0.7.17 by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3166">langchain-ai/langsmith-sdk#3166</a></li> <li>feat(client): expose threads and traces resource accessors on Python and JS clients by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3164">langchain-ai/langsmith-sdk#3164</a></li> <li>ci: freeze pnpm environment test installs by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3168">langchain-ai/langsmith-sdk#3168</a></li> <li>Quote sandbox client URL path segments by <a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> <li>release(js): 0.8.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3171">langchain-ai/langsmith-sdk#3171</a></li> <li>release(py): 0.10.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3170">langchain-ai/langsmith-sdk#3170</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0</a></p> <h2>v0.9.8</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
dde88cdb49 |
chore: bump langsmith from 0.9.5 to 0.10.2 in /libs/partners/huggingface (#38829)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.9.5 to 0.10.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.10.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): 0.8.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3185">langchain-ai/langsmith-sdk#3185</a></li> <li>refactor(voice): move span attribute setters onto TranslatedSpan by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3179">langchain-ai/langsmith-sdk#3179</a></li> <li>feat: add SmithDB by-key path to add_runs_to_annotation_queue (runs= param) [LSDK-287] by <a href="https://github.com/ayoung19"><code>@ayoung19</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> <li>refactor(livekit + pipecat): Refactor for clarity by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3187">langchain-ai/langsmith-sdk#3187</a></li> <li>feat(py): re-export OpenAPI client exceptions from langsmith package by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3188">langchain-ai/langsmith-sdk#3188</a></li> <li>release(python): bump py version to 0.10.2 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3189">langchain-ai/langsmith-sdk#3189</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/ayoung19"><code>@ayoung19</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2</a></p> <h2>v0.10.1</h2> <h2>What's Changed</h2> <ul> <li>fix: bound voice streaming audio buffers by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3169">langchain-ai/langsmith-sdk#3169</a></li> <li>fix: escape insights report html repr by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.12rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3178">langchain-ai/langsmith-sdk#3178</a></li> <li>Fix URL Path Injection via Unencoded Resource Names in Python Sandbox Client (Sync) by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3177">langchain-ai/langsmith-sdk#3177</a></li> <li>feat(js): expose openapi client error classes by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3181">langchain-ai/langsmith-sdk#3181</a></li> <li>release(py): 0.10.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3184">langchain-ai/langsmith-sdk#3184</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1</a></p> <h2>v0.10.0</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3152">langchain-ai/langsmith-sdk#3152</a></li> <li>release(js): bump JS SDK to 0.7.16 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3160">langchain-ai/langsmith-sdk#3160</a></li> <li>feat: expose OTel-safe metadata helpers [closes LSDK-262] by <a href="https://github.com/open-swe"><code>@open-swe</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3091">langchain-ai/langsmith-sdk#3091</a></li> <li>feat(integrations): helpers to build LangSmith run URLs from OTel spans [LSDK-273] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3142">langchain-ai/langsmith-sdk#3142</a></li> <li>fix(python): remove projects accessor from AsyncClient by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3163">langchain-ai/langsmith-sdk#3163</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3162">langchain-ai/langsmith-sdk#3162</a></li> <li>feat(js): Extends wrapAnthropic JS wrapper to support Claude Managed Agents methods by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3155">langchain-ai/langsmith-sdk#3155</a></li> <li>release(js): 0.7.17 by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3166">langchain-ai/langsmith-sdk#3166</a></li> <li>feat(client): expose threads and traces resource accessors on Python and JS clients by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3164">langchain-ai/langsmith-sdk#3164</a></li> <li>ci: freeze pnpm environment test installs by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3168">langchain-ai/langsmith-sdk#3168</a></li> <li>Quote sandbox client URL path segments by <a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> <li>release(js): 0.8.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3171">langchain-ai/langsmith-sdk#3171</a></li> <li>release(py): 0.10.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3170">langchain-ai/langsmith-sdk#3170</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0</a></p> <h2>v0.9.8</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
b27f55498f |
chore: bump transformers from 5.3.0 to 5.5.0 in /libs/partners/huggingface (#38828)
Bumps [transformers](https://github.com/huggingface/transformers) from 5.3.0 to 5.5.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/huggingface/transformers/releases">transformers's releases</a>.</em></p> <blockquote> <h1>Release v5.5.0</h1> <!-- raw HTML omitted --> <h2>New Model additions</h2> <h3>Gemma4</h3> <p><a href="https://github.com/huggingface/transformers/blob/HEAD/INSET_PAPER_LINK">Gemma 4</a> is a multimodal model with pretrained and instruction-tuned variants, available in 1B, 13B, and 27B parameters. The architecture is mostly the same as the previous Gemma versions. The key differences are a vision processor that can output images of fixed token budget and a spatial 2D RoPE to encode vision-specific information across height and width axis.</p> <!-- raw HTML omitted --> <p>You can find all the original Gemma 4 checkpoints under the <a href="https://huggingface.co/collections/google/gemma-4-release-67c6c6f89c4f76621268bb6d">Gemma 4</a> release.</p> <p>The key difference from previous Gemma releases is the new design to process <strong>images of different sizes</strong> using a <strong>fixed-budget number of tokens</strong>. Unlike many models that squash every image into a fixed square (like 224×224), Gemma 4 keeps the image's natural aspect ratio while making it the right size. There a a couple constraints to follow:</p> <ul> <li>The total number of pixels must fit within a patch budget</li> <li>Both height and width must be divisible by <strong>48</strong> (= patch size 16 × pooling kernel 3)</li> </ul> <blockquote> <p>[!IMPORTANT] Gemma 4 does <strong>not</strong> apply the standard ImageNet mean/std normalization that many other vision models use. The model's own patch embedding layer handles the final scaling internally (shifting values to the [-1, 1] range).</p> </blockquote> <p>The number of "soft tokens" (aka vision tokens) an image processor can produce is configurable. The supported options are outlined below and the default is <strong>280 soft tokens</strong> per image.</p> <table> <thead> <tr> <th align="center">Soft Tokens</th> <th align="center">Patches (before pooling)</th> <th align="center">Approx. Image Area</th> </tr> </thead> <tbody> <tr> <td align="center">70</td> <td align="center">630</td> <td align="center">~161K pixels</td> </tr> <tr> <td align="center">140</td> <td align="center">1,260</td> <td align="center">~323K pixels</td> </tr> <tr> <td align="center"><strong>280</strong></td> <td align="center"><strong>2,520</strong></td> <td align="center"><strong>~645K pixels</strong></td> </tr> <tr> <td align="center">560</td> <td align="center">5,040</td> <td align="center">~1.3M pixels</td> </tr> <tr> <td align="center">1,120</td> <td align="center">10,080</td> <td align="center">~2.6M pixels</td> </tr> </tbody> </table> <p>To encode positional information for each patch in the image, Gemma 4 uses a learned 2D position embedding table. The position table stores up to 10,240 positions per axis, which allows the model to handle very large images. Each position is a learned vector of the same dimensions as the patch embedding. The 2D RoPE which Gemma 4 uses independently rotate half the attention head dimensions for the x-axis and the other half for the y-axis. This allows the model to understand spatial relationships like "above," "below," "left of," and "right of."</p> <h3>NomicBERT</h3> <p>NomicBERT is a BERT-inspired encoder model that applies Rotary Position Embeddings (RoPE) to create reproducible long context text embeddings. It is the first fully reproducible, open-source text embedding model with 8192 context length that outperforms both OpenAI Ada-002 and OpenAI text-embedding-3-small on short-context MTEB and long context LoCo benchmarks. The model generates dense vector embeddings for various tasks including search, clustering, and classification using specific instruction prefixes.</p> <p><strong>Links:</strong> <a href="https://huggingface.co/docs/transformers/main/en/model_doc/nomic_bert">Documentation</a> | <a href="https://arxiv.org/abs/2402.01613">Paper</a></p> <ul> <li>Internalise the NomicBERT model (<a href="https://redirect.github.com/huggingface/transformers/issues/43067">#43067</a>) by <a href="https://github.com/ed22699"><code>@ed22699</code></a> in <a href="https://redirect.github.com/huggingface/transformers/pull/43067">#43067</a></li> </ul> <h3>MusicFlamingo</h3> <p>Music Flamingo is a fully open large audio–language model designed for robust understanding and reasoning over music. It builds upon the Audio Flamingo 3 architecture by including Rotary Time Embeddings (RoTE), which injects temporal position information to enable the model to handle audio sequences up to 20 minutes. The model features a unified audio encoder across speech, sound, and music with special sound boundary tokens for improved audio sequence modeling.</p> <p><strong>Links:</strong> <a href="https://huggingface.co/docs/transformers/main/en/model_doc/musicflamingo">Documentation</a> | <a href="https://huggingface.co/papers/2511.10289">Paper</a></p> <ul> <li>Add Music Flamingo (<a href="https://redirect.github.com/huggingface/transformers/issues/43538">#43538</a>) by <a href="https://github.com/lashahub"><code>@lashahub</code></a> in <a href="https://redirect.github.com/huggingface/transformers/pull/43538">#43538</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
3d4426d427 |
chore: bump langsmith from 0.9.5 to 0.10.2 in /libs/partners/chroma (#38831)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.9.5 to 0.10.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.10.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): 0.8.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3185">langchain-ai/langsmith-sdk#3185</a></li> <li>refactor(voice): move span attribute setters onto TranslatedSpan by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3179">langchain-ai/langsmith-sdk#3179</a></li> <li>feat: add SmithDB by-key path to add_runs_to_annotation_queue (runs= param) [LSDK-287] by <a href="https://github.com/ayoung19"><code>@ayoung19</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> <li>refactor(livekit + pipecat): Refactor for clarity by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3187">langchain-ai/langsmith-sdk#3187</a></li> <li>feat(py): re-export OpenAPI client exceptions from langsmith package by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3188">langchain-ai/langsmith-sdk#3188</a></li> <li>release(python): bump py version to 0.10.2 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3189">langchain-ai/langsmith-sdk#3189</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/ayoung19"><code>@ayoung19</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2</a></p> <h2>v0.10.1</h2> <h2>What's Changed</h2> <ul> <li>fix: bound voice streaming audio buffers by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3169">langchain-ai/langsmith-sdk#3169</a></li> <li>fix: escape insights report html repr by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.12rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3178">langchain-ai/langsmith-sdk#3178</a></li> <li>Fix URL Path Injection via Unencoded Resource Names in Python Sandbox Client (Sync) by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3177">langchain-ai/langsmith-sdk#3177</a></li> <li>feat(js): expose openapi client error classes by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3181">langchain-ai/langsmith-sdk#3181</a></li> <li>release(py): 0.10.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3184">langchain-ai/langsmith-sdk#3184</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1</a></p> <h2>v0.10.0</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3152">langchain-ai/langsmith-sdk#3152</a></li> <li>release(js): bump JS SDK to 0.7.16 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3160">langchain-ai/langsmith-sdk#3160</a></li> <li>feat: expose OTel-safe metadata helpers [closes LSDK-262] by <a href="https://github.com/open-swe"><code>@open-swe</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3091">langchain-ai/langsmith-sdk#3091</a></li> <li>feat(integrations): helpers to build LangSmith run URLs from OTel spans [LSDK-273] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3142">langchain-ai/langsmith-sdk#3142</a></li> <li>fix(python): remove projects accessor from AsyncClient by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3163">langchain-ai/langsmith-sdk#3163</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3162">langchain-ai/langsmith-sdk#3162</a></li> <li>feat(js): Extends wrapAnthropic JS wrapper to support Claude Managed Agents methods by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3155">langchain-ai/langsmith-sdk#3155</a></li> <li>release(js): 0.7.17 by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3166">langchain-ai/langsmith-sdk#3166</a></li> <li>feat(client): expose threads and traces resource accessors on Python and JS clients by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3164">langchain-ai/langsmith-sdk#3164</a></li> <li>ci: freeze pnpm environment test installs by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3168">langchain-ai/langsmith-sdk#3168</a></li> <li>Quote sandbox client URL path segments by <a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> <li>release(js): 0.8.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3171">langchain-ai/langsmith-sdk#3171</a></li> <li>release(py): 0.10.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3170">langchain-ai/langsmith-sdk#3170</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0</a></p> <h2>v0.9.8</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
0f27cf9dac |
chore: bump langsmith from 0.9.5 to 0.10.2 in /libs/partners/xai (#38832)
Bumps [langsmith](https://github.com/langchain-ai/langsmith-sdk) from 0.9.5 to 0.10.2. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/langchain-ai/langsmith-sdk/releases">langsmith's releases</a>.</em></p> <blockquote> <h2>v0.10.2</h2> <h2>What's Changed</h2> <ul> <li>release(js): 0.8.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3185">langchain-ai/langsmith-sdk#3185</a></li> <li>refactor(voice): move span attribute setters onto TranslatedSpan by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3179">langchain-ai/langsmith-sdk#3179</a></li> <li>feat: add SmithDB by-key path to add_runs_to_annotation_queue (runs= param) [LSDK-287] by <a href="https://github.com/ayoung19"><code>@ayoung19</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> <li>refactor(livekit + pipecat): Refactor for clarity by <a href="https://github.com/carolinedivittorio"><code>@carolinedivittorio</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3187">langchain-ai/langsmith-sdk#3187</a></li> <li>feat(py): re-export OpenAPI client exceptions from langsmith package by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3188">langchain-ai/langsmith-sdk#3188</a></li> <li>release(python): bump py version to 0.10.2 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3189">langchain-ai/langsmith-sdk#3189</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/ayoung19"><code>@ayoung19</code></a> made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3077">langchain-ai/langsmith-sdk#3077</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.1...v0.10.2</a></p> <h2>v0.10.1</h2> <h2>What's Changed</h2> <ul> <li>fix: bound voice streaming audio buffers by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3169">langchain-ai/langsmith-sdk#3169</a></li> <li>fix: escape insights report html repr by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> <li>chore: bump _MIN_BACKEND_VERSION to 0.16.12rc1 by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3178">langchain-ai/langsmith-sdk#3178</a></li> <li>Fix URL Path Injection via Unencoded Resource Names in Python Sandbox Client (Sync) by <a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3177">langchain-ai/langsmith-sdk#3177</a></li> <li>feat(js): expose openapi client error classes by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3181">langchain-ai/langsmith-sdk#3181</a></li> <li>release(py): 0.10.1 by <a href="https://github.com/KiewanVillatel"><code>@KiewanVillatel</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3184">langchain-ai/langsmith-sdk#3184</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/corridor-security"><code>@corridor-security</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3176">langchain-ai/langsmith-sdk#3176</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1">https://github.com/langchain-ai/langsmith-sdk/compare/v0.10.0...v0.10.1</a></p> <h2>v0.10.0</h2> <h2>What's Changed</h2> <ul> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3152">langchain-ai/langsmith-sdk#3152</a></li> <li>release(js): bump JS SDK to 0.7.16 by <a href="https://github.com/sineha-mani"><code>@sineha-mani</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3160">langchain-ai/langsmith-sdk#3160</a></li> <li>feat: expose OTel-safe metadata helpers [closes LSDK-262] by <a href="https://github.com/open-swe"><code>@open-swe</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3091">langchain-ai/langsmith-sdk#3091</a></li> <li>feat(integrations): helpers to build LangSmith run URLs from OTel spans [LSDK-273] by <a href="https://github.com/harisaiharish"><code>@harisaiharish</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3142">langchain-ai/langsmith-sdk#3142</a></li> <li>fix(python): remove projects accessor from AsyncClient by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3163">langchain-ai/langsmith-sdk#3163</a></li> <li>chore: sync langsmith_api by <a href="https://github.com/langtions-bot"><code>@langtions-bot</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3162">langchain-ai/langsmith-sdk#3162</a></li> <li>feat(js): Extends wrapAnthropic JS wrapper to support Claude Managed Agents methods by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3155">langchain-ai/langsmith-sdk#3155</a></li> <li>release(js): 0.7.17 by <a href="https://github.com/jacoblee93"><code>@jacoblee93</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3166">langchain-ai/langsmith-sdk#3166</a></li> <li>feat(client): expose threads and traces resource accessors on Python and JS clients by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3164">langchain-ai/langsmith-sdk#3164</a></li> <li>ci: freeze pnpm environment test installs by <a href="https://github.com/jkennedyvz"><code>@jkennedyvz</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3168">langchain-ai/langsmith-sdk#3168</a></li> <li>Quote sandbox client URL path segments by <a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> <li>release(js): 0.8.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3171">langchain-ai/langsmith-sdk#3171</a></li> <li>release(py): 0.10.0 by <a href="https://github.com/QuentinBrosse"><code>@QuentinBrosse</code></a> in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3170">langchain-ai/langsmith-sdk#3170</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/langsmith-fleet"><code>@langsmith-fleet</code></a>[bot] made their first contribution in <a href="https://redirect.github.com/langchain-ai/langsmith-sdk/pull/3167">langchain-ai/langsmith-sdk#3167</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0">https://github.com/langchain-ai/langsmith-sdk/compare/v0.9.8...v0.10.0</a></p> <h2>v0.9.8</h2> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
00c0f69dc0 |
chore: bump mistune from 3.2.1 to 3.3.0 in /libs/langchain (#38782)
Bumps [mistune](https://github.com/lepture/mistune) from 3.2.1 to 3.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/lepture/mistune/releases">mistune's releases</a>.</em></p> <blockquote> <h2>v3.3.0</h2> <h3> 🐞 Bug Fixes</h3> <ul> <li>Resolve O(n^2) DoS in parse_link_text (CWE-400) - by <strong>bhanugoudm041</strong> <a href="https://github.com/lepture/mistune/commit/b6b499d"><!-- raw HTML omitted -->(b6b49)<!-- raw HTML omitted --></a></li> <li>Resolve O(n^2) DoS in parse_link_text (CWE-400)-Type handling/testing done - by <strong>bhanugoudm041</strong> <a href="https://github.com/lepture/mistune/commit/b3af85d"><!-- raw HTML omitted -->(b3af8)<!-- raw HTML omitted --></a></li> <li><strong>block</strong>: Avoid quadratic ref link scans - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/2b04d7b"><!-- raw HTML omitted -->(2b04d)<!-- raw HTML omitted --></a></li> <li><strong>cli</strong>: Add entrypoint and utf-8 output - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/2f2449d"><!-- raw HTML omitted -->(2f244)<!-- raw HTML omitted --></a></li> <li><strong>directives</strong>: Constrain include targets - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/1bef343"><!-- raw HTML omitted -->(1bef3)<!-- raw HTML omitted --></a></li> <li><strong>formatting</strong>: Avoid quadratic marker scans - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/96d0f57"><!-- raw HTML omitted -->(96d0f)<!-- raw HTML omitted --></a></li> <li><strong>image</strong>: Validate figure width option - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/e3e51de"><!-- raw HTML omitted -->(e3e51)<!-- raw HTML omitted --></a></li> <li><strong>inline</strong>: Avoid bracket parsing DoS - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/25f2503"><!-- raw HTML omitted -->(25f25)<!-- raw HTML omitted --></a></li> <li><strong>math</strong>: Reject currency patterns and cross-line matches in inline math - by <a href="https://github.com/geopanther"><code>@geopanther</code></a> <a href="https://github.com/lepture/mistune/commit/566e173"><!-- raw HTML omitted -->(566e1)<!-- raw HTML omitted --></a></li> <li><strong>math</strong>: Support display and backtick math - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/1141eec"><!-- raw HTML omitted -->(1141e)<!-- raw HTML omitted --></a></li> <li><strong>renderer</strong>: Render plugin list and table nodes - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/614b019"><!-- raw HTML omitted -->(614b0)<!-- raw HTML omitted --></a></li> <li><strong>renderer</strong>: Block encoded unsafe URL schemes - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/c7101fc"><!-- raw HTML omitted -->(c7101)<!-- raw HTML omitted --></a></li> <li><strong>toc</strong>: Avoid generated id collisions - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/c4093c4"><!-- raw HTML omitted -->(c4093)<!-- raw HTML omitted --></a></li> </ul> <h3> 🏎 Performance</h3> <ul> <li>Improve performance - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/bf95c32"><!-- raw HTML omitted -->(bf95c)<!-- raw HTML omitted --></a></li> </ul> <h5> <a href="https://github.com/lepture/mistune/compare/v3.2.1...v3.3.0">View changes on GitHub</a></h5> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/lepture/mistune/blob/main/docs/changes.rst">mistune's changelog</a>.</em></p> <blockquote> <h2>Version 3.3.0</h2> <p><strong>Released on Jun 21, 2026</strong></p> <ul> <li>Improve CommonMark compatibility and parser performance.</li> <li>Add command line entrypoint with UTF-8 output.</li> <li>Support display and backtick math.</li> <li>Render plugin list and table nodes in Markdown renderer.</li> <li>Escape leading block markers in Markdown renderer.</li> <li>Fix RST renderer for block quotes nested in lists.</li> <li>Avoid generated heading ID collisions in TOC.</li> <li>Harden URL, image, figure, and include directive handling.</li> <li>Fix quadratic scans in inline links, reference links, and formatting markers.</li> <li>Fix math escaping, currency pattern matching, and cross-line matching.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
b2dede4f3e |
chore: bump mistune from 3.2.1 to 3.3.0 in /libs/core (#38783)
Bumps [mistune](https://github.com/lepture/mistune) from 3.2.1 to 3.3.0. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/lepture/mistune/releases">mistune's releases</a>.</em></p> <blockquote> <h2>v3.3.0</h2> <h3> 🐞 Bug Fixes</h3> <ul> <li>Resolve O(n^2) DoS in parse_link_text (CWE-400) - by <strong>bhanugoudm041</strong> <a href="https://github.com/lepture/mistune/commit/b6b499d"><!-- raw HTML omitted -->(b6b49)<!-- raw HTML omitted --></a></li> <li>Resolve O(n^2) DoS in parse_link_text (CWE-400)-Type handling/testing done - by <strong>bhanugoudm041</strong> <a href="https://github.com/lepture/mistune/commit/b3af85d"><!-- raw HTML omitted -->(b3af8)<!-- raw HTML omitted --></a></li> <li><strong>block</strong>: Avoid quadratic ref link scans - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/2b04d7b"><!-- raw HTML omitted -->(2b04d)<!-- raw HTML omitted --></a></li> <li><strong>cli</strong>: Add entrypoint and utf-8 output - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/2f2449d"><!-- raw HTML omitted -->(2f244)<!-- raw HTML omitted --></a></li> <li><strong>directives</strong>: Constrain include targets - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/1bef343"><!-- raw HTML omitted -->(1bef3)<!-- raw HTML omitted --></a></li> <li><strong>formatting</strong>: Avoid quadratic marker scans - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/96d0f57"><!-- raw HTML omitted -->(96d0f)<!-- raw HTML omitted --></a></li> <li><strong>image</strong>: Validate figure width option - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/e3e51de"><!-- raw HTML omitted -->(e3e51)<!-- raw HTML omitted --></a></li> <li><strong>inline</strong>: Avoid bracket parsing DoS - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/25f2503"><!-- raw HTML omitted -->(25f25)<!-- raw HTML omitted --></a></li> <li><strong>math</strong>: Reject currency patterns and cross-line matches in inline math - by <a href="https://github.com/geopanther"><code>@geopanther</code></a> <a href="https://github.com/lepture/mistune/commit/566e173"><!-- raw HTML omitted -->(566e1)<!-- raw HTML omitted --></a></li> <li><strong>math</strong>: Support display and backtick math - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/1141eec"><!-- raw HTML omitted -->(1141e)<!-- raw HTML omitted --></a></li> <li><strong>renderer</strong>: Render plugin list and table nodes - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/614b019"><!-- raw HTML omitted -->(614b0)<!-- raw HTML omitted --></a></li> <li><strong>renderer</strong>: Block encoded unsafe URL schemes - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/c7101fc"><!-- raw HTML omitted -->(c7101)<!-- raw HTML omitted --></a></li> <li><strong>toc</strong>: Avoid generated id collisions - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/c4093c4"><!-- raw HTML omitted -->(c4093)<!-- raw HTML omitted --></a></li> </ul> <h3> 🏎 Performance</h3> <ul> <li>Improve performance - by <a href="https://github.com/lepture"><code>@lepture</code></a> <a href="https://github.com/lepture/mistune/commit/bf95c32"><!-- raw HTML omitted -->(bf95c)<!-- raw HTML omitted --></a></li> </ul> <h5> <a href="https://github.com/lepture/mistune/compare/v3.2.1...v3.3.0">View changes on GitHub</a></h5> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/lepture/mistune/blob/main/docs/changes.rst">mistune's changelog</a>.</em></p> <blockquote> <h2>Version 3.3.0</h2> <p><strong>Released on Jun 21, 2026</strong></p> <ul> <li>Improve CommonMark compatibility and parser performance.</li> <li>Add command line entrypoint with UTF-8 output.</li> <li>Support display and backtick math.</li> <li>Render plugin list and table nodes in Markdown renderer.</li> <li>Escape leading block markers in Markdown renderer.</li> <li>Fix RST renderer for block quotes nested in lists.</li> <li>Avoid generated heading ID collisions in TOC.</li> <li>Harden URL, image, figure, and include directive handling.</li> <li>Fix quadratic scans in inline links, reference links, and formatting markers.</li> <li>Fix math escaping, currency pattern matching, and cross-line matching.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
fb274a9ab4 |
chore(model-profiles): refresh model profile data (#38821)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **0 added · 0 removed · 5 changed** across 2 provider(s). <details> <summary>huggingface</summary> **✏️ 1 changed** - `stepfun-ai/Step-3.7-Flash`: added video input </details> <details> <summary>openrouter</summary> **✏️ 4 changed** - `google/gemini-3-pro-image`: last updated `2026-06-18` → `2026-05-28`; display name `Nano Banana Pro (Gemini 3 Pro Image)` → `Nano Banana Pro`; release date `2026-06-18` → `2026-05-28` - `google/gemini-3.1-flash-image`: last updated `2026-06-18` → `2026-05-28`; display name `Nano Banana 2 (Gemini 3.1 Flash Image)` → `Nano Banana 2`; release date `2026-06-18` → `2026-05-28` - `z-ai/glm-4.6`: max input tokens 202,752 → 200,000; max output tokens 131,072 → 16,384 - `z-ai/glm-5.2`: max output tokens 128,000 → 131,072 </details> Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
233e02a822 |
chore(model-profiles): refresh model profile data (#38810)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **0 added · 1 removed · 1 changed** across 1 provider(s). ### openrouter **➖ 1 removed** - `meta-llama/llama-3-8b-instruct` **✏️ 1 changed** - `z-ai/glm-5.2`: max output tokens 131,072 → 128,000 Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
a8fd0da2b7 |
chore(model-profiles): refresh model profile data (#38797)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **1 added · 1 removed · 2 changed** across 2 provider(s). <details> <summary>openai</summary> **➕ 1 added** - `gpt-realtime-2.1` — 128,000 ctx, 32,000 out, text+image+audio+pdf in, reasoning, tools </details> <details> <summary>openrouter</summary> **➖ 1 removed** - `arcee-ai/trinity-mini` **✏️ 2 changed** - `deepseek/deepseek-v4-flash`: max output tokens 65,536 → 384,000 - `z-ai/glm-5.2`: max output tokens 101,376 → 131,072 </details> Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
42f8f79293 | release(langchain): 1.3.13 (#38787) langchain==1.3.13 | ||
|
|
7327e84d6f |
feat(langchain): add meta extra and support langchain-meta in init_chat_model (#38786)
|
||
|
|
1c6bfc8f60 |
release(openai): 1.3.5 (#38785)
Prepared with AI-agent assistance.langchain-openai==1.3.5 |
||
|
|
4717cfc83b |
feat(openai): support explicit prompt caching (#38762)
`ChatOpenAI` now supports OpenAI explicit prompt-cache options and content-block breakpoints, and exposes cache-write token counts through `input_token_details["cache_creation"]`. [(Docs)](https://developers.openai.com/api/docs/guides/prompt-caching?prompt-cache-api=responses#prompt-cache-breakpoints) --- OpenAI users can now configure explicit prompt caching through `ChatOpenAI` without cache controls being dropped when messages are converted for the Responses API. The change preserves `prompt_cache_breakpoint` on text, image, and file content blocks; forwards request-level cache options and legacy retention settings; and reports `cache_write_tokens` as `cache_creation` usage metadata, including priority and flex service-tier variants. It also raises the minimum OpenAI SDK version to 2.45.0 so the integration can rely on the SDK's current prompt-caching schemas instead of compatibility normalization. --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|
|
2f527debdd |
chore(model-profiles): refresh model profile data (#38774)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **11 added · 4 removed · 44 changed** across 2 provider(s). <details> <summary>openai</summary> **➕ 4 added** - `gpt-5.6` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `gpt-5.6-luna` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `gpt-5.6-sol` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `gpt-5.6-terra` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools </details> <details> <summary>openrouter</summary> **➕ 7 added** - `cognitivecomputations/dolphin-mistral-24b-venice-edition` — 128,000 ctx, 8,192 out - `openai/gpt-5.6-luna` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `openai/gpt-5.6-luna-pro` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `openai/gpt-5.6-sol` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `openai/gpt-5.6-sol-pro` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `openai/gpt-5.6-terra` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools - `openai/gpt-5.6-terra-pro` — 1,050,000 ctx, 128,000 out, text+image+pdf in, reasoning, tools **➖ 4 removed** - `google/gemini-2.5-flash-lite-preview-09-2025` - `liquid/lfm-2-24b-a2b` - `poolside/laguna-xs.2` - `poolside/laguna-xs.2:free` **✏️ 44 changed** - `anthracite-org/magnum-v4-72b`: max input tokens 16,384 → 32,768 - `baidu/ernie-4.5-vl-424b-a47b`: max input tokens 123,000 → 131,072 - `deepseek/deepseek-chat`: max input tokens 128,000 → 131,072 - `deepseek/deepseek-r1`: max input tokens 64,000 → 163,840 - `deepseek/deepseek-r1-distill-llama-70b`: max input tokens 8,192 → 128,000 - `deepseek/deepseek-v3.2`: max input tokens 128,000 → 131,072 - `google/gemini-3.1-pro-preview-customtools`: max input tokens 1,048,576 → 1,048,756 - `google/gemma-4-26b-a4b-it:free`: max input tokens 131,072 → 262,144 - `meta-llama/llama-3.2-1b-instruct`: max input tokens 60,000 → 131,072 - `meta-llama/llama-3.3-70b-instruct:free`: max input tokens 65,536 → 131,072 - `meta-llama/llama-4-scout`: max input tokens 327,680 → 10,000,000 - `microsoft/wizardlm-2-8x22b`: max input tokens 65,535 → 65,536 - `minimax/minimax-m2.5`: max input tokens 196,608 → 204,800 - `minimax/minimax-m2.7`: max input tokens 196,608 → 204,800 - `minimax/minimax-m3`: max input tokens 524,288 → 1,048,576; max output tokens 512,000 → 131,072 - `moonshotai/kimi-k2.5`: max input tokens 256,000 → 262,144 - `moonshotai/kimi-k2.7-code`: max output tokens 16,384 → 262,144 - `nvidia/nemotron-3-super-120b-a12b`: max input tokens 262,144 → 1,000,000 - `nvidia/nemotron-3-super-120b-a12b:free`: max input tokens 262,144 → 1,000,000 - `nvidia/nemotron-3-ultra-550b-a55b`: max input tokens 262,144 → 1,000,000 - `poolside/laguna-m.1`: last updated `2026-04-28` → `2026-06-13` - `poolside/laguna-m.1:free`: last updated `2026-04-28` → `2026-06-13` - `qwen/qwen-2.5-72b-instruct`: max input tokens 32,768 → 131,072 - `qwen/qwen-2.5-7b-instruct`: max input tokens 32,768 → 131,072 - `qwen/qwen-2.5-coder-32b-instruct`: max input tokens 32,768 → 128,000 - …and 19 more </details> Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
a07356f839 | fix(anthropic): add advisor_ prefix to builtin tool recognition (#38686) | ||
|
|
8107ff4065 | release(fireworks): 1.4.4 (#38753) langchain-fireworks==1.4.4 | ||
|
|
ea24fb1e13 |
fix(fireworks): report cached prompt token usage (#38751)
Closes #38648 `langchain-fireworks` now reports Fireworks cached prompt tokens in `AIMessage.usage_metadata.input_token_details.cache_read` and no longer crashes when combining nested token usage from batched `generate()` calls. --- Fireworks can return nested token usage details when prompt caching is involved, including cached prompt token counts. Batched `generate()` calls were crashing when those nested dictionaries were combined, and regular chat results did not expose the cached-token breakdown in the standard LangChain usage metadata shape. This updates `ChatFireworks` so nested token usage is merged safely and cached prompt tokens are reported as `input_token_details.cache_read`. Users and downstream tracing systems can now distinguish cached Fireworks input tokens from regular input tokens instead of treating the full prompt as uncached input. Thanks to @abcgco for the original report and recursive merge fix in #38646, and to @abhi-0203 for independently identifying the same nested `token_usage` failure in #38735. This PR builds on that work by using the recursive merge approach and extending the fix to normalize cached prompt tokens into standard usage metadata for tracing and cost reporting. Co-authored-by: Andrei Boldyrev <abcgco@gmail.com> |
||
|
|
a4294f9a39 | chore(deps): refresh lockfiles (#38746) | ||
|
|
d73ba5b70b |
chore(model-profiles): refresh model profile data (#38739)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **3 added · 1 removed · 4 changed** across 2 provider(s). <details> <summary>openrouter</summary> **➕ 2 added** - `x-ai/grok-4.5` — 500,000 ctx, 500,000 out, text+image+pdf in, reasoning, tools - `~x-ai/grok-latest` — 500,000 ctx, 1,000,000 out, text+image+pdf in, reasoning, tools **➖ 1 removed** - `switchpoint/router` **✏️ 4 changed** - `deepseek/deepseek-v4-flash`: max output tokens 16,384 → 65,536 - `tencent/hy3`: max input tokens 202,752 → 262,144 - `x-ai/grok-build-0.1`: added PDF input - `z-ai/glm-5.2`: max output tokens 32,768 → 1,048,576 </details> <details> <summary>xai</summary> **➕ 1 added** - `grok-4.5` — 500,000 ctx, 500,000 out, text+image+pdf in, reasoning, tools </details> Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
bc1540084b | release(openai): 1.3.4 (#38731) langchain-openai==1.3.4 | ||
|
|
123d83282a | release(langchain): 1.3.12 (#38730) langchain==1.3.12 | ||
|
|
fa0114511b | fix(openai): suppress Pydantic serializer warning on structured output parsed field (#37727) | ||
|
|
af3de98c4a |
docs(infra): clarify uv.lock step in release process guide (#38729)
## What
The release process guide in `AGENTS.md` and `CLAUDE.md` instructs the
reader to "keep only the package-version line if `uv lock` touches
unrelated entries." This is vague — it doesn't explain *why* unrelated
entries appear or *what* the offending lines look like.
## Why
When you bump a package's version in `pyproject.toml` and run `uv lock`
from the package directory, the lockfile diff can include unrelated
changes such as environment-dependent marker lines (e.g.
`typing-extensions` losing a `python_full_version < '3.11'` marker)
caused by a different local Python version resolving the environment.
These are artifacts of the machine running the lock, not intentional
dependency changes, and should not be committed.
## Change
Replaced the vague instruction with a precise one:
> `uv.lock` — run `uv lock` from the package directory. If the diff
includes unrelated changes (e.g. environment-dependent marker lines from
a different local Python version), revert them and keep only the
`version = "..."` line for the package being released
This came up during the langchain-core/langchain release on July 8,
where the original instruction was flagged as questionable and traced
back via git blame to commit
|
||
|
|
1c3a4186cf | release(core): 1.4.9 (#38728) langchain-core==1.4.9 | ||
|
|
1619f3d3d0 | chore(standard-tests): fix some typings detected by ty (#38707) | ||
|
|
a6f0369eca |
chore(qdrant): bump fastembed to latest (#38726)
This PR updates the optional `fastembed` dependency in `langchain-qdrant` to the latest version (`0.8.0`). This also removes the temporary Pillow override that was needed for `fastembed@0.7.x`, since the new release no longer caps Pillow below the patched version. |
||
|
|
fca0a977a6 | fix(langchain): propagate interrupts through ToolRetryMiddleware (#38722) | ||
|
|
874bada42f |
chore(model-profiles): refresh model profile data (#38712)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **2 added · 2 removed · 6 changed** across 1 provider(s). ### openrouter **➕ 2 added** - `aion-labs/aion-3.0` — 131,072 ctx, 32,768 out, reasoning, tools - `aion-labs/aion-3.0-mini` — 131,072 ctx, 32,768 out, reasoning, tools **➖ 2 removed** - `aion-labs/aion-1.0` - `aion-labs/aion-1.0-mini` **✏️ 6 changed** - `aion-labs/aion-2.0`: added tool calling - `anthropic/claude-opus-4.8`: added temperature control - `nex-agi/nex-n2-pro`: added tool calling - `thedrummer/rocinante-12b`: max input tokens 32,768 → 65,536; max output tokens 32,768 → 65,536; added structured output - `z-ai/glm-5.2`: max output tokens 131,072 → 32,768 - `~anthropic/claude-opus-latest`: added temperature control Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
6e51a7e48b |
chore(model-profiles): refresh model profile data (#38699)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **4 added · 0 removed · 1 changed** across 2 provider(s). <details> <summary>huggingface</summary> **➕ 1 added** - `openai/gpt-oss-20b` — 131,072 ctx, 32,768 out, reasoning, tools </details> <details> <summary>openrouter</summary> **➕ 3 added** - `nex-agi/nex-n2-mini` — 262,144 ctx, 262,144 out, text+image in, reasoning, tools - `tencent/hy3` — 202,752 ctx, 131,072 out, reasoning, tools - `tencent/hy3:free` — 262,144 ctx, 262,144 out, reasoning, tools **✏️ 1 changed** - `meta-llama/llama-3.2-3b-instruct`: max input tokens 80,000 → 131,072; max output tokens 80,000 → 131,072; added structured output </details> Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> |
||
|
|
2d8100c4fa |
fix(langchain-classic): fix Chain.save() regression from dict-to-model_dump migration (#35667)
Fixes #35665 --- Fixes a regression introduced in #33035 where `Chain.save()` stopped working for chain types that support saving, including `LLMChain`. `Chain.save()` now calls `self.model_dump()`, but the `_type` injection still lived in the deprecated `dict()` override. As a result, serialized chains no longer included `_type`, and `save()` always raised the "does not support saving" error. This moves the override to `model_dump()` so saved chain output includes `_type` again. Pydantic v2's `dict()` method delegates to `model_dump()`, so existing `dict()` callers continue to get the same serialized shape. |
||
|
|
b08c3913fb |
test(openai): skip Codex VCR tests before cassette setup (#38690)
Codex integration tests need to be skipped in CI whenever VCR is not in playback mode, but the setup-time skip ran too late: `pytest-recording` could already try to open a cassette and hit the missing on-disk OAuth token first. Moving the skip to collection time marks the matching Codex tests before cassette setup while keeping the existing VCR-token fake for playback runs. ## Changes - Add a `pytest_collection_modifyitems` hook that marks Codex chat-model integration tests as skipped in CI unless VCR is replaying existing cassettes. - Scope collection-time matching to the local chat-model integration-test directory so same-named modules collected elsewhere are not skipped accidentally. - Keep the OAuth-token fake path active for VCR playback by preserving `_fake_codex_oauth_token` behavior when `record_mode` is `none`. |
||
|
|
83386b56e1 |
chore(model-profiles): refresh model profile data (#38689)
Automated refresh of model profile data for all in-monorepo partner integrations via `langchain-profiles refresh`. 🤖 Generated by the [`refresh_model_profiles` workflow](https://github.com/langchain-ai/langchain/blob/master/.github/workflows/refresh_model_profiles.yml). ## Summary of changes **0 added · 10 removed · 12 changed** across 2 provider(s). <details> <summary>anthropic</summary> **➖ 10 removed** - `claude-3-5-sonnet-20240620` - `claude-3-5-sonnet-20241022` - `claude-3-7-sonnet-20250219` - `claude-3-haiku-20240307` - `claude-3-opus-20240229` - `claude-3-sonnet-20240229` - `claude-opus-4-0` - `claude-opus-4-20250514` - `claude-sonnet-4-0` - `claude-sonnet-4-20250514` **✏️ 10 changed** - `claude-fable-5`: release date `2026-06-09` → `2026-06-07` - `claude-opus-4-1`: status unset → `deprecated` - `claude-opus-4-1-20250805`: status unset → `deprecated` - `claude-opus-4-5-20251101`: release date `2025-11-01` → `2025-11-24` - `claude-opus-4-6`: release date `2026-02-05` → `2026-02-04` - `claude-opus-4-7`: release date `2026-04-16` → `2026-04-14` - `claude-sonnet-4-5`: max input tokens 200,000 → 1,000,000 - `claude-sonnet-4-5-20250929`: max input tokens 200,000 → 1,000,000 - `claude-sonnet-4-6`: max output tokens 64,000 → 128,000 - `claude-sonnet-5`: release date `2026-06-30` → `2026-06-29` </details> <details> <summary>openrouter</summary> **✏️ 2 changed** - `openai/gpt-oss-20b`: display name `gpt-oss-20b` → `GPT OSS 20B` - `z-ai/glm-5.2`: max input tokens 1,024,000 → 1,048,576; max output tokens 128,000 → 131,072 </details> --------- Co-authored-by: mdrxy <61371264+mdrxy@users.noreply.github.com> Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
701cc0e6bb |
test(deps): Include Python 3.14 in integration test matrix (#34993)
Relates to #34441 Adds Python 3.14 to integration test matrix, hoping to contribute to the official support of Python 3.14 --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
a586e9044c |
fix(langchain): avoid shared process-group kill in shell middleware (#36359)
Fixes #36358 --- **Summary** This PR fixes a process termination safety bug in ShellToolMiddleware where cleanup could kill the caller process group when create_process_group is False. **Why this change** When the shell child is started without a dedicated process group, it can share the parent group. The existing cleanup path used group kill unconditionally, which could terminate unrelated processes including the caller. This is a high-impact availability risk. **What changed** Updated shell session kill logic to use group kill only when the child is in a different process group than the caller. Added safe fallback to child-only kill when both share the same process group. Added regression tests for both scenarios: Shared process group: no group kill, child-only kill. Dedicated process group: existing group kill behavior is preserved. **Validation** Targeted new tests passed. Full shell tool unit test file passed. AI assistance disclosure This contribution was prepared with assistance from an AI coding agent. I reviewed, validated, and finalized the proposed changes and test coverage before submission. **Areas for careful review** Process-group detection behavior on Linux and other POSIX environments. Any implications for existing timeout and shutdown flows in shell middleware. Whether additional integration-level coverage is desirable for process cleanup behavior. --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
fd822b07c0 |
fix(text-splitters): restore lazy imports for heavy optional dependencies (#35469)
## Summary - Moves `nltk`, `spacy`, `sentence-transformers`, and `konlpy` imports back inside class constructors/functions so they are only loaded when the respective splitter is actually instantiated - Adds a subprocess-based regression test to verify no heavy packages are imported at `langchain_text_splitters` load time ## Why PR #32325 moved these optional dependency imports to module-level `try/except` blocks (to satisfy ruff's `PLC0415` rule). Since `__init__.py` imports all four splitter modules, this caused `import langchain_text_splitters` to eagerly load all optional heavy packages, resulting in: - A PyTorch NVML warning (`UserWarning: Can't initialize NVML`) on non-GPU machines - A ~650MB memory spike on import (74MB → 736MB), vs ~50MB in 0.3.x The fix restores the lazy import pattern with `# noqa: PLC0415` to suppress the linter rule, which is the correct trade-off when a dependency has high instantiation cost. ## Review notes - The `PLC0415` suppressions are intentional — these are optional heavy dependencies that should never be loaded unless the user explicitly instantiates the splitter class - The regression test uses a subprocess for proper isolation (the test file itself imports `langchain_text_splitters` at the top, so `sys.modules` checks within the same process would not reflect a clean import state) Fixes #35437. > **AI disclaimer:** This PR was developed with assistance from Claude Code (Anthropic AI). --------- Co-authored-by: AshwathB-debug <ashwathbalaji04@gmail.com> Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
1840b73209 |
fix(core): improve langsmith loader error messages (#35648)
`LangSmithLoader.lazy_load()` now raises a `ValueError` with a descriptive message when a configured `content_key` cannot be resolved against an example's inputs — whether a key along the path is missing or the path runs into a non-mapping value. Previously the missing-key case raised a bare `KeyError` and the non-mapping case raised a `TypeError`, depending on the payload. Callers that caught `KeyError` or `TypeError` around `lazy_load()` to detect a misconfigured `content_key` should now catch `ValueError`. --- Improve `LangSmithLoader` error handling by surfacing clearer exceptions for conflicting client configuration and invalid nested `content_key` paths. Valid loader behavior is unchanged; this only improves invalid-input diagnostics. When a `content_key` cannot be resolved against an example's inputs, `lazy_load()` now raises a `ValueError` whose message names the full path, the offending key, and where traversal stopped — instead of a bare `KeyError` (missing key) or an opaque `TypeError` (path running into a non-mapping value, e.g. a leaf string). --------- Co-authored-by: Divy Yadav <yadavdipu296@gmai.com> Co-authored-by: Mason Daugherty <github@mdrxy.com> Co-authored-by: Mason Daugherty <mason@langchain.dev> |
||
|
|
3a60533295 |
fix(core): output parser bugs in xml.py and pydantic.py (#35641)
- **Fix missing spaces in error messages in `xml.py`**: Adjacent string literals in two `ImportError` messages were missing spaces between them, resulting in concatenated words like "parser.You" and "defusedxml`See". - **Fix `partial` parameter not forwarded in `PydanticOutputParser.parse_result`**: The `partial` parameter was accepted but not passed to `super().parse_result()`, so partial parsing mode had no effect. --------- Signed-off-by: JiangNan <1394485448@qq.com> Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
58da7ff318 | release(mistralai): 1.1.6 (#38684) langchain-mistralai==1.1.6 | ||
|
|
917f1a6205 |
docs(infra): expand release process guide in AGENTS.md and CLAUDE.md (#38683)
Replace the one-line release summary with a full step-by-step walkthrough covering version bump PRs, merge, workflow dispatch, and automated tag/release creation. Documented the `mark-release` job, patch vs. minor bump precedent, and monitoring commands. |
||
|
|
5248772b83 | release(openrouter): 0.2.6 (#38681) langchain-openrouter==0.2.6 | ||
|
|
cf08ef0a29 |
fix(openrouter): support default_headers for custom HTTP header injection (#36582)
Fixes #36581 ## Problem `ChatOpenRouter` had no way to set custom HTTP headers on requests to OpenRouter. Passing `default_headers` to the constructor silently misfired: `build_extra` treated it as an unrecognized kwarg, emitted a "transferred to model_kwargs" warning, and dumped the header into the request body instead of the HTTP layer. This blocked any feature that needs per-request header injection — for example xAI's `x-grok-conv-id` for sticky-routing prompt cache hits. ## What changed - `default_headers` is now a first-class field on `ChatOpenRouter` (`Mapping[str, str] | None`). Because headers may carry credentials, the field is excluded from serialization. - User-supplied headers are merged with the built-in app-attribution headers (`HTTP-Referer`, `X-Title`, `X-OpenRouter-Categories`). On collision the user value wins; because HTTP header names are case-insensitive, the merge drops any built-in whose name case-insensitively matches a user header before applying, so `http-referer` replaces `HTTP-Referer` rather than producing a doubled header. - Corrected the documented `session_id` length limit from 128 to 256 characters. Example: ChatOpenRouter( model="x-ai/grok-4", default_headers={"x-grok-conv-id": "session-abc123"}, ) --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
c44a9c9fdf |
feat(mistralai): surface citation metadata from chat responses (#37008)
Fixes #36427 ## Why Mistral citation responses can return `content` as typed chunks, including `reference` chunks with `reference_ids`. Those `reference` chunks contain visible answer text plus citation metadata. Previously, `ChatMistralAI` did not preserve that citation metadata in a way LangChain users could consume. RAG users could not reliably map cited answer spans back to source documents through LangChain. ## What changed - Normalize Mistral `reference` chunks into text-compatible content blocks so standard text accessors still include the cited answer span. - Preserve Mistral citation metadata on the normalized text block under `reference`. - Translate normalized Mistral reference metadata into standard `TextContentBlock` citation annotations via `content_blocks`. - Support the same normalization for streaming chunks. - Preserve citation metadata when round-tripping v1 content blocks back to Mistral chat message content. For example, a Mistral response like: ```python [ {"type": "text", "text": "The answer is "}, {"type": "reference", "reference_ids": [0], "text": "42"}, {"type": "text", "text": "."}, ] ``` is represented internally as text content with reference metadata, so `message.text` returns `"The answer is 42."`, while `message.content_blocks` exposes a standard citation annotation for the cited span. References: - https://docs.mistral.ai/capabilities/citations/ - https://docs.mistral.ai/resources/cookbooks/mistral-rag-mistral-reference-rag --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
bde894268b |
feat(groq): map context-length errors to ContextOverflowError (#37676)
Fixes #37533 --- `langchain-core` defines `ContextOverflowError` so that application code can catch an over-long prompt the same way regardless of which provider raised it. The Anthropic, OpenAI, and Fireworks integrations already promote their provider-specific context-length errors to a subclass of it, but `langchain-groq` did not: a context overflow there surfaced as a plain `groq.BadRequestError`, so anyone relying on the shared exception had to special-case Groq. This closes that gap for Groq. It adds a `GroqContextOverflowError` (a subclass of both `groq.BadRequestError` and `ContextOverflowError`) and a small promoter, `_handle_groq_invalid_request`, wired into the sync and async `generate` and `stream` paths. Because Groq's SDK mirrors OpenAI's, the implementation follows the same shape as the existing partners, and the promoted error keeps the original `response` and `body` so existing catchers that inspect `.response.status_code` keep working. Anything that already catches `groq.BadRequestError` is unaffected, since the new class is still a `BadRequestError`. One detail worth a reviewer's eye: Groq returns the overflow as a 400 whose JSON body carries `"code": "context_length_exceeded"`, but the SDK's `BadRequestError` does not expose that code as an attribute. The SDK does fold the full JSON body into the error message, so detection primarily matches `context_length_exceeded` against the stringified error, with `reduce the length` from the message as a secondary signal and an attribute check kept as defensive cover in case a future SDK adds `.code`. The unit tests construct the error exactly as the SDK does for a 4xx response and assert promotion across all four call paths, that an unrelated `BadRequestError` is left untouched, and that `response`/`body` are preserved. I scoped this to Groq and left Mistral as a follow-up: Mistral surfaces errors as raw `httpx.HTTPStatusError` rather than a typed SDK error, and I could not verify its exact context-overflow signal (status code plus body `code`/`message`) against an authoritative source well enough to assert it in a unit test without live API access, so I would rather not guess at the shape. --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> Co-authored-by: Mason Daugherty <mason@langchain.dev> |
||
|
|
4cdd47b253 |
fix(langchain): sanitize anthropic cache markers on fallback retries (#37867)
## Summary Fixes #33709. When `AnthropicPromptCachingMiddleware` runs before `ModelFallbackMiddleware`, Anthropic-specific `cache_control` markers can leak into fallback attempts targeting non-Anthropic models. This change makes fallback retries sanitize those markers only on non-primary attempts, preserving primary-call behavior and avoiding API changes. Related: langchain-ai/deepagentsjs#551. ## Changes ### libs/langchain_v1 - Added a private fallback sanitizer in `model_fallback.py` to remove Anthropic `cache_control` markers from fallback requests. - Sanitization covers `model_settings`, system/content message blocks, and tool payloads (`BaseTool.extras` plus dict-style tools/extras). - Applied sanitization in both sync and async fallback retry paths (`wrap_model_call` and `awrap_model_call`) while leaving the primary attempt unchanged. ### libs/langchain_v1 tests - Added sync and async regression tests in `test_model_fallback.py` that simulate primary failure and assert fallback calls only succeed when cache markers are stripped. - Verified non-cache settings (for example `temperature` and `top_p`) are preserved on fallback. - Preserved existing fallback behavior coverage (ordering, exhaustion, and error propagation). ## Compatibility with `BedrockPromptCachingMiddleware` The sanitizer also covers `BedrockPromptCachingMiddleware`, which injects `cache_control` into `model_settings` only. Bedrock-specific markers (`cachePoint` blocks, content-block `cache_control`) are applied by the chat model classes at API-call time and never appear in the `ModelRequest`, so no additional handling is needed. --------- Co-authored-by: Mason Daugherty <mason@langchain.dev> Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
08c95c9f5b | style(core): fix some ruff preview rules (#38656) | ||
|
|
f912638334 |
style: fix some ruff preview rules in langchain_v1 and standard-tests (#38657)
|
||
|
|
a2e53fda73 |
feat(text-splitters): replace mypy by ty for type checking (#38658)
Switches type checking for `langchain-text-splitters` from `mypy` to [`ty`](https://docs.astral.sh/ty/), which is much faster. The `ollama` package already [switched to `ty`](https://github.com/langchain-ai/langchain/pull/36571). ## What changed The core of this PR is the config swap (`[tool.mypy]` → `[tool.ty.rules]`/`[tool.ty.analysis]`, `Makefile`, and the `typing` dependency group). Because `ty` runs with `all = "error"`, a few modules also needed source-level adjustments to satisfy the stricter analysis. These are **behavior-preserving refactors** except for one intentional fix, called out below so reviewers know where to look. ### Behavioral change (intentional fix) - `SentenceTransformersTokenTextSplitter` now raises a clear `ValueError` when the underlying model reports no maximum sequence length **and** no `tokens_per_chunk` was provided. Previously this combination reached a `None > None` comparison and surfaced as an opaque `TypeError`. As a consequence, the public `maximum_tokens_per_chunk` attribute is now honestly typed as `int | None` — it can remain `None` when the caller supplies `tokens_per_chunk` explicitly for a model without a limit. ### Behavior-preserving refactors (no user-visible change) - `TokenTextSplitter.from_tiktoken_encoder` is now an explicit override rather than the base method dispatching on `issubclass(cls, TokenTextSplitter)`. The shared length-function logic moved into a private helper. Public signatures and return types are unchanged. - `NLTKTextSplitter` builds its tokenizer once at construction, so `_tokenizer` is now always a `Callable[[str], list[str]]`. The private attributes `_language` and `_use_span_tokenize` are no longer stored — flagging in case any downstream code read those (they are underscore-private). Tokenization output is unchanged. - `HTMLSemanticPreservingSplitter` text extraction was rewritten from a `cast`-based check to `isinstance(element, Tag)` narrowing; output is equivalent for tags, text nodes, and comments. --------- Co-authored-by: Mason Daugherty <github@mdrxy.com> |
||
|
|
3246caf831 |
ci(infra): add org guards to workflows and remove dead v0.3 docs workflow (#38665)
Adds `github.repository_owner == 'langchain-ai'` guards to 14 GitHub
Actions workflows that were missing them. Without these guards,
write-capable automation (issue/PR labeling, closing, commenting, PR
reopening, release publishing) and CI jobs fire on forks — causing
unwanted mutations, wasted runner minutes, and failed GitHub App token
generation on repos that don't have the required secrets.
Also removes `v03_api_doc_build.yml`, which pushed built docs to
`langchain-ai/langchain-api-docs-html` via `TOKEN_GITHUB_API_DOCS_HTML`
— a secret that isn't set on this repo. The workflow was dead code with
no consumers.
---
## What changed
**Write-capable workflows now guarded** (8 files):
- `auto-label-by-package` — was adding/removing issue labels on forks
- `close_unchecked_issues` — was closing issues and posting comments on
forks via GitHub App token
- `tag-external-issues` — both `tag-external` and `backfill` jobs were
generating App tokens and labeling issues on forks
- `reopen_on_assignment` — was reopening PRs and re-running workflows on
forks
- `require_issue_link` — was closing PRs, creating labels, posting
comments, and canceling workflow runs on forks
- `remove_waiting_on_author` — was removing labels on fork issues/PRs
- `pr_labeler` — was generating App tokens and adding/removing PR labels
on forks
- `pr_labeler_backfill` — same, on manual trigger from a fork
**Read-only CI workflows now guarded** (5 files):
- `check_diffs` — `build` and `check-release-options` jobs (downstream
jobs inherit the skip)
- `codspeed` — `build` job
- `check_agents_sync`, `check_versions`, `check_release_deps`
**Release workflow guarded** (1 file):
- `_release` — `build` job (all downstream jobs chain via `needs`, so
they inherit the skip). Previously relied only on `environment: Release`
approval and a `github.ref` check.
**Removed**:
- `v03_api_doc_build.yml` — dead workflow depending on unset
`TOKEN_GITHUB_API_DOCS_HTML` secret
## What was already guarded
`block_fork_main_prs`, `bump_uv_pin`, `check_extras_sync`,
`integration_tests`, `pr_lint_trailer`, `refresh_model_profiles` already
had the guard. `pr_lint` (read-only, `pull-requests: read`) and the
`_*.yml` reusable workflows (only run when called by a guarded parent)
were intentionally left unguarded.
## Release note
- GitHub Actions workflows now skip execution on forks via
`repository_owner == 'langchain-ai'` guards, preventing unwanted
issue/PR automation and CI runs outside the canonical repo.
- Removed the dead `v03_api_doc_build` workflow that depended on an
unset secret.
---
🤖 Generated with AI-agent involvement.
|
||
|
|
4d4dab80bb |
feat(model-profiles): wrap multi-provider build_summary output in <details> toggles (#38664)
`build_summary` in `langchain_model_profiles._summary` now wraps each
provider section in a `<details>` toggle when more than one provider has
changes, making multi-provider refresh PR summaries skimmable.
Single-provider summaries are unchanged.
---
When the `refresh_model_profiles` workflow refreshes data for multiple
partner integrations at once, the resulting PR summary can be long and
hard to skim — every provider's added/removed/changed rows are rendered
flat, one after another. This wraps each provider section in a
`<details>`/`<summary>` toggle when more than one provider has changes,
so reviewers can expand only the providers they care about.
Single-provider summaries stay flat since there's nothing to collapse.
The per-provider `### {provider}` heading is stripped inside toggles so
the `<summary>` tag is the sole label — no duplicated provider name.
Also includes two smaller changes that were staged alongside:
- The `refresh_model_profiles` and `_refresh_model_profiles` workflow
PR-body templates now link to the workflow file instead of bare-text
referencing it.
- `AGENTS.md` and `CLAUDE.md` document the LangSmith integration test
tracing setup: the env vars CI sets, the pytest plugin that bridges
`LANGSMITH_TAGS`/`LANGSMITH_METADATA` into `tracing_context`, and the
unit-test isolation approach.
---------
Signed-off-by: Mason Daugherty <github@mdrxy.com>
Co-authored-by: open-swe[bot] <215916821+open-swe[bot]@users.noreply.github.com>
|