0 / 0

문서에서 텍스트 추출

마지막 업데이트 날짜: 2025년 5월 03일
문서에서 텍스트 추출

복잡하고 고도로 구조화된 문서에서 텍스트를 추출하여 RAG 솔루션에 쉽게 통합할 수 있는 간단한 텍스트 기반 파일 형식으로 변환하세요.

텍스트 추출은 문서 구조에 따라 문서에서 특정 개체나 정보 범주를 추출하려는 사용 사례에 유용합니다.

텍스트 추출 REST API를 사용하여 프로젝트에 에셋으로 저장된 입력 파일에서 텍스트를 추출할 수 있습니다. 텍스트 추출은 한 번에 하나의 파일을 변환하는 비동기 프로세스입니다. 병렬 메서드 요청을 통해 문서 집합에서 텍스트를 추출할 수 있습니다. 텍스트 추출 결과는 요청에 지정한 출력 형식에 따라 하나 또는 여러 개의 파일로 프로젝트에 저장됩니다.

시작하기 전에

  1. 문서를 프로젝트에 추가하기 전에 다음과 같이 준비하세요:

    • 문서에서 비밀번호 보호 기능을 제거하세요.
    • PDF 문서가 디지털 인증을 받은 경우, 문서를 DOC 또는 DOCX와 같은 다른 파일 형식으로 변환하세요.
  2. 특정 사용 사례에 맞게 텍스트 추출 요청에 포함할 매개변수를 결정하세요. 자세한 내용은 텍스트 추출 매개변수를 참조하세요.

프로시저

REST API를 사용하여 비즈니스 문서에서 텍스트를 추출하려면 다음 개략적인 단계를 따르세요:

  1. 텍스트를 추출할 파일을 IBM Cloud Object Storage 버킷에 추가한 다음 watsonx.ai 프로젝트에서 IBM Cloud Object Storage 서비스 인스턴스로의 연결을 정의합니다.

    문서는 프로젝트에 연결 자산으로 저장한 다음 연결 ID로 참조해야 합니다. 자격 증명에 액세스 키와 비밀 키 쌍을 사용하는 연결 자산만 지원됩니다. 자세한 내용은 API에서 참조할 파일 추가하기를 참조하세요.

  2. 텍스트 추출 요청 시작 메서드를 사용하여 텍스트 추출 프로세스를 시작합니다.

    metadata.id 필드에 반환되는 ID를 기록해 두세요. 이 ID를 추출 ID로 사용하여 다음 단계에서 요청의 상태를 확인합니다.

  3. 요청 결과 가져오기를 사용하여 요청 상태를 확인합니다.

    상태를 확인해야만 어떤 이유로 프로세스가 실패했는지 확인할 수 있습니다.

    상태가 Completed 인 경우 추출된 텍스트 파일은 지정된 IBM Cloud Object Storage 버킷에서 사용할 수 있습니다.

  4. Cloud Object Storage 에서 생성된 파일을 다운로드하세요.

요청 예제

다음 명령은 retail_guidebook.pdf 파일에서 텍스트를 추출하여 output_retail.md 에 마크다운 형식으로 저장하라는 요청을 제출합니다.

curl -X POST \
  'https://{region}.ml.cloud.ibm.com/ml/v1/text/extractions?version=2024-10-18' \
  --header 'Accept: application/json' \
  --header 'Content-Type: application/json' \
  --header 'Authorization: Bearer eyJraWQiOi...'

요청 본문은 다음과 같습니다:

{
    "project_id": "e40e5895-ce4d-42a3-b699-8ac764b89a09",
    "document_reference": {
      "type": "connection_asset",
      "connection": {
        "id": "5c0cefce-da57-408b-b47d-58f7785de3ee"
      },
      "location": {
        "bucket":"my-cloud-object-storage-bucket",
        "file_name": "retail_guidebook.pdf"
      }
    },
    "results_reference": {
      "type": "connection_asset",
      "connection": {
        "id": "5c0cefce-da57-408b-b47d-58f7785de3ee"
      },
      "location": {
        "bucket":"my-cloud-object-storage-bucket",
        "file_name": "output_retail.md"
      }
    },
    "parameters": {
      "requested_outputs": {
        "languages_list": [
          "assembly",
          "md"
        ]
      },
      "mode": "standard",
      "ocr_mode": "enabled",
      "create_embedded_images": "disabled"
    }
  }

응답에서 64162e0a-b05d-4ba6-a688-422893f58663 과 같은 metadata.id 을 복사합니다. 추출 프로세스의 상태를 확인하는 데 사용하는 엔드포인트에 이 ID를 지정하세요.

curl -X GET \
  'https://{region}.ml.cloud.ibm.com/ml/v1/text/extractions/64162e0a-b05d-4ba6-a688-422893f58663?project_id=e40e5895-ce4d-42a3-b699-8ac764b89a09&version=2024-09-23' \
  --header 'Accept: application/json' \
  --header 'Authorization: Bearer eyJraWQiOi...'

추출된 결과의 위치는 results 속성의 응답에서 찾을 수 있습니다:

"results": {
  "completed_at": "2025-04-28T09:05:42.880Z",
  "location": ["/results_data1/assembly.html", "/results_data1/assembly.json",
               "/results_data1/assembly.md",
               "/results_data1/embedded_images_assembly/*.png",
               "/results_data1/page_images/*.png", "/results_data1/tables.json"],
  "number_pages_processed": 1,
  "running_at": "2025-04-28T09:05:27.345Z",
  "status": "completed"
}

다음 단계

상위 주제: 텍스트 추출