AI 제작 가이드

AI 개발로 납품 서류에서 빠진 항목 찾기

출하 검사서·거래명세서·첨부서류를 주문별로 대조하는 문서 자동화 구현 방법입니다. FastAPI 파일 접수와 Tesseract OCR, 필수 서류 검사, 원본 확인 화면을 연결하는 AI 개발 범위를 설명합니다.

핵심 요약

1. 주문별 필수 서류와 접수한 파일을 대조해 납품 전에 보완할 항목을 보여줍니다. 2. FastAPI로 파일을 받고 Tesseract OCR로 글자를 읽은 뒤, 서류 유무와 기준값은 별도 로직으로 검사합니다. 3. 납품요건 충족표와 원본 확인 화면을 직접 개발해 담당자가 애매한 항목을 판단하게 합니다.

납품 서류는 파일이 여러 개 도착했다고 준비가 끝나는 업무가 아닙니다. 주문마다 필요한 서류가 다르고, 첨부된 검사서의 주문번호나 수량이 맞는지도 확인해야 합니다. 이런 문서 자동화를 위한 AI 개발은 글자를 읽는 기능과 납품 조건을 검사하는 기능을 나누는 데서 시작합니다.

아래는 출하 검사서·거래명세서·첨부서류를 받아 납품요건 충족표를 만드는 구현 방식입니다. 기술이 제공하는 기본 기능에 어떤 업무 규칙과 확인 화면을 추가해야 하는지 설명합니다.

주문번호를 기준으로 서류 묶음 접수하기

접수 화면에서는 주문번호를 선택하고 파일을 올린 뒤, 각 파일의 서류 종류를 지정하게 합니다. FastAPI의 UploadFile은 업로드 파일을 받는 기능을 제공합니다. 파일을 주문에 연결하고 허용한 형식인지 검사하는 기능은 별도로 개발합니다.

한 파일에 검사서와 거래명세서가 함께 들어 있다면 담당자가 서류별 페이지 범위를 지정할 수 있게 합니다. 접수 결과에는 주문번호, 파일명, 서류 종류, 페이지가 나타납니다. 검수할 때는 같은 이름의 파일을 다시 올려도 기존 자료가 임의로 덮어써지지 않는지 확인합니다.

AI 개발 기능 구현 요약
자료: 트램스 · AI 개발 기능 구현 요약

Tesseract OCR로 문서의 확인 항목 읽기

OCR은 이미지 속 글자를 읽는 기술이며, Tesseract는 이를 수행하는 오픈소스 엔진입니다. 스캔 문서는 페이지별 이미지로 준비하고, 주문번호·품목·수량·검사 결과처럼 대조에 필요한 항목을 추출하도록 연결합니다. PDF를 이미지로 바꾸는 처리와 항목을 구분하는 규칙은 별도로 마련합니다.

읽힌 글자만 저장하면 담당자가 오류를 확인하기 어렵습니다. 추출값을 원본 파일과 페이지, 해당 칸의 위치에 연결하는 로직을 개발합니다. 문서 양식마다 항목 위치가 다르면 적용할 추출 규칙도 나누고, 같은 이름의 항목이 여러 곳에 있을 때 어느 값을 사용할지 정합니다.

필수 서류의 존재와 기준값을 따로 검사하기

첫 번째 검사는 주문에 필요한 서류가 있는지 확인하는 일입니다. 개발 전에 요청할 자료의 한 예는 ‘주문 유형별 필수 서류표’입니다. 출하 검사서와 거래명세서는 항상 필요하고 특정 주문에는 추가 확인서가 필요하다는 식으로, 적용 조건까지 적힌 자료를 기준으로 비교 로직을 만듭니다.

두 번째 검사는 제출된 서류의 내용이 주문 조건과 맞는지 확인하는 일입니다. 주문번호 일치 여부, 품목별 납품 수량, 검사 결과의 허용 표기를 각각 비교합니다. 이때 기준은 발주 담당자가 제공한 주문 자료와 업무 규칙에서 가져오며, OCR이 읽은 내용으로 기준을 대신 정하지 않습니다.

AI 개발 업무 처리 순서
자료: 트램스 · AI 개발 업무 처리 순서

문서가 있어도 수량이 다를 수 있으므로 두 검사 결과를 분리해 표시합니다. 수량의 단위나 품목 표기가 다른 경우에는 합의한 변환 규칙을 적용하고, 비교 조건이 정해지지 않은 항목은 담당자 확인 대상으로 남깁니다.

읽기 어려운 칸을 원본 옆에서 확인하기

두 번째 자료 예시는 개인정보와 거래처 정보를 가린 실제 납품 서류 한 묶음입니다. 깨끗한 문서뿐 아니라 흐린 스캔과 도장이 글자를 가린 페이지도 포함하면 확인 화면의 범위를 정하기 좋습니다. 문서에서 읽은 값과 비교 기준을 나란히 보여주고, ‘원본 보기’를 누르면 해당 페이지와 칸이 열리도록 개발합니다.

반드시 검수할 실패 사례는 검사서가 첨부됐지만 주문번호가 흐려 읽히지 않는 경우입니다. 이때 화면은 ‘검사서 누락’으로 단정하지 않고, 첨부된 원본과 함께 주문번호 확인이 필요하다고 안내해야 합니다. 담당자가 값을 수정하면 수정 전후의 내용과 확인자를 기록하고 관련 비교 항목을 다시 검사합니다.

AI 개발 기술별 역할
자료: 트램스 · AI 개발 기술별 역할

납품요건 충족표에서 보완하고 재검사하기

결과 화면은 주문별로 필요한 서류, 접수한 파일, 내용 비교 결과, 보완할 사항을 한 행씩 보여줍니다. 예를 들어 거래명세서는 접수됐지만 수량이 주문 자료와 다르면 해당 행에 두 수량과 차이를 표시합니다. ‘보완 파일 올리기’와 ‘다시 검사’ 버튼을 연결하면 담당자가 결과를 확인한 자리에서 후속 작업을 이어갈 수 있습니다.

재검사에서는 새 파일이 어떤 기존 서류를 대체하는지 선택하게 합니다. 기존 판단을 그대로 복사하지 않고 교체된 서류와 연결된 항목을 다시 비교합니다. 최종 검수에서는 서류를 추가하거나 값을 수정했을 때 충족표가 함께 갱신되는지, 담당자 확인이 남은 주문을 완료로 표시하지 않는지 확인합니다.

주문 자료를 기존 업무 시스템에서 가져올 계획이라면 연결할 항목과 갱신 시점도 정해야 합니다. 파일 열람 권한과 보관 기간은 별도로 구현할 운영 조건입니다. 발주 단계에서는 접수, 추출, 조건 비교, 담당자 확인 중 어디까지 자동화할지 정하면 개발 범위를 구체화할 수 있습니다.

납품 서류 점검 기능의 개발을 문의하실 때는 주문 유형별 필수 서류표와 익명화한 서류 묶음, 비교할 주문 항목을 준비해 주세요. 연결할 업무 시스템과 담당자 확인 절차를 함께 알려주시면 필요한 기능과 검수 범위를 구체적으로 논의할 수 있습니다. 트램스 AI 제작 문의 (https://trams.co.kr/ai-si/contact/#inquiry)

참고 자료

  1. https://trams.co.kr/ai-si/
  2. https://tesseract-ocr.github.io/tessdoc/
  3. https://fastapi.tiangolo.com/tutorial/request-files/
TRAMS AI

비슷한 AI 서비스를
사업에 적용하고 싶으신가요?

아이디어와 필요한 기능을 알려주시면 제작 범위와 방법을 검토합니다.

프로젝트 문의