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

FastAPI无法识别已安装的python-multipart包问题求助

解决FastAPI无法识别已安装的python-multipart问题

问题说明

在PyCharm开发FastAPI项目时,已执行pip install python-multipart命令安装Form类型对象所需的依赖包,但启动服务时FastAPI仍提示未安装该包,抛出RuntimeError。

解决方案

  • 确认PyCharm使用的解释器为项目虚拟环境:
    打开PyCharm右上角的解释器选择菜单,检查是否选中项目根目录下的venv虚拟环境。若使用全局Python解释器,即使虚拟环境安装了包,服务也无法识别。
  • 重新在虚拟环境中安装依赖:
    确保已激活项目的虚拟环境,执行以下命令重新安装:
    pip uninstall -y python-multipart
    pip install python-multipart
    
  • 尝试关闭自动重载启动服务:
    Uvicorn的--reload模式可能导致子进程未加载虚拟环境的依赖,先尝试不带重载启动:
    uvicorn api:app
    
    若服务正常运行,再排查重载模式的环境加载问题。
  • 验证包是否成功安装:
    在激活虚拟环境后,打开Python交互终端执行以下代码:
    import multipart
    print(multipart.__file__)
    
    若能成功导入并显示包的安装路径,说明包已正确安装,问题出在服务的环境加载环节。

堆栈跟踪信息

(venv) C:\Users\r\Documents\AI\Code-That-ReactStableDiffusion\api>uvicorn api:app --reload
←[32mINFO←[0m:     Will watch for changes in these directories: ['C:\\Users\\r\\Documents\\AI\\Code-That-ReactStableDiffusion\\api']
←[32mINFO←[0m:     Uvicorn running on ←[1mhttp://127.0.0.1:8000←[0m (Press CTRL+C to quit)
←[32mINFO←[0m:     Started reloader process [←[36m←[1m1888←[0m] using ←[36m←[1mStatReload←[0m
safety_checker\model.safetensors not found
C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\transformers\models\clip\feature_extraction_clip.py:28: FutureWarning: The class CLIPFeatureExtractor is depreca
ted and will be removed in version 5 of Transformers. Please use CLIPImageProcessor instead.
  warnings.warn(
`text_config_dict` is provided which will be used to initialize `CLIPTextConfig`. The value `text_config["id2label"]` will be overriden.
Form data requires "python-multipart" to be installed.
You can install "python-multipart" with:

pip install python-multipart

Process SpawnProcess-1:
Traceback (most recent call last):
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\process.py", line 314, in _bootstrap
    self.run()
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\multiprocessing\process.py", line 108, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\_subprocess.py", line 76, in subprocess_started
    target(sockets=sockets)
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 61, in run
    return asyncio.run(self.serve(sockets=sockets))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 190, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\asyncio\runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\asyncio\base_events.py", line 653, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\server.py", line 68, in serve
    config.load()
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\config.py", line 473, in load
    self.loaded_app = import_from_string(self.app)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\uvicorn\importer.py", line 21, in import_from_string
    module = importlib.import_module(module_str)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\r\Documents\AI\Code-That-ReactStableDiffusion\api\api.py", line 39, in <module>
    @app.post("/generate_with_image")
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\fastapi\routing.py", line 706, in decorator
    self.add_api_route(
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\fastapi\routing.py", line 645, in add_api_route
    route = route_class(
            ^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\fastapi\routing.py", line 497, in __init__
    self.body_field = get_body_field(dependant=self.dependant, name=self.unique_id)
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\fastapi\dependencies\utils.py", line 801, in get_body_field
    check_file_field(final_field)
  File "C:\Users\r\AppData\Local\Programs\Python\Python311\Lib\site-packages\fastapi\dependencies\utils.py", line 100, in check_file_field
    raise RuntimeError(multipart_not_installed_error) from None
RuntimeError: Form data requires "python-multipart" to be installed.
You can install "python-multipart" with:

pip install python-multipart

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 06:02:09