You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Langchain导入AgentType报错:无法导入create_model

解决Langchain导入AgentType时的ImportError问题

问题情况

在Python 3.11.7的空conda环境中,通过pip安装了最新版Langchain,当前包版本:

langchain                            0.1.13
langchain-community                  0.0.29
langchain-core                       0.1.33
langchain-text-splitters             0.0.1

执行导入语句from langchain.agents import AgentType时触发错误:

ImportError: cannot import name 'create_model' from 'langchain_core.runnables.utils'

完整回溯信息:

---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
Cell In[14], line 7
      5 import openai
      6 from langchain_openai import AzureChatOpenAI
----> 7 from langchain.agents import AgentType
      8 from azure.storage.blob import BlobServiceClient
      9 from azure.identity import DefaultAzureCredential

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\site-packages\langchain\agents\__init__.py:34
     31 from pathlib import Path
     32 from typing import Any
---> 34 from langchain_community.agent_toolkits import (
     35     create_json_agent,
     36     create_openapi_agent,
     37     create_pbi_agent,
     38     create_pbi_chat_agent,
     39     create_spark_sql_agent,
     40     create_sql_agent,
     41 )
     42 from langchain_core._api.path import as_import_path
     44 from langchain.agents.agent import (
     45     Agent,
     46     AgentExecutor,
   (...)
     50     LLMSingleActionAgent,
     51 )

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\site-packages\langchain_community\agent_toolkits\__init__.py:41, in __getattr__(name)
     39 def __getattr__(name: str) -> Any:
     40     if name in _module_lookup:
---> 41         module = importlib.import_module(_module_lookup[name])
     42         return getattr(module, name)
     43     raise AttributeError(f"module {__name__} has no attribute {name}")

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\importlib\__init__.py:126, in import_module(name, package)
    124             break
    125         level += 1
---> 126 return _bootstrap._gcd_import(name[level:], package, level)

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\site-packages\langchain_community\agent_toolkits\powerbi\base.py:13
      7 from langchain_core.language_models import BaseLanguageModel
      9 from langchain_community.agent_toolkits.powerbi.prompt import (
     10     POWERBI_PREFIX,
     11     POWERBI_SUFFIX,
     12 )
---> 13 from langchain_community.agent_toolkits.powerbi.toolkit import PowerBIToolkit
     14 from langchain_community.utilities.powerbi import PowerBIDataset
     16 if TYPE_CHECKING:

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\site-packages\langchain_community\agent_toolkits\powerbi\toolkit.py:9
      7 from langchain_core.language_models import BaseLanguageModel
      8 from langchain_core.language_models.chat_models import BaseChatModel
---> 9 from langchain_core.prompts import PromptTemplate
     10 from langchain_core.prompts.chat import (
     11     ChatPromptTemplate,
     12     HumanMessagePromptTemplate,
     13     SystemMessagePromptTemplate,
     14 )
     15 from langchain_core.pydantic_v1 import Field

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\site-packages\langchain_core\prompts\__init__.py:27
      1 """**Prompt** is the input to the model.
      2 
      3 Prompt is often constructed
   (...)
     25 
     26 """  # noqa: E501
---> 27 from langchain_core.prompts.base import BasePromptTemplate, format_document
     28 from langchain_core.prompts.chat import (
     29     AIMessagePromptTemplate,
     30     BaseChatPromptTemplate,
   (...)
     35     SystemMessagePromptTemplate,
     36 )
     37 from langchain_core.prompts.few_shot import (
     38     FewShotChatMessagePromptTemplate,
     39     FewShotPromptTemplate,
     40 )

File c:\Users\a704601\AppData\Local\miniconda3\envs\spie\Lib\site-packages\langchain_core\prompts\base.py:31
     29 from langchain_core.runnables import RunnableConfig, RunnableSerializable
     30 from langchain_core.runnables.config import ensure_config
---> 31 from langchain_core.runnables.utils import create_model
     33 if TYPE_CHECKING:
     34     from langchain_core.documents import Document

ImportError: cannot import name 'create_model' from 'langchain_core.runnables.utils' 

解决方案

方案1:升级langchain-core到兼容版本

当前langchain-community 0.0.29依赖的langchain-core版本高于0.1.33,执行以下命令升级:

pip install --upgrade langchain-core

升级完成后重新运行导入语句即可。

方案2:降级到稳定兼容的旧版本

如果升级后仍有问题,可安装经过验证的兼容版本组合,执行以下命令:

pip install langchain==0.1.12 langchain-community==0.0.28 langchain-core==0.1.32 langchain-text-splitters==0.0.1

该版本组合可稳定运行基础Agent相关功能,包括AgentType的导入。

方案3:临时绕过PowerBI工具包导入(针对无需PowerBI功能的场景)

如果不需要PowerBI相关功能,可直接导入AgentType所在的具体模块,避免触发langchain-community中PowerBI工具包的自动导入:

from langchain.agents.agent import AgentType

内容的提问来源于stack exchange,提问作者Daniel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 07:51:08