모델 어댑터
모델 어댑터는 모델 파일과 가중치, 컨테이너 또는 외부 호스팅 모델을 Foundry가 실행하도록 연결하는 클래스입니다. 해당 모델 버전의 어댑터와 의존성을 사용하여 초기화한 뒤 선언된 입력과 출력으로 추론합니다.
초기화
플랫폼에서 학습한 모델은 auto_serialize로 생성자 입력을 저장하고 복원할 수 있습니다. 기본 직렬화기로 처리할 수 없는 형식이나 필요한 모델만 메모리에 올리는 경우에는 save와 load 로직을 직접 구현합니다.
컨테이너 모델은 init_container(), 외부 모델은 init_external()에서 초기화합니다. 이 모델들도 load()를 거치며 기본 구현이 해당 초기화 메서드에 필요한 컨텍스트를 전달합니다. 컨테이너 컨텍스트에는 서비스 주소와 공유 디렉터리가, 외부 모델 컨텍스트에는 연결 설정과 복호화한 자격 증명이 포함됩니다. 초기화 전체를 제어하려면 load()를 재정의할 수도 있습니다.
변환에서 어댑터를 로드하려면 그 환경에 의존성이 있어야 합니다. ModelInput의 use_sidecar=True를 사용하면 분리한 컨테이너에서 모델 환경을 실행하고 predict() 요청을 자동 전달합니다. 소비 저장소의 라이브러리와 모델 의존성 사이의 충돌을 피할 수 있습니다.
API와 추론 로직
api()는 입력과 출력 이름, 자료형 및 필요한 열을 선언합니다. Foundry는 이 계약으로 모델을 다른 앱과 연결하고 추론 로직에 입력을 전달합니다. API 정의에서 표, 매개변수, 파일시스템, 미디어와 온톨로지 입력의 조건을 확인합니다.
단일 표 또는 매개변수 출력은 predict()에서 결과를 반환합니다. 여러 출력이나 파일시스템에 쓰는 모델은 run_inference()에서 각 출력에 기록합니다. 배치와 대화형 소비 모두 초기화한 어댑터의 추론 로직을 사용합니다.
작성과 변경
어댑터 생성에서 독립 라이브러리, 모델 학습 저장소와 Jupyter의 패키징 차이를 비교합니다. 참조는 저장 및 로드 객체와 추론 인터페이스를 설명합니다. 학습 가중치를 유지하면서 로직이나 의존성만 바꾸려면 어댑터 업그레이드의 적용 범위와 호환 조건을 확인합니다.