함수 언어별 지원 범위
같은 함수라도 TypeScript v1, TypeScript v2와 Python의 실행 환경 및 연결 API가 다릅니다. AIP Logic은 코드 언어 대신 블록으로 로직을 구성하는 별도 작성 방식입니다.
기능 비교
| 기능 또는 연결 경로 | AIP Logic | TypeScript v1 | TypeScript v2 | Python |
|---|---|---|---|---|
| 온톨로지 객체 사용 | 지원 | 지원 | 지원 | 지원 |
| 온톨로지 인터페이스 접근과 편집 | 미지원 | 미지원 | 지원 | 미지원 |
| 온톨로지 편집 | 지원 | 지원 | 지원 | 지원 |
| 함수 Media API 작업 | 해당 SDK API 없음 | 전체 지원 | 부분 지원 | 부분 지원 |
| Workshop에서 호출 | 지원 | 지원 | 지원 | 지원 |
| Pipeline Builder 함수로 사용 | 미지원 | 미지원 | 미지원 | 지원 |
| 라이브 배포 모델 호출 | 지원 | 지원 | 지원 | 지원 |
| 별칭과 Platform SDK를 통한 LLM 프록시 호출 | 해당 코드 경로 없음 | 해당 경로 미지원 | 지원 | 지원 |
| 의미 기반 검색 구성 | 지원 | 지원 | 지원 | 지원 |
| 함수의 웹훅 호출 | 해당 코드 API 없음 | 직접 호출 | 웹훅 함수 경유 | 웹훅 함수 경유 |
| 외부 API의 직접 코드 호출 | 해당 코드 API 없음 | 지원 | 지원 | 지원 |
| 서버리스 실행 | 지원 | 지원 | 지원 | 지원 |
| 전용 배포 실행 | 미지원 | 미지원 | 지원 | 지원 |
| 적용 대기 쓰기, Beta | Logic 실행 모드로 지원 | 미지원 | 지원 | 지원 |
| API Gateway의 쿼리 함수 호출 | 지원 | 지원 | 지원 | 지원 |
| Marketplace 패키징 | 지원 | 지원 | 지원 | 지원 |
| 함수를 모델로 등록하는 Bring-your-own-model | 지원 | 지원 | 미지원 | 미지원 |
Media API의 전체 지원에는 문서 OCR과 오디오 전사가 포함됩니다. TSv2와 Python은 편집을 통한 미디어 업로드와 미디어 속성의 기본 작업을 지원하지만 문서 및 오디오 전용 작업은 지원하지 않습니다. 이 구분은 코드 API의 범위이며 AIP Logic의 모델 블록에서 미디어를 사용하는 기능 전체를 뜻하지 않습니다.
TSv2와 Python의 라이브 모델 호출에는 온톨로지에 연결한 모델 함수가 필요합니다. LLM 프록시 행도 특정 연결 경로를 설명합니다. TSv1의 모델 바인딩과 Logic의 LLM 블록은 별도로 사용할 수 있습니다. Bring-your-own-model은 함수를 모델로 등록하는 방식이며, 레거시 함수 인터페이스 방식은 TSv1에만 적용됩니다.
Logic의 적용 대기 쓰기는 별도 Beta 설정이며 실행 모드와 Automate 호출 조건을 따릅니다. 제공 여부는 플랫폼 인스턴스에 따라 다를 수 있습니다. 이 표는 함수의 지원 기능을 다루며, 액션의 쓰기 방식과 읽기 격리 수준은 액션 일관성의 별도 계약을 따릅니다.
OSDK와 TypeScript v2
TSv2와 Python은 OSDK를 사용하여 개발 환경 안팎에서 온톨로지 코드를 재사용하고 Developer Console과 SDK 버전 체계를 활용할 수 있습니다. 신규 코드 기반 워크플로에는 TSv2가 권장됩니다.
TSv2는 전체 Node.js 런타임에서 실행하므로 fs, child_process, crypto 같은 기본 모듈과 더 넓은 npm 패키지를 사용할 수 있습니다. worker_threads를 이용한 병렬 계산도 가능합니다. 자원 요청은 최대 8 vCPU를 지원하며 서버리스 메모리는 최대 5120MiB까지 구성할 수 있습니다. 자세한 값은 런타임 한도를 따릅니다.
서버리스와 전용 배포
플랫폼 인스턴스에서 서버리스가 활성화되어 있으면 새 저장소는 기본으로 서버리스를 사용합니다. 대부분의 경우 서버리스가 권장됩니다.
서버리스는 같은 함수의 여러 버전을 필요할 때 실행하고 실제 실행에 대해 비용이 발생합니다. 인프라를 자동으로 관리하여 초기 설정과 유지보수가 줄어듭니다. 전용 배포는 실행 준비가 된 자원을 할당하고 배포가 켜져 있는 동안 비용이 발생하며 한 번에 한 함수 버전을 실행합니다. TSv2와 Python의 일부 요구에는 전용 배포가 더 적합하거나 필요할 수 있습니다.