이 문서에서는 애플리케이션을 사용할 때 발생할 수 있는 오류를 해결하는 방법에 대해 설명합니다.
작업 스키마가 비어 있음
애플리케이션이 .operation_schemas()
에서 빈 목록을 반환하는 경우 다음 문제 중 하나가 원인일 수 있습니다.
애플리케이션 생성 중에 스키마 생성 실패
문제:
애플리케이션을 배포하면 다음과 유사한 경고가 표시됩니다.
WARNING:vertexai.reasoning_engines._reasoning_engines:failed to generate schema: issubclass() arg 1 must be a class
가능한 원인:
1.49.0
보다 이전 버전의 google-cloud-aiplatform
에서 사전 빌드된 LangchainAgent
템플릿을 사용하여 애플리케이션을 배포하면 이 경고가 발생할 수 있습니다. 사용 중인 버전을 확인하려면 터미널에서 다음 명령어를 실행합니다.
pip show google-cloud-aiplatform
추천 솔루션:
터미널에서 다음 명령어를 실행하여 google-cloud-aiplatform
패키지를 업데이트합니다.
pip install google-cloud-aiplatform --upgrade
google-cloud-aiplatform
패키지를 업데이트한 후 다음 명령어를 실행하여 버전이 1.49.0
이상인지 확인합니다.
pip show google-cloud-aiplatform
노트북 인스턴스(예: Jupyter, Colab 또는 Workbench)를 사용하는 경우 런타임을 다시 시작하여 업데이트된 패키지를 사용해야 할 수 있습니다. google-cloud-aiplatform
버전이 1.49.0
이상인지 확인한 후 애플리케이션을 배포해 봅니다.
애플리케이션을 쿼리할 때 PermissionDenied
오류 발생
필요한 권한이 없으면 쿼리가 실패할 수 있습니다.
LLM 권한
문제:
다음과 유사한 PermissionDenied
오류가 표시될 수 있습니다.
PermissionDenied: 403 Permission 'aiplatform.endpoints.predict' denied on resource
'//aiplatform.googleapis.com/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/
google/models/{MODEL}' (or it may not exist). [reason: "IAM_PERMISSION_DENIED"
domain: "aiplatform.googleapis.com"
metadata {
key: "permission"
value: "aiplatform.endpoints.predict"
}
metadata {
key: "resource"
value: "projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL}"
}
]
가능한 원인:
서비스 계정에 대규모 언어 모델(LLM)을 쿼리할 적절한 권한이 없을 수 있습니다.
추천 솔루션:
서비스 계정에 오류 메시지에 나열된 적절한 Identity and Access Management(IAM) 권한이 있는지 확인합니다. 누락된 IAM 권한의 예시는 aiplatform.endpoints.predict
입니다. 자세한 내용은 서비스 에이전트 권한 설정을 참조하세요.
Reasoning Engine 실행 실패
애플리케이션을 쿼리할 때 'Reasoning Engine 실행 실패' 오류 메시지가 표시되면 이 섹션에 설명된 문제 중 하나가 원인일 수 있습니다.
.query()
에 잘못된 입력값
문제:
다음과 유사한 FailedPrecondition
오류가 표시될 수 있습니다.
FailedPrecondition: 400 Reasoning Engine Execution failed. Error Details:
{"detail":"Invalid request: `{'query': ...}`"}
가능한 원인:
이 오류는 쿼리의 입력을 키워드 인수가 아닌 위치 인수로 지정할 때 발생합니다. 예를 들어 agent.query(input=query_str)
대신 agent.query(query_str)
를 호출합니다.
추천 솔루션:
배포된 Reasoning Engine의 인스턴스를 쿼리할 때는 모든 입력을 키워드 인수로 지정합니다.
Gemini 모델 할당량 소진
문제:
Gemini 호출에서 오류가 발생했음을 나타내는 다음과 유사한 오류가 표시될 수 있습니다.
FailedPrecondition: 400 Reasoning Engine Execution failed. Error Details:
{"detail":"...langchain_google_vertexai/chat_models.py...google.api_core.exceptions.ResourceExhausted: 429 Unable to submit request because the service is temporarily out of capacity. Try again later."}
또는 다른 오류 메시지가 표시됩니다.
FailedPrecondition: 400 Reasoning Engine Execution failed. Error Details:
{"detail":"...langchain_google_vertexai/chat_models.py...google.api_core.exceptions.InternalServerError: 500 Internal error occurred."}
가능한 원인:
최근에 요청을 너무 많이 보내 Gemini 모델 할당량을 모두 사용한 경우 이러한 문제가 발생할 수 있습니다.
추천 솔루션:
Gemini 모델 할당량 관리 프로세스에 따라 할당량을 늘립니다. 또는 테스트에 비율 제한을 적용하고 나중에 다시 시도해 보세요.