Skip to content

[TS] 2026-02-12Β #65

@Kim-Yoon

Description

@Kim-Yoon

🐞 μ—λŸ¬ λ‚΄μš©

  • 상황:
  • μ—λŸ¬ λ©”μ‹œμ§€:
ERROR:    Exception in ASGI application
Traceback (most recent call last):
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/uvicorn/protocols/http/httptools_impl.py", line 416, in run_asgi
    result = await app(  # type: ignore[func-returns-value]
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/uvicorn/middleware/proxy_headers.py", line 60, in __call__
    return await self.app(scope, receive, send)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/fastapi/applications.py", line 1135, in __call__
    await super().__call__(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/applications.py", line 107, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/errors.py", line 186, in __call__
    raise exc
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/errors.py", line 164, in __call__
    await self.app(scope, receive, _send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/base.py", line 191, in __call__
    with recv_stream, send_stream, collapse_excgroups():
                                   ^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/.local/share/uv/python/cpython-3.12.12-macos-aarch64-none/lib/python3.12/contextlib.py", line 158, in __exit__
    self.gen.throw(value)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/_utils.py", line 85, in collapse_excgroups
    raise exc
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/base.py", line 193, in __call__
    response = await self.dispatch_func(request, call_next)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/core/logging.py", line 36, in dispatch
    response = await call_next(request)
               ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/base.py", line 168, in call_next
    raise app_exc from app_exc.__cause__ or app_exc.__context__
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/base.py", line 144, in coro
    await self.app(scope, receive_or_disconnect, send_no_error)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/middleware/exceptions.py", line 63, in __call__
    await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    raise exc
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    await app(scope, receive, sender)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__
    await self.app(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/routing.py", line 716, in __call__
    await self.middleware_stack(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/routing.py", line 736, in app
    await route.handle(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/routing.py", line 290, in handle
    await self.app(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 115, in app
    await wrap_app_handling_exceptions(app, request)(scope, receive, send)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app
    raise exc
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app
    await app(scope, receive, sender)
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 101, in app
    response = await f(request)
               ^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 355, in app
    raw_response = await run_endpoint_function(
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/fastapi/routing.py", line 243, in run_endpoint_function
    return await dependant.call(**values)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/core/logging.py", line 148, in async_wrapper
    result = await func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/routers/feedback.py", line 18, in request_feedback
    return await service.generate_feedback(request)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/core/logging.py", line 148, in async_wrapper
    result = await func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/services/feedback_service.py", line 35, in generate_feedback
    result = await self._run_pipeline(request)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/core/logging.py", line 148, in async_wrapper
    result = await func(*args, **kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/services/feedback_service.py", line 74, in _run_pipeline
    return await run_feedback_pipeline(initial_state)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/graphs/feedback/feedback_graph.py", line 28, in run_feedback_pipeline
    result = await graph.ainvoke(initial_state)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/langgraph/pregel/main.py", line 3161, in ainvoke
    async for chunk in self.astream(
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/langgraph/pregel/main.py", line 2974, in astream
    async for _ in runner.atick(
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/langgraph/pregel/_runner.py", line 304, in atick
    await arun_with_retry(
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/langgraph/pregel/_retry.py", line 138, in arun_with_retry
    return await task.proc.ainvoke(task.input, config)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/langgraph/_internal/_runnable.py", line 705, in ainvoke
    input = await asyncio.create_task(
            ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/.venv/lib/python3.12/site-packages/langgraph/_internal/_runnable.py", line 473, in ainvoke
    ret = await self.afunc(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/graphs/nodes/feedback_generator.py", line 21, in feedback_generator
    result = await llm.generate_structured(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/kimyoon/Documents/yoon/project/qfeed/providers/llm/vllm.py", line 73, in generate_structured
    schema = response_model.model_json_schema()
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: type object 'list' has no attribute 'model_json_schema'
During task with name 'feedback_generator' and id 'ff640949-7901-eeb9-574a-b2a6bc344953'

πŸ” 원인 뢄석

βœ… ν•΄κ²° 방법

πŸ”— κ΄€λ ¨ 링크

  • κ΄€λ ¨ 이슈: #
  • κ΄€λ ¨ 컀밋/PR:

πŸ’‘ 회고

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions