Skip to content

[feat] Add extraction result schema and worker extraction interface#3

Merged
1000hyehyang merged 4 commits intodevfrom
feat/2-extraction-result-schema
Apr 28, 2026
Merged

[feat] Add extraction result schema and worker extraction interface#3
1000hyehyang merged 4 commits intodevfrom
feat/2-extraction-result-schema

Conversation

@KyungminPark-steck
Copy link
Copy Markdown
Contributor

✨ 무엇을 바꿨나요?

processing job 결과 응답에 LLM 추출 결과를 담을 수 있도록 extraction_result schema와 worker 추출 단계 인터페이스를 추가했습니다.

실제 HF endpoint 연결 전에도 mock/fake client로 추출 단계를 테스트할 수 있도록 HF extraction client 초안과 관련 테스트를 함께 추가했습니다.

🔗 관련 이슈

Closes #2

💡 왜 바꿨나요?

최종적으로 caption에서 가게명, 주소, 근거 문장, certainty 등을 추출해 job result API에 포함해야 합니다.

그 전에 외부 API 응답 필드명, 내부 도메인 모델, worker 파이프라인의 추출 단계 경계를 먼저 정리해 두면 실제 endpoint 연결, DB 저장, fallback 모델 추가를 더 안전하게 이어갈 수 있습니다.

📝 주요 변경 사항

  • API result 응답에 extraction_result 필드 추가
  • 추출 결과 도메인 모델 추가
    • ExtractionResult
    • ExtractionCertainty
  • LLM 응답 파싱용 schema 추가
    • ExtractionLLMResponse
  • worker processor에 mock 가능한 extraction client 인터페이스 추가
  • 추출 실패 시 job 전체 실패로 전파하지 않고 extraction_result만 비워두도록 처리
  • HF extraction client 초안 추가
    • endpoint URL/token 설정
    • generated text 추출
    • JSON object 파싱
    • schema validation
  • 관련 테스트 추가
    • extraction schema validation
    • HF extraction client parsing/validation
    • worker extraction flow
    • job result response schema

👀 리뷰어가 보면 좋은 부분

  • 외부 API 필드명을 extraction_result로 통일한 것이 적절한지
  • 내부 도메인 모델명 ExtractionResult / ExtractionCertainty가 이후 DB 저장, fallback, Kakao enrichment 단계까지 확장하기 적절한지
  • extraction client 실패를 job 실패로 처리하지 않는 정책이 맞는지
  • HF response parsing에서 지원하는 payload shape이 충분한지

🧪 테스트

방식 (해당하는 것만 체크)

  • 로컬 환경에서 확인
  • 운영 환경에서 확인
  • 단위 / 통합 테스트
  • 해당 없음

메모 (시나리오, 커맨드, 스크린샷 링크 등 — 선택)

  • .\.venv\Scripts\python.exe -m pytest
  • 결과: 36 passed

Copy link
Copy Markdown
Member

@1000hyehyang 1000hyehyang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@KyungminPark-steck 좋습니다! 이후 HF 실제 연동 시 필요한 HF_EXTRACTION_ENDPOINT_URL, HF_EXTRACTION_API_TOKEN 값은 디스코드에 공유 부탁드립니다~~ 그리고 만약 DB 스키마 변경이 필요하다면 migration 코드도 꼭 추가해주세요!

@1000hyehyang 1000hyehyang merged commit dfe7361 into dev Apr 28, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feat] Add extraction result schema and worker extraction interface

2 participants