Admin SDK 소개
Admin SDK 소개
조직, 프로젝트, 팀, 그리고 접근 제어를 프로그래밍 방식으로 관리할 수 있어요.
출처: 문서
본문
개요 (Overview)
Admin SDK는 Python과 TypeScript로 제공되는 Confident AI API로, 35개 리소스에 걸친 275개 연산을 다뤄요. 두 종류의 리소스에 접근해요:
- 계정 리소스(Account resources) 는 조직 전체에 걸쳐 있어요: 조직 자체, 프로젝트, 멤버와 초대, 역할, 정책, 권한, 거버넌스 정책, 그리고 API 키가 여기에 해당해요.
- 프로젝트 리소스(Project resources) 는 단일 프로젝트 안에 있어요: 프롬프트, 데이터셋, 트레이스, 스팬, 스레드, 메트릭, 테스트 실행, 평가, 대시보드, 어노테이션 큐, 레드 팀(red teaming)이 여기에 해당해요.
플랫폼 UI 대신 프로그래밍 방식으로 작업을 처리해야 할 때 Admin SDK를 사용해요. 흔한 사용 사례로 프로젝트 프로비저닝, 멤버 온보딩, 역할 동기화, API 키 회전, 런타임에 프롬프트 가져오기, 파이프라인에서 데이터셋에 골든 푸시하기가 있어요.
이 SDK는 실행 중인 애플리케이션을 계측하거나 평가 스위트를 실행하지 않아요. 앱 내부의 트레이싱과 평가는 트레이싱 가이드를 참고해요.
조직 vs 프로젝트 스코프 (Organization vs Project Scope)
모든 연산은 조직 또는 단일 프로젝트 중 하나로 스코프되고, 리소스가 어떤 API 키가 필요한지 결정해요. 클라이언트 하나가 두 키를 모두 담을 수 있고, 호출마다 올바른 키를 골라요.
| 스코프 (Scope) | 환경 변수 (Environment variable) | 접근 대상 (Reaches) |
|---|---|---|
| Organization | CONFIDENT_ORG_API_KEY |
client.organization, client.projects, client.project(id) |
| Project | CONFIDENT_PROJ_API_KEY |
그 외 모든 리소스 |
각 키를 가져오는 방법은 인증 (Authentication)에서 배워요.
client = ConfidentAI() # reads both environment variables
client.organization.get() # organization key
client.datasets.list() # project key
주요 기능 (Key Capabilities)
조직 (Organization)
API 키에 연결된 조직을 읽고 이름을 바꿔요.
프로젝트 (Projects)
조직의 프로젝트를 만들고, 읽고, 수정하고, 삭제해요.
멤버와 초대 (Members & Invitations)
멤버를 초대하고, 멤버십을 관리하고, 역할을 할당해요.
역할, 정책, 권한 (Roles, Policies & Permissions)
역할, 정책, 권한으로 RBAC를 정의해요.
API 키 (API Keys)
조직 및 프로젝트 스코프 API 키를 프로비저닝하고, 회전하고, 비활성화하고, 삭제해요.
거버넌스 정책 (Governance Policies)
컴플라이언스 정책을 만들고 프로젝트에 할당해요.