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

feat: add ERNIE-Bot-4 Function Calling #13320

Merged
merged 3 commits into from
Nov 20, 2023

Conversation

wangwei1237
Copy link
Contributor

  • Description: ERNIE-Bot-Chat-4 Large Language Model adds the ability of Function Calling by passing parameters through the functions parameter in the request. To simplify function calling for ERNIE-Bot-Chat-4, the create_ernie_fn_chain() function has been added. The definition and usage of the create_ernie_fn_chain() function is similar to that of the create_openai_fn_chain() function.

Examples as the follows:

import json

from langchain.chains.ernie_functions import (
    create_ernie_fn_chain,
)
from langchain.chat_models import ErnieBotChat
from langchain.prompts import ChatPromptTemplate

def get_current_news(location: str) -> str:
    """Get the current news based on the location.'

    Args:
        location (str): The location to query.
    
    Returs:
        str: Current news based on the location.
    """

    news_info = {
        "location": location,
        "news": [
            "I have a Book.",
            "It's a nice day, today."
        ]
    }

    return json.dumps(news_info)

def get_current_weather(location: str, unit: str="celsius") -> str:
    """Get the current weather in a given location

    Args:
        location (str): location of the weather.
        unit (str): unit of the tempuature.
    
    Returns:
        str: weather in the given location.
    """

    weather_info = {
        "location": location,
        "temperature": "27",
        "unit": unit,
        "forecast": ["sunny", "windy"],
    }
    return json.dumps(weather_info)

llm = ErnieBotChat(model_name="ERNIE-Bot-4")
prompt = ChatPromptTemplate.from_messages(
    [
        ("human", "{query}"),
    ]
)

chain = create_ernie_fn_chain([get_current_weather, get_current_news], llm, prompt, verbose=True)
res = chain.run("北京今天的新闻是什么?")
print(res)

The running results of the above program are shown below:

> Entering new LLMChain chain...
Prompt after formatting:
Human: 北京今天的新闻是什么?



> Finished chain.
{'name': 'get_current_news', 'thoughts': '用户想要知道北京今天的新闻。我可以使用get_current_news工具来获取这些信息。', 'arguments': {'location': '北京'}}

Copy link

vercel bot commented Nov 14, 2023

The latest updates on your projects. Learn more about Vercel for Git ↗︎

1 Ignored Deployment
Name Status Preview Comments Updated (UTC)
langchain ⬜️ Ignored (Inspect) Visit Preview Nov 14, 2023 3:50am

@dosubot dosubot bot added Ɑ: models Related to LLMs or chat model modules 🤖:enhancement A large net-new component, integration, or chain. Use sparingly. The largest features labels Nov 14, 2023
@baskaryan
Copy link
Collaborator

lgtm, thank you @wangwei1237!

@baskaryan baskaryan merged commit fe7b40c into langchain-ai:master Nov 20, 2023
21 checks passed
pprados pushed a commit to pprados/langchain that referenced this pull request Nov 20, 2023
- **Description:** ERNIE-Bot-Chat-4 Large Language Model adds the
ability of `Function Calling` by passing parameters through the
`functions` parameter in the request. To simplify function calling for
ERNIE-Bot-Chat-4, the `create_ernie_fn_chain()` function has been added.
The definition and usage of the `create_ernie_fn_chain()` function is
similar to that of the `create_openai_fn_chain()` function.

Examples as the follows:

```
import json

from langchain.chains.ernie_functions import (
    create_ernie_fn_chain,
)
from langchain.chat_models import ErnieBotChat
from langchain.prompts import ChatPromptTemplate

def get_current_news(location: str) -> str:
    """Get the current news based on the location.'

    Args:
        location (str): The location to query.
    
    Returs:
        str: Current news based on the location.
    """

    news_info = {
        "location": location,
        "news": [
            "I have a Book.",
            "It's a nice day, today."
        ]
    }

    return json.dumps(news_info)

def get_current_weather(location: str, unit: str="celsius") -> str:
    """Get the current weather in a given location

    Args:
        location (str): location of the weather.
        unit (str): unit of the tempuature.
    
    Returns:
        str: weather in the given location.
    """

    weather_info = {
        "location": location,
        "temperature": "27",
        "unit": unit,
        "forecast": ["sunny", "windy"],
    }
    return json.dumps(weather_info)

llm = ErnieBotChat(model_name="ERNIE-Bot-4")
prompt = ChatPromptTemplate.from_messages(
    [
        ("human", "{query}"),
    ]
)

chain = create_ernie_fn_chain([get_current_weather, get_current_news], llm, prompt, verbose=True)
res = chain.run("北京今天的新闻是什么?")
print(res)
```

The running results of the above program are shown below:
```
> Entering new LLMChain chain...
Prompt after formatting:
Human: 北京今天的新闻是什么?



> Finished chain.
{'name': 'get_current_news', 'thoughts': '用户想要知道北京今天的新闻。我可以使用get_current_news工具来获取这些信息。', 'arguments': {'location': '北京'}}
```
amiaxys pushed a commit to Haoming-jpg/team-skill-issue-langchain that referenced this pull request Nov 23, 2023
- **Description:** ERNIE-Bot-Chat-4 Large Language Model adds the
ability of `Function Calling` by passing parameters through the
`functions` parameter in the request. To simplify function calling for
ERNIE-Bot-Chat-4, the `create_ernie_fn_chain()` function has been added.
The definition and usage of the `create_ernie_fn_chain()` function is
similar to that of the `create_openai_fn_chain()` function.

Examples as the follows:

```
import json

from langchain.chains.ernie_functions import (
    create_ernie_fn_chain,
)
from langchain.chat_models import ErnieBotChat
from langchain.prompts import ChatPromptTemplate

def get_current_news(location: str) -> str:
    """Get the current news based on the location.'

    Args:
        location (str): The location to query.
    
    Returs:
        str: Current news based on the location.
    """

    news_info = {
        "location": location,
        "news": [
            "I have a Book.",
            "It's a nice day, today."
        ]
    }

    return json.dumps(news_info)

def get_current_weather(location: str, unit: str="celsius") -> str:
    """Get the current weather in a given location

    Args:
        location (str): location of the weather.
        unit (str): unit of the tempuature.
    
    Returns:
        str: weather in the given location.
    """

    weather_info = {
        "location": location,
        "temperature": "27",
        "unit": unit,
        "forecast": ["sunny", "windy"],
    }
    return json.dumps(weather_info)

llm = ErnieBotChat(model_name="ERNIE-Bot-4")
prompt = ChatPromptTemplate.from_messages(
    [
        ("human", "{query}"),
    ]
)

chain = create_ernie_fn_chain([get_current_weather, get_current_news], llm, prompt, verbose=True)
res = chain.run("北京今天的新闻是什么?")
print(res)
```

The running results of the above program are shown below:
```
> Entering new LLMChain chain...
Prompt after formatting:
Human: 北京今天的新闻是什么?



> Finished chain.
{'name': 'get_current_news', 'thoughts': '用户想要知道北京今天的新闻。我可以使用get_current_news工具来获取这些信息。', 'arguments': {'location': '北京'}}
```
nicolewhite pushed a commit to autoblocksai/autoblocks-examples that referenced this pull request Nov 27, 2023
[![Mend Renovate logo
banner](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@autoblocks/client](https://togithub.com/autoblocksai/javascript-sdk)
| [`^0.0.20` ->
`^0.0.21`](https://renovatebot.com/diffs/npm/@autoblocks%2fclient/0.0.20/0.0.21)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@autoblocks%2fclient/0.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@autoblocks%2fclient/0.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@autoblocks%2fclient/0.0.20/0.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@autoblocks%2fclient/0.0.20/0.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) |
[`20.9.1` ->
`20.10.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.9.1/20.10.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.9.1/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.9.1/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) |
[`20.9.2` ->
`20.10.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.9.2/20.10.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.9.2/20.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.9.2/20.10.0?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)) |
[`18.2.37` ->
`18.2.38`](https://renovatebot.com/diffs/npm/@types%2freact/18.2.37/18.2.38)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/18.2.38?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/18.2.38?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/18.2.37/18.2.38?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/18.2.37/18.2.38?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/react-dom](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped)) |
[`18.2.15` ->
`18.2.17`](https://renovatebot.com/diffs/npm/@types%2freact-dom/18.2.15/18.2.17)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/18.2.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact-dom/18.2.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact-dom/18.2.15/18.2.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/18.2.15/18.2.17?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [ai](https://sdk.vercel.ai/docs)
([source](https://togithub.com/vercel/ai)) | [`2.2.24` ->
`2.2.25`](https://renovatebot.com/diffs/npm/ai/2.2.24/2.2.25) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/ai/2.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ai/2.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ai/2.2.24/2.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ai/2.2.24/2.2.25?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [langchain](https://togithub.com/langchain-ai/langchain) | `^0.0.338`
-> `^0.0.340` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/langchain/0.0.340?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/langchain/0.0.340?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/langchain/0.0.338/0.0.340?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/langchain/0.0.338/0.0.340?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [langchain](https://togithub.com/langchain-ai/langchainjs) |
[`^0.0.194` ->
`^0.0.196`](https://renovatebot.com/diffs/npm/langchain/0.0.194/0.0.196)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/langchain/0.0.196?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/langchain/0.0.196?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/langchain/0.0.194/0.0.196?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/langchain/0.0.194/0.0.196?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [openai](https://togithub.com/openai/openai-python) | `1.3.3` ->
`1.3.5` |
[![age](https://developer.mend.io/api/mc/badges/age/pypi/openai/1.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/pypi/openai/1.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/pypi/openai/1.3.3/1.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/pypi/openai/1.3.3/1.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [openai](https://togithub.com/openai/openai-node) | [`4.17.4` ->
`4.20.0`](https://renovatebot.com/diffs/npm/openai/4.17.4/4.20.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.17.4/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.17.4/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [openai](https://togithub.com/openai/openai-node) | [`4.19.0` ->
`4.20.0`](https://renovatebot.com/diffs/npm/openai/4.19.0/4.20.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.19.0/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.19.0/4.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [tsx](https://togithub.com/privatenumber/tsx) | [`4.1.3` ->
`4.5.0`](https://renovatebot.com/diffs/npm/tsx/4.1.3/4.5.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/tsx/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tsx/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tsx/4.1.3/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tsx/4.1.3/4.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [typescript](https://www.typescriptlang.org/)
([source](https://togithub.com/Microsoft/TypeScript)) | [`5.2.2` ->
`5.3.2`](https://renovatebot.com/diffs/npm/typescript/5.2.2/5.3.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.2.2/5.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.2.2/5.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>autoblocksai/javascript-sdk
(@&#8203;autoblocks/client)</summary>

###
[`v0.0.21`](https://togithub.com/autoblocksai/javascript-sdk/compare/0.0.20...0.0.21)

[Compare
Source](https://togithub.com/autoblocksai/javascript-sdk/compare/0.0.20...0.0.21)

</details>

<details>
<summary>vercel/ai (ai)</summary>

### [`v2.2.25`](https://togithub.com/vercel/ai/releases/tag/ai%402.2.25)

[Compare
Source](https://togithub.com/vercel/ai/compare/ai@2.2.24...ai@2.2.25)

##### Patch Changes

- [`1e61c69`](https://togithub.com/vercel/ai/commit/1e61c69): chore:
specify the minimum react version to 18
- [`6aec2d2`](https://togithub.com/vercel/ai/commit/6aec2d2): Expose
threadId in useAssistant
- [`c2369df`](https://togithub.com/vercel/ai/commit/c2369df): Add AWS
Bedrock support
- [`223fde3`](https://togithub.com/vercel/ai/commit/223fde3): ai/svelte:
Add complex response parsing and StreamData support to useChat

</details>

<details>
<summary>langchain-ai/langchain (langchain)</summary>

###
[`v0.0.340`](https://togithub.com/langchain-ai/langchain/releases/tag/v0.0.340)

[Compare
Source](https://togithub.com/langchain-ai/langchain/compare/v0.0.339...v0.0.340)

#### What's Changed

- DOCS: update rag use case images by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13615
- WIP: core by [@&#8203;hwchase17](https://togithub.com/hwchase17) in
[langchain-ai/langchain#13577
- Add core as dep by [@&#8203;baskaryan](https://togithub.com/baskaryan)
in
[langchain-ai/langchain#13623
- Add template for gpt-crawler by
[@&#8203;rlancemartin](https://togithub.com/rlancemartin) in
[langchain-ai/langchain#13625
- Use pytest asyncio auto mode by
[@&#8203;nfcampos](https://togithub.com/nfcampos) in
[langchain-ai/langchain#13643
- Add error rate by [@&#8203;hinthornw](https://togithub.com/hinthornw)
in
[langchain-ai/langchain#13568
- Core refac by [@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13627
- bump 0.0.339rc0 by [@&#8203;baskaryan](https://togithub.com/baskaryan)
in
[langchain-ai/langchain#13664
- fix templates dockerfile by
[@&#8203;jakerachleff](https://togithub.com/jakerachleff) in
[langchain-ai/langchain#13672
- update langserve to v0.0.30 by
[@&#8203;jakerachleff](https://togithub.com/jakerachleff) in
[langchain-ai/langchain#13673
- docugami cookbook by [@&#8203;tjaffri](https://togithub.com/tjaffri)
in
[langchain-ai/langchain#13183
- CLI 0.0.19 by [@&#8203;efriis](https://togithub.com/efriis) in
[langchain-ai/langchain#13677
- Update name by [@&#8203;hinthornw](https://togithub.com/hinthornw) in
[langchain-ai/langchain#13676
- more core fixes by [@&#8203;baskaryan](https://togithub.com/baskaryan)
in
[langchain-ai/langchain#13665
- Bagatur/core utils by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13688
- add callback import test by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13689
- bump core dep 0.0.3 by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13690
- fixed import error for BashOutputParser by
[@&#8203;gyliu513](https://togithub.com/gyliu513) in
[langchain-ai/langchain#13680
- remove openai api key from cookbook by
[@&#8203;gyliu513](https://togithub.com/gyliu513) in
[langchain-ai/langchain#13633
- Update bedrock.py to fix bug by
[@&#8203;ruanwz](https://togithub.com/ruanwz) in
[langchain-ai/langchain#13646
- BUG fix anthropic models on bedrock by
[@&#8203;efriis](https://togithub.com/efriis) in
[langchain-ai/langchain#13629
- Lint for imports by [@&#8203;efriis](https://togithub.com/efriis) in
[langchain-ai/langchain#13632
- Added partial_variables to
BaseStringMessagePromptTemplate.from_template(...) by
[@&#8203;jponf](https://togithub.com/jponf) in
[langchain-ai/langchain#13645
- chore: add serializer for tool message by
[@&#8203;tanujtiwari-at](https://togithub.com/tanujtiwari-at) in
[langchain-ai/langchain#13626
- VoyageEmbeddings embed_general_texts by
[@&#8203;thomas0809](https://togithub.com/thomas0809) in
[langchain-ai/langchain#13620
- BUGFIX: llm backwards compat imports by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13698
- fix the problem that redis vector store will change metadata with val…
by [@&#8203;dandanwei](https://togithub.com/dandanwei) in
[langchain-ai/langchain#13652
- IMPROVEMENT: Conditionally import for type hints by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13700
- Template Metadata pt 1 by
[@&#8203;efriis](https://togithub.com/efriis) in
[langchain-ai/langchain#13691
- BUGFIX: add prompt imports for backwards compat by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13702
- Fix locking by [@&#8203;hinthornw](https://togithub.com/hinthornw) in
[langchain-ai/langchain#13725
- Fix typo/line break in python code by
[@&#8203;h3l](https://togithub.com/h3l) in
[langchain-ai/langchain#13708
- REFACTOR: combine core documents files by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13733
- DOCS: fix core api ref build by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13744
- INFRA: run LC ci after core changes by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13742
- Bagatur/bump core 4 by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13745
- RELEASE: 0.0.339rc1 by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13746
- DOCS: core editable dep api refs by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13747
- Add Batch Size kwarg to the llm start callback by
[@&#8203;hinthornw](https://togithub.com/hinthornw) in
[langchain-ai/langchain#13483
- IMPROVEMENT: filter global warnings properly by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13754
- rm master condition by
[@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13753

#### New Contributors

- [@&#8203;gyliu513](https://togithub.com/gyliu513) made their first
contribution in
[langchain-ai/langchain#13680
- [@&#8203;jponf](https://togithub.com/jponf) made their first
contribution in
[langchain-ai/langchain#13645
- [@&#8203;dandanwei](https://togithub.com/dandanwei) made their first
contribution in
[langchain-ai/langchain#13652
- [@&#8203;h3l](https://togithub.com/h3l) made their first contribution
in
[langchain-ai/langchain#13708

**Full Changelog**:
langchain-ai/langchain@v0.0.339...v0.0.340

###
[`v0.0.339`](https://togithub.com/langchain-ai/langchain/releases/tag/v0.0.339)

[Compare
Source](https://togithub.com/langchain-ai/langchain/compare/v0.0.338...v0.0.339)

#### What's Changed

- updated langchain stack img to be svg by
[@&#8203;bracesproul](https://togithub.com/bracesproul) in
[langchain-ai/langchain#13540
- DOCS `langchain decorators` update by
[@&#8203;leo-gan](https://togithub.com/leo-gan) in
[langchain-ai/langchain#13535
- fix: Make YoutubeLoader support on demand language translation by
[@&#8203;RaflyLesmana3003](https://togithub.com/RaflyLesmana3003) in
[langchain-ai/langchain#13583
- Add embedchain retriever by
[@&#8203;taranjeet](https://togithub.com/taranjeet) in
[langchain-ai/langchain#13553
- feat: load all namespaces by
[@&#8203;andstu](https://togithub.com/andstu) in
[langchain-ai/langchain#13549
- Fix for oracle schema parsing stated on the issue
[#&#8203;7928](https://togithub.com/langchain-ai/langchain/issues/7928)
by [@&#8203;Tazc54](https://togithub.com/Tazc54) in
[langchain-ai/langchain#13545
- fix: VLLMOpenAI -- create() got an unexpected keyword argument
'api_key' by [@&#8203;umair313](https://togithub.com/umair313) in
[langchain-ai/langchain#13517
- Fix Astra integration tests by
[@&#8203;nicoloboschi](https://togithub.com/nicoloboschi) in
[langchain-ai/langchain#13520
- Introduce search_kwargs for Custom Parameters in BingSearchAPIWrapper
by [@&#8203;shumpei19](https://togithub.com/shumpei19) in
[langchain-ai/langchain#13525
- AstraDB: use includeSimilarity option instead of $similarity by
[@&#8203;nicoloboschi](https://togithub.com/nicoloboschi) in
[langchain-ai/langchain#13512
- docs updating `AzureML` notebooks by
[@&#8203;leo-gan](https://togithub.com/leo-gan) in
[langchain-ai/langchain#13492
- Fix hunyuan appid type by
[@&#8203;maiqingqiang](https://togithub.com/maiqingqiang) in
[langchain-ai/langchain#13496
- FIX: doc-string - langchain.vectorstores.dashvector.DashVector by
[@&#8203;linzeyang](https://togithub.com/linzeyang) in
[langchain-ai/langchain#13502
- FIX: Limit Azure OpenAI embeddings chunk size by
[@&#8203;mspronesti](https://togithub.com/mspronesti) in
[langchain-ai/langchain#13425
- Feature cognitive health by
[@&#8203;jwbeck97](https://togithub.com/jwbeck97) in
[langchain-ai/langchain#13448
- Add llama2-13b-chat-v1 support to `chat_models.BedrockChat` by
[@&#8203;WouterDurnez](https://togithub.com/WouterDurnez) in
[langchain-ai/langchain#13403
- Fix tool arguments formatting in StructuredChatAgent by
[@&#8203;skozlovf](https://togithub.com/skozlovf) in
[langchain-ai/langchain#10480
- Fix typo in MongoDB memory docs by
[@&#8203;sijunhe](https://togithub.com/sijunhe) in
[langchain-ai/langchain#13588
- Minor redis improvements by
[@&#8203;tylerhutcherson](https://togithub.com/tylerhutcherson) in
[langchain-ai/langchain#13381
- DeepLake Backwards compatibility fix by
[@&#8203;adolkhan](https://togithub.com/adolkhan) in
[langchain-ai/langchain#13388
- feat: add ERNIE-Bot-4 Function Calling by
[@&#8203;wangwei1237](https://togithub.com/wangwei1237) in
[langchain-ai/langchain#13320
- VertexAI LLM count_tokens method requires list of prompts by
[@&#8203;stijntratsaertit](https://togithub.com/stijntratsaertit) in
[langchain-ai/langchain#13451
- fixed an UnboundLocalError when no documents are found by
[@&#8203;lkuligin](https://togithub.com/lkuligin) in
[langchain-ai/langchain#12995
- fix: Reduce post-processing time for `DocAIParser` by
[@&#8203;holtskinner](https://togithub.com/holtskinner) in
[langchain-ai/langchain#13210
- bugfix in using search_kwargs in Vectara retriever by
[@&#8203;ofermend](https://togithub.com/ofermend) in
[langchain-ai/langchain#13299
- bump 339 by [@&#8203;baskaryan](https://togithub.com/baskaryan) in
[langchain-ai/langchain#13613

#### New Contributors

- [@&#8203;taranjeet](https://togithub.com/taranjeet) made their first
contribution in
[langchain-ai/langchain#13553
- [@&#8203;andstu](https://togithub.com/andstu) made their first
contribution in
[langchain-ai/langchain#13549
- [@&#8203;Tazc54](https://togithub.com/Tazc54) made their first
contribution in
[langchain-ai/langchain#13545
- [@&#8203;umair313](https://togithub.com/umair313) made their first
contribution in
[langchain-ai/langchain#13517
- [@&#8203;nicoloboschi](https://togithub.com/nicoloboschi) made their
first contribution in
[langchain-ai/langchain#13520
- [@&#8203;shumpei19](https://togithub.com/shumpei19) made their first
contribution in
[langchain-ai/langchain#13525
- [@&#8203;linzeyang](https://togithub.com/linzeyang) made their first
contribution in
[langchain-ai/langchain#13502
- [@&#8203;jwbeck97](https://togithub.com/jwbeck97) made their first
contribution in
[langchain-ai/langchain#13448
- [@&#8203;WouterDurnez](https://togithub.com/WouterDurnez) made their
first contribution in
[langchain-ai/langchain#13403
- [@&#8203;sijunhe](https://togithub.com/sijunhe) made their first
contribution in
[langchain-ai/langchain#13588
- [@&#8203;stijntratsaertit](https://togithub.com/stijntratsaertit) made
their first contribution in
[langchain-ai/langchain#13451

**Full Changelog**:
langchain-ai/langchain@v0.0.338...v0.0.339

</details>

<details>
<summary>langchain-ai/langchainjs (langchain)</summary>

###
[`v0.0.196`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.196)

[Compare
Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.195...0.0.196)

#### What's Changed

- Release 0.0.195 by
[@&#8203;jacoblee93](https://togithub.com/jacoblee93) in
[langchain-ai/langchainjs#3350
- Jacob/core by [@&#8203;jacoblee93](https://togithub.com/jacoblee93) in
[langchain-ai/langchainjs#3354

**Full Changelog**:
langchain-ai/langchainjs@0.0.195...0.0.196

###
[`v0.0.195`](https://togithub.com/langchain-ai/langchainjs/releases/tag/0.0.195)

[Compare
Source](https://togithub.com/langchain-ai/langchainjs/compare/0.0.194...0.0.195)

#### What's Changed

- Release 0.0.194 by
[@&#8203;jacoblee93](https://togithub.com/jacoblee93) in
[langchain-ai/langchainjs#3345
- Fix ReAct agent hallucinating result by
[@&#8203;dqbd](https://togithub.com/dqbd) in
[langchain-ai/langchainjs#3341
- Adding self query for vectara by
[@&#8203;adeelehsan](https://togithub.com/adeelehsan) in
[langchain-ai/langchainjs#3338
- Updates to Vectara Implementation by
[@&#8203;ofermend](https://togithub.com/ofermend) in
[langchain-ai/langchainjs#3332
- 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. by
[@&#8203;sumosp](https://togithub.com/sumosp) in
[langchain-ai/langchainjs#3323
- feat: add filters to `ChaindeskRetriever` by
[@&#8203;antoinewg](https://togithub.com/antoinewg) in
[langchain-ai/langchainjs#3314
- Add OpenAI Files for OpenAI assistant by
[@&#8203;castroCrea](https://togithub.com/castroCrea) in
[langchain-ai/langchainjs#3228

#### New Contributors

- [@&#8203;adeelehsan](https://togithub.com/adeelehsan) made their first
contribution in
[langchain-ai/langchainjs#3338
- [@&#8203;sumosp](https://togithub.com/sumosp) made their first
contribution in
[langchain-ai/langchainjs#3323
- [@&#8203;antoinewg](https://togithub.com/antoinewg) made their first
contribution in
[langchain-ai/langchainjs#3314
- [@&#8203;castroCrea](https://togithub.com/castroCrea) made their first
contribution in
[langchain-ai/langchainjs#3228

**Full Changelog**:
langchain-ai/langchainjs@0.0.194...0.0.195

</details>

<details>
<summary>openai/openai-python (openai)</summary>

###
[`v1.3.5`](https://togithub.com/openai/openai-python/blob/HEAD/CHANGELOG.md#135-2023-11-21)

[Compare
Source](https://togithub.com/openai/openai-python/compare/v1.3.4...v1.3.5)

Full Changelog:
[v1.3.4...v1.3.5](https://togithub.com/openai/openai-python/compare/v1.3.4...v1.3.5)

##### Bug Fixes

- **azure:** ensure custom options can be passed to copy
([#&#8203;858](https://togithub.com/openai/openai-python/issues/858))
([05ca0d6](https://togithub.com/openai/openai-python/commit/05ca0d68e84d40f975614d27cb52c0f382104377))

##### Chores

- **package:** add license classifier
([#&#8203;826](https://togithub.com/openai/openai-python/issues/826))
([bec004d](https://togithub.com/openai/openai-python/commit/bec004d030b277e05bdd51f66fae1e881291c30b))
- **package:** add license classifier metadata
([#&#8203;860](https://togithub.com/openai/openai-python/issues/860))
([80dffb1](https://togithub.com/openai/openai-python/commit/80dffb17ff0a10b0b9ea704c4247521e48b68408))

###
[`v1.3.4`](https://togithub.com/openai/openai-python/blob/HEAD/CHANGELOG.md#134-2023-11-21)

[Compare
Source](https://togithub.com/openai/openai-python/compare/v1.3.3...v1.3.4)

Full Changelog:
[v1.3.3...v1.3.4](https://togithub.com/openai/openai-python/compare/v1.3.3...v1.3.4)

##### Bug Fixes

- **client:** attempt to parse unknown json content types
([#&#8203;854](https://togithub.com/openai/openai-python/issues/854))
([ba50466](https://togithub.com/openai/openai-python/commit/ba5046611029a67714d5120b9cc6a3c7fecce10c))

##### Chores

- **examples:** fix static types in assistants example
([#&#8203;852](https://togithub.com/openai/openai-python/issues/852))
([5b47b2c](https://togithub.com/openai/openai-python/commit/5b47b2c542b9b4fb143af121022e2d5ad0890ef4))

</details>

<details>
<summary>openai/openai-node (openai)</summary>

###
[`v4.20.0`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4200-2023-11-22)

[Compare
Source](https://togithub.com/openai/openai-node/compare/v4.19.1...v4.20.0)

Full Changelog:
[v4.19.1...v4.20.0](https://togithub.com/openai/openai-node/compare/v4.19.1...v4.20.0)

##### Features

- allow installing package directly from github
([#&#8203;522](https://togithub.com/openai/openai-node/issues/522))
([51926d7](https://togithub.com/openai/openai-node/commit/51926d7a0092744e49de39f4988feddf313adafa))

##### Chores

- **internal:** don't call prepare in dist
([#&#8203;525](https://togithub.com/openai/openai-node/issues/525))
([d09411e](https://togithub.com/openai/openai-node/commit/d09411ebaa28d6610e1b880d03339d520b4a1833))

###
[`v4.19.1`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4191-2023-11-20)

[Compare
Source](https://togithub.com/openai/openai-node/compare/v4.19.0...v4.19.1)

Full Changelog:
[v4.19.0...v4.19.1](https://togithub.com/openai/openai-node/compare/v4.19.0...v4.19.1)

###
[`v4.19.0`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4190-2023-11-15)

[Compare
Source](https://togithub.com/openai/openai-node/compare/v4.18.0...v4.19.0)

Full Changelog:
[v4.18.0...v4.19.0](https://togithub.com/openai/openai-node/compare/v4.18.0...v4.19.0)

##### Features

- **api:** updates
([#&#8203;501](https://togithub.com/openai/openai-node/issues/501))
([944d58e](https://togithub.com/openai/openai-node/commit/944d58e5fc46f1a0671aaa2b809d28e67edf6023))

###
[`v4.18.0`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4180-2023-11-14)

[Compare
Source](https://togithub.com/openai/openai-node/compare/v4.17.5...v4.18.0)

Full Changelog:
[v4.17.5...v4.18.0](https://togithub.com/openai/openai-node/compare/v4.17.5...v4.18.0)

##### Features

- **api:** add gpt-3.5-turbo-1106
([#&#8203;496](https://togithub.com/openai/openai-node/issues/496))
([45f7672](https://togithub.com/openai/openai-node/commit/45f7672ccf4856ac309b08c6c96f0e73ab48b525))

###
[`v4.17.5`](https://togithub.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4175-2023-11-13)

[Compare
Source](https://togithub.com/openai/openai-node/compare/v4.17.4...v4.17.5)

Full Changelog:
[v4.17.4...v4.17.5](https://togithub.com/openai/openai-node/compare/v4.17.4...v4.17.5)

##### Chores

- fix typo in docs and add request header for function calls
([#&#8203;494](https://togithub.com/openai/openai-node/issues/494))
([22ce244](https://togithub.com/openai/openai-node/commit/22ce2443a77f10988b3215bd81ba17d4eda4b10e))

</details>

<details>
<summary>privatenumber/tsx (tsx)</summary>

###
[`v4.5.0`](https://togithub.com/privatenumber/tsx/releases/tag/v4.5.0)

[Compare
Source](https://togithub.com/privatenumber/tsx/compare/v4.4.0...v4.5.0)

##### Features

- **watch:** log reason for rerun & improved exit handling
([#&#8203;412](https://togithub.com/privatenumber/tsx/issues/412))
([fb59907](https://togithub.com/privatenumber/tsx/commit/fb599075416e4aec33d9e16014b6c2a667ae81a9))

***

This release is also available on:

- [npm package (@&#8203;latest
dist-tag)](https://www.npmjs.com/package/tsx/v/4.5.0)

###
[`v4.4.0`](https://togithub.com/privatenumber/tsx/releases/tag/v4.4.0)

[Compare
Source](https://togithub.com/privatenumber/tsx/compare/v4.3.0...v4.4.0)

##### Bug Fixes

- send SIGKILL on unresponsive process
([#&#8203;395](https://togithub.com/privatenumber/tsx/issues/395))
([fb61588](https://togithub.com/privatenumber/tsx/commit/fb61588933f7143e81a2243ae3f8d807e5286458))
- **watch:** dont log rerunning on first run
([5a71a87](https://togithub.com/privatenumber/tsx/commit/5a71a870b55b38cd06a1fc3cd37ad9d9b32e9e49))

##### Features

- support TypeScript in `--test` flag
([#&#8203;410](https://togithub.com/privatenumber/tsx/issues/410))
([af1b911](https://togithub.com/privatenumber/tsx/commit/af1b911c0ac3bd13e12a8b71588b2178bf73e345))

***

This release is also available on:

- [npm package (@&#8203;latest
dist-tag)](https://www.npmjs.com/package/tsx/v/4.4.0)

###
[`v4.3.0`](https://togithub.com/privatenumber/tsx/releases/tag/v4.3.0)

[Compare
Source](https://togithub.com/privatenumber/tsx/compare/v4.2.1...v4.3.0)

##### Bug Fixes

- cache bust for dynamic-import transfomer change
([15b4277](https://togithub.com/privatenumber/tsx/commit/15b4277502db96ed3e6028c1ba1bd6e9d491f535))

##### Features

- readable transpilation errors
([#&#8203;407](https://togithub.com/privatenumber/tsx/issues/407))
([f58b496](https://togithub.com/privatenumber/tsx/commit/f58b49615ce248fb61ad2a11b19d010b472cfbab))

##### Performance Improvements

- **esbuild:** disable `sourcesContent`
([#&#8203;390](https://togithub.com/privatenumber/tsx/issues/390))
([0b624b3](https://togithub.com/privatenumber/tsx/commit/0b624b34fa57eae1ffc52ff1ff6f8f46832484bb))

***

This release is also available on:

- [npm package (@&#8203;latest
dist-tag)](https://www.npmjs.com/package/tsx/v/4.3.0)

###
[`v4.2.1`](https://togithub.com/privatenumber/tsx/releases/tag/v4.2.1)

[Compare
Source](https://togithub.com/privatenumber/tsx/compare/v4.2.0...v4.2.1)

##### Bug Fixes

- source map on dynamic import
([#&#8203;406](https://togithub.com/privatenumber/tsx/issues/406))
([7a0eb7e](https://togithub.com/privatenumber/tsx/commit/7a0eb7e826c4330521298f2833d03f74431b0ff1))

***

This release is also available on:

- [npm package (@&#8203;latest
dist-tag)](https://www.npmjs.com/package/tsx/v/4.2.1)

###
[`v4.2.0`](https://togithub.com/privatenumber/tsx/releases/tag/v4.2.0)

[Compare
Source](https://togithub.com/privatenumber/tsx/compare/v4.1.4...v4.2.0)

##### Features

- support TypeScript code in eval flag
([#&#8203;402](https://togithub.com/privatenumber/tsx/issues/402))
([db773c5](https://togithub.com/privatenumber/tsx/commit/db773c566786f5c11b783d58b654a56e7d3669d4))

***

This release is also available on:

- [npm package (@&#8203;latest
dist-tag)](https://www.npmjs.com/package/tsx/v/4.2.0)

###
[`v4.1.4`](https://togithub.com/privatenumber/tsx/releases/tag/v4.1.4)

[Compare
Source](https://togithub.com/privatenumber/tsx/compare/v4.1.3...v4.1.4)

##### Reverts

- source-map stripping
([#&#8203;398](https://togithub.com/privatenumber/tsx/issues/398))
([a95a482](https://togithub.com/privatenumber/tsx/commit/a95a482a25b026b877d17b766d68cd38e4caa5ba))

***

This release is also available on:

- [npm package (@&#8203;latest
dist-tag)](https://www.npmjs.com/package/tsx/v/4.1.4)

</details>

<details>
<summary>Microsoft/TypeScript (typescript)</summary>

###
[`v5.3.2`](https://togithub.com/microsoft/TypeScript/releases/tag/v5.3.2):
TypeScript 5.3

[Compare
Source](https://togithub.com/Microsoft/TypeScript/compare/v5.2.2...v5.3.2)

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+).

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/autoblocks-examples).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy41OS44IiwidXBkYXRlZEluVmVyIjoiMzcuNTkuOCIsInRhcmdldEJyYW5jaCI6Im1haW4ifQ==-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🤖:enhancement A large net-new component, integration, or chain. Use sparingly. The largest features Ɑ: models Related to LLMs or chat model modules
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants