커뮤니티
포인트
로딩중
쿠폰
내 강의실
국비 신청 내역
수강권
증명서
숙제 피드백
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
5주차 7강 코드 에러
AI가 처음이어도 쉽게 배우는 생성형 AI A to Z v0
5주차
북마크
이*재
댓글
5
추천
0
조회수
23
조회수
23
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


5주차 7강 코드 에러



스파르타 즉문즉답





작성한 코드 및 에러 메세지

# 작성코드 #


import gradio as gr

import openai

import os

from langchain_openai import ChatOpenAI

from langchain_core.prompts import (

    ChatPromptTemplate,

    SystemMessagePromptTemplate,

    HumanMessagePromptTemplate,

)


client = openai.OpenAI()


def translate_text(text):

    chat = ChatOpenAI(temperature=0)


    template="You are a helpful assistant that translates {input_language} to {output_language}."

    system_message_prompt = SystemMessagePromptTemplate.from_template(template)


    human_template="{text}"

    human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)


    chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])


    response = chat(

    chat_prompt.format_prompt(

        input_language="korean", output_language="english", text=text

    ).to_messages()

)

   

    return response.content



def generate_response(prompt, size):

    translated_prompt = translate_text(prompt)

   

    gpt_prompt = [

        {"role": "system", "content": "Imagine the details of the input's appearance. Please respond briefly."},

        {"role": "user", "content": translated_prompt}

    ]

    gpt_response = client.chat.completions.create(

        model="gpt-3.5-turbo",

        messages=gpt_prompt

    )

    gpt_prompt_result = gpt_response.choices[0].message.content

   

    dalle_response = client.images.generate(

        model="dall-e-3",

        prompt = gpt_prompt_result,

        size = size,

        n = 1

    )


    image_url = dalle_response.data[0].url


    return gpt_prompt_result, image_url



image_sizes = gr.Dropdown(choices=["1024x1024", "1024x1792", "1792x1024"], label="이미지 크기")

iface = gr.Interface(

    fn = generate_response,

    inputs = ["text", image_sizes],

    outputs = ["text", "image"],

    live = False,  # live 모드 비활성화

    title = "DALL-E 봇 만들기!",

    description = "사용자 프롬프트를 기반으로 ChatGPT와 DALL-E를 사용하여 이미지를 생성합니다. 제출 버튼을 눌러 결과를 확인하세요."

)

iface.launch(debug=True)



#에러#


ERROR: Exception in ASGI application

Traceback (most recent call last):

File "/usr/local/lib/python3.10/dist-packages/pydantic/type_adapter.py", line 270, in _init_core_attrs

self._core_schema = _getattr_no_parents(self._type, '__pydantic_core_schema__')

File "/usr/local/lib/python3.10/dist-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 "/usr/local/lib/python3.10/dist-packages/uvicorn/protocols/http/h11_impl.py", line 406, in run_asgi

result = await app( # type: ignore[func-returns-value]

File "/usr/local/lib/python3.10/dist-packages/uvicorn/middleware/proxy_headers.py", line 70, in __call__

return await self.app(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/fastapi/applications.py", line 1054, in __call__

await super().__call__(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/applications.py", line 113, in __call__

await self.middleware_stack(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/middleware/errors.py", line 187, in __call__

raise exc

File "/usr/local/lib/python3.10/dist-packages/starlette/middleware/errors.py", line 165, in __call__

await self.app(scope, receive, _send)

File "/usr/local/lib/python3.10/dist-packages/starlette/middleware/cors.py", line 93, in __call__

await self.simple_response(scope, receive, send, request_headers=headers)

File "/usr/local/lib/python3.10/dist-packages/starlette/middleware/cors.py", line 144, in simple_response

await self.app(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/middleware/exceptions.py", line 62, in __call__

await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/_exception_handler.py", line 62, in wrapped_app

raise exc

File "/usr/local/lib/python3.10/dist-packages/starlette/_exception_handler.py", line 51, in wrapped_app

await app(scope, receive, sender)

File "/usr/local/lib/python3.10/dist-packages/starlette/routing.py", line 715, in __call__

await self.middleware_stack(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/routing.py", line 735, in app

await route.handle(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/routing.py", line 288, in handle

await self.app(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/routing.py", line 76, in app

await wrap_app_handling_exceptions(app, request)(scope, receive, send)

File "/usr/local/lib/python3.10/dist-packages/starlette/_exception_handler.py", line 62, in wrapped_app

raise exc

File "/usr/local/lib/python3.10/dist-packages/starlette/_exception_handler.py", line 51, in wrapped_app

await app(scope, receive, sender)

File "/usr/local/lib/python3.10/dist-packages/starlette/routing.py", line 73, in app

response = await f(request)

File "/usr/local/lib/python3.10/dist-packages/fastapi/routing.py", line 291, in app

solved_result = await solve_dependencies(

File "/usr/local/lib/python3.10/dist-packages/fastapi/dependencies/utils.py", line 639, in solve_dependencies

) = await request_body_to_args( # body_params checked above

File "/usr/local/lib/python3.10/dist-packages/fastapi/dependencies/utils.py", line 813, in request_body_to_args

fields_to_extract = get_cached_model_fields(first_field.type_)

File "/usr/local/lib/python3.10/dist-packages/fastapi/_compat.py", line 657, in get_cached_model_fields

return get_model_fields(model)

File "/usr/local/lib/python3.10/dist-packages/fastapi/_compat.py", line 284, in get_model_fields

return [

File "/usr/local/lib/python3.10/dist-packages/fastapi/_compat.py", line 285, in <listcomp>

ModelField(field_info=field_info, name=name)

File "<string>", line 6, in __init__

File "/usr/local/lib/python3.10/dist-packages/fastapi/_compat.py", line 110, in __post_init__

self._type_adapter: TypeAdapter[Any] = TypeAdapter(

File "/usr/local/lib/python3.10/dist-packages/pydantic/type_adapter.py", line 257, in __init__

self._init_core_attrs(rebuild_mocks=False)

File "/usr/local/lib/python3.10/dist-packages/pydantic/type_adapter.py", line 135, in wrapped

return func(self, *args, **kwargs)

File "/usr/local/lib/python3.10/dist-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 "/usr/local/lib/python3.10/dist-packages/pydantic/type_adapter.py", line 95, in _get_schema

schema = gen.generate_schema(type_)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 655, in generate_schema

schema = self._generate_schema_inner(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 908, in _generate_schema_inner

return self._annotated_schema(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 2028, in _annotated_schema

schema = self._apply_annotations(source_type, annotations)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 2107, in _apply_annotations

schema = get_inner_schema(source_type)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_schema_generation_shared.py", line 83, in __call__

schema = self._handler(source_type)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 2189, in new_handler

schema = metadata_get_schema(source, get_inner_schema)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 2185, in <lambda>

lambda source, handler: handler(source)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_schema_generation_shared.py", line 83, in __call__

schema = self._handler(source_type)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 2088, in inner_handler

schema = self._generate_schema_inner(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 929, in _generate_schema_inner

return self.match_type(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 1029, in match_type

return self._match_generic_type(obj, origin)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 1058, in _match_generic_type

return self._union_schema(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 1378, in _union_schema

choices.append(self.generate_schema(arg))

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 655, in generate_schema

schema = self._generate_schema_inner(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 929, in _generate_schema_inner

return self.match_type(obj)

File "/usr/local/lib/python3.10/dist-packages/pydantic/_internal/_generate_schema.py", line 1038, in match_type

return self._unknown_type_schema(obj)

File "/usr/local/lib/python3.10/dist-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(<some type>) 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.


For further information visit https://errors.pydantic.dev/2.9/u/schema-for-unknown-type



취소
 공유
취소
댓글 0
댓글 알림
나의얼굴