Kill Bill 대안을 선택하기 전에 오픈소스 핵심, 상업용 Aviate 모듈 또는 특정 호스팅 배열을 사용하는지 확인하십시오. 상업적 요구 사항에 적합한 Lago, Flexprice, Orb 및 선택된 Stripe 사용량 청구 경로를 비교하십시오. 승인된 Builder 배열을 통해 유효한 모델 추론 비용을 지불하고 허용된 추가 요금 및 앱 귀속 수익을 포함하려는 기존 앱의 경우 ShareAI를 평가하십시오. 운영 책임 및 실제 고객 지불자에서 시작하십시오.
2026년 10월 23일 검토됨. ShareAI는 이 비교를 게시하고 논의된 프로그램 중 하나를 운영합니다. 현재 공식 참조는 사실을 뒷받침하며, 스크린샷은 실제 소스 페이지를 보여줍니다. 실행된 코드는 오프라인 합성 원장입니다. 프로덕션 설치, 카탈로그, 지갑, 고객 송장, 결제, 마이그레이션 또는 성능 벤치마크는 생성되거나 변경되지 않았습니다.
Kill Bill 핵심은 Apache 2.0 하에 무료이며 이미 구독, 사용량 청구, 송장 및 결제 플러그인을 지원합니다. Aviate는 해당 엔진에 상업용 모듈 및 지원을 추가합니다. 핵심에 상업 패키지 가격을 적용하거나 핵심이 사용량을 청구할 수 없다고 말하는 비교는 구매자에게 잘못된 출발점을 제공합니다. 마찬가지로, Aviate 페이지의 모든 기능이 오픈소스 구현에 속하는 것은 아닙니다.
Kill Bill 핵심 및 Aviate 실제 포함 내용
공식 개요는 셀프 호스팅 청구 및 결제 인프라를 식별합니다. 현재 코어 대 Aviate 비교는 Apache 2.0 엔진을 상업적 모듈, 제어 평면 및 지원과 분리합니다. 유지해야 하는 이유: 인프라 소유권, 확장성 및 작동하는 고객 청구가 애플리케이션 요구 사항에 이미 적합한 경우 선택된 구현을 평가하십시오.
현재 AI 청구 참조는 앱이 구독별로 집계하고 기록하는 코어 사용을 Aviate Metering와 구분하며, 이는 원시 이벤트를 수락합니다. 또한 선불 지갑을 Aviate 범위로 식별합니다. 모든 계량 구성 요소가 무료 코어라는 추론이나 AI 사용이 항상 엔진 교체를 요구한다는 추론 대신 정확한 경계를 비교하십시오.
현재 비교는 여러 견적-to-현금, 계약, 승인, 수익 인식 및 액세스 제어 모듈을 Insider Preview로 특정 고객 및 파트너에게 라벨링합니다. 미리보기 범위를 보편적으로 사용 가능하다고 설명하지 마십시오. 코어와 Aviate는 청구 엔진을 공유하지만 실제 라이선스, 모듈, 지원 및 배포가 앱이 사용할 수 있고 운영해야 하는 것을 결정합니다.
배치 AI 앱은 이전 작업이 완료되는 동안 충전 대기 중입니다.
AI 작업 대기열이 있는 기존 자산 생성 앱을 가정해 보십시오. 고객은 크레딧을 구매하고 작업은 모델 리소스를 소비하며 승인된 상업적 제안이 요금을 결정합니다. 조직은 기존 구독 가격을 유지하면서 앱이 미래 고객을 위한 새로운 계획을 도입합니다. 비즈니스는 현재 고객 및 청구 기록을 잃지 않고 적격 추론에 허용된 마진을 비교하고자 합니다.
이미 시작된 작업은 지갑 충전 결제가 실패하는 동안 완료됩니다. 다른 작업자가 응답을 잃은 후 이벤트를 다시 제출합니다. 고객 화면은 제안된 충전을 표시하고 다른 작업을 시작할 수 있는지 묻습니다. 크레딧 기록, 사용 가능한 허용량, 실제 결제 및 작업 시작 권한은 서로 다른 사실입니다. 앱은 모든 보이는 지갑 항목을 사용 가능한 돈으로 간주하는 대신 명시적인 결정을 필요로 합니다.
지원팀은 이전 플랜에서 생성된 사용 불가능한 출력에 대한 수정 요청을 수락합니다. 원래 작업, 소스 관찰, 고객 구독, 유효 가격 및 조정을 유지하십시오. 새로운 카탈로그 버전이 기존 구독자 모두에게 자동으로 새로운 가격으로 적용되지 않도록 해야 합니다. 어려운 마이그레이션 사례는 가격 지속성과 실패한 충전 및 진행 중인 작업을 결합합니다.
변경되는 책임에 따라 대안을 비교하십시오.
| 옵션 | 이를 평가하십시오 | 별도로 자격을 부여하십시오. |
|---|---|---|
| Kill Bill 및 선택된 Aviate 모듈 | 선택 가능한 상업적 확장 기능을 포함한 셀프 호스팅 결제 | 코어 라이선스, 모듈 가용성 및 운영 작업 |
| Lago | 선택된 호스팅 또는 셀프 관리 사용 결제 | 배포 소유자, 결제 통합 및 수정 동작 |
| Flexprice | 선택된 크레딧, 사용량, 권리 및 송장 | 애플리케이션 확인, 결제 결과 및 원장 상태 |
| Orb | 선택된 관리 사용 가격 책정 및 상업적 결제 | 유효 계약, 과거 수정 및 수금 |
| Stripe 사용 결제 경로 | Stripe 생태계 내에서 선택된 사용 결제 | 기본 미터와 Metronome 및 기능 호환성 |
| ShareAI | 앱 마진이 포함된 승인된 고객 결제 추론 | 적격 트래픽, 앱 속성 및 정산 조건 |
배치 앱은 다른 승인된 추론 계약을 평가하는 동안 기존 구독을 유지할 수 있습니다. 이를 위해 실제 통합과 명확한 고객 설명이 필요합니다. 이러한 제품 간에는 네이티브 커넥터, 자동 공유 크레딧 풀 또는 이전된 계약이 암시되지 않습니다. 기존 사용자를 변경하기 전에 고객, 원래 작업, 사용 가능한 허용량, 승인된 요금 및 조정의 소유자를 결정하십시오.
선불 액세스를 약속하기 전에 지갑 및 송장 타이밍을 확인하십시오.
Aviate Wallet 참조는 기본 통화로 계정당 하나의 지갑을 설명합니다. Paid 크레딧은 송장과 결제 시도를 생성하며, 무료 크레딧은 이를 생성하지 않습니다. 페이지는 결제가 실패한 크레딧이 결제가 성공할 때까지 비활성 상태로 유지되며 잔액에서 제외된다고 명시합니다. 생성된 충전 송장은 따라서 새로 사용 가능한 유료 크레딧의 증거가 아닙니다.
동일한 참조는 Kill Bill가 사용 송장을 생성할 때 지갑 크레딧이 사용된다고 명시합니다. 이는 송장 생성 중 보류된 크레딧과 라이브 잔액을 구분합니다. 선택적 만료 및 고정 금액 또는 목표 잔액 충전은 추가 상업적 규칙을 추가합니다. 모든 모델 호출 전에 실시간 제한과 송장 시점 크레딧 적용을 동일시하지 않고 실제 애플리케이션 승인 제어를 자격으로 부여하십시오.
Aviate Metering 참조는 원시 이벤트 집계와 가격 책정 사용 계획을 설명합니다. 현재 카탈로그 동작은 새로운 계획 버전이 도입될 때 기존 구독 가격을 유지합니다. 대기 중인 작업의 경우, 지연된 관찰이 도착했을 때 최신 가격을 적용하는 대신 승인된 제안과 타이밍을 유지하십시오. 실제 기록을 통해 선택된 구성 및 수정 경로를 확인하십시오.
크레딧, 결제 및 작업 승인 증거를 분리하여 유지하십시오.
| 상태 | 유지해야 할 증거 | 배치 앱 질문 |
|---|---|---|
| Paid 크레딧 요청됨 | 원래 충전 및 연결된 청구서 | 고객이 승인한 보충은 무엇입니까? |
| 결제 결과 | 실제 성공 또는 실패 및 활성 크레딧 상태 | 제안된 유료 크레딧을 아직 사용할 수 있습니까? |
| 작업 승인됨 | 신뢰할 수 있는 고객 및 명시적 애플리케이션 결정 | 다른 모델 작업이 시작되도록 허용되었습니까? |
| 사용 청구됨 | 원래 작업, 유효한 계획 및 적용된 크레딧 | 이 요금이 발생한 유용한 작업 및 자원은 무엇입니까? |
| 수정 및 릴리스 | 승인된 조정 및 재정 결과 | 무엇이 변경되었으며 실제로 사용할 수 있는 돈은 무엇입니까? |
실패한 시도를 수집된 돈으로 표시하지 않고 유지하십시오. 재시도는 동일한 원래 이벤트를 참조하거나 합법적인 추가 모델 작업을 참조할 수 있습니다. 중복 제거 전에 어떤 것인지 식별하십시오. 고객 환불, 청구서 조정 및 복원된 허용량은 또한 다른 영향을 미칠 수 있습니다. 선택된 워크플로를 자격을 갖추게 하여 원래 사용을 삭제하거나 표시된 잔액을 재설정하여 모든 수정을 구현하지 마십시오.
Lago: 선택된 청구 배포 및 결제 통합 비교
Lago 소개는 데이터 수집, 메트릭 집계, 가격 책정, 청구서 및 연결된 결제를 설명하며, 호스팅 및 자체 관리 경로를 제공합니다. 장점: 앱이 애플리케이션 인프라의 나머지 부분과 독립적으로 상업적 사용을 모델링하려고 할 때 선택된 배포를 평가하십시오. 운영 및 복구뿐만 아니라 가격 책정 구성을 담당할 팀을 결정하십시오.
트레이드오프: 실제 에디션, 라이센스 범위, 고객 신원 및 결제 통합을 자격을 갖추게 하십시오. 자체 호스팅 청구는 자체 호스팅 앱 또는 모델 제공을 의미하지 않습니다. 문서화된 청구 기능은 모든 보류 중인 충전 또는 승인된 고객 수정이 현재 Kill Bill 구현과 동일한 타이밍을 따르는 것을 의미하지 않습니다.
대기 중인 작업에 대해 기존 계약, 지연된 소스 관찰 및 승인된 조정을 유지하십시오. 이러한 기록이 실제 송장 및 결제 프로세스에 도달하는 방식을 비교한 후 전체 고객 집단으로 이동하십시오. 요구 사항이 변경을 요구하지 않는 한 작동 중인 구독을 유지하십시오. 추론 지불자를 별도의 상업적 결정으로 비교하십시오.
Flexprice: 크레딧 및 애플리케이션 측 결정을 비교하십시오.
Flexprice 문서는 사용량 및 하이브리드 가격 책정, 지갑, 보조금, 권리, 구독 및 송장을 설명합니다. 장점: 앱이 크레딧 소비 및 구매한 권리를 연결하려고 할 때 선택된 범위를 평가하십시오. 현재 기능은 크레딧 또는 고객 청구가 불가능하다는 이전 비교의 포괄적인 주장으로 대체되어서는 안 됩니다.
트레이드오프: 크레딧 가격 책정 레시피는 앱에서 청구 가능한 작업 전에 계획 보조금, 충전 및 확인을 설명합니다. 실행 중인 작업, 재시도 및 결제 실패에 따라 실제 구현을 평가하십시오. 보조금, 원장 항목 및 요청 승인 결정은 동일한 제품 워크플로우에 나타나더라도 서로 다른 증거입니다.
실패한 보충에 대해 고객이 승인한 내용과 실제로 성공한 내용을 유지하십시오. 앱이 이미 시작된 작업을 처리하는 방식에 대해 결정하십시오. 무료 추가 작업을 조용히 생성하거나 원래 작업을 두 번 청구하지 마십시오. 선택한 플랫폼이 크레딧 번호를 표시할 수 있는지 여부뿐만 아니라 전체 고객 설명을 비교하십시오.
Orb: 가격 지속성과 승인된 수정 사항을 비교하십시오.
Orb 개요는 사용량, 좌석 및 하이브리드 청구, 가격 시뮬레이션 및 역사적 수정 사항을 설명합니다. 장점: 고객별 계약 및 효과적인 가격이 중요한 경우 선택된 구현을 비교하십시오. 역사적 사용량은 제안된 상업 모델을 적용하기 전에 평가하는 데 도움이 될 수 있으며, 기본 고객 및 작업 기록이 의도된 판매 제품을 나타내는 경우에 한합니다.
트레이드오프: 실제 데이터 수집, 계약 시점, 크레딧 처리 및 수금 여부를 검증하십시오. 시뮬레이션 또는 수정된 청구 금액은 수령된 결제의 증거가 아닙니다. 기존 구독 가격과 승인된 조정을 유지하며 대기 중인 작업에 대해 새로운 제안을 게시한다고 해서 모든 기존 고객에 대한 올바른 상업적 처리가 자동으로 정의되는 것은 아닙니다.
반복 작업 이벤트의 경우, 중복 여부를 결정하기 전에 원래 작업 ID와 소스 관찰을 유지하십시오. 유용한 출력과 소비된 자원은 상업적으로 다른 의미를 가질 수 있습니다. 선택된 사용 모델을 나타내는 실제 수정된 청구서와 결제 경로를 구현과 비교하십시오.
Stripe: 실제 사용-청구 통합 경로를 비교하십시오.
현재 Stripe 사용-청구 가이드는 새로운 사용 기반 통합을 위해 Metronome를 추천하며 기존 구현을 위해 기본 Billing Meters를 유지합니다. 장점: Stripe 생태계에서 기존 고객 및 수금 계약이 이미 적합한 경우 선택된 경로를 평가하십시오. 새로운 통합 선택이 기존 지원 미터가 작동을 멈췄다는 것을 의미하지는 않습니다.
트레이드오프: 공식 비교는 등급 및 청구를 결제 및 관련 서비스와 구분합니다. 선택된 구독, 크레딧, 체크아웃 및 세금 계약과의 호환성을 검증하십시오. 공유 제품 소유권은 모든 기능이나 운영 가정이 셀프 호스팅 청구 엔진에서 변경되지 않고 전송된다는 것을 의미하지 않습니다.
실패한 충전의 경우, 결제 결과, 현재 사용 가능한 값 및 대기 작업 정책을 유지하십시오. 선택된 경로가 승인된 제안 및 명시적 수정 하에서 지연된 작업을 어떻게 처리하는지 비교하십시오. 익숙한 프로세서 대시보드는 크레딧이 활성 상태이거나 애플리케이션이 또 다른 비용이 많이 드는 요청을 허용해야 한다는 것을 의미하지 않습니다.
ShareAI: 승인된 추론 결제 및 앱 속성 비교
ShareAI Builder Program는 이미 자체 사용자와 함께 존재하는 앱과 관련이 있습니다. 적격 모델 트래픽은 ShareAI를 통해 라우팅되며, Builder는 허용된 추가 요금 또는 마진을 구성하고 최종 고객은 해당 추론에 대해 ShareAI를 지불합니다. 앱에 귀속된 수익은 프로그램을 따릅니다. 장점: 적격 배치 앱 요청에 대해 승인된 결제자 및 귀속 경로를 비교하십시오.
트레이드오프: 승인, 적격 트래픽, 모델 액세스 및 계정 조건이 적용됩니다. 검증된 회사 Builder는 지급 전 45일 검토 기간이 있습니다. 개인은 현재 ShareAI 사용을 위한 추론 값을 축적하며, 현금화 또는 계정 전환은 없습니다. 이러한 Builder 조건은 보편적인 Provider, Creator 또는 Prosumer 조건이 아닙니다. 사용량 및 수익은 보장되지 않습니다.
배치 앱은 다른 곳에서 구축, 호스팅, 배포 및 유지 관리됩니다. 이 앱은 작업 승인, 대기열 처리, 고객 접근, 유용한 결과 전달 및 지원을 유지합니다. 공급자, 제작자, 프로슈머 및 맞춤형 엔드포인트 참여는 별도의 온보딩 및 조건을 포함합니다. 자체 호스팅 결제 엔진을 운영하거나 모델 인프라를 소유한다고 해서 자동으로 Builder 계약을 승인하거나, 지갑 크레딧을 이전하거나, 앱 수익을 확립하는 것은 아닙니다.
고객이 승인된 추론 결제를 유지된 구독 또는 자산 생성 비용과 함께 어떻게 이해할지 결정하십시오. Kill Bill 카탈로그, Aviate 지갑, 결제 플러그인 또는 금융 기록의 자동 대체는 약속되지 않습니다. 원래 작업과 승인된 수정 사항을 유지하고, 실제 고객 여정을 자격화하며 동일한 작업에 대해 두 번 청구하지 마십시오.
라이선스, 운영 및 총 추론 마진을 별도로 비교하십시오.
오픈 소스 코어에는 라이선스 요금이 없지만 인프라 운영, 플러그인 유지보수, 서비스 복구에는 여전히 작업이 필요합니다. Aviate는 별도의 상용 제품입니다. 선택한 계약 조건과 구현, 데이터베이스 운영, 업그레이드, 결제 처리, 청구 정정에 드는 비용을 비교하세요. 외부 소프트웨어 디렉터리에 표시된 상용 상품의 가격을 Apache 2.0 코어의 라이선스 가격으로 받아들여서는 안 됩니다.
산술적으로만 보면, 1000 USD의 추론과 가상의 15% 추가 요금은 150 USD의 총 추가 요금과 1150 USD의 총액을 산출합니다. 이러한 합성 수치는 Kill Bill, Aviate 또는 ShareAI의 수수료, 수익, 순이익 또는 세금 결과가 아닙니다. 실제 비용, 수정 사항, 적격성 및 정산 조건이 결과에 영향을 미칩니다.
실제 지갑 및 결제 흐름을 자격화하기 전에 산술을 확인하십시오.
아래 실행된 고정 장치는 동일한 활동을 중복 제거하고, 충돌하는 중복을 거부하며, 명시적인 조정을 정수 USD 센트로 기록합니다. 이는 Kill Bill를 운영하지 않으며, 지갑 크레딧을 생성하거나, 대기열 작업을 승인하거나, 돈을 수집하지 않습니다. 실제 애플리케이션 및 금융 증거는 고객, 유효한 계약 및 계산을 둘러싼 사용 가능한 허용량을 확립해야 합니다.
JavaScript
import assert from "node:assert/strict";
const records = [
{id: "usage-a", customer: "demo", cents: 60000n, kind: "usage"},
{id: "usage-b", customer: "demo", cents: 50000n, kind: "usage"},
{id: "usage-a", customer: "demo", cents: 60000n, kind: "usage"},
{id: "adjustment-b", customer: "demo", cents: -10000n, kind: "adjustment"}
];
function netCents(rows) {
const seen = new Map();
let total = 0n;
for (const row of rows) {
assert.equal(row.customer, "demo");
const fingerprint = [row.customer, row.cents.toString(), row.kind].join("|");
if (seen.has(row.id)) {
if (seen.get(row.id) !== fingerprint) throw new Error("Conflicting duplicate");
continue;
}
if (row.cents < 0n && row.kind !== "adjustment") throw new Error("Invalid sign");
seen.set(row.id, fingerprint);
total += row.cents;
}
return total;
}
const base = netCents(records);
assert.equal(base, 100000n);
assert.throws(() => netCents([...records,
{id: "usage-a", customer: "demo", cents: 1n, kind: "usage"}
]));
const numerator = base * 1500n; // Hypothetical 15 percent in basis points.
if (numerator % 10000n !== 0n) throw new Error("Define contractual rounding first");
const surcharge = numerator / 10000n;
assert.equal(surcharge, 15000n);
const usd = cents => `${cents / 100n}.${(cents % 100n).toString().padStart(2, "0")}`;
console.log(JSON.stringify({baseUSD: usd(base), grossSurchargeUSD: usd(surcharge),
totalUSD: usd(base + surcharge), paidReceiptVerified: false}));관찰된 출력은 1000 USD의 예시 추론, 150 USD의 총 추가 요금 및 1150 USD의 총액으로, 확인된 유료 영수증이 없습니다. 원래 작업, 실제 결제 결과 및 승인된 조정을 프로덕션에서 유지하십시오. 올바른 합계는 활성 충전, 애플리케이션 승인, 수집된 송장 또는 출시된 앱 수익을 확립할 수 없습니다.
한 명의 고객과 실패한 보충 예외를 먼저 이동하십시오.
- 코어, 상업 모듈, 선택된 버전 및 운영 책임을 식별하십시오.
- 고객, 원래 작업, 유효한 카탈로그 및 금융 기록을 유지하십시오.
- 크레딧 생성, 활성 잔액, 결제 및 작업 승인을 분리하십시오.
- 실패한 충전, 지연된 작업자, 재시도 및 승인된 수정 사항을 연습하십시오.
- 중복된 실시간 수집 없이 런타임 및 재무 결과를 확인하십시오.
- 원본 기록을 유지하고 전체 고객 여정이 자격을 갖출 때까지 롤백하십시오.
선택된 Kill Bill 구현이 적합할 경우 유지하십시오. 실제 고객 요구사항에 대한 다른 청구 경로와 ShareAI를 비교하여 고객이 지불한 추론을 확인하십시오. 이전 가격, 결제 실패 및 승인된 수정이 설명 가능한 작업으로 시작하십시오. 해당 예외는 이상적인 데모에서 성공적인 충전보다 더 강력한 마이그레이션 증거입니다.
자주 묻는 질문
AI 앱이 비교해야 할 Kill Bill 대안은 무엇입니까?
Lago, Flexprice, Orb 및 선택된 Stripe 사용 청구 경로는 서로 다른 상업적 요구사항을 해결합니다. ShareAI는 승인된 고객 지불 추론과 허용된 앱 추가 요금과 관련이 있습니다. 실제 핵심, Aviate 모듈 및 운영 책임을 식별한 후 대체품을 선택하십시오.
Kill Bill 핵심은 무료입니까 아니면 유료 상업 청구 제품입니까?
핵심은 Apache 2.0 아래에서 무료이며 자체 호스팅됩니다. Aviate는 동일한 엔진에서 모듈 및 지원을 포함한 별도의 상업적 제안입니다. 운영 인프라 및 플러그인은 여전히 작업 비용이 들며, 상업 패키지 가격을 핵심 라이선스 비용으로 제시해서는 안 됩니다.
오픈 소스 Kill Bill가 이미 사용량을 청구할 수 있습니까?
네. 현재 공식 참조는 앱이 구독별로 집계하고 기록하는 사용량을 설명합니다. Aviate Metering는 원시 이벤트 수집 및 집계를 추가합니다. 모든 사용량 청구를 핵심에서 누락된 것으로 간주하거나 모든 엔터프라이즈 계량 기능을 포함된 것으로 간주하지 마십시오.
Aviate 지갑이 오픈 소스 핵심에 포함되어 있습니까?
아니요. 인용된 참조는 Aviate Wallet를 유료 및 무료 크레딧, 충전 및 만료를 포함한 상업적 모듈로 식별합니다. 핵심 계정 크레딧은 후속 계정 청구서에서 사용되는 별도의 기능입니다. 선택된 모듈 및 구성을 확인하십시오.
실패한 유료 크레딧 구매가 사용 가능한 잔액을 증가시킵니까?
현재 Aviate Wallet 참조는 해당 크레딧이 결제가 성공할 때까지 비활성 상태로 유지되며 잔액에서 제외된다고 명시합니다. 생성된 충전 청구서 또는 기록된 시도는 자금이 지원된 허용량의 증거가 아닙니다. 실제 결제 결과를 유지하십시오.
청구서 작성 시 지갑 적용이 하드 실시간 요청 제한을 보장합니까?
자체적으로는 아닙니다. 인용된 참조는 사용 청구서가 생성될 때 지갑 크레딧을 적용합니다. 앱은 실제 승인 및 진행 중인 작업 정책을 확인해야 합니다. 표시된 잔액, 구성된 임계값 및 작업자 결정은 서로 다른 증거입니다.
ShareAI Builder 정산은 계정 유형에 따라 어떻게 다릅니까?
검증된 회사 Builder는 지급 전 45일 검토 기간이 있습니다. 개인은 현재 ShareAI 사용을 위한 추론 값을 축적하며, 현금화나 계정 이체는 불가능합니다. 승인, 적격 트래픽 및 계정 조건이 적용되며, 사용 및 수익은 보장되지 않습니다.
ShareAI가 Kill Bill 구독 및 Aviate 지갑을 자동으로 마이그레이션할 수 있습니까?
자동 카탈로그, 계약, 잔액, 플러그인 또는 고객 마이그레이션은 암시되지 않습니다. Builder Program은 적격 라우팅 추론, 허용된 추가 요금 및 앱 속성을 다룹니다. 앱은 다른 곳에서 호스팅 및 유지 관리되며 실제 고객 및 재정적 책임을 유지합니다.