Azure Blob Storage는 클라우드를 위한 Microsoft의 객체 스토리지 솔루션입니다. Blob Storage는 대량의 비정형 데이터를 저장하는 데 최적화되어 있습니다. 비정형 데이터는 텍스트나 바이너리 데이터와 같이 특정 데이터 모델이나 정의를 따르지 않는 데이터입니다.
Azure Blob Storage는 다음과 같은 용도로 설계되었습니다:
- 브라우저에 이미지나 문서를 직접 제공
- 분산 액세스를 위한 파일 저장
- 비디오 및 오디오 스트리밍
- 로그 파일 작성
- 백업 및 복원, 재해 복구 및 아카이빙을 위한 데이터 저장
- 온프레미스 또는 Azure 호스팅 서비스에서 분석할 데이터 저장
Azure Blob Storage의 컨테이너에서 document 객체를 로드하는 방법을 다룹니다. document loader에 대한 자세한 문서는 Azure Blob Storage Loader API Reference를 참조하세요.
langchain_community의 이전 AzureBlobStorageFileLoader 및 AzureBlobStorageContainerLoader 대신 이 새로운 loader를 사용하는 것이 권장됩니다. 새 loader로 마이그레이션하는 자세한 지침은 migration guide를 참조하세요.Setup
컨테이너에서 로드
AzureBlobStorageLoader는 Azure Blob Storage의 주어진 컨테이너에서 모든 blob을 로드하며 account URL과 container name이 필요합니다. loader는 blob 콘텐츠(기본적으로 UTF-8 인코딩)와 blob URL을 포함한 메타데이터가 포함된 Document 객체를 반환합니다. 아래 예제를 참조하세요.
명시적인 credential 구성은 필요하지 않습니다. 현재 환경을 기반으로 Microsoft Entra ID tokens를 자동으로 검색하는 DefaultAzureCredential을 사용하기 때문입니다.
blob 이름으로 컨테이너에서 로드
blob 이름 목록에서 document를 로드할 수 있으며, 이는 blob 목록을 가져오는 API 호출 대신 제공된 blob만 사용합니다.기본 credentials 재정의
기본적으로 document loader는DefaultAzureCredential을 사용합니다. 아래 예제는 이를 재정의하는 방법을 보여줍니다:
blob 콘텐츠 파싱 커스터마이징
현재 각 blob을 파싱할 때의 기본값은 파일 유형에 관계없이 UTF-8 인코딩으로 콘텐츠를 단일Document 객체로 반환하는 것입니다. 특정 파싱이 필요한 파일 유형(예: PDF, CSV 등)이나 document 콘텐츠 형식을 제어하려는 경우, loader_factory 인수를 제공하여 이미 존재하는 document loader(예: PyPDFLoader, CSVLoader 등) 또는 커스터마이징된 loader를 사용할 수 있습니다.
이는 blob 콘텐츠를 임시 파일로 다운로드하여 작동합니다. 그런 다음 loader_factory가 filepath와 함께 호출되어 지정된 document loader를 사용하여 파일을 로드/파싱하고 Document 객체를 반환합니다.
아래는 PyPDFLoader를 사용하여 blob을 PDF로 파싱하는 데 사용되는 기본 loader를 재정의하는 방법을 보여줍니다:
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.