Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

모델을 함수로 사용하기

온라인 추론 배포가 있는 모델 또는 Modeling Objective의 온라인 배포를 함수로 게시할 수 있습니다. Workshop, Slate와 Actions 등에서 호출하고 다른 함수 안에서 예측을 업무 로직으로 가공할 수 있습니다.

바인딩과 언어

TypeScript v1, v2와 Python에서 모델 함수를 호출할 수 있습니다. v2와 Python 저장소는 온톨로지에 연결된 함수만 지원하며 생성 OSDK에서 해당 쿼리를 제공합니다.

2026년 2월 이후 만든 모델 함수는 온톨로지에 연결됩니다. 이전 공간(Space) 기반 함수의 TypeScript v1 호출과 가져오기 경로가 다릅니다.

공간 기반 TypeScript v1

다음 예시의 모델 API 입력 이름은 input_df이고 Double 배열을 받습니다. output_df라는 Double 배열 출력을 반환한다고 가정합니다. 실제 입력 및 출력 이름을 정확히 맞춥니다.

import { Function, Double } from "@foundry/functions-api";
import { ModelDeployment } from "@foundry/models-api/deployments";

export class MyFunctions {
    @Function()
    public async predictValues(inputs: Double[]): Promise<Double[]> {
        const modelOutput = await ModelDeployment({ input_df: inputs });
        return modelOutput.output_df;
    }
}

온톨로지 기반 v1은 Queries를 @foundry/ontology-api에서 가져와 Queries.modelDeployment({ input_df: inputs })로 호출하는 경로를 사용합니다. 공간 기반 deployment import와 혼합하지 않습니다.

TypeScript v2

생성 SDK의 modelDeployment와 인증된 Client를 사용합니다.

import { Client } from "@osdk/client";
import { Double } from "@osdk/functions";
import { modelDeployment } from "@ontology/sdk";

async function predictValues(client: Client, inputs: Double[]): Promise<Double[]> {
    const modelOutput = await client(modelDeployment).executeFunction({
        input_df: inputs
    });
    return modelOutput.output_df;
}

export default predictValues;

Python

생성된 FoundryClient의 ontology.queries를 통해 호출합니다.

from functions.api import function, Double
from ontology_sdk import FoundryClient


@function(beta=True)
def predict_values(inputs: list[Double]) -> list[Double]:
    model_output = FoundryClient().ontology.queries.model_deployment(
        input_df=inputs
    )
    return model_output.output_df

배포의 모델 API가 바뀌면 함수 입출력과 소비 코드가 그 계약을 충족하는지 확인해야 합니다.