无法从llama_index.embeddings导入OpenAIEmbedding如何解决?
问题解决:ImportError: cannot import name 'OpenAIEmbedding' from 'llama_index.embeddings'
OpenAIEmbedding并没有被废弃,而是LlamaIndex在0.10.x及以上版本中对模块结构进行了拆分重构,导致导入路径发生变化。以下是具体解决方法:
方法一:适配新版本(0.10.x+)
- 安装必要的包
新版本将核心功能与扩展功能拆分,需要安装核心包和OpenAI嵌入对应的子包:pip install llama-index-core llama-index-embeddings-openai - 修改导入语句
将原来的导入代码替换为:from llama_index.embeddings.openai import OpenAIEmbedding
方法二:回退到旧版本(0.9.48)
如果一定要使用旧版本,需要彻底清理现有LlamaIndex相关包后重新安装,避免版本冲突:
- 卸载现有包
pip uninstall -y llama-index llama-index-core llama-index-embeddings-openai - 安装指定旧版本
pip install llama-index==0.9.48 - 使用旧版本导入语句
from llama_index.embeddings import OpenAIEmbedding
内容的提问来源于stack exchange,提问作者Noor Aftab
相关产品推荐
相关产品推荐

