-
Notifications
You must be signed in to change notification settings - Fork 2.2k
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
langchain[minor]: Experimental Masking Module #3548
Conversation
Feature/masking
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
|
||
// npm i ai | ||
// import { StreamingTextResponse } from "ai"; | ||
// return new StreamingTextResponse(stream); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This can just be:
return new Response(stream, {
headers: {
"content-type": "text/plain; charset=utf-8"
}
});
}); | ||
|
||
maskingParser = new MaskingParser(); | ||
maskingParser.addTransformer(piiMaskingTransformer); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would it make more sense for the constructor to just take an array of MaskingTransformers
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will update the basic example to default to an array of transformers.
const piiMaskingTransformer = new RegexMaskingTransformer({
email: { regex: /\S+@\S+\.\S+/g, mask: emailMask },
phone: { regex: /\d{3}-\d{3}-\d{4}/g, mask: phoneMask },
});
const maskingParser = new MaskingParser({transformers: [piiMaskingTransformer]});
private config: MaskingParserConfig; | ||
|
||
constructor(config: MaskingParserConfig = {}) { | ||
this.transformers = config.transformers || []; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah ok I see you have it as an option here - also a bit more conventional for us to prefer ??
but doesn't really matter
); | ||
} | ||
|
||
if (state && !(state instanceof Map)) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Our linter does not allow instanceof
since bundlers/chunking can make it unreliable in certain cases - I think it's fine here but you'll need to disable it with a comment:
// eslint-disable-next-line no-instanceof/no-instanceof |
* @throws {TypeError} If the message is not a string. | ||
* @throws {Error} If no transformers are added. | ||
*/ | ||
async parse(message: string): Promise<string> { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
parse
-> mask
? Don't feel too strongly
// The transform method returns a tuple containing the updated message and state. | ||
// The state is a map that tracks the original values of masked content. | ||
// This state is essential for the rehydration process to restore the original message. | ||
[processedMessage, this.state] = transformer.transform( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it might be nice to allow async
transform functions instead of just sync?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only other comment here is that I don't love mutating this.state
internally within transformer.transform
- could see some nasty bugs where a transformer implementation e.g. mistakenly clears state from previous transformers.
My preference would be to manually combine state at the parser level based on each transformer's output, but fine if you want to stick with this since it's in experimental.
// Apply the transformer's rehydrate method to the current state of the message. | ||
// The rehydrate method uses the stored state (this.state) to map masked values | ||
// back to their original values, effectively undoing the masking transformation. | ||
rehydratedMessage = transformer.rehydrate( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See above - might be nice to allow async
rehydrate
functions as well and then just use a for
loop here
message: string, | ||
state?: Map<string, string> | ||
): Promise<string> { | ||
this.config.onRehydratingStart?.(message); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this block?
* @throws {Error} If no transformers are added. | ||
*/ | ||
async parse(message: string): Promise<string> { | ||
this.config.onMaskingStart?.(message); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should these block? Can be nice to avoid race conditions/hanging callbacks in serverless environments, and callbacks should be lightweight.
|
||
#### [Experimental](/docs/modules/experimental/) | ||
|
||
Experimental modules not yet ready for production consumption |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would phrase this more as Experimental modules whose abstractions have not fully settled
const piiMaskingTransformer = new RegexMaskingTransformer(patterns); | ||
|
||
// Hooks for different stages of masking and rehydrating | ||
const onMaskingStart = (message: string) => |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Allow async functions here?
Use the RegexMaskingTransformer to create a simple mask for email and phone. | ||
|
||
```typescript | ||
import { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nicer to have this under examples/
since we populate API ref links and do more sophisticated code correctness checks
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Broadly looks great! Some questions/nits
…angchainjs into feature/masking
Feature/masking
if (this.config.onMaskingStart) { | ||
try { | ||
const result = this.config.onMaskingStart(message) as any; | ||
if (result && typeof result.then === "function") { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you can just do await this.config.onMaskingStart(message)
, will work for sync functions too?
); | ||
} | ||
|
||
if (typeof message !== "string") { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IMO you don't have to be so defensive, the typing will take care of things, but no problem to keep if you're worried about vanilla JS devs
…jacob/ally_parser
Lint, format, style fixes, merge `main`
Thank you! |
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@types/jest](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/jest) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jest)) | [`29.5.10` -> `29.5.11`](https://renovatebot.com/diffs/npm/@types%2fjest/29.5.10/29.5.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fjest/29.5.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fjest/29.5.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fjest/29.5.10/29.5.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fjest/29.5.10/29.5.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@types/react](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`18.2.41` -> `18.2.45`](https://renovatebot.com/diffs/npm/@types%2freact/18.2.41/18.2.45) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/18.2.45?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/18.2.45?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/18.2.41/18.2.45?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/18.2.41/18.2.45?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/typescript-eslint) ([source](https://togithub.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin)) | [`6.13.1` -> `6.14.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/6.13.1/6.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2feslint-plugin/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2feslint-plugin/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2feslint-plugin/6.13.1/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2feslint-plugin/6.13.1/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@typescript-eslint/parser](https://togithub.com/typescript-eslint/typescript-eslint) ([source](https://togithub.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser)) | [`6.13.1` -> `6.14.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/6.13.1/6.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2fparser/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2fparser/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2fparser/6.13.1/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2fparser/6.13.1/6.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [eslint](https://eslint.org) ([source](https://togithub.com/eslint/eslint)) | [`8.55.0` -> `8.56.0`](https://renovatebot.com/diffs/npm/eslint/8.55.0/8.56.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/eslint/8.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint/8.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint/8.55.0/8.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint/8.55.0/8.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [langchain](https://togithub.com/langchain-ai/langchainjs) | [`^0.0.200` -> `^0.0.209`](https://renovatebot.com/diffs/npm/langchain/0.0.200/0.0.209) | [![age](https://developer.mend.io/api/mc/badges/age/npm/langchain/0.0.209?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/langchain/0.0.209?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/langchain/0.0.200/0.0.209?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/langchain/0.0.200/0.0.209?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [openai](https://togithub.com/openai/openai-node) | [`4.20.1` -> `4.23.0`](https://renovatebot.com/diffs/npm/openai/4.20.1/4.23.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.20.1/4.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.20.1/4.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [prettier](https://prettier.io) ([source](https://togithub.com/prettier/prettier)) | [`3.1.0` -> `3.1.1`](https://renovatebot.com/diffs/npm/prettier/3.1.0/3.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/3.1.0/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.1.0/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [typescript](https://www.typescriptlang.org/) ([source](https://togithub.com/Microsoft/TypeScript)) | [`5.3.2` -> `5.3.3`](https://renovatebot.com/diffs/npm/typescript/5.3.2/5.3.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.3.2/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.3.2/5.3.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/eslint-plugin)</summary> ### [`v6.14.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#6140-2023-12-11) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.2...v6.14.0) ##### Bug Fixes - **eslint-plugin:** add no-unsafe-unary-minus, prefer-destructuring to disable-type-checked ([#​8038](https://togithub.com/typescript-eslint/typescript-eslint/issues/8038)) ([431cd15](https://togithub.com/typescript-eslint/typescript-eslint/commit/431cd1559f91795e958e03fd060ceaf79fb96f3a)) - **eslint-plugin:** correct message for `no-unsafe-unary-minus` ([#​7998](https://togithub.com/typescript-eslint/typescript-eslint/issues/7998)) ([705370a](https://togithub.com/typescript-eslint/typescript-eslint/commit/705370ac0d9c54081657b8855b398e57d6ea4ddb)) ##### Features - **eslint-plugin:** \[explicit-function-return-type] add support for typed class property definitions ([#​8027](https://togithub.com/typescript-eslint/typescript-eslint/issues/8027)) ([bff47d7](https://togithub.com/typescript-eslint/typescript-eslint/commit/bff47d7885bee3bbcb3a81eff273fe2f48580940)) - **eslint-plugin:** \[require-await] allow yielding Promise in async generators ([#​8003](https://togithub.com/typescript-eslint/typescript-eslint/issues/8003)) ([4c3e704](https://togithub.com/typescript-eslint/typescript-eslint/commit/4c3e704b97e698df7f72174c2d20714836d4d243)) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. #### [6.13.2](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.1...v6.13.2) (2023-12-04) **Note:** Version bump only for package [@​typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. #### [6.13.1](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.0...v6.13.1) (2023-11-28) **Note:** Version bump only for package [@​typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. ### [`v6.13.2`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#6132-2023-12-04) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.1...v6.13.2) **Note:** Version bump only for package [@​typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> <details> <summary>typescript-eslint/typescript-eslint (@​typescript-eslint/parser)</summary> ### [`v6.14.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#6140-2023-12-11) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.2...v6.14.0) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. #### [6.13.2](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.1...v6.13.2) (2023-12-04) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. #### [6.13.1](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.0...v6.13.1) (2023-11-28) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. ### [`v6.13.2`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#6132-2023-12-04) [Compare Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.13.1...v6.13.2) **Note:** Version bump only for package [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website. </details> <details> <summary>eslint/eslint (eslint)</summary> ### [`v8.56.0`](https://togithub.com/eslint/eslint/releases/tag/v8.56.0) [Compare Source](https://togithub.com/eslint/eslint/compare/v8.55.0...v8.56.0) ##### Features - [`0dd9704`](https://togithub.com/eslint/eslint/commit/0dd9704c4751e1cd02039f7d6485fee09bbccbf6) feat: Support custom severity when reporting unused disable directives ([#​17212](https://togithub.com/eslint/eslint/issues/17212)) (Bryan Mishkin) - [`31a7e3f`](https://togithub.com/eslint/eslint/commit/31a7e3fde491e36496b54e8905c766b31162d776) feat: fix no-restricted-properties false negatives with unknown objects ([#​17818](https://togithub.com/eslint/eslint/issues/17818)) (Arka Pratim Chaudhuri) ##### Bug Fixes - [`7d5e5f6`](https://togithub.com/eslint/eslint/commit/7d5e5f68849ae80caec0fc96ecceebccd348deec) fix: `TypeError: fs.exists is not a function` on read-only file system ([#​17846](https://togithub.com/eslint/eslint/issues/17846)) (Francesco Trotta) - [`74739c8`](https://togithub.com/eslint/eslint/commit/74739c849bbb6547b0e555ed8bb2ba1cbe0fdce4) fix: suggestion with invalid syntax in no-promise-executor-return rule ([#​17812](https://togithub.com/eslint/eslint/issues/17812)) (Bryan Mishkin) ##### Documentation - [`9007719`](https://togithub.com/eslint/eslint/commit/90077199fe519953f9af8664bf947db4e4958514) docs: update link in ways-to-extend.md ([#​17839](https://togithub.com/eslint/eslint/issues/17839)) (Amel SELMANE) - [`3a22236`](https://togithub.com/eslint/eslint/commit/3a22236f8d10af8a5bcafe56092651d3d681c99d) docs: Update README (GitHub Actions Bot) - [`54c3ca6`](https://togithub.com/eslint/eslint/commit/54c3ca6f2dcd2a7afd53f42fc32055a25587259e) docs: fix migration-guide example ([#​17829](https://togithub.com/eslint/eslint/issues/17829)) (Tanuj Kanti) - [`4391b71`](https://togithub.com/eslint/eslint/commit/4391b71e62b15e54b0493f0dce1ea053ebbc0689) docs: check config comments in rule examples ([#​17815](https://togithub.com/eslint/eslint/issues/17815)) (Francesco Trotta) - [`fd28363`](https://togithub.com/eslint/eslint/commit/fd2836342c2be4751b05fe0ba7cece17d1edecc8) docs: remove mention about ESLint stylistic rules in readme ([#​17810](https://togithub.com/eslint/eslint/issues/17810)) (Zwyx) - [`48ed5a6`](https://togithub.com/eslint/eslint/commit/48ed5a6dad478a14d3e823f137455c523f373e0b) docs: Update README (GitHub Actions Bot) ##### Chores - [`ba6af85`](https://togithub.com/eslint/eslint/commit/ba6af85c7d8ba55d37f8663aee949d148e441c1a) chore: upgrade [@​eslint/js](https://togithub.com/eslint/js)[@​8](https://togithub.com/8).56.0 ([#​17864](https://togithub.com/eslint/eslint/issues/17864)) (Milos Djermanovic) - [`60a531a`](https://togithub.com/eslint/eslint/commit/60a531a9c0811ddf718e26b9136e133f580b6c36) chore: package.json update for [@​eslint/js](https://togithub.com/eslint/js) release (Jenkins) - [`ba87a06`](https://togithub.com/eslint/eslint/commit/ba87a0651a65b52c3ac442b512dd9f4c2b4c5f57) chore: update dependency markdownlint to ^0.32.0 ([#​17783](https://togithub.com/eslint/eslint/issues/17783)) (renovate\[bot]) - [`9271d10`](https://togithub.com/eslint/eslint/commit/9271d10d9eabeafb0129a090f29191bfd14273c0) chore: add GitHub issue template for docs issues ([#​17845](https://togithub.com/eslint/eslint/issues/17845)) (Josh Goldberg ✨) - [`70a686b`](https://togithub.com/eslint/eslint/commit/70a686b3c1feac5eca98bbff9bd67175f550d5db) chore: Convert rule tests to FlatRuleTester ([#​17819](https://togithub.com/eslint/eslint/issues/17819)) (Nicholas C. Zakas) - [`f3a599d`](https://togithub.com/eslint/eslint/commit/f3a599d34c7080fc0b2c9a60b5e54dc98c22867c) chore: upgrade eslint-plugin-unicorn to v49.0.0 ([#​17837](https://togithub.com/eslint/eslint/issues/17837)) (唯然) - [`905d4b7`](https://togithub.com/eslint/eslint/commit/905d4b75ab2df42aba30622cee0f66b511397e2c) chore: upgrade eslint-plugin-eslint-plugin v5.2.1 ([#​17838](https://togithub.com/eslint/eslint/issues/17838)) (唯然) - [`4d7c3ce`](https://togithub.com/eslint/eslint/commit/4d7c3ce246e6b499f472342ef59496a47cc033d6) chore: update eslint-plugin-n v16.4.0 ([#​17836](https://togithub.com/eslint/eslint/issues/17836)) (唯然) - [`fd0c60c`](https://togithub.com/eslint/eslint/commit/fd0c60c3be1f213e5a6d69d8a3248e963619e155) ci: unpin Node.js 21.2.0 ([#​17821](https://togithub.com/eslint/eslint/issues/17821)) (Francesco Trotta) </details> <details> <summary>langchain-ai/langchainjs (langchain)</summary> ### [`v0.0.209`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.209) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.208...0.0.209) #### What's Changed - Release 0.0.208 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3677](https://togithub.com/langchain-ai/langchainjs/pull/3677) - Updated docs to reflect usage of PaLM based classes by [@​alx13](https://togithub.com/alx13) in [https://github.com/langchain-ai/langchainjs/pull/3678](https://togithub.com/langchain-ai/langchainjs/pull/3678) - mistral\[minor]: Fix assigning class properties by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3681](https://togithub.com/langchain-ai/langchainjs/pull/3681) - docs\[patch]: Use mixtral default model for togetherai by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3679](https://togithub.com/langchain-ai/langchainjs/pull/3679) - Fix 1 typo in Assistants Docs and added 2 extra suggestions by [@​SimplyJuanjo](https://togithub.com/SimplyJuanjo) in [https://github.com/langchain-ai/langchainjs/pull/3680](https://togithub.com/langchain-ai/langchainjs/pull/3680) - docs\[patch]: Add section about req optional dep by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3689](https://togithub.com/langchain-ai/langchainjs/pull/3689) - core\[patch]: Use an interface for runnables to allow more compatibility between core versions by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3684](https://togithub.com/langchain-ai/langchainjs/pull/3684) - core\[patch]: Add LLM/ChatModel callbacks to cached generation by [@​gramliu](https://togithub.com/gramliu) in [https://github.com/langchain-ai/langchainjs/pull/3392](https://togithub.com/langchain-ai/langchainjs/pull/3392) - integrations\[minor]: Add readmes to add integrations, improve templat… by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3683](https://togithub.com/langchain-ai/langchainjs/pull/3683) - community\[minor]: Jacob/vectara summarization by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3636](https://togithub.com/langchain-ai/langchainjs/pull/3636) - Add missing max_tokens option to TogetherAI by [@​skadefro](https://togithub.com/skadefro) in [https://github.com/langchain-ai/langchainjs/pull/3687](https://togithub.com/langchain-ai/langchainjs/pull/3687) - community\[patch]: Cassandra init improvements by [@​mieslep](https://togithub.com/mieslep) in [https://github.com/langchain-ai/langchainjs/pull/3579](https://togithub.com/langchain-ai/langchainjs/pull/3579) - Update READMEs by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3693](https://togithub.com/langchain-ai/langchainjs/pull/3693) #### New Contributors - [@​SimplyJuanjo](https://togithub.com/SimplyJuanjo) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3680](https://togithub.com/langchain-ai/langchainjs/pull/3680) - [@​skadefro](https://togithub.com/skadefro) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3687](https://togithub.com/langchain-ai/langchainjs/pull/3687) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.208...0.0.209 ### [`v0.0.208`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.208) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.207...0.0.208) #### What's Changed - Release 0.0.207 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3649](https://togithub.com/langchain-ai/langchainjs/pull/3649) - Adds integration package installation instructions by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3650](https://togithub.com/langchain-ai/langchainjs/pull/3650) - Change wording by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3652](https://togithub.com/langchain-ai/langchainjs/pull/3652) - docs\[patch]: Added missing LangSmith trace link in mistral docs by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3659](https://togithub.com/langchain-ai/langchainjs/pull/3659) - bugfixes in google Generative AI chat_model by [@​haouarihk](https://togithub.com/haouarihk) in [https://github.com/langchain-ai/langchainjs/pull/3657](https://togithub.com/langchain-ai/langchainjs/pull/3657) - Bump google genai version by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3660](https://togithub.com/langchain-ai/langchainjs/pull/3660) - community\[major]: Add Together AI LLM integration by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3627](https://togithub.com/langchain-ai/langchainjs/pull/3627) - Update README and contributing guidelines by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3666](https://togithub.com/langchain-ai/langchainjs/pull/3666) - Update OpenAI embeddings `stripNewLines` to be default `false` by [@​Knordy](https://togithub.com/Knordy) in [https://github.com/langchain-ai/langchainjs/pull/3612](https://togithub.com/langchain-ai/langchainjs/pull/3612) - langchain\[patch]: Fix invert runId and threadId by [@​shadyshoha](https://togithub.com/shadyshoha) in [https://github.com/langchain-ai/langchainjs/pull/3665](https://togithub.com/langchain-ai/langchainjs/pull/3665) - experimental\[patch]: Improve AutoGPT's output_parser to extract JSON code block by [@​mayt](https://togithub.com/mayt) in [https://github.com/langchain-ai/langchainjs/pull/3656](https://togithub.com/langchain-ai/langchainjs/pull/3656) - community\[patch]: Fix RRF normalization and lucene characters for neo4j vector by [@​tomasonjo](https://togithub.com/tomasonjo) in [https://github.com/langchain-ai/langchainjs/pull/3653](https://togithub.com/langchain-ai/langchainjs/pull/3653) - community\[patch]: Update ElasticSearch mappings to successfully add documents from TextSplitter by [@​mattraibert](https://togithub.com/mattraibert) in [https://github.com/langchain-ai/langchainjs/pull/3629](https://togithub.com/langchain-ai/langchainjs/pull/3629) - docs\[patch]: Update LangChain README by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3669](https://togithub.com/langchain-ai/langchainjs/pull/3669) - mistral\[minor]: Dynamically import mistral by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3670](https://togithub.com/langchain-ai/langchainjs/pull/3670) - Bump version by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3671](https://togithub.com/langchain-ai/langchainjs/pull/3671) - Bump version by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3672](https://togithub.com/langchain-ai/langchainjs/pull/3672) - community\[minor]: Adds chat endpoint and multimodal support for Ollama by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3673](https://togithub.com/langchain-ai/langchainjs/pull/3673) #### New Contributors - [@​haouarihk](https://togithub.com/haouarihk) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3657](https://togithub.com/langchain-ai/langchainjs/pull/3657) - [@​shadyshoha](https://togithub.com/shadyshoha) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3665](https://togithub.com/langchain-ai/langchainjs/pull/3665) - [@​mayt](https://togithub.com/mayt) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3656](https://togithub.com/langchain-ai/langchainjs/pull/3656) - [@​mattraibert](https://togithub.com/mattraibert) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3629](https://togithub.com/langchain-ai/langchainjs/pull/3629) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.207...0.0.208 ### [`v0.0.207`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.207) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.206...0.0.207) #### What's Changed - Release 0.0.206 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3639](https://togithub.com/langchain-ai/langchainjs/pull/3639) - Bump version by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3640](https://togithub.com/langchain-ai/langchainjs/pull/3640) - docs\[patch]: Add yarn clean script to docs & run in build by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3646](https://togithub.com/langchain-ai/langchainjs/pull/3646) - docs\[patch]: Don't use turbo to build api refs by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3647](https://togithub.com/langchain-ai/langchainjs/pull/3647) - langchain\[patch]: Issue [#​2756](https://togithub.com/langchain-ai/langchainjs/issues/2756) Add Qdrant custom payload on documents to query them by filter by [@​youngjaeheo2002](https://togithub.com/youngjaeheo2002) in [https://github.com/langchain-ai/langchainjs/pull/3431](https://togithub.com/langchain-ai/langchainjs/pull/3431) - pass in authoptions correctly from initialization down to connection sdk by [@​pixelcatgg](https://togithub.com/pixelcatgg) in [https://github.com/langchain-ai/langchainjs/pull/3598](https://togithub.com/langchain-ai/langchainjs/pull/3598) - community\[major]: Added integration with new Gemini API by [@​alx13](https://togithub.com/alx13) in [https://github.com/langchain-ai/langchainjs/pull/3621](https://togithub.com/langchain-ai/langchainjs/pull/3621) - Update [@​langchain/google-genai](https://togithub.com/langchain/google-genai) versioning by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3648](https://togithub.com/langchain-ai/langchainjs/pull/3648) - Adds delete method to PGVectorStore by [@​MJDeligan](https://togithub.com/MJDeligan) in [https://github.com/langchain-ai/langchainjs/pull/3590](https://togithub.com/langchain-ai/langchainjs/pull/3590) - Update AssemblyAI SDK by [@​Swimburger](https://togithub.com/Swimburger) in [https://github.com/langchain-ai/langchainjs/pull/3599](https://togithub.com/langchain-ai/langchainjs/pull/3599) - langchain-mistralai\[major]: Add MistralAI chat and embed by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3623](https://togithub.com/langchain-ai/langchainjs/pull/3623) #### New Contributors - [@​youngjaeheo2002](https://togithub.com/youngjaeheo2002) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3431](https://togithub.com/langchain-ai/langchainjs/pull/3431) - [@​pixelcatgg](https://togithub.com/pixelcatgg) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3598](https://togithub.com/langchain-ai/langchainjs/pull/3598) - [@​alx13](https://togithub.com/alx13) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3621](https://togithub.com/langchain-ai/langchainjs/pull/3621) - [@​MJDeligan](https://togithub.com/MJDeligan) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3590](https://togithub.com/langchain-ai/langchainjs/pull/3590) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.206...0.0.207 ### [`v0.0.206`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.206) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.205...0.0.206) #### What's Changed - Release 0.0.205 + core 0.1.0 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3631](https://togithub.com/langchain-ai/langchainjs/pull/3631) - Add community as workspace dep to examples by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3633](https://togithub.com/langchain-ai/langchainjs/pull/3633) - api_refs\[major]: Remove script, use custom typedoc plugin by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3630](https://togithub.com/langchain-ai/langchainjs/pull/3630) - Add README for community + core by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3637](https://togithub.com/langchain-ai/langchainjs/pull/3637) - Add Discord Tool by [@​Maanethdesilva](https://togithub.com/Maanethdesilva) in [https://github.com/langchain-ai/langchainjs/pull/3444](https://togithub.com/langchain-ai/langchainjs/pull/3444) - community\[patch]: removing null chars by [@​phof](https://togithub.com/phof) in [https://github.com/langchain-ai/langchainjs/pull/3628](https://togithub.com/langchain-ai/langchainjs/pull/3628) - core\[patch],community\[patch]: Make traced DynamicTool runs use tool name by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3635](https://togithub.com/langchain-ai/langchainjs/pull/3635) - feat: add inference for RunnableMap RunOutput type by [@​dilling](https://togithub.com/dilling) in [https://github.com/langchain-ai/langchainjs/pull/3517](https://togithub.com/langchain-ai/langchainjs/pull/3517) #### New Contributors - [@​Maanethdesilva](https://togithub.com/Maanethdesilva) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3444](https://togithub.com/langchain-ai/langchainjs/pull/3444) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.205...0.0.206 ### [`v0.0.205`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.205) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.204...0.0.205) #### What's Changed - all\[patch]: Ensure other subpackages are built before test/build by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3624](https://togithub.com/langchain-ai/langchainjs/pull/3624) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.204...0.0.205 ### [`v0.0.204`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.204) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.203...0.0.204) #### What's Changed - Release 0.0.203 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3574](https://togithub.com/langchain-ai/langchainjs/pull/3574) - Fix docs by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3584](https://togithub.com/langchain-ai/langchainjs/pull/3584) - Fix typo in example by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3585](https://togithub.com/langchain-ai/langchainjs/pull/3585) - core\[docs]: Added get started page to LCEL by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3571](https://togithub.com/langchain-ai/langchainjs/pull/3571) - community\[major]: Merge community by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3610](https://togithub.com/langchain-ai/langchainjs/pull/3610) - langchain\[patch]: Build deps before testing by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3618](https://togithub.com/langchain-ai/langchainjs/pull/3618) - Release 0.0.204 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3619](https://togithub.com/langchain-ai/langchainjs/pull/3619) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.203...0.0.204 ### [`v0.0.203`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.203) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.202...0.0.203) #### What's Changed - Release 0.0.202 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3560](https://togithub.com/langchain-ai/langchainjs/pull/3560) - chore: Upgrade Typescript to 5.1 by [@​dilling](https://togithub.com/dilling) in [https://github.com/langchain-ai/langchainjs/pull/3562](https://togithub.com/langchain-ai/langchainjs/pull/3562) - core\[docs]: Docs & example for runnable history by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3527](https://togithub.com/langchain-ai/langchainjs/pull/3527) - core\[chore]: widen semver range for langsmith by [@​falkenhawk](https://togithub.com/falkenhawk) in [https://github.com/langchain-ai/langchainjs/pull/3564](https://togithub.com/langchain-ai/langchainjs/pull/3564) - docs\[patch]: Use an example file for docs code examples by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3567](https://togithub.com/langchain-ai/langchainjs/pull/3567) - langchain\[patch]: Update default PDF split lines separator by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3568](https://togithub.com/langchain-ai/langchainjs/pull/3568) - Bump core by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3572](https://togithub.com/langchain-ai/langchainjs/pull/3572) - langchain\[minor]: Experimental Masking Module by [@​Jordan-Gilliam](https://togithub.com/Jordan-Gilliam) in [https://github.com/langchain-ai/langchainjs/pull/3548](https://togithub.com/langchain-ai/langchainjs/pull/3548) #### New Contributors - [@​dilling](https://togithub.com/dilling) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3562](https://togithub.com/langchain-ai/langchainjs/pull/3562) - [@​falkenhawk](https://togithub.com/falkenhawk) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3564](https://togithub.com/langchain-ai/langchainjs/pull/3564) - [@​Jordan-Gilliam](https://togithub.com/Jordan-Gilliam) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3548](https://togithub.com/langchain-ai/langchainjs/pull/3548) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.202...0.0.203 ### [`v0.0.202`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.202) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.201...0.0.202) #### What's Changed - Release 0.0.201 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3542](https://togithub.com/langchain-ai/langchainjs/pull/3542) - Fix OpenAI agent docs by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3543](https://togithub.com/langchain-ai/langchainjs/pull/3543) - Update contributing guidelines by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3550](https://togithub.com/langchain-ai/langchainjs/pull/3550) - core\[infra]: Adds turbo to core by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3551](https://togithub.com/langchain-ai/langchainjs/pull/3551) - docs\[patch]: Agent pointer by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3549](https://togithub.com/langchain-ai/langchainjs/pull/3549) - Revert "all\[chore]: Use turbo repo to build api refs, docs and more" by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3535](https://togithub.com/langchain-ai/langchainjs/pull/3535) - Upgrade xata client to 0.28.0 and apply required change by [@​tsg](https://togithub.com/tsg) in [https://github.com/langchain-ai/langchainjs/pull/3553](https://togithub.com/langchain-ai/langchainjs/pull/3553) - core\[docs]: Docs for with listeners runnable method by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3531](https://togithub.com/langchain-ai/langchainjs/pull/3531) - langchain\[docs]: agent stream example docs by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3384](https://togithub.com/langchain-ai/langchainjs/pull/3384) - core\[patch]: Improve interaction with streams and Node's Readable.from() method by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3556](https://togithub.com/langchain-ai/langchainjs/pull/3556) - core\[patch]: Simplify RunnableSequence transform implementation by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3558](https://togithub.com/langchain-ai/langchainjs/pull/3558) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.201...0.0.202 ### [`v0.0.201`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.201) [Compare Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.200...0.0.201) #### What's Changed - Release 0.0.200 by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3498](https://togithub.com/langchain-ai/langchainjs/pull/3498) - Added extra chat message class to types for history by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3510](https://togithub.com/langchain-ai/langchainjs/pull/3510) - chore(WatsonX.ai example): remove run by [@​chasemcdo](https://togithub.com/chasemcdo) in [https://github.com/langchain-ai/langchainjs/pull/3503](https://togithub.com/langchain-ai/langchainjs/pull/3503) - core\[patch]: Export Runnable history by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3514](https://togithub.com/langchain-ai/langchainjs/pull/3514) - chore(docs): add embedding integration contribution docs by [@​chasemcdo](https://togithub.com/chasemcdo) in [https://github.com/langchain-ai/langchainjs/pull/3493](https://togithub.com/langchain-ai/langchainjs/pull/3493) - core\[fix]: RunnableFunc config types by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3513](https://togithub.com/langchain-ai/langchainjs/pull/3513) - Bump core version by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3515](https://togithub.com/langchain-ai/langchainjs/pull/3515) - Adds npx create-langchain-integration command by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3512](https://togithub.com/langchain-ai/langchainjs/pull/3512) - all\[chore]: Use turbo repo to build api refs, docs and more by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3511](https://togithub.com/langchain-ai/langchainjs/pull/3511) - fix: query parameters are not passed correctly to WolframAlpha API by [@​amellouki](https://togithub.com/amellouki) in [https://github.com/langchain-ai/langchainjs/pull/3502](https://togithub.com/langchain-ai/langchainjs/pull/3502) - Fix linter warning by [@​jacoblee93](https://togithub.com/jacoblee93) in [https://github.com/langchain-ai/langchainjs/pull/3528](https://togithub.com/langchain-ai/langchainjs/pull/3528) - core\[patch]: Reducing heap area consumption regardless of the number of prompts by [@​tsukasaoishi](https://togithub.com/tsukasaoishi) in [https://github.com/langchain-ai/langchainjs/pull/3519](https://togithub.com/langchain-ai/langchainjs/pull/3519) - cr by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3536](https://togithub.com/langchain-ai/langchainjs/pull/3536) - core\[tests]: Better tests for runnable history by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3537](https://togithub.com/langchain-ai/langchainjs/pull/3537) - docs\[patch]: search experiment by [@​efriis](https://togithub.com/efriis) in [https://github.com/langchain-ai/langchainjs/pull/3538](https://togithub.com/langchain-ai/langchainjs/pull/3538) - Add Gmail Tool by [@​1239uth](https://togithub.com/1239uth) in [https://github.com/langchain-ai/langchainjs/pull/3438](https://togithub.com/langchain-ai/langchainjs/pull/3438) - feat: Add ObsidianLoader to Document loaders by [@​eactisgrosso](https://togithub.com/eactisgrosso) in [https://github.com/langchain-ai/langchainjs/pull/3494](https://togithub.com/langchain-ai/langchainjs/pull/3494) - all\[patch]: Add `.turbo/` to folders removed by `yarn clean` by [@​bracesproul](https://togithub.com/bracesproul) in [https://github.com/langchain-ai/langchainjs/pull/3540](https://togithub.com/langchain-ai/langchainjs/pull/3540) - Add Connery Tool and Toolkit by [@​machulav](https://togithub.com/machulav) in [https://github.com/langchain-ai/langchainjs/pull/3499](https://togithub.com/langchain-ai/langchainjs/pull/3499) #### New Contributors - [@​amellouki](https://togithub.com/amellouki) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3502](https://togithub.com/langchain-ai/langchainjs/pull/3502) - [@​tsukasaoishi](https://togithub.com/tsukasaoishi) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3519](https://togithub.com/langchain-ai/langchainjs/pull/3519) - [@​1239uth](https://togithub.com/1239uth) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3438](https://togithub.com/langchain-ai/langchainjs/pull/3438) - [@​eactisgrosso](https://togithub.com/eactisgrosso) made their first contribution in [https://github.com/langchain-ai/langchainjs/pull/3494](https://togithub.com/langchain-ai/langchainjs/pull/3494) **Full Changelog**: https://github.com/langchain-ai/langchainjs/compare/0.0.200...0.0.201 </details> <details> <summary>openai/openai-node (openai)</summary> ### [`v4.23.0`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4230-2023-12-17) [Compare Source](https://togithub.com/openai/openai-node/compare/v4.22.1...v4.23.0) Full Changelog: [v4.22.1...v4.23.0](https://togithub.com/openai/openai-node/compare/v4.22.1...v4.23.0) ##### Features - **api:** add token logprobs to chat completions ([#​576](https://togithub.com/openai/openai-node/issues/576)) ([8d4292e](https://togithub.com/openai/openai-node/commit/8d4292e6358920b2c9d8df49c6a154231c468512)) ##### Chores - **ci:** run release workflow once per day ([#​574](https://togithub.com/openai/openai-node/issues/574)) ([529f09f](https://togithub.com/openai/openai-node/commit/529f09f827a675d6e851590acff4e6f4f2af2d26)) ### [`v4.22.1`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4221-2023-12-15) [Compare Source](https://togithub.com/openai/openai-node/compare/v4.22.0...v4.22.1) Full Changelog: [v4.22.0...v4.22.1](https://togithub.com/openai/openai-node/compare/v4.22.0...v4.22.1) ##### Chores - update dependencies ([#​572](https://togithub.com/openai/openai-node/issues/572)) ([a51e620](https://togithub.com/openai/openai-node/commit/a51e62065224a516b17dd850ae564f5436d8db52)) ##### Documentation - replace runFunctions with runTools in readme ([#​570](https://togithub.com/openai/openai-node/issues/570)) ([c3b9ad5](https://togithub.com/openai/openai-node/commit/c3b9ad58e5f74d3339889aeb1d758c8c18f54de7)) ### [`v4.22.0`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4220-2023-12-15) [Compare Source](https://togithub.com/openai/openai-node/compare/v4.21.0...v4.22.0) Full Changelog: [v4.21.0...v4.22.0](https://togithub.com/openai/openai-node/compare/v4.21.0...v4.22.0) ##### Features - **api:** add optional `name` argument + improve docs ([#​569](https://togithub.com/openai/openai-node/issues/569)) ([3b68ace](https://togithub.com/openai/openai-node/commit/3b68ace533976aedbf642d9b018d0de8d9a8bb88)) ##### Chores - update prettier ([#​567](https://togithub.com/openai/openai-node/issues/567)) ([83dec2a](https://togithub.com/openai/openai-node/commit/83dec2af62c481d7de16d8a3644aa239ded9e30c)) ### [`v4.21.0`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4210-2023-12-11) [Compare Source](https://togithub.com/openai/openai-node/compare/v4.20.1...v4.21.0) Full Changelog: [v4.20.1...v4.21.0](https://togithub.com/openai/openai-node/compare/v4.20.1...v4.21.0) ##### Features - **client:** support reading the base url from an env variable ([#​547](https://togithub.com/openai/openai-node/issues/547)) ([06fb68d](https://togithub.com/openai/openai-node/commit/06fb68de1ff80983e349b6715d1037e2072c8dd4)) ##### Bug Fixes - correct some runTools behavior and deprecate runFunctions ([#​562](https://togithub.com/openai/openai-node/issues/562)) ([f5cdd0f](https://togithub.com/openai/openai-node/commit/f5cdd0f704d3d075cdfc5bc2df1f7a8bae5cd9f1)) - prevent 400 when using runTools/runFunctions with Azure OpenAI API ([#​544](https://togithub.com/openai/openai-node/issues/544)) ([735d9b8](https://togithub.com/openai/openai-node/commit/735d9b86acdc067e1ee6ebe1ea50de2955431050)) ##### Documentation - **readme:** update example snippets ([#​546](https://togithub.com/openai/openai-node/issues/546)) ([566d290](https://togithub.com/openai/openai-node/commit/566d290006920f536788bb77f4d24a6906e2971f)) ##### Build System - specify `packageManager: yarn` ([#​561](https://togithub.com/openai/openai-node/issues/561)) ([935b898](https://togithub.com/openai/openai-node/commit/935b8983c74f7b03b67d22f4d194989838f963f3)) </details> <details> <summary>prettier/prettier (prettier)</summary> ### [`v3.1.1`](https://togithub.com/prettier/prettier/blob/HEAD/CHANGELOG.md#311) [Compare Source](https://togithub.com/prettier/prettier/compare/3.1.0...3.1.1) [diff](https://togithub.com/prettier/prettier/compare/3.1.0...3.1.1) ##### Fix config file search ([#​15363](https://togithub.com/prettier/prettier/pull/15363) by [@​fisker](https://togithub.com/fisker)) Previously, we start search for config files from the filePath as a directory, if it happened to be a directory and contains config file, it will be used by mistake. ```text ├─ .prettierrc └─ test.js (A directory) └─ .prettierrc ``` ```js // Prettier 3.1.0 await prettier.resolveConfigFile(new URL("./test.js", import.meta.url)); // <CWD>/test.js/.prettierrc // Prettier 3.1.1 await prettier.resolveConfigFile(new URL("./test.js", import.meta.url)); // <CWD>/.prettierrc ``` ##### Skip explicitly passed symbolic links with `--no-error-on-unmatched-pattern` ([#​15533](https://togithub.com/prettier/prettier/pull/15533) by [@​sanmai-NL](https://togithub.com/sanmai-NL)) Since Prettier v3, we stopped following symbolic links, however in some use cases, the symbolic link patterns can't be filtered out, and there is no way to prevent Prettier from throwing errors. In Prettier 3.1.1, you can use `--no-error-on-unmatched-pattern` to simply skip symbolic links. ##### Consistently use tabs in ternaries when `useTabs` is `true` ([#​15662](https://togithub.com/prettier/prettier/pull/15662) by [@​auvred](https://togithub.com/auvred)) <!-- prettier-ignore --> ```jsx // Input aaaaaaaaaaaaaaa ? bbbbbbbbbbbbbbbbbb : ccccccccccccccc ? ddddddddddddddd : eeeeeeeeeeeeeee ? fffffffffffffff : gggggggggggggggg; // Prettier 3.1.0 aaaaaaaaaaaaaaa ? bbbbbbbbbbbbbbbbbb : ccccccccccccccc ? ddddddddddddddd : eeeeeeeeeeeeeee ? fffffffffffffff : gggggggggggggggg; // Prettier 3.1.1 aaaaaaaaaaaaaaa ? bbbbbbbbbbbbbbbbbb : ccccccccccccccc ? ddddddddddddddd : eeeeeeeeeeeeeee ? fffffffffffffff : gggggggggggggggg; ``` ##### Improve config file search ([#​15663](https://togithub.com/prettier/prettier/pull/15663) by [@​fisker](https://togithub.com/fisker)) The Prettier config file search performance has been improved by more effective cache strategy. ##### Fix unstable and ugly formatting for comments in destructuring patterns ([#​15708](https://togithub.com/prettier/prettier/pull/15708) by [@​sosukesuzuki](https://togithub.com/sosukesuzuki)) <!-- prettier-ignore --> ```tsx // Input const { foo, // bar // baz }: Foo = expr; // Prettier 3.1.0 const { foo1, } // bar // baz : Foo = expr; // Prettier 3.1.0 second output const { foo1, // bar } // baz : Foo = expr; // Prettier 3.1.1 const { foo1, // bar // baz }: Foo = expr; ``` ##### Support "Import Attributes" ([#​15718](https://togithub.com/prettier/prettier/pull/15718) by [@​fisker](https://togithub.com/fisker)) [TypeScript 5.3](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/#import-attributes) supports the latest updates to the [import attributes](https://togithub.com/tc39/proposal-import-attributes) proposal. ```tsx import something from "./something.json" with { type: "json" }; ``` ##### Fix false claim in docs that cursorOffset is incompatible with rangeStart/rangeEnd ([#​15750](https://togithub.com/prettier/prettier/pull/15750) by [@​ExplodingCabbage](https://togithub.com/ExplodingCabbage)) The cursorOffset option has in fact been compatible with rangeStart/rangeEnd for over 5 years, thanks to work by [@​ds300](https://togithub.com/ds300). However, Prettier's documentation (including the CLI `--help` text) continued to claim otherwise, falsely. The documentation is now fixed. ##### Keep curly braces and `from` keyword in empty `import` statements ([#​15756](https://togithub.com/prettier/prettier/pull/15756) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```js // Input import { } from 'foo'; import { /* comment */ } from 'bar'; // Prettier 3.1.0 import {} from "foo"; import /* comment */ "bar"; // Prettier 3.1.1 import {} from "foo"; import {} from /* comment */ "bar"; ``` ##### Keep empty import attributes and assertions ([#​15757](https://togithub.com/prettier/prettier/pull/15757) by [@​fisker](https://togithub.com/fisker)) <!-- prettier-ignore --> ```js // Input import foo from "foo" with {}; import bar from "bar" assert {}; // Prettier 3.1.0 import foo from "foo"; import bar from "bar"; // Prettier 3.1.1 import foo from "foo" with {}; import bar from "bar" assert {}; ``` </details> <details> <summary>Microsoft/TypeScript (typescript)</summary> ### [`v5.3.3`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.3.3): TypeScript 5.3.3 [Compare Source](https://togithub.com/Microsoft/TypeScript/compare/v5.3.2...v5.3.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.3.0 (Beta)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.1 (RC)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.2 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.3 (Stable)](https://togithub.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.3%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "before 4am on Monday" in timezone America/Chicago, Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/autoblocksai/javascript-sdk). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy45My4xIiwidXBkYXRlZEluVmVyIjoiMzcuOTMuMSIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
* Release 0.0.193 * Pin zod-to-json-schema version (langchain-ai#3343) * Release 0.0.194 * Fix ReAct agent hallucinating result (langchain-ai#3341) * Adding self query for vectara (langchain-ai#3338) * added self query for vectara vector store * updated the docs * skip the integration test * Updated the comments in the example * Rename test, add linter warning --------- Co-authored-by: Adeel Ehsan <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * Updates to Vectara Implementation (langchain-ai#3332) * updated documentation added X-Source to header * added deleteDocuments() method updated generation of random ID from date to UUID-like tests now fully executed and fixed to work properly * added deleteDocuments to docs fixes from yarn lint keeping test.skip * Removed **sentence-transformers/distilbert-base-nli-mean-tokens** as default model and added **BAAI/bge-base-en-v1.5** as default model when no model param is given. (langchain-ai#3323) * Update hf.ts Removed sentence-transformers/distilbert-base-nli-mean-tokens as default model and added BAAI/bge-base-en-v1.5 as default model when no model param is given * Format --------- Co-authored-by: jacoblee93 <[email protected]> * feat: add filters to `ChaindeskRetriever` (langchain-ai#3314) * feat: add filters to `ChaindeskRetriver` reference: https://docs.chaindesk.ai/api-reference/endpoint/datastores/query * rename filter to filters * run yarn format * Add OpenAI Files for OpenAI assistant (langchain-ai#3228) * Add File to Open Ai assistant * 📝 Add documentation * ✨ Add Open File API * 📝 Add documentation on Open AI File API * ✅ Add test on Open AI File API * Update jsdoc types for params * Fix openai request options import * Extend serializable class and add return jsdoc types * 🔧 Add experimental openai_files entrypoint. * 📝 Build the doc * ♻️ Refactor OpenAIFiles to allow custom client * 📝 clean the JSDoc * Use one documentation page --------- Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * Release 0.0.195 * Jacob/core (langchain-ai#3354) * Split out core * Update package lock and yarn lock * Update core * Fix build * Fix tests * Fix test, format * Fix format * Fix format * Scripts * Bump dep * Fix examples * Remove unneeded deps * Update deps * Fix exports plz * plz * Fix plz * Fix * Plox * Fix * Disable bun * Disable API refs for now * Fix build * PLZZZZ * Bump * Bump version * Skip test * Release 0.0.196 * Refactor core (langchain-ai#3373) * Refactor core * Bump core version * Bump core * Update OpenAIAgent to support Runnable models (langchain-ai#3346) * Update OpenAIAgent to support Runnable interface * Add test with executor * Call invoke for all paths and add CallOptions * Format and fix test --------- Co-authored-by: jacoblee93 <[email protected]> * Fix streaming of Bedrock on Cloudflare Workers (langchain-ai#3364) * Fix streaming of Bedrock on Cloudflare Workers * Handle buffer 0 * Remove unnecessary break * Update quickstart.mdx (langchain-ai#3357) * Skip non LTS Node version (langchain-ai#3374) * Allow to stream files with `GithubRepoLoader` (langchain-ai#3339) * add loadAsStream method in GithubRepoLoader * apply review changes * feat: implement max marginal relevance for momento vector index (langchain-ai#3351) * chore: bump momento deps to get searchAndFetchVectors for MMR * feat: implement max marginal relevance search for mvi and int tests * fix: MongoDB Vector Search does not support integer as input (langchain-ai#3356) * fix: MongoDB Vector Search does not support integer as input * Fix lint + format --------- Co-authored-by: jacoblee93 <[email protected]> * Move more core modules (langchain-ai#3376) * Move more core modules * Bump * Format * Adds standalone @langchain/anthropic package (langchain-ai#3377) * Adds standalone @langchain/anthropic package * Format * Fix docker * Fix Docker * Support both old and new serialization ids, update prompt base class … (langchain-ai#3378) * Support both old and new serialization ids, update prompt base class as example * More namespace changes * Update lc_namespaces * Fix test * Fix tests * Bump versions --------- Co-authored-by: jacoblee93 <[email protected]> * Rename to @langchain/core (langchain-ai#3381) * Rename to @langchain/core * Fix build * Fix script * Fixed docs build issue (langchain-ai#3382) * Fixed docs build issue * chore: lint files * cr * docs fix * format * cr * Agent streaming (langchain-ai#3365) * Agent streaming * chore: lint files * fix circular dep issue * error handling * cr * cr * fix any eslint * rm commented out method * Update langchain/src/agents/executor.ts * Update langchain/src/agents/executor.ts * cr * drop husky (langchain-ai#3383) * Add OpenAI package (langchain-ai#3385) * Serialization * Add OpenAI package * Fix small core serialization issue (langchain-ai#3386) * Fix small core serialization issue * Bump * rc.1 * Add core README (langchain-ai#3396) * Revert dependencies for now (langchain-ai#3402) * Revert dependencies for now * Readd missing file * Delegate to core * Import map * Remove workspace core dep (langchain-ai#3413) * Update secret map (langchain-ai#3414) * Version * Secret map * Release 0.0.197 * feat: add support for collection name in PG Vector (langchain-ai#3353) * add support for collection name in PGVector * lint * add optional metadata as well * format * fix: Add HuggingFaceInference includeCredentials param (langchain-ai#3389) * feat: Add HfInference includeCredentials prop * Type fix --------- Co-authored-by: Alex Naymushin <[email protected]> * Use less tokens to describe a Neo4j graph schema (langchain-ai#3411) * WIP * Add proper typing * Update inline snapshot to demonstrate what the new schema looks like --------- Co-authored-by: Oskar Hane <[email protected]> * Add no focused jest tests eslint rule (langchain-ai#3422) * Add no focused jest tests eslint rule * unfocus test * remove * Add more tests for agent streaming (langchain-ai#3421) * Add more tests for agent streaming * add memory * unfocus test * chore: lint files * cr * chore: lint files * Update langchain/src/agents/tests/agent.int.test.ts * Added PyInterpreterTool (langchain-ai#3090) * Added PyInterpreterTool * Updated PyInterpreterTool * Moved PythonInterpreterTool to tools/experimental * Move to experimental, fix race condition in constructor * Fix lint + test * Adds docs + example --------- Co-authored-by: Mish Ushakov <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * PPTX document loader (langchain-ai#3333) * Add Powerpoint Loader Added a powerpoint loader for pptx and unit test. * Add pptx loader example * Add documentation * Resolve the problems in the comment Move "officeparser" to the peer + dev dependencies and mark it as optional. Create a separate enrtypoint and reformat the code * Run build * Reformat the code again --------- Co-authored-by: jacoblee93 <[email protected]> * ✨ Add modify and retrieve openAI assistant (langchain-ai#3387) * Return null if the input is undefined value. (langchain-ai#3412) * Implement ClickHouse Support (langchain-ai#3342) * Implement ClickHouse Support Co-Authored-By: CalebZhang <[email protected]> Co-Authored-By: Divyansh Kachchhava <[email protected]> Co-Authored-By: Alfred Tze-Hong Ha <[email protected]> * Update ClickHouse client dependency Co-Authored-By: Divyansh Kachchhava <[email protected]> Co-Authored-By: CalebZhang <[email protected]> Co-Authored-By: Alfred Tze-Hong Ha <[email protected]> * Update int test to use test.skip() * Fix SQL injection risk * Add peer deps docs * fix yarn lint issue --------- Co-authored-by: CalebZhang <[email protected]> Co-authored-by: Divyansh Kachchhava <[email protected]> Co-authored-by: Alfred Tze-Hong Ha <[email protected]> Co-authored-by: jacoblee93 <[email protected]> Co-authored-by: CalebZhang <[email protected]> * integration[patch]: feat: implement max marginal relevance search for Weaviate vector store (langchain-ai#3395) * feat: implement max marginal relevance search for Weaviate vector store * formatting * Adds docs --------- Co-authored-by: jacoblee93 <[email protected]> * integration[minor]: Llama Cpp streaming (langchain-ai#3394) * Got streaming working in LLM & Chat * Linted streaming and added docs. * Small fixes * Update llama_cpp.mdx --------- Co-authored-by: jacoblee93 <[email protected]> * Fix getBufferString method (langchain-ai#3423) * Test fix * Release 0.0.198 * Make undefined input optional (langchain-ai#3436) * fix(npm script): lint fix doesn't fix fixable errors (langchain-ai#3451) * fix(npm script): lint fix doesn't fix fixable errors * Update langchain-core lint scripts * Update langchain-openai lint scripts * Update langchain-anthropic lint scripts --------- Co-authored-by: Brace Sproul <[email protected]> * Fix null or undefined records causing error in Xata similarity search method (langchain-ai#3425) * fix: records null or undefined causing error in xata similarity search method * fix: remove unnecessary line change * fix: bad type error * Format --------- Co-authored-by: jacoblee93 <[email protected]> * new: returning generated question (langchain-ai#3433) * export InitializeAgentExecutorOptionsStructured (langchain-ai#3442) * langchain[patch]: Fix for Prisma vectorstore build query IN filter (langchain-ai#3462) * Fixing an issue, where the `IN` query filter created an incorrect value syntax by joining the values as a single value. By using the Prisma join, the syntax is corrected again. * Format --------- Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * langchain[patch]: Implements support for Personal Access Token Authentication in the ConfluenceLoader (langchain-ai#3409) * update: optional personalAccessToken parameter Add optional personalAccessToken parameter and also making username and accessToken optional Update logic to either use personalAccessToken or username + password * update: example to include personalAccessToken * add: env examples * fix: nit langchain-ai#3409 (comment) langchain-ai#3409 (comment) * Update examples/src/document_loaders/confluence.ts Co-authored-by: Brace Sproul <[email protected]> * fix: initialize as undefined * update: allow for no authorization Allow for no authorization and skip auth header to allow accessing public spaces * add: get keyword * Format * Remove unnecessary default * Format * Fix build --------- Co-authored-by: Marcus Nätteldal <[email protected]> Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: Jacob Lee <[email protected]> * langchain[minor]: Added multi-message streaming to llama_cpp (langchain-ai#3463) * Added multi message streaming to llama_cpp * Format --------- Co-authored-by: jacoblee93 <[email protected]> * langchain[patch]: Enhance filter functionality for Elasticsearch VectorStore (langchain-ai#3349) * adapted buildMetadataTerms method * backwards-compatibility * ran yarn lint * langchain[minor]: feat(LLM Integration): WatsonX AI Integration (langchain-ai#3399) * base watsonx file * base setup route * build * add project id lc secret * WatsonX AI Functional MVP * enable custom model parameters * enable custom model selection with llama 2 default * wrap fetch in `this.caller.call` * run format * add request error handling * update typedoc string * yarn format * add watsonx ai example * watsonx-ai -> watsonx_ai * Add watson x documentation * delete old files * yarn format * add error for missing project id * Add setup note about secrets to docs * format * remove redundant count * add var set on class instantiation example * format * update ibm cloud api key to follow common convention * fix type cast * update llmType casing * add iam token caching * use expiration field * Small style fixes in dos * Update watsonx_ai.ts --------- Co-authored-by: jacoblee93 <[email protected]> * langchain[minor]: feat(LLM Integration): Gradient AI Integration (langchain-ai#3461) * Create gradient_ai.ts * Update package.json * Update create-entrypoints.js * temp removal of missing import * yarn build * format * update naming and add initial call * Functional mvp * add caller wrap * format * fix call wrapper * enable a single baseModel set * add example * use accessToken and workspaceId if set * Create doc page * format and lint * format example * update types * update type string * style fixes in docs * Update gradient_ai.mdx * Update gradient_ai.mdx * Update gradient_ai.mdx * Update gradient_ai.ts * Rename to match Python --------- Co-authored-by: Jacob Lee <[email protected]> * Add GooglePlaces Tool (langchain-ai#3400) * added basic functioanlity of the google places api tool * added google api tool to the index.ts * Test cases for Google Places API and improved formatting * Finishing google places tool * Fixed bugs with google places tool files * Fixed bugs with integration tests * Added example usage file * Added documentation * Configured entry points * Rename, small updates * Use headers and body in Places API request * Update build refs * Format * Remove artifact --------- Co-authored-by: Yuto Omachi <[email protected]> Co-authored-by: Nandhakishore K.S <[email protected]> Co-authored-by: jacoblee93 <[email protected]> Co-authored-by: Brace Sproul <[email protected]> * langchain[minor]: Add document loader for ChatGPT data (langchain-ai#3439) * copy pasting and basic error fixing * fixed testing issue - fixed issue - fixed code - added blob tests - fixed test timestamps * Update chatgpt.mdx * Update chatgpt.mdx * Update chatgpt.ts * Throws errors also package.json and .gitignore update - console error logging also throws error instead of not doing that - put chatgpt.ts related files into package.json and .gitignore - ran `yarn lint` and `yarn format` many times to be sure * Format * whoops one more * Fix test --------- Co-authored-by: jacoblee93 <[email protected]> * Fix lint (langchain-ai#3466) * langchain[patch]: Add missing entrypoint (langchain-ai#3467) * Add missing entrypoint * Mark as optional * Remove double export (langchain-ai#3469) * core[patch]: Move tests into core (langchain-ai#3450) * Move tests into core * export texting utils from core * chore: lint files * Bump version * Sort entrypoints --------- Co-authored-by: jacoblee93 <[email protected]> * langchain[patch]: Move tests (langchain-ai#3470) * Move tests * Format * Release 0.0.199 * remove run reference (langchain-ai#3481) * core[patch]: move more tests & test utils to core (langchain-ai#3483) * core[patch]: move more tests & test utils to core * cr * cr * Bump core (langchain-ai#3486) * langchain[chore]: Remove duplicated code (langchain-ai#3487) * langchain[patch]: Remove duplicated code * yarn install * cr * reinstall * reinstall * Adds core tests to CI (langchain-ai#3489) * Adds missing export (langchain-ai#3490) * Catch tiktoken errors (langchain-ai#3491) * langchain[patch]: onToken event added in ChatLlamaCpp call function (langchain-ai#3443) * onToken added in lama cpp * package update * repository username * Drop _ in _options * onToken in llama_cpp llm --------- Co-authored-by: Brace Sproul <[email protected]> * Fix build (langchain-ai#3492) * core[minor]: Runnable with message history (langchain-ai#3437) * Runnable with message history * cr * cr * adds withListeners method to runnables/callbacks * added entrypoint for root listener file * cr * cr * cr * cr * cr * support async listeners * allow for run or run and config as args to listener funcs * cr * chore: lint files * cr * cr * eslint disbale any * update types * cr * cr * cr * cr * cr * cr * Style --------- Co-authored-by: jacoblee93 <[email protected]> * langchain[patch]: feat(Gradient LLM Integration): Add fine-tuned adapter inference support (langchain-ai#3471) * Add adapterId option * rename base example * add adapter example * update gradient docs to include adapter stuff * remove run call from gradient llm inference examples * langchain[minor]: feat(embedding integration): Gradient AI (langchain-ai#3475) * initial gradient embeddings implementation * format * remove modelslug * update package and entrypoint -> yarn build * map texts and change response reading * add example * add `caller.call` wrapper * add docs * remove run form example * Update gradient_ai.mdx --------- Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: Jacob Lee <[email protected]> * multi[patch]: Bump core deps (langchain-ai#3495) * Bump core * Bump core dep * Fix bug (langchain-ai#3496) * langchain[patch]: Miscellaneous test fixes (langchain-ai#3497) * Fix bug * Small fixes * Release 0.0.200 * Added extra chat message class to types for history (langchain-ai#3510) * Added extra chat message class to types for history * chore: lint files * remove run from watsonx ai example (langchain-ai#3503) * core[patch]: Export Runnable history (langchain-ai#3514) * initial docs (langchain-ai#3493) * core[fix]: RunnableFunc config types (langchain-ai#3513) * core[fix]: RunnableFunc config types * cr * chore: lint files * Bump core version (langchain-ai#3515) * Adds npx create-langchain-integration command (langchain-ai#3512) * Adds npx create-langchain-integration command * Format * all[chore]: Use turbo repo to build api refs, docs and more (langchain-ai#3511) * api_refs[chore]: use turbo repo to build api refs and other dependencies * update core docs to also use turbo * cr * use turbo in ci * cr * chore: lint files * cr * fix: query parameters are not passed correctly to WolframAlpha API (langchain-ai#3502) * fix: query parameters are not passed correctly to WolframAlpha API * Lint + format * Fix test --------- Co-authored-by: jacoblee93 <[email protected]> * Fix linter warning (langchain-ai#3528) * core[patch]: Reducing heap area consumption regardless of the number of prompts (langchain-ai#3519) * Remove unused option * Cache the Tiktoken object * Fix format * Bump core version * Upgrade to [email protected] --------- Co-authored-by: jacoblee93 <[email protected]> Co-authored-by: Tat Dat Duong <[email protected]> * cr (langchain-ai#3536) * core[tests]: Better tests for runnable history (langchain-ai#3537) * core[tests]: Better tests for runnable history * cr * docs[patch]: search experiment (langchain-ai#3538) * docs[patch]: search experiment * lockfile change * Add Gmail Tool (langchain-ai#3438) * Add GmailBaseTool * Add GmailGetMessage * Fix eslint formatting errors * fix: _call returns stringified output now * feat: create gmail draft message complete * fix: remove unused parameter * fix: removed unused import statement * fix: reformatted file and made method private * Add GmailGetThread * Fixes formatting issues * Fix _call error * Add GmailSearch * Fix build error on types * Create sent_message.ts * Update sent_message.ts run the prettier to format the document * Update sent_message.ts combine the sendMessage function into _call function * Move gmail object from children to parent GmailBaseTool * Fix formatting in gmail/base.ts * fix: switched to Buffer class for base64 encode * Make fields optional and use defaults properly in constructor Previously the default values weren't being used in the constructor, this commit fixes that. Also fields are now optional in each of the gmail tool constructors since they have defaults as backups anyways * Use Zod to parse input of GmailBaseTool constructor * Update zod schema to be entirely optional for GmailBaseToolParams * Create docs for Gmail Tool * Add comment for default parameters, fix formatting * Remove model from default parameters comment * Add relavent tools in gmail example * Add index.ts for all exports and rename send_message * Add unit tests for gmail tools * Add gmail type definitions to package.json * Update typedoc.json add gmail to typedoc.json * Update create-entrypoints.js add the entrypoints for gmail tool * add description for our function add example on our description * update .gitignore * fix the entrypoint * change order * change the zod * fix the format * Update base.ts fix lint problem * Update base.ts remove the unuse comment * add description for search * fix: gmail tools extend structured tool * Update descriptions.ts * fix: tree shaking issues with zod fixed * fix: prettier formatting * Add zod back to GmailBaseTool * Fix gmail example to work for StructuredTool * Add gmail API key setup instructions in docs * Fix formatting * Fix formatting * Replace .call with .invoke in gmail example * Update gmail.ts --------- Co-authored-by: Hamoon Zamiri <[email protected]> Co-authored-by: saeedahsan <[email protected]> Co-authored-by: SeannnX <[email protected]> Co-authored-by: Hamoon <[email protected]> Co-authored-by: Ahsan Saeed <[email protected]> Co-authored-by: Jacob Lee <[email protected]> * feat: Add ObsidianLoader to Document loaders (langchain-ai#3494) * Add ObsidianLoader integration * Fix Notion test not to consider Obsidian '.md' files * Fix lint --------- Co-authored-by: jacoblee93 <[email protected]> * all[patch]: Add .turbo to files removed by yarn clean (langchain-ai#3540) * Add Connery Tool and Toolkit (langchain-ai#3499) * Add ConneryApiClient class * Intermediate sate * Fix ConneryToolkit typo and update ConneryService method name * Init docs * Update docs * Fix imports in docs * Create entry points for the tool and toolkit * Fix the docs issue * Bump core * Release 0.0.201 * Fix OpenAI agent docs (langchain-ai#3543) * Update contributing guidelines (langchain-ai#3550) * core[infra]: Adds turbo to core (langchain-ai#3551) * docs[patch]: Agent pointer (langchain-ai#3549) * Adds pointer to OpenAI functions agent * Adds pointer to OpenAI functions agent --------- Co-authored-by: Brace Sproul <[email protected]> * Revert "all[chore]: Use turbo repo to build api refs, docs and more" (langchain-ai#3535) * Revert "all[chore]: Use turbo repo to build api refs, docs and more (langchain-ai#3511)" This reverts commit f289f3d. * cr * Upgrade xata client to 0.28.0 and apply required change (langchain-ai#3553) Co-authored-by: jacoblee93 <[email protected]> * core[docs]: Docs for with listeners runnable method (langchain-ai#3531) * core[docs]: Docs for with listeners runnable method * chore: lint files * cr * langchain[docs]: agent stream example docs (langchain-ai#3384) * agent stream example docs * cr * Fixed agent * chore: lint files * Added extra chat message class to types for history * cr * cr * cr * cr * cr * chore: yarn prettier * cr * Improve interaction with streams and Node's Readable.from() method (langchain-ai#3556) * core[patch]: Simplify RunnableSequence transform implementation (langchain-ai#3558) * Simplify RunnableSequence transform implementation * Fix test * Fix tracing tags * Bump core * Release 0.0.202 * chore: Upgrade Typescript to 5.1 (langchain-ai#3562) * upgrade typescript to 5.1 * fix some type errors --------- Co-authored-by: David Illing <[email protected]> * core[docs]: Docs & example for runnable history (langchain-ai#3527) * core[docs]: Docs & example for runnable history * cr * cr * cr * chore: yarn prettier * cr * cr * cr * chore: lint files * cr * core[chore]: widen semver range for langsmith (langchain-ai#3564) * core[chore]: widen semver range for langsmith * Update lockfile --------- Co-authored-by: jacoblee93 <[email protected]> * docs[patch]: Use an example file for docs code examples (langchain-ai#3567) * docs[patch]: Use an example file for docs code examples * cr * cr * cr * Update default PDF spliter (langchain-ai#3568) * Bump core (langchain-ai#3572) * langchain[minor]: Experimental Masking Module (langchain-ai#3548) * [Feature] Implementation of experimental masking parser/transformer * test: add perf unit test * fix: rename piitransformer to regextransformer * added example Kitchen Sink for masking parser * docs: Add documentation, nextjs example and kitchen sink example * fix: wording * docs: add basic example * fix: remove comment and return stream * feat: async hooks, immutable parser state * fix: parse -> mask * fix: || -> ?? * Fix lint, style * Fix build * Update mask.mdx --------- Co-authored-by: Dzmitry Dubarau <[email protected]> Co-authored-by: Dzmitry A Dubarau <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * Update build artifacts * Release 0.0.203 * Fix docs (langchain-ai#3584) * Fix typo in example (langchain-ai#3585) * core[docs]: Added get started page to LCEL (langchain-ai#3571) * core[docs]: Added get started page to LCEL * chore: lint files * cr * cr * community[major]: Merge community (langchain-ai#3610) * langchain[major]: LangChain community (langchain-ai#3581) * Initial langchain-community commit * Move LLMs * Add tools * Add more integrations * Lint, format build * More refactoring * Build fixes * Update lockfile * Fix docs (langchain-ai#3584) * Fix typo in example (langchain-ai#3585) * core[docs]: Added get started page to LCEL (langchain-ai#3571) * core[docs]: Added get started page to LCEL * chore: lint files * cr * cr * Format, lint * Move more modules * Move more modules, fix build * Move more testsg * Revert serialization changes * Use OpenAI package * Remove unused file * Format * Fix build * Sync core * Fix build command --------- Co-authored-by: Brace Sproul <[email protected]> * Move memory vector store back into langchain * Move memory * Move toolkits * Move more tools and toolkits * Update yarn lock * Fix lint * Move test * Brace/add missing neo4j test (langchain-ai#3597) * proper[minor]: Add back missing Neo4j int test * chore: lint files * community[minor]: Fix CI (langchain-ai#3601) * Fix CI * Format * Fixes * Fix * Another try * Fix typo * Brace/cleanup deps (langchain-ai#3600) * proper[major]: Cleaned up deps in langchain * cr * cr * cr * cr * cr * cr * cr * Add skeleton of import tests * comminity[major]: Cleaned deps (langchain-ai#3602) * Bump version * Remove unused types * Use different import maps for core vs main langchain (langchain-ai#3617) * Use different import maps for core vs main langchain * Expand serialization test to include more expected entrypoints --------- Co-authored-by: Brace Sproul <[email protected]> * Bump subpackage versions * Fix linter warnings * langchain[patch]: Build deps before testing (langchain-ai#3618) * Release 0.0.204 * all[patch]: Ensure other subpackages are built before test/build (langchain-ai#3624) * Ensure other subpackages are built before test/build * Fix test * Fix API ref build * Fix docs build * Fix build * Fix build * Build serially * Fix build * Bump core * Release 0.0.205 * Add community as workspace dep to examples (langchain-ai#3633) * api_refs[major]: Remove script, use custom typedoc plugin (langchain-ai#3630) * api_refs[major]: Remove script, use custom typedoc plugin * cr * cr * rm typedoc dep * force no cache * cr * cr * add custom build:vercel scripts * cr * cr * Add README for community + core (langchain-ai#3637) * Add Discord Tool (langchain-ai#3444) * Added the discord get messages tool. * Updated discord.js dependency * Added send messages tool * Added the discord channel search tool. * Fixed syntax issue * Added get servers & get text channels * Added documentation and examples * Rename discord.test.ts to discord.int.test.ts * Rename discord.test.ts to discord.int.test.ts * Passed yarn lint and yarn format * Made botToken first argument in tools * updated to single object instead of multiple args * fixed discord arguments to use fields * updated agent test * Made requested changes * Move to community * Remove build artifacts * Update lock --------- Co-authored-by: your_username <[email protected]> Co-authored-by: Arielle Ramgoolie <[email protected]> Co-authored-by: slairu <[email protected]> Co-authored-by: sh-hz <[email protected]> Co-authored-by: sh-hz <[email protected]> Co-authored-by: Jacob Lee <[email protected]> Co-authored-by: Brace Sproul <[email protected]> * community[patch]: removing null chars (langchain-ai#3628) * tweak: file moved * Format --------- Co-authored-by: jacoblee93 <[email protected]> * core[patch],community[patch]: Make traced DynamicTool runs use tool name (langchain-ai#3635) * Make traced DynamicTool runs use tool name * Revert test * Fix typo * feat: add inference for RunnableMap RunOutput type (langchain-ai#3517) * add RunnableMapLike to infer RunnableMap output * remove unneeded changes * fix linting * format * fix runnable_stream_log.test * upgrade typescript version * clean types * fix structured_output_runnables.int.test * ts version ~5.1.6 * remove unused eslint-disable-next-line * remove another disable no-explicit-any * remove another no-explicit-any * move eslint * Format * Default runnable maps to any type in case inference is not possible * Add tests --------- Co-authored-by: David Illing <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * Bump versions * Update lock * Fix export test * Release 0.0.206 * Bump (langchain-ai#3640) * docs[patch]: Add yarn clean script to docs & run in build (langchain-ai#3646) * docs[patch]: Add yarn clean script to docs & run in build * cr * dont use turbo to build api refs (langchain-ai#3647) * langchain[patch]: Issue langchain-ai#2756 Add Qdrant custom payload on documents to query them by filter (langchain-ai#3431) * Add optional custom payload param and 1 test * Add Custom Payload in Documents * Resolve comments in PR * Add document changes to langchain-core * Test because all yarn test cases are passing * Update tests and fix yarn lint * Remove payload from Document and add object[] * Remove object[] and replace with objects +comments * Update add document types --------- Co-authored-by: dom_ <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * pass in authoptions correctly from initialization down to connection sdk (langchain-ai#3598) Co-authored-by: jacoblee93 <[email protected]> * community[major]: Added integration with new Gemini API (langchain-ai#3621) * Added integration with new Gemini API * added to requiresOptionalDependency * reverted old models * fixed linting * chat * Cleanup * Run format * Update deps * Move to chat model, add tests * Add docs markdown skeleton * Move deprecation notices around * Docs update * Fix dependency issue * Fix docs path * moved conversion function * cleanup * Update lockfile * minor cleanup * docs indent * More updates to docs * removed enum imports * fixed enum imports/exports * Docs * import order * Fix lint --------- Co-authored-by: jacoblee93 <[email protected]> * Update @langchain/google-genai versioning (langchain-ai#3648) * Use more permissive dependency range for side packages * Update package.json * Small docs update * Adds delete method to PGVectorStore (langchain-ai#3590) * added delete method to pgvectorstore * added tests for pgvectorstore delete method * fix comments * Add example --------- Co-authored-by: jacoblee93 <[email protected]> * Update AssemblyAI SDK (langchain-ai#3599) * Use latest AAI SDK * Update to latest AAI SDK * langchain-mistralai[major]: Add MistralAI chat and embed (langchain-ai#3623) * langchain-mistralai[major]: Add MistralAI chat and embed * chore: lint files * chore: lint files * cr * docs * cr * install * fix tests * fix docs * chore: lint files * dont use turbo to build api refs * cr * cr * yarn * extend base instead of simple chat model * chore: lint files * add docs for embeddings * chore: lint files * core v to 0.1.0 * cr * chore: lint files * Fix lint --------- Co-authored-by: jacoblee93 <[email protected]> * Update test * Bump community * Release 0.0.207 * Adds integration package installation instructions (langchain-ai#3650) * Adds integration package installation instructions * Update Mistral docs * Remove old warning * Change wording (langchain-ai#3652) * docs[patch]: Added missing LangSmith trace link in mistral docs (langchain-ai#3659) * bugfixes in google Generative AI chat_model (langchain-ai#3657) * adding candidateCount + fixing stopSequences not being set in the request * Update chat_models.ts * Small Google fixes * Fix test * Format --------- Co-authored-by: Jacob Lee <[email protected]> * Bump google genai version (langchain-ai#3660) * Bump version * Update yarn lock * community[major]: Add Together AI LLM integration (langchain-ai#3627) * cr * lint * added docs & created entrypoint * chore: lint files * all[patch]: Ensure other subpackages are built before test/build (langchain-ai#3624) * Ensure other subpackages are built before test/build * Fix test * Fix API ref build * Fix docs build * Fix build * Fix build * Build serially * Fix build * Bump core * Release 0.0.205 * added docs & created entrypoint * cr * fixed stream * cr * chore: lint files * fix example * chore: lint files * streaming example * format * add langsmith --------- Co-authored-by: Jacob Lee <[email protected]> * Update README and contributing guidelines (langchain-ai#3666) * Update README and contributing guidelines * Fix links * Fix typo * Fix links * Fix link * Fix links * Update README.md Co-authored-by: Brace Sproul <[email protected]> --------- Co-authored-by: Brace Sproul <[email protected]> * Update OpenAI embeddings `stripNewLines` to be default `false` (langchain-ai#3612) * Updating the default value for `stripNewLines` to `false` in the `openai` embeddings. As removing newlines was beneficial for `V1` models (or `-001`), but should not be mandatory for `V2` models (or `-002`). This is explained in openai/openai-python#418 (comment) Therefor updating this field to be in line with the default set model `text-embedding-ada-002`. Also the langchain python library only enables this for `-001` models: https://github.com/langchain-ai/langchain/blob/c0f4b95aa9961724ab4569049b4c3bc12ebbacfc/libs/langchain/langchain/embeddings/openai.py#L466 * Reverting the default value, so it's `false` by default again. Marked with a comment to indicate this should be changed in a future minor release. Referenced the PR, as it contains the necessary information as to why this should be updated. * Resolving conflicts, adding changes again to new location. * Fix invert runId and threadId (langchain-ai#3665) Fix invert runId and threadId to match openai.beta.threads.runs.submitToolOutputs arguments * experimental[patch]: Improve AutoGPT's output_parser to extract JSON code block (langchain-ai#3656) * Improve output_parser to extract JSON code block Closes langchain-ai#3655 * Ran yarn format and lint * community[patch]: Fix RRF normalization and lucene characters for neo4j vector (langchain-ai#3653) * Fix RRF normalization and lucene characters for neo4j vector * Formatting * community[patch]: Update ElasticSearch mappings to successfully add documents from TextSplitter (langchain-ai#3629) * failing test that shows how the loc format from text splitters conflicts with elasticsearch mappings * explicitly declare .metadata.loc as an object in elasticsearch * Throw an error if inserting vectors into elasticsearch fails. * Lint + docs format * Update docs * Format --------- Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * docs[patch]: Update LangChain README (langchain-ai#3669) * Update LangChain README * Update link * Update example * mistral[minor]: Dynamically import mistral (langchain-ai#3670) * mistral[minor]: Dynamically import mistral * dynamic import for embeddings * cr * chore: lint files * Bump version (langchain-ai#3671) * Bump version (langchain-ai#3672) * community[minor]: Adds chat endpoint and multimodal support for Ollama (langchain-ai#3673) * Adds chat endpoint support for Ollama * Fix build * Export for consistency * Add multimodal support * Fix lint + format * Bump community version * Release 0.0.208 * updated docs to reflect usage of PaLM based classes (langchain-ai#3678) * mistral[minor]: Fix assigning class properties (langchain-ai#3681) * mistral[minoir]: Fix assigning class properties * cr * chore: lint files * bump v to 0.0.3 * docs[patch]: Use mixtral default model for togetherai (langchain-ai#3679) * docs[patch]: Use mixtral default model for togetherai * chore: lint files * update langsmith link * Fix 1 typo in Assistants Docs and added 2 extra suggestions (langchain-ai#3680) * Fix typo for fileIds in openai_assistant.mdx * Update openai_assistant.mdx for preventing apiKey errors * docs[patch]: Add section about req optional dep (langchain-ai#3689) * docs[patch]: Add section about req optional dep * Update CONTRIBUTING.md * core[patch]: Use an interface for runnables to allow more compatibility between core versions (langchain-ai#3684) * Use an interface for runnables to allow more compatibility between core versions * Lint + format * Remove unnecessary exports * Add transform to required methods * core[patch]: Add LLM/ChatModel callbacks to cached generation (langchain-ai#3392) * Add _generateCached callback to chat_models * Add _generateCached to llms * Fix formatting * Remove unused ignore * Pass llmStringKey as parameter * Wrap generateCached arguments into object * Add coment for defineProperty block * Fix run managers getting filtered out * Fix formatting * Naming nit * Use more type imports * Add language model callback tests --------- Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: jacoblee93 <[email protected]> * integrations[minor]: Add readmes to add integrations, improve templat… (langchain-ai#3683) * integrations[minor]: Add readmes to add integrations, improve template readme * add default readme * chore: lint files * cr * community[minor]: Jacob/vectara summarization (langchain-ai#3636) * updated documentation added X-Source to header * initial * added MMR VectaraRetriever now supports summarization as an integral part of the flow * updated example and bugfix * updated tests * updated tests * after yarn format * Renamed VectaraRetriever to VectaraSummaryRetriever Moved to langchain/retrievers/ --------- Co-authored-by: Ofer Mendelevitch <[email protected]> Co-authored-by: Ofer Mendelevitch <[email protected]> * Add missing max_tokens option to TogetherAI (langchain-ai#3687) * init improvements, add index options, multiple binds per filter (langchain-ai#3579) resolving initialization issues, adding Co-authored-by: Phil Miesle <[email protected]> * Update READMEs (langchain-ai#3693) * Bump package versions * Release 0.0.209 * Bump version * Fixed errors * Added AzureML LLM (#1) * Added azure_ml llm endpoint * Added azure_ml entrypoint * Added field check & prettified code * Fixed error string * Fixed LLM string * Added azure ml llm constants & type & example usage * Update gitignore & package.json * Added bad response check * Added comments on example * Added int test for azure ml * Added doc integration for Azure ML llm * did azureml_chat and made changes to azureml_llm * Added requested changes (#4) * Made requesed changes * Formatted --------- Co-authored-by: Vis <[email protected]> * Fixed unused imports error * Prettified test file --------- Co-authored-by: Vis <[email protected]> Co-authored-by: Vishakan <[email protected]> * docs: keywords (langchain-ai#3705) * docs: keywords * format * google-genai[patch]: Hookup callbacks to stream & generate methods (langchain-ai#3708) * google-genai[patch]: Hookup callbacks to stream & generate methods * chore: lint files * core[minor]: Move chunk array to core (langchain-ai#3711) * all[patch]: Fix typing across different core versions by using interfaces instead of abstract classes (langchain-ai#3709) * Make model reliant modules use BaseLanguageModelInterface instead of BaseLanguageModel * Fix import * Adds BaseRetrieverInterface * Adds prompt value interface * Format * Revert * Use document and embeddings interfaces * Use vectorstore interface * Adds tool and structured tool interfaces * Use type imports * Use type import * examples[patch]: Fixes type error in vectara example (langchain-ai#3719) * examples[patch]: Fixes type error in vectara example * chore: lint files * cr * Add stop to Together AI (langchain-ai#3714) Signed-off-by: Sunghyun Hwang <[email protected]> * Use new Anthropic beta endpoint in new package (langchain-ai#3720) * Use new Anthropic beta endpoint in new package * Update docs * Fix stop sequence binding * Fix lint * Update lock * Version bumps * Switch version * Release 0.0.210 * small requested changes to docs * community[tests]: Add docker-compose for easier testing of pgvector (langchain-ai#3723) * community[tests]: Add docker compose for easier testing of pgvector * cr * chore: lint files * Update Anthropic docs (langchain-ai#3728) * all[minor]: Remove duplicated chunk arr code, import from core (langchain-ai#3731) * all[minor]: Remove duplicated chunk arr code, import from core * chore: lint files * chore: lint files * fix template core version * community[major]: Together AI embeddings (langchain-ai#3729) * community[major]: TogetherAI embeddings * cr * rm docs * chore: lint files * Implementing last requested changes * Update azure_ml.int.test.ts * community[patch]: Fix bad chunk array import (langchain-ai#3733) * community[patch]: Fix bad chunk array import * chore: lint files * Fix deserialisation of additional_kwargs and tool_call_id (langchain-ai#3721) * docs[major]: Generate API refs for all packages (langchain-ai#3690) * docs[major]: Generate API refs for all packages * cr * cr * chore: lint files * remove src/ or libs/ from pathnames * proper version & name * chore: lint files * chore: lint files * cr * cr * cr * cr * filter with bang * cr * Update docs structure (langchain-ai#3736) * community[minor]: Adds optional IDs parameter to PGVectorStore add-* methods (langchain-ai#3692) * added delete method to pgvectorstore * added tests for pgvectorstore delete method * fix comments * Add example * add ids param to pgvector add methods * update doc comments * add test for id insertion * fix doc comments * Change options arg for consistency with base class * Change port to integration test default --------- Co-authored-by: jacoblee93 <[email protected]> Co-authored-by: bracesproul <[email protected]> * all[major]: Better release workflow (langchain-ai#3717) * all[minor]: Better release workflow * cr * added release-it & config files to all pkgs, and template * tmp: rename mistralai to brace from langchain * tmp: rename mistralai to brace from langchain * add missing test infra to libs * cr * cr * cr * cr * cr * chore: lint files * cr * revert mistral workspace name change * chore: lint files * update pkg json script * tmp change names * cr * cr * cr * cr * cr * cr * try/catch around yarn install * cr * cr * cr * cr * cr * cr * cr * update scripts * tmp make mistral basproul npm * account for npm 2fa * cr * cr * cr * cr * support for npm tags * cr * revert basproul changes * chore: lint files * cr * drop release it script * verify version with semver * drop empty tests * fix dep * docs * Update CONTRIBUTING.md --------- Co-authored-by: Jacob Lee <[email protected]> * tried to undo something * I messed up and am trying to fix it * ran eslint on azure_ml files * Prettified lint fixes * Added back combineLLMOutput --------- Signed-off-by: Sunghyun Hwang <[email protected]> Co-authored-by: jacoblee93 <[email protected]> Co-authored-by: Brace Sproul <[email protected]> Co-authored-by: David Duong <[email protected]> Co-authored-by: Adeel Ehsan <[email protected]> Co-authored-by: Adeel Ehsan <[email protected]> Co-authored-by: Ofer Mendelevitch <[email protected]> Co-authored-by: Sumit Kumar Purohit <[email protected]> Co-authored-by: Antoine Garcia <[email protected]> Co-authored-by: Paolo Castro <[email protected]> Co-authored-by: Gram Liu <[email protected]> Co-authored-by: Luiz Felipe <[email protected]> Co-authored-by: Nicolas Juelle <[email protected]> Co-authored-by: Michael Landis <[email protected]> Co-authored-by: David Zhuang <[email protected]> Co-authored-by: Nuno Campos <[email protected]> Co-authored-by: Devin Burnette <[email protected]> Co-authored-by: Alex Naymushin <[email protected]> Co-authored-by: Alex Naymushin <[email protected]> Co-authored-by: Tomaz Bratanic <[email protected]> Co-authored-by: Oskar Hane <[email protected]> Co-authored-by: Mish Ushakov <[email protected]> Co-authored-by: Mish Ushakov <[email protected]> Co-authored-by: Dezhi Ren <[email protected]> Co-authored-by: Kah Wai Liew <[email protected]> Co-authored-by: Zhitao Xu <[email protected]> Co-authored-by: CalebZhang <[email protected]> Co-authored-by: Divyansh Kachchhava <[email protected]> Co-authored-by: Alfred Tze-Hong Ha <[email protected]> Co-authored-by: CalebZhang <[email protected]> Co-authored-by: Alexander Claus <[email protected]> Co-authored-by: Nigel Daniels <[email protected]> Co-authored-by: Chase McDougall <[email protected]> Co-authored-by: Akshay Maurya <[email protected]> Co-authored-by: phof <[email protected]> Co-authored-by: jon <[email protected]> Co-authored-by: Jordy Hoolwerf <[email protected]> Co-authored-by: Marcus Nätteldal <[email protected]> Co-authored-by: Marcus Nätteldal <[email protected]> Co-authored-by: Laurens Tsestigh <[email protected]> Co-authored-by: Sanan Rao <[email protected]> Co-authored-by: Yuto Omachi <[email protected]> Co-authored-by: Nandhakishore K.S <[email protected]> Co-authored-by: Zeneos <[email protected]> Co-authored-by: Shareef P <[email protected]> Co-authored-by: Abderrahim Mellouki <[email protected]> Co-authored-by: Tsukasa OISHI <[email protected]> Co-authored-by: Erick Friis <[email protected]> Co-authored-by: Uthman Mohamed <[email protected]> Co-authored-by: Hamoon Zamiri <[email protected]> Co-authored-by: saeedahsan <[email protected]> Co-authored-by: SeannnX <[email protected]> Co-authored-by: Hamoon <[email protected]> Co-authored-by: Ahsan Saeed <[email protected]> Co-authored-by: Eze <[email protected]> Co-authored-by: Volodymyr Machula <[email protected]> Co-authored-by: Tudor Golubenco <[email protected]> Co-authored-by: David Illing <[email protected]> Co-authored-by: David Illing <[email protected]> Co-authored-by: Maciej Holyszko <[email protected]> Co-authored-by: Nolansym <[email protected]> Co-authored-by: Dzmitry Dubarau <[email protected]> Co-authored-by: Dzmitry A Dubarau <[email protected]> Co-authored-by: Maaneth De Silva <[email protected]> Co-authored-by: your_username <[email protected]> Co-authored-by: Arielle Ramgoolie <[email protected]> Co-authored-by: slairu <[email protected]> Co-authored-by: sh-hz <[email protected]> Co-authored-by: sh-hz <[email protected]> Co-authored-by: youngjaeheo2002 <[email protected]> Co-authored-by: dom_ <[email protected]> Co-authored-by: GG <[email protected]> Co-authored-by: Alex Ostapenko <[email protected]> Co-authored-by: MJDeligan <[email protected]> Co-authored-by: Niels Swimberghe <[email protected]> Co-authored-by: Haouari haitam Kouider <[email protected]> Co-authored-by: Shady Al Shoha <[email protected]> Co-authored-by: Maytee Chinavanichkit <[email protected]> Co-authored-by: Matt Raibert <[email protected]> Co-authored-by: Juanjo do Olmo <[email protected]> Co-authored-by: Ofer Mendelevitch <[email protected]> Co-authored-by: Allan Zimmermann <[email protected]> Co-authored-by: Phil Miesle <[email protected]> Co-authored-by: Phil Miesle <[email protected]> Co-authored-by: Vis <[email protected]> Co-authored-by: Vishakan <[email protected]> Co-authored-by: Sanjay Mylanathan <[email protected]> Co-authored-by: Sunghyun Hwang <[email protected]> Co-authored-by: Ultrahi <[email protected]>
Description: Addition of the Experimental Masking Module
Overview:
Dependencies: none
Tag maintainer: @jacoblee93
Co-Authors: @ddzmitry @HarishRN @dgaleally
This pull request introduces the MaskingParser and the RegexMaskingTransformer an extendable module for masking and rehydrating strings. One of the primary use cases for this module is to redact PII (Personal Identifiable Information) from a string before making a call to an llm.
Key Features:
MaskingParser
RegexMaskingTransformer
Changes:
Langhchainjs core
Introduction of the experimental/masking module
MaskingParser class,
Abstract MaskingTransformer
RegexMaskingTransformer class extending the abstract MaskingTransformer
Documentation
Experimental Module Docs
Masking Docs
Nextjs masking example
Kitchen Sink masking example
Impact:
Inverted controls for consumers to mask and rehydrate strings
Groundwork for more comprehensive masking integrations in the future (eg. AWS comprehend)