Skip to content
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

llms: add watsonx #577

Merged
merged 23 commits into from
May 10, 2024
Merged

llms: add watsonx #577

merged 23 commits into from
May 10, 2024

Conversation

h0rv
Copy link
Contributor

@h0rv h0rv commented Jan 28, 2024

This is using https://github.com/h0rv/go-watsonx to keep the Langchain and API client development seperate (was going to add the logic in llms/watsonx/internal/watsonxclient).

Resolves: #567

PR Checklist

  • Read the Contributing documentation.
  • Read the Code of conduct documentation.
  • Name your Pull Request title clearly, concisely, and prefixed with the name of the primarily affected package you changed according to Good commit messages (such as memory: add interfaces for X, Y or util: add whizzbang helpers).
  • Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
  • Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. Fixes #123).
  • Describes the source of new concepts.
  • References existing implementations as appropriate.
  • Contains test coverage for new functions.
  • Passes all golangci-lint checks.

@h0rv h0rv marked this pull request as draft January 28, 2024 19:41
@h0rv
Copy link
Contributor Author

h0rv commented Jan 28, 2024

I have a concern: the watsonx docs are not great yet and do not have the default generation parameter values documented. However, if you don't include them in the payload, they will be defaulted. So, in the options struct for the generation parameters, I had to use pointers (ex *float64 for temperature), with omitempty, to omit it from the payload if it is not specified.

What I need to do now is convert llms.CallOptions to []wx.GenerationOption, but it is difficult because I can check which options are not their default zero values, but for something like Temperature, its range is 0-1 inclusive, so I won't be able to distinguish if the user set it to 0, or if the user did not specify, and it defaulted to 0.

Any thoughts on how to approach this? Thanks!

@h0rv
Copy link
Contributor Author

h0rv commented Jan 28, 2024

I can set the Temperature and similar options to -1, since they are not uint's.

@h0rv h0rv marked this pull request as ready for review January 28, 2024 21:40
@tmc
Copy link
Owner

tmc commented Feb 4, 2024

can you resolve the conflicts here please?

@h0rv
Copy link
Contributor Author

h0rv commented Feb 4, 2024

How do I fix the CI that is failing? @tmc

@h0rv
Copy link
Contributor Author

h0rv commented Feb 22, 2024

Hi @tmc, I think this is a chicken and the egg problem b/c its pulling the package in each example directory. Should I add it in a separate PR or is there a way to fix? Thanks

go: github.com/tmc/langchaingo/examples/watsonx-llm-example imports
	github.com/tmc/langchaingo/llms/watsonx: module github.com/tmc/langchaingo@latest found (v0.1.4), but does not contain package github.com/tmc/langchaingo/llms/watsonx
go: updates to go.mod needed; to update it:
	go mod tidy
make: *** [Makefile:53: build-examples] Error 1

@tmc
Copy link
Owner

tmc commented Mar 18, 2024

A few more conflicts came up -- regarding the example -- in the short term you could include a go.work file in the examples directory and once merged I can clean up the go.work file.

I'd liek to get 0.1.6 tagged today and would love to include this!

@tmc
Copy link
Owner

tmc commented Mar 18, 2024

I rebased this to main and pushed to your branch. Futher, I pushed this to the main repository as the add-watsonx branch which you could reference in your example. I don't belive these lint/build failures are a rebase snafu but please examine.

@devalexandre
Copy link
Contributor

@h0rv Do you need help?

@h0rv
Copy link
Contributor Author

h0rv commented Apr 3, 2024

Hi @tmc, I had to bump the version of the watsonx package. Can you push the latest on this branch to the add-watsonx branch on this repo? Then I can update the go.mod in the example, which should fix the CI!

@h0rv
Copy link
Contributor Author

h0rv commented Apr 5, 2024

@devalexandre Do you know how to help fix the CI issue?

@devalexandre
Copy link
Contributor

devalexandre commented Apr 7, 2024

@devalexandre Do you know how to help fix the CI issue?

I yes , can I do PR for you branch?

@tmc
Copy link
Owner

tmc commented Apr 7, 2024

This is pushed as add-watsonx and I have pointed the example's go.mod at that branch.

@h0rv
Copy link
Contributor Author

h0rv commented Apr 7, 2024

Great that fixed it - thanks for the help!

@h0rv
Copy link
Contributor Author

h0rv commented Apr 8, 2024

@tmc @devalexandre Ready for a review now, thanks!

@tmc tmc merged commit c0a4ea6 into tmc:main May 10, 2024
3 checks passed
@tmc
Copy link
Owner

tmc commented May 10, 2024

Thanks!

renovate bot added a commit to TBD54566975/ftl that referenced this pull request Jun 17, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change | Age | Adoption | Passing |
Confidence |
|---|---|---|---|---|---|---|---|
| [buf](https://github.com/bufbuild/buf) | | minor | `1.32.2` ->
`1.33.0` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/buf/1.33.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/buf/1.33.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/buf/1.32.2/1.33.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/buf/1.32.2/1.33.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[github.com/TBD54566975/golang-tools](https://github.com/TBD54566975/golang-tools)
| require | minor | `v0.1.8` -> `v0.2.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2fTBD54566975%2fgolang-tools/v0.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2fTBD54566975%2fgolang-tools/v0.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2fTBD54566975%2fgolang-tools/v0.1.8/v0.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2fTBD54566975%2fgolang-tools/v0.1.8/v0.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[github.com/aws/aws-sdk-go-v2/service/secretsmanager](https://github.com/aws/aws-sdk-go-v2)
| require | minor | `v1.29.3` -> `v1.30.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fsecretsmanager/v1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fsecretsmanager/v1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fsecretsmanager/v1.29.3/v1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2faws%2faws-sdk-go-v2%2fservice%2fsecretsmanager/v1.29.3/v1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [github.com/reugn/go-quartz](https://github.com/reugn/go-quartz) |
require | minor | `v0.11.2` -> `v0.12.0` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2freugn%2fgo-quartz/v0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2freugn%2fgo-quartz/v0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2freugn%2fgo-quartz/v0.11.2/v0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2freugn%2fgo-quartz/v0.11.2/v0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [github.com/tmc/langchaingo](https://github.com/tmc/langchaingo) |
require | patch | `v0.1.10` -> `v0.1.11` |
[![age](https://developer.mend.io/api/mc/badges/age/go/github.com%2ftmc%2flangchaingo/v0.1.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/go/github.com%2ftmc%2flangchaingo/v0.1.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/go/github.com%2ftmc%2flangchaingo/v0.1.10/v0.1.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/go/github.com%2ftmc%2flangchaingo/v0.1.10/v0.1.11?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [helm](https://github.com/helm/helm) | | patch | `3.15.1` ->
`3.15.2` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/helm/3.15.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/helm/3.15.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/helm/3.15.1/3.15.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/helm/3.15.1/3.15.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [just](https://github.com/casey/just) | | minor | `1.28.0` ->
`1.29.1` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/just/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/just/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/just/1.28.0/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/just/1.28.0/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [kubectl](https://github.com/kubernetes/kubectl) | | patch |
`1.29.5` -> `1.29.6` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/kubectl/1.29.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/kubectl/1.29.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/kubectl/1.29.5/1.29.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/kubectl/1.29.5/1.29.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lefthook](https://github.com/evilmartians/lefthook) | | patch |
`1.6.14` -> `1.6.16` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/lefthook/1.6.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/lefthook/1.6.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/lefthook/1.6.14/1.6.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/lefthook/1.6.14/1.6.16?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [lint-staged](https://github.com/okonet/lint-staged) |
devDependencies | patch | [`15.2.6` ->
`15.2.7`](https://renovatebot.com/diffs/npm/lint-staged/15.2.6/15.2.7) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/lint-staged/15.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lint-staged/15.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lint-staged/15.2.6/15.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lint-staged/15.2.6/15.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [protoc-gen-go](https://github.com/protocolbuffers/protobuf-go) | |
patch | `1.34.1` -> `1.34.2` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/protoc-gen-go/1.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/protoc-gen-go/1.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/protoc-gen-go/1.34.1/1.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/protoc-gen-go/1.34.1/1.34.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [type-fest](https://github.com/sindresorhus/type-fest) |
dependencies | patch | [`4.20.0` ->
`4.20.1`](https://renovatebot.com/diffs/npm/type-fest/4.20.0/4.20.1) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/type-fest/4.20.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/type-fest/4.20.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/type-fest/4.20.0/4.20.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/type-fest/4.20.0/4.20.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [yq](https://github.com/mikefarah/yq) | | patch | `4.44.1` ->
`4.44.2` |
[![age](https://developer.mend.io/api/mc/badges/age/hermit/yq/4.44.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/hermit/yq/4.44.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/hermit/yq/4.44.1/4.44.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/hermit/yq/4.44.1/4.44.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[org.apache.maven.plugins:maven-dependency-plugin](https://maven.apache.org/plugins/)
| build | minor | `3.6.1` -> `3.7.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/org.apache.maven.plugins:maven-dependency-plugin/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.apache.maven.plugins:maven-dependency-plugin/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.apache.maven.plugins:maven-dependency-plugin/3.6.1/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.apache.maven.plugins:maven-dependency-plugin/3.6.1/3.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[org.apache.maven.plugins:maven-surefire-plugin](https://maven.apache.org/surefire/)
| build | minor | `3.2.5` -> `3.3.0` |
[![age](https://developer.mend.io/api/mc/badges/age/maven/org.apache.maven.plugins:maven-surefire-plugin/3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.apache.maven.plugins:maven-surefire-plugin/3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.apache.maven.plugins:maven-surefire-plugin/3.2.5/3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.apache.maven.plugins:maven-surefire-plugin/3.2.5/3.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>bufbuild/buf (buf)</summary>

###
[`v1.33.0`](https://github.com/bufbuild/buf/blob/HEAD/CHANGELOG.md#v1330---2024-06-13)

- Allow user to override `--source-control-url` and
`--create-default-label` when using
    `--git-metadata` with `buf push`.
- Fix `buf push --git-metadata` when local tags point to different
objects than
    the remote tags.
- Fix issue where comment ignores were not respected for `PROTOVALIDATE`
lint rule violations.
- Add `buf beta registry label {create,get,list}` to replace `buf beta
registry {draft, tag}`
    commands.
- Update `buf beta commit {get,list}` command outputs to display create
time and stop
    displaying associated tags.
- Change the behavior of `buf beta commit list
<buf.build/owner/repository>` when the
reference is empty. It now lists commits in the repository instead of
listing commits
    of the default label.
- Update output of `buf format` to canonicalize the punctuation used in
message literals
in option values. The output now always uses `{` and `}` instead of `<`
and `>`; it
adds `:` separators between field names and message values if the source
omitted them,
and it removes unnecessary separators between fields (`,` and `;` are
allowed, but
    neither is needed).
- Update `buf format -w` so that it does not touch files whose contents
don't actually
change. This eliminates noisy notifications to file-system-watcher tools
that are
    watching the directory that contains proto sources.
- Update `buf generate` to work with plugins provided by protoc for
versions v24.0
to v25.3. Editions support was experimental in these releases, and the
plugins
advertise incomplete support for editions, which triggers `buf` to
report an error.
With this fix, these plugins can be used again as long as none of the
input files use
    editions syntax.
- Add `buf push --exclude-unnamed` flag to exclude unnamed modules when
pushing to the BSR.

</details>

<details>
<summary>TBD54566975/golang-tools
(github.com/TBD54566975/golang-tools)</summary>

###
[`v0.2.0`](https://github.com/TBD54566975/golang-tools/compare/v0.1.9...v0.2.0)

[Compare
Source](https://github.com/TBD54566975/golang-tools/compare/v0.1.9...v0.2.0)

###
[`v0.1.9`](https://github.com/TBD54566975/golang-tools/compare/v0.1.8...v0.1.9)

[Compare
Source](https://github.com/TBD54566975/golang-tools/compare/v0.1.8...v0.1.9)

</details>

<details>
<summary>reugn/go-quartz (github.com/reugn/go-quartz)</summary>

###
[`v0.12.0`](https://github.com/reugn/go-quartz/releases/tag/v0.12.0)

[Compare
Source](https://github.com/reugn/go-quartz/compare/v0.11.2...v0.12.0)

#### Features

- feat(scheduler)!: handle errors in the GetJobKeys method by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#126
- feat(scheduler): add a channel to handle misfired jobs by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#129
- feat(scheduler): export the reset method by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#131
- feat(scheduler)!: support custom mutex for job queue operations by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#133
- feat(queue): handle errors in ScheduledJobs and Size methods by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#125
- feat(queue): export the job queue constructor by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#134

#### Fixes

- fix(scheduler): recover from unhandled job panics by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#130

#### Improvements

- refactor: remove excessive queue empty check by
[@&#8203;reugn](https://github.com/reugn) in
[reugn/go-quartz#124

**Full Changelog**:
reugn/go-quartz@v0.11.2...v0.12.0

</details>

<details>
<summary>tmc/langchaingo (github.com/tmc/langchaingo)</summary>

###
[`v0.1.11`](https://github.com/tmc/langchaingo/releases/tag/v0.1.11)

[Compare
Source](https://github.com/tmc/langchaingo/compare/v0.1.10...v0.1.11)

#### What's Changed

- llms: add watsonx by [@&#8203;h0rv](https://github.com/h0rv) in
[tmc/langchaingo#577
- pgvector restore WithConnectionURL option by
[@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#832
- examples: Update to v0.1.10 by [@&#8203;tmc](https://github.com/tmc)
in
[tmc/langchaingo#833
- agents: `GetTools` added to `Agent` interface by
[@&#8203;AugustDev](https://github.com/AugustDev) in
[tmc/langchaingo#831
- examples: add redis vectorstore example by
[@&#8203;CrazyWr](https://github.com/CrazyWr) in
[tmc/langchaingo#834
- llms/googleai: batch embedding calls by
[@&#8203;johanbrandhorst](https://github.com/johanbrandhorst) in
[tmc/langchaingo#825
- fix: better handling of errors in openai-like streaming messages by
[@&#8203;douglarek](https://github.com/douglarek) in
[tmc/langchaingo#839
- llms/googleai: upgrade genai SDKs and fix build issue vs. new version
by [@&#8203;eliben](https://github.com/eliben) in
[tmc/langchaingo#854
- fix: handle nil pointer exception in chat_prompt_template by
[@&#8203;ankitraj2330](https://github.com/ankitraj2330) in
[tmc/langchaingo#879
- httputil: debug transport layer by
[@&#8203;AugustDev](https://github.com/AugustDev) in
[tmc/langchaingo#845
- llms: Add improved yaml and json marshaling by
[@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#880
- tools: Improve tool choice population and parsing by
[@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#883
- memory: move mongo chat history into the separate module by
[@&#8203;CrazyWr](https://github.com/CrazyWr) in
[tmc/langchaingo#843
- llms: Tidy up marshaling by [@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#884
- anthropic: Add tool/function calling support by
[@&#8203;lwlee2608](https://github.com/lwlee2608) in
[tmc/langchaingo#882
- milvus_vectorstore: store metadata with JSON data type & support
search with filter by [@&#8203;CrazyWr](https://github.com/CrazyWr) in
[tmc/langchaingo#844
- readme: add scheme to vectorstores/chroma URL by
[@&#8203;codefromthecrypt](https://github.com/codefromthecrypt) in
[tmc/langchaingo#846
- llms: Fix ErrIncompleteEmbeddings Message Typos by
[@&#8203;wgeorgecook](https://github.com/wgeorgecook) in
[tmc/langchaingo#872
- googleai: add support for array type in convertToolSchemaType by
[@&#8203;johnknott](https://github.com/johnknott) in
[tmc/langchaingo#865
- marita: update Authorization by
[@&#8203;devalexandre](https://github.com/devalexandre) in
[tmc/langchaingo#864
- Fix typos map key value of the modelToContextSize by
[@&#8203;zhanluxianshen](https://github.com/zhanluxianshen) in
[tmc/langchaingo#874
- memory: Add Zep Cloud integration by
[@&#8203;paul-paliychuk](https://github.com/paul-paliychuk) in
[tmc/langchaingo#746
- openai: add the field `detail` in ImageURLContent struct by
[@&#8203;douglarek](https://github.com/douglarek) in
[tmc/langchaingo#853
- weaviate: Fix up weaviate tests by
[@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#885
- deps: clean up direct dep on zerolog by
[@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#886
- googleai: Fix: Resolve Type Error in googleai convertTools by
[@&#8203;wangjiancn](https://github.com/wangjiancn) in
[tmc/langchaingo#888
- openai: enable optional return of usage data while streaming by
[@&#8203;wangjiancn](https://github.com/wangjiancn) in
[tmc/langchaingo#887
- llms/googleai: Support more `option.ClientOption` and update google ai
sdk by [@&#8203;wangjiancn](https://github.com/wangjiancn) in
[tmc/langchaingo#841
- googleai: Remove unused err, fix typo by
[@&#8203;tmc](https://github.com/tmc) in
[tmc/langchaingo#891
- examples: Correct API key usage for Groq integration by
[@&#8203;Ashad001](https://github.com/Ashad001) in
[tmc/langchaingo#893
- ollama: Fix JSON format bug issue when not streaming by
[@&#8203;doslindos](https://github.com/doslindos) in
[tmc/langchaingo#892

#### New Contributors

- [@&#8203;h0rv](https://github.com/h0rv) made their first
contribution in
[tmc/langchaingo#577
- [@&#8203;johanbrandhorst](https://github.com/johanbrandhorst) made
their first contribution in
[tmc/langchaingo#825
- [@&#8203;ankitraj2330](https://github.com/ankitraj2330) made their
first contribution in
[tmc/langchaingo#879
- [@&#8203;lwlee2608](https://github.com/lwlee2608) made their first
contribution in
[tmc/langchaingo#882
- [@&#8203;codefromthecrypt](https://github.com/codefromthecrypt) made
their first contribution in
[tmc/langchaingo#846
- [@&#8203;wgeorgecook](https://github.com/wgeorgecook) made their
first contribution in
[tmc/langchaingo#872
- [@&#8203;johnknott](https://github.com/johnknott) made their first
contribution in
[tmc/langchaingo#865
- [@&#8203;zhanluxianshen](https://github.com/zhanluxianshen) made
their first contribution in
[tmc/langchaingo#874
- [@&#8203;paul-paliychuk](https://github.com/paul-paliychuk) made
their first contribution in
[tmc/langchaingo#746
- [@&#8203;wangjiancn](https://github.com/wangjiancn) made their first
contribution in
[tmc/langchaingo#888
- [@&#8203;Ashad001](https://github.com/Ashad001) made their first
contribution in
[tmc/langchaingo#893
- [@&#8203;doslindos](https://github.com/doslindos) made their first
contribution in
[tmc/langchaingo#892

**Full Changelog**:
tmc/langchaingo@v0.1.10...v0.1.11-pre.0

</details>

<details>
<summary>helm/helm (helm)</summary>

### [`v3.15.2`](https://github.com/helm/helm/releases/tag/v3.15.2):
Helm v3.15.2

Helm v3.15.2 is a security (patch) release. Users are strongly
recommended to update to this release.

The community keeps growing, and we'd love to see you there!

- Join the discussion in [Kubernetes
Slack](https://kubernetes.slack.com):
    -   for questions and just to hang out
    -   for discussing PRs, code, and bugs
- Hang out at the Public Developer Call: Thursday, 9:30 Pacific via
[Zoom](https://zoom.us/j/696660622)
- Test, debug, and contribute charts:
[ArtifactHub/packages](https://artifacthub.io/packages/search?kind=0)

#### Installation and Upgrading

Download Helm v3.15.2. The common platform binaries are here:

- [MacOS amd64](https://get.helm.sh/helm-v3.15.2-darwin-amd64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-darwin-amd64.tar.gz.sha256sum)
/ e99a9266a5328cb575d81ef10247911f42d9e90c76ef6eef154c5c535565658b)
- [MacOS arm64](https://get.helm.sh/helm-v3.15.2-darwin-arm64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-darwin-arm64.tar.gz.sha256sum)
/ 30143dabc1da9d32c7d6c589fad04b1f1ecc73841393d5823fa21c5d7f5bf8f6)
- [Linux amd64](https://get.helm.sh/helm-v3.15.2-linux-amd64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-amd64.tar.gz.sha256sum)
/ 2694b91c3e501cff57caf650e639604a274645f61af2ea4d601677b746b44fe2)
- [Linux arm](https://get.helm.sh/helm-v3.15.2-linux-arm.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-arm.tar.gz.sha256sum)
/ 2b28fda1d8c6f087011bc7ec820051a13409dadce8385529f306476632e24e85)
- [Linux arm64](https://get.helm.sh/helm-v3.15.2-linux-arm64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-arm64.tar.gz.sha256sum)
/ adcf07b08484b52508e5cbc8b5f4b0b0db50342f7bc487ecd88b8948b680e6a7)
- [Linux i386](https://get.helm.sh/helm-v3.15.2-linux-386.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-386.tar.gz.sha256sum)
/ 8e0bb5a08c7c227a8e285026b6283726ddc0e1f406e2af4d4d600fa1dd85c21e)
- [Linux ppc64le](https://get.helm.sh/helm-v3.15.2-linux-ppc64le.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-ppc64le.tar.gz.sha256sum)
/ 9d95528fb797f6429f7f9b6dee0cf87bf8c71f6470e1db4a51e844c169c285a3)
- [Linux s390x](https://get.helm.sh/helm-v3.15.2-linux-s390x.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-s390x.tar.gz.sha256sum)
/ 5b42bc3d08fd0ffaf4f9ed810f28464f52ec4ea431b809c7179071d76f3d6f16)
- [Linux riscv64](https://get.helm.sh/helm-v3.15.2-linux-riscv64.tar.gz)
([checksum](https://get.helm.sh/helm-v3.15.2-linux-riscv64.tar.gz.sha256sum)
/ 2998bae9971a55f862c21bff337c325cb6a44f28ef76e11bffc93d16989e11e6)
- [Windows amd64](https://get.helm.sh/helm-v3.15.2-windows-amd64.zip)
([checksum](https://get.helm.sh/helm-v3.15.2-windows-amd64.zip.sha256sum)
/ cbf40b79fa2a7dbd6e24201f8660b56261d10d6e7b5cadc3ff78100fb45b3c69)

This release was signed with ` 672C 657B E06B 4B30 969C 4A57 4614 49C2
5E36 B98E ` and can be found at
[@&#8203;mattfarina](https://github.com/mattfarina) [keybase
account](https://keybase.io/mattfarina). Please use the attached
signatures for verifying this release using `gpg`.

The [Quickstart Guide](https://helm.sh/docs/intro/quickstart/) will get
you going from there. For **upgrade instructions** or detailed
installation notes, check the [install
guide](https://helm.sh/docs/intro/install/). You can also use a [script
to
install](https://github.com/helm/helm/main/scripts/get-helm-3)
on any system with `bash`.

#### What's Next

-   3.15.3 will contain only bug fixes and be released on July 10, 2024.
- 3.16.0 is the next feature release and will be on September 11, 2024.

#### Changelog

- fix: wrong cli description
[`1a500d5`](https://github.com/helm/helm/commit/1a500d5625419a524fdae4b33de351cc4f58ec35)
(yyzxw)
- fix typo in load_plugins.go
[`70b225c`](https://github.com/helm/helm/commit/70b225c9abc014cfeb73f7c9f506b0e73e912b61)
(yxxhero)
- fix docs of DeployedAll
[`b3640f1`](https://github.com/helm/helm/commit/b3640f196a2cf77136ab01295bffe76fa184991d)
(Daniel Strobusch)
- Bump github.com/docker/docker
[`46e2ba0`](https://github.com/helm/helm/commit/46e2ba0341d43e19493b2f90c86126da8ad8a64e)
(dependabot\[bot])
- bump oras minor version
[`fb311d3`](https://github.com/helm/helm/commit/fb311d331f66f7f9153b5d0c7aa07a77bc9528ca)
(Austin Abro)
- feat(load.go): add warning on requirements.lock
[`23552a7`](https://github.com/helm/helm/commit/23552a7de6f45aacec47bc2bfe70de02b9d7ab70)
(Aaron U'Ren)

</details>

<details>
<summary>casey/just (just)</summary>

###
[`v1.29.1`](https://github.com/casey/just/blob/HEAD/CHANGELOG.md#1291---2024-06-14)

[Compare
Source](https://github.com/casey/just/compare/1.28.0...1.29.1)

##### Fixed

- Fix unexport syntax conflicts
([#&#8203;2158](https://github.com/casey/just/pull/2158) by
[casey](https://github.com/casey))

</details>

<details>
<summary>evilmartians/lefthook (lefthook)</summary>

###
[`v1.6.16`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#1616-2024-06-13)

[Compare
Source](https://github.com/evilmartians/lefthook/compare/v1.6.15...v1.6.16)

- fix: skip overwriting hooks when fetching data from remotes
([#&#8203;745](https://github.com/evilmartians/lefthook/pull/745)) by
[@&#8203;mrexox](https://github.com/mrexox)
- fix: fetch remotes only for non ghost hooks
([#&#8203;744](https://github.com/evilmartians/lefthook/pull/744)) by
[@&#8203;mrexox](https://github.com/mrexox)

###
[`v1.6.15`](https://github.com/evilmartians/lefthook/blob/HEAD/CHANGELOG.md#1615-2024-06-03)

[Compare
Source](https://github.com/evilmartians/lefthook/compare/v1.6.14...v1.6.15)

- feat: add refetch option to remotes config
([#&#8203;739](https://github.com/evilmartians/lefthook/pull/739)) by
[@&#8203;mrexox](https://github.com/mrexox)
- deps: June, 3, lipgloss (0.11.0) and viper (1.19.0)
([#&#8203;742](https://github.com/evilmartians/lefthook/pull/742)) by
[@&#8203;mrexox](https://github.com/mrexox)
- chore: enable copyloopvar, intrange, and prealloc
([#&#8203;740](https://github.com/evilmartians/lefthook/pull/740)) by
[@&#8203;scop](https://github.com/scop)
- perf: delay git and uname commands in hook scripts until needed
([#&#8203;737](https://github.com/evilmartians/lefthook/pull/737)) by
[@&#8203;scop](https://github.com/scop)
- chore: refactor commands interfaces
([#&#8203;735](https://github.com/evilmartians/lefthook/pull/735)) by
[@&#8203;mrexox](https://github.com/mrexox)
- chore: upgrade to 1.59.0
([#&#8203;738](https://github.com/evilmartians/lefthook/pull/738)) by
[@&#8203;scop](https://github.com/scop)

</details>

<details>
<summary>okonet/lint-staged (lint-staged)</summary>

###
[`v15.2.7`](https://github.com/okonet/lint-staged/blob/HEAD/CHANGELOG.md#1527)

[Compare
Source](https://github.com/okonet/lint-staged/compare/v15.2.6...v15.2.7)

##### Patch Changes

- [#&#8203;1440](https://github.com/lint-staged/lint-staged/pull/1440)
[`a51be80`](https://github.com/lint-staged/lint-staged/commit/a51be804b63307ac7af3c82f4cb2d43dbe92daac)
Thanks [@&#8203;iiroj](https://github.com/iiroj)! - In the previous
version the native `git rev-parse --show-toplevel` command was taken
into use for resolving the current git repo root. This version drops the
`--path-format=absolute` option to support earlier git versions since
it's also the default behavior. If you are still having trouble, please
try upgrading `git` to the latest version.

</details>

<details>
<summary>protocolbuffers/protobuf-go (protoc-gen-go)</summary>

###
[`v1.34.2`](https://github.com/protocolbuffers/protobuf-go/releases/tag/v1.34.2)

Minor feature:

- [CL/589336](https://go.dev/cl/589336): gofeatures: allow setting
legacy_unmarshal_json_enum feature at file level

Minor bug fixes:

- [CL/588875](https://go.dev/cl/588875): types/descriptorpb: regenerate
using latest protobuf v27.0 release
- [CL/586396](https://go.dev/cl/586396): internal/impl: fix size cache
semantics with lazy decoding
- [CL/585736](https://go.dev/cl/585736): reflect/protodesc: remove
obsolete JSON name check from desc validator
- [CL/588976](https://go.dev/cl/588976): reflect/protoreflect:
FieldDescriptor.Kind should never be GroupKind for maps or fields of map
entry

</details>

<details>
<summary>sindresorhus/type-fest (type-fest)</summary>

###
[`v4.20.1`](https://github.com/sindresorhus/type-fest/releases/tag/v4.20.1)

[Compare
Source](https://github.com/sindresorhus/type-fest/compare/v4.20.0...v4.20.1)

- `Schema`: Fix handling of arrays
([#&#8203;887](https://github.com/sindresorhus/type-fest/issues/887))
[`c570ec2`](https://github.com/sindresorhus/type-fest/commit/c570ec2)
- `Paths`: Prevent infinite recursion
([#&#8203;891](https://github.com/sindresorhus/type-fest/issues/891))
[`7d4e875`](https://github.com/sindresorhus/type-fest/commit/7d4e875)

</details>

<details>
<summary>mikefarah/yq (yq)</summary>

### [`v4.44.2`](https://github.com/mikefarah/yq/releases/tag/v4.44.2)

- Handle numbers with underscores
[#&#8203;2039](https://github.com/mikefarah/yq/issues/2039)
- Unique now works on maps and arrays
[#&#8203;2068](https://github.com/mikefarah/yq/issues/2068)
- Added support for short hand splat with env\[] expression
[#&#8203;2071](https://github.com/mikefarah/yq/issues/2071), as well
as many other operators (split,select,eval,pick..)
    -   Bumped dependencies

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC),
Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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://github.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/TBD54566975/ftl).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zOTMuMCIsInVwZGF0ZWRJblZlciI6IjM3LjQxMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Wes <wesbillman@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

llms: Implement IBM's watsonx
3 participants