Amazon Bedrock에서 “지식 베이스 삭제 실패” 오류를 해결하고 싶습니다.
간략한 설명
Amazon Bedrock 지식 베이스를 삭제하면 다음과 같은 오류가 나타날 수 있습니다.
“example-knowledge-base를 삭제하지 못했습니다. example-id가 있는 데이터 소스의 벡터 저장소에서 데이터를 삭제할 수 없습니다. 벡터 스토어 구성 및 권한을 확인하고 요청을 재시도하세요. 문제가 지속되면 데이터 원본의 dataDeletionPolicy를 RETAIN으로 업데이트하고 요청을 다시 시도하세요.”
이 오류는 관련 벡터 데이터베이스에 저장된 데이터를 삭제할 권한이 없거나 벡터 데이터베이스가 존재하지 않을 때 발생합니다. 기본적으로 지식 베이스 데이터 원본에는 삭제로 설정된 데이터 삭제 정책이 있습니다. 이렇게 하면 데이터 소스가 삭제될 때 관련 벡터 데이터베이스 데이터를 삭제할 수 있습니다. 데이터 원본에 벡터 데이터베이스 데이터를 삭제할 권한이 없거나 대상 데이터베이스가 삭제된 경우 이전 오류가 발생합니다.
해결 방법
지식 베이스 삭제 실패 오류를 해결하려면 다음 단계를 완료하세요.
데이터 삭제 정책을 RETAIN으로 설정합니다.
다음 단계를 완료하세요.
- Amazon Bedrock 콘솔을 엽니다.
- 왼쪽 탐색 창에서 지식 베이스를 선택합니다.
- 삭제할 수 없는 지식 베이스를 선택하세요.
- 지식 베이스에서 삭제 실패 상태인 데이터 원본을 선택합니다.
- 편집을 선택합니다. 그런 다음 고급 설정을 선택합니다.
- 데이터 삭제 정책을 유지로 설정합니다. 그런 다음 제출을 선택합니다.
참고: 삭제 정책이 유지로 설정된 상태에서 데이터 원본을 삭제하면 연결된 벡터 데이터베이스 데이터가 삭제되지 않습니다.
데이터 삭제에 필요한 권한 부여
지식 베이스 삭제 실패 오류는 다음과 같은 이유로도 발생합니다.
- 지식 베이스 서비스 역할에는 특정 데이터베이스 API를 운영하는 데 필요한 권한이 없습니다. 필요한 권한이 AWS Identity and Access Management(IAM) 서비스 역할에 할당되었는지 확인하세요.
- 데이터 원본에는 벡터 데이터베이스에서 데이터 원본의 데이터를 삭제하는 데 필요한 리소스 기반 정책 권한이 없습니다. 관련 데이터를 삭제하고 데이터 원본 삭제를 완료하는 데 필요한 권한이 부여되었는지 확인하세요.
권한 문제를 해결하려면 벡터 데이터베이스에 사용하는 AWS 서비스를 기반으로 다음 방법 중 하나를 완료하세요.
Amazon OpenSearch Serverless의 경우 필요한 권한으로 데이터 액세스 정책을 업데이트하세요.
Amazon Aurora PostgreSQL의 경우 다음 명령 중 하나를 실행하여 기본 사용자에게 권한을 부여합니다.
postgres=> GRANT pg_read_all_data, pg_write_all_data TO example-username;
참고 예제 사용자 이름을 example-username으로 바꾸세요.
postgres=> GRANT SELECT, DELETE ON example-schema-name. example-table-name TO example-username;
참고 example-schema-name을 스키마 이름으로, example-table-name을 테이블 이름으로, example-username을 기본 사용자로 바꾸세요.
타사 데이터베이스의 경우 데이터 삭제에 필요한 권한이 있는지 확인하세요.