OpenBMB / MiniCPM-V

MiniCPM-V 2.6: A GPT-4V Level MLLM for Single Image, Multi Image and Video on Your Phone
Apache License 2.0
12.02k stars 842 forks source link

[BUG] pydantic.errors.PydanticSchemaGenerationError #591

Open Readyou123 opened 2 hours ago

Readyou123 commented 2 hours ago

是否已有关于该错误的issue或讨论? | Is there an existing issue / discussion for this?

该问题是否在FAQ中有解答? | Is there an existing answer for this in FAQ?

当前行为 | Current Behavior

运行web_demo_2.6.py出现报错。 ERROR: Exception in ASGI application Traceback (most recent call last): File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/type_adapter.py", line 270, in _init_core_attrs self._core_schema = _getattr_no_parents(self._type, 'pydantic_core_schema') File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/type_adapter.py", line 112, in _getattr_no_parents raise AttributeError(attribute) AttributeError: pydantic_core_schema

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/uvicorn/protocols/http/h11_impl.py", line 408, in run_asgi result = await app( # type: ignore[func-returns-value] File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/uvicorn/middleware/proxy_headers.py", line 84, in call return await self.app(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/applications.py", line 1054, in call await super().call(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/applications.py", line 113, in call await self.middleware_stack(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/middleware/errors.py", line 187, in call raise exc File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/middleware/errors.py", line 165, in call await self.app(scope, receive, _send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/gradio/route_utils.py", line 733, in call await self.simple_response(scope, receive, send, request_headers=headers) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/gradio/route_utils.py", line 749, in simple_response await self.app(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 62, in call await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/_exception_handler.py", line 62, in wrapped_app raise exc File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/_exception_handler.py", line 51, in wrapped_app await app(scope, receive, sender) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/routing.py", line 715, in call await self.middleware_stack(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/routing.py", line 735, in app await route.handle(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/routing.py", line 288, in handle await self.app(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/routing.py", line 76, in app await wrap_app_handling_exceptions(app, request)(scope, receive, send) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/_exception_handler.py", line 62, in wrapped_app raise exc File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/_exception_handler.py", line 51, in wrapped_app await app(scope, receive, sender) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/starlette/routing.py", line 73, in app response = await f(request) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/routing.py", line 291, in app solved_result = await solve_dependencies( File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/dependencies/utils.py", line 639, in solve_dependencies ) = await request_body_to_args( # body_params checked above File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/dependencies/utils.py", line 813, in request_body_to_args fields_to_extract = get_cached_model_fields(firstfield.type) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/_compat.py", line 657, in get_cached_model_fields return get_model_fields(model) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/_compat.py", line 284, in get_model_fields return [ File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/_compat.py", line 285, in ModelField(field_info=field_info, name=name) File "", line 6, in init File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/fastapi/_compat.py", line 110, in post_init__ self._type_adapter: TypeAdapter[Any] = TypeAdapter( File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/type_adapter.py", line 257, in init self._init_core_attrs(rebuild_mocks=False) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/type_adapter.py", line 135, in wrapped return func(self, *args, **kwargs) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/type_adapter.py", line 277, in _init_core_attrs self._core_schema = _get_schema(self._type, config_wrapper, parent_depth=self._parent_depth) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/type_adapter.py", line 95, in _get_schema schema = gen.generateschema(type) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 655, in generate_schema schema = self._generate_schema_inner(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 908, in _generate_schema_inner return self._annotated_schema(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 2028, in _annotated_schema schema = self._apply_annotations(source_type, annotations) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 2107, in _apply_annotations schema = get_inner_schema(source_type) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_schema_generation_shared.py", line 83, in call schema = self._handler(source_type) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 2189, in new_handler schema = metadata_get_schema(source, get_inner_schema) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 2185, in lambda source, handler: handler(source) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_schema_generation_shared.py", line 83, in call schema = self._handler(source_type) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 2088, in inner_handler schema = self._generate_schema_inner(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 929, in _generate_schema_inner return self.match_type(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 1029, in match_type return self._match_generic_type(obj, origin) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 1058, in _match_generic_type return self._union_schema(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 1378, in _union_schema choices.append(self.generate_schema(arg)) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 655, in generate_schema schema = self._generate_schema_inner(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 929, in _generate_schema_inner return self.match_type(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 1038, in match_type return self._unknown_type_schema(obj) File "/data0/anaconda3/envs/MiniCPM-V/lib/python3.10/site-packages/pydantic/_internal/_generate_schema.py", line 558, in _unknown_type_schema raise PydanticSchemaGenerationError( pydantic.errors.PydanticSchemaGenerationError: Unable to generate pydantic-core schema for <class 'starlette.requests.Request'>. Set arbitrary_types_allowed=True in the model_config to ignore this error or implement `get_pydantic_core_schema__` on your type to fully support it.

If you got this error by calling handler() within __get_pydantic_core_schema__ then you likely need to call handler.generate_schema(<some type>) since we do not call __get_pydantic_core_schema__ on <some type> otherwise to avoid infinite recursion.

期望行为 | Expected Behavior

No response

复现方法 | Steps To Reproduce

No response

运行环境 | Environment

- OS:
- Python:
- Transformers:
- PyTorch:
- CUDA (`python -c 'import torch; print(torch.version.cuda)'`):

备注 | Anything else?

No response

KungFuPandaPro commented 2 hours ago

同问