使用Langchain与GooglePalm遇NotImplementedError问题求助
解决Langchain中GooglePalm初始化抛出NotImplementedError的问题
问题原因
Langchain近期版本更新后,原GooglePalm类已被标记为废弃,且内部未正确处理弃用逻辑,导致初始化时抛出该错误。而GooglePalmEmbeddings暂时未触发相同的弃用检查,因此仍能正常运行。
解决方案
方案1:降级至可用版本(继续使用GooglePalm)
如果需要保留原有代码逻辑,可指定安装旧版本的相关依赖包:
# 卸载当前版本 pip uninstall -y langchain-google-community # 安装兼容旧版GooglePalm的版本 pip install langchain-google-community==0.0.10
若之前直接从langchain主包调用GooglePalm,则降级langchain主包:
pip uninstall -y langchain pip install langchain==0.1.10
方案2:迁移至Google Gemini类(官方推荐)
GooglePalm已被Gemini系列模型取代,Langchain官方推荐使用新的GoogleGenerativeAI类替代,步骤如下:
- 安装对应依赖包:
pip install langchain-google-genai
- 修改初始化代码:
from langchain_google_genai import GoogleGenerativeAI # text-bison-001对应原GooglePalm模型,也可替换为gemini-pro等其他模型 llm = GoogleGenerativeAI(model="models/text-bison-001", google_api_key=api_key)
验证方式
运行修改后的代码,调用llm.invoke("测试文本"),确认能正常返回结果且无报错即可。
内容的提问来源于stack exchange,提问作者vijay kumar
相关产品推荐
相关产品推荐

