langchain Validation error for FastEmbedEmbeddings - extra fields not permitted

nom7f22z  于 3个月前  发布在  其他
关注(0)|答案(9)|浏览(51)

检查其他资源

  • 为这个问题添加了一个非常描述性的标题。
  • 使用集成搜索在LangChain文档中进行了搜索。
  • 使用GitHub搜索查找类似的问题,但没有找到。
  • 我确信这是LangChain中的一个bug,而不是我的代码。
  • 通过更新到LangChain的最新稳定版本(或特定集成包)无法解决此错误。

示例代码

%pip install --upgrade --quiet  fastembed
%pip install --upgrade --quiet langchain_community
%pip install --upgrade --quiet langchain 

from langchain_community.embeddings.fastembed import FastEmbedEmbeddings 
embeddings = FastEmbedEmbeddings()

错误消息和堆栈跟踪(如果适用)

`---------------------------------------------------------------------------
ValidationError Traceback (most recent call last)
in <cell line: 1>()
----> 1 embeddings = FastEmbedEmbeddings()
/usr/local/lib/python3.10/dist-packages/pydantic/v1/main.py in init(pydantic_self, **data)
339 values, fields_set, validation_error = validate_model(pydantic_self.class, data)
340 if validation_error:
--> 341 raise validation_error
342 try:
343 object_setattr(pydantic_self, 'dict', values)
ValidationError: 1 validation error for FastEmbedEmbeddings
_model
extra fields not permitted (type=value_error.extra)

描述

无法示例化FastEmbed模型。它在没有任何提供的情况下引发验证错误。问题似乎源于pydantic。
代码在langchain == 0.2.6和langchain-core == 0.2.11上运行良好。尝试安装较旧的版本,但仍然出现错误。
按照这里的教程进行操作: https://python.langchain.com/v0.2/docs/integrations/text_embedding/fastembed/

系统信息

langchain==0.2.7
langchain-community==0.2.7
langchain-core==0.2.12
langchain-text-splitters==0.2.2
Google-colab
Python 3.10.12

ubof19bj

ubof19bj1#

你能检查一下降级到langchain-community==0.2.6是否有助于解决这个问题吗?

cld4siwp

cld4siwp2#

不,降级到 langchain-community==0.2.6 无法解决这个问题。

bwntbbo3

bwntbbo33#

在这里也是一样,在Colab上。

!pip -q install langchain langchain_community pypdf fastembed chromadb

from langchain_community.embeddings.fastembed import FastEmbedEmbeddings
# supported models: https://qdrant.github.io/fastembed/examples/Supported_Models/
model_name = "thenlper/gte-large"
embedding_model = FastEmbedEmbeddings(model_name=model_name)

langchain_community.__version__, fastembed.__version__ # ('0.2.7', '0.3.3')
zaqlnxep

zaqlnxep4#

对于版本
langchain_community.__version__, fastembed.__version__ # ('0.2.6', '0.3.2')
它可以工作,只是一个解决方法@saikaryekar

xtupzzrd

xtupzzrd5#

@JonathanLoscalzo 将lanchain_community==0.2.6和fastembed==0.3.2降级后,问题解决了。感谢!他们应该修复与新版本兼容性的问题!

xqkwcwgp

xqkwcwgp7#

有人能帮忙确定问题是来自langchain_community的更改还是来自fastembed吗?

y53ybaqx

y53ybaqx8#

这个问题来自于两天前发布的langchain_community v0.2.7的新版本。

zhte4eai

zhte4eai9#

对于版本langchain_community.__version__, fastembed.__version__ # ('0.2.6', '0.3.2'),它可以正常工作,只是一个解决方法@saikaryekar。感谢这个解决方法,我不知道为什么在发布新版本时没有适当的文档。

相关问题