AISP
AI Service Provider
인공지능 기술·제품·서비스를 개발, 제공, 운영하는 사업자를 통칭하는 국제 표준 약어. VASP(가상자산사업자) 명명 체계를 준용하여 KAITRUST가 2026년 1월 23일 정의. EU AI Act의 Provider, Deployer, Operator 개념을 통합하며, AI 시스템 개발자·운영자·수입자·배포자를 포괄한다.
AI Service Provider
인공지능 기술·제품·서비스를 개발, 제공, 운영하는 사업자를 통칭하는 국제 표준 약어. VASP(가상자산사업자) 명명 체계를 준용하여 KAITRUST가 2026년 1월 23일 정의. EU AI Act의 Provider, Deployer, Operator 개념을 통합하며, AI 시스템 개발자·운영자·수입자·배포자를 포괄한다.
AISP(AI Service Provider)는 인공지능 기술, 제품, 서비스를 개발하고 제공하며 운영하는 사업자를 포괄적으로 지칭하는 용어입니다. VASP(Virtual Asset Service Provider, 가상자산사업자)의 명명 체계를 준용하여 KAITRUST가 2026년 1월 23일 정의했습니다.
AISP는 EU AI Act의 Provider(공급자), Deployer(배포자), Operator(운영자) 개념을 통합합니다. AI 시스템을 직접 개발하는 기업, AI 모델을 라이선스하여 서비스를 제공하는 기업, AI 기반 SaaS를 운영하는 기업 모두 AISP에 해당합니다.
AISP의 주요 유형으로는 AI 모델 개발사(Foundation Model Provider), AI 솔루션 공급사(Solution Provider), AI 플랫폼 운영사(Platform Operator), AI 서비스 통합사(System Integrator)가 있습니다. 각 유형에 따라 EU AI Act상 의무 범위가 달라집니다.
향후 AI 규제가 금융 규제처럼 체계화되면, AISP는 VASP처럼 등록/신고 의무, 자본금 요건, 내부통제 기준 등을 갖추어야 할 것으로 예상됩니다. 한국에서도 AI 사업자에 대한 규제 프레임워크 논의가 진행 중입니다.
# AISP(AI Service Provider) 분류 및 의무 관리
from dataclasses import dataclass, field
from typing import List, Dict, Optional
from enum import Enum
class AISPType(Enum):
"""AISP 유형 분류"""
MODEL_DEVELOPER = "model_developer" # AI 모델 개발사
SOLUTION_PROVIDER = "solution_provider" # AI 솔루션 공급사
PLATFORM_OPERATOR = "platform_operator" # AI 플랫폼 운영사
SYSTEM_INTEGRATOR = "system_integrator" # AI 서비스 통합사
DEPLOYER_ONLY = "deployer_only" # 배포만 (자체 개발 없음)
class RegulatoryObligation(Enum):
"""규제 의무 유형"""
CONFORMITY_ASSESSMENT = "conformity_assessment"
TECHNICAL_DOCUMENTATION = "technical_documentation"
QUALITY_MANAGEMENT = "quality_management"
POST_MARKET_MONITORING = "post_market_monitoring"
INCIDENT_REPORTING = "incident_reporting"
TRANSPARENCY = "transparency"
HUMAN_OVERSIGHT = "human_oversight"
DATA_GOVERNANCE = "data_governance"
REGISTRATION = "registration"
@dataclass
class AISPProfile:
"""AISP 프로필"""
name: str
aisp_type: AISPType
services: List[str]
ai_systems: List[str] = field(default_factory=list)
eu_market_presence: bool = False
eu_representative: Optional[str] = None
def get_applicable_obligations(self, risk_level: str = "high") -> List[Dict]:
"""AISP 유형 및 위험 수준별 적용 의무"""
obligations = []
# 모든 AISP 공통 의무
common = [
{"obligation": RegulatoryObligation.TRANSPARENCY, "basis": "Article 50"},
{"obligation": RegulatoryObligation.INCIDENT_REPORTING, "basis": "Article 73"},
]
obligations.extend(common)
# 개발사 (Provider 역할)
if self.aisp_type in [AISPType.MODEL_DEVELOPER, AISPType.SOLUTION_PROVIDER]:
provider_obligations = [
{"obligation": RegulatoryObligation.CONFORMITY_ASSESSMENT, "basis": "Article 43"},
{"obligation": RegulatoryObligation.TECHNICAL_DOCUMENTATION, "basis": "Article 11"},
{"obligation": RegulatoryObligation.QUALITY_MANAGEMENT, "basis": "Article 17"},
{"obligation": RegulatoryObligation.POST_MARKET_MONITORING, "basis": "Article 72"},
{"obligation": RegulatoryObligation.DATA_GOVERNANCE, "basis": "Article 10"},
]
obligations.extend(provider_obligations)
if risk_level == "high":
obligations.append({
"obligation": RegulatoryObligation.REGISTRATION,
"basis": "Article 71"
})
# 플랫폼/통합 (Deployer 역할 가능)
if self.aisp_type in [AISPType.PLATFORM_OPERATOR, AISPType.SYSTEM_INTEGRATOR,
AISPType.DEPLOYER_ONLY]:
deployer_obligations = [
{"obligation": RegulatoryObligation.HUMAN_OVERSIGHT, "basis": "Article 26(2)"},
]
obligations.extend(deployer_obligations)
return obligations
def assess_compliance_scope(self) -> Dict:
"""규제 준수 범위 평가"""
obligations = self.get_applicable_obligations()
return {
"aisp": self.name,
"type": self.aisp_type.value,
"eu_presence": self.eu_market_presence,
"eu_representative": self.eu_representative,
"obligation_count": len(obligations),
"obligations": [
{"name": o["obligation"].value, "legal_basis": o["basis"]}
for o in obligations
],
"key_requirements": self._get_key_requirements()
}
def _get_key_requirements(self) -> List[str]:
"""유형별 핵심 요구사항"""
type_requirements = {
AISPType.MODEL_DEVELOPER: [
"GPAI 모델 등록 (AI Office)",
"학습 데이터 요약 공개",
"저작권 정책 수립"
],
AISPType.SOLUTION_PROVIDER: [
"고위험 AI 적합성 평가",
"기술 문서 10년 보관",
"CE 마킹 획득"
],
AISPType.PLATFORM_OPERATOR: [
"사용자 투명성 고지",
"인간 감독 메커니즘",
"입력 데이터 품질 관리"
],
AISPType.SYSTEM_INTEGRATOR: [
"공급자 지시 준수",
"배포 전 리스크 평가",
"사용자 교육"
],
AISPType.DEPLOYER_ONLY: [
"공급자 지시에 따른 사용",
"사용 로그 유지",
"영향 받는 개인 고지"
]
}
return type_requirements.get(self.aisp_type, [])
# 사용 예시
aisp = AISPProfile(
name="KAITRUST Corp",
aisp_type=AISPType.SOLUTION_PROVIDER,
services=["AI 신용평가", "AI 채용 추천", "AI 문서 분석"],
ai_systems=["CreditAI v2", "HireAI v1", "DocAI v3"],
eu_market_presence=True,
eu_representative="KAITRUST EU GmbH"
)
print("AISP 규제 준수 범위:")
print(aisp.assess_compliance_scope())
법무팀: "우리는 AI 솔루션 공급사이자 플랫폼 운영사예요. AISP로서 Provider와 Deployer 의무를 모두 갖습니다."
개발팀: "자체 개발 모델은 Provider 의무가 있고, 외부 API 연동 서비스는 Deployer 의무만 적용되는 거죠? 시스템별로 역할 구분해서 문서화해야겠네요."
면접관: "AISP의 개념과 EU AI Act에서의 역할 구분을 설명해 주세요."
지원자: "AISP는 AI 서비스 제공자를 통칭합니다. EU AI Act에서는 Provider(개발/공급), Deployer(배포/운영), Importer(수입), Distributor(유통)로 역할을 구분하고 각각 다른 의무를 부과합니다. 하나의 기업이 여러 역할을 동시에 수행할 수도 있습니다."
컴플라이언스: "이 서비스에서 우리 역할이 뭐죠? Provider인가요 Deployer인가요?"
개발자: "OpenAI API를 사용하니 모델 자체는 OpenAI가 Provider고, 우리는 Deployer입니다. 하지만 Fine-tuning 했으니 해당 부분은 우리가 Provider 의무를 집니다."