# IOP — Inference Operations Platform IOP는 단일 서비스가 아닌 플랫폼이다. 여러 앱이 협력하여 AI 모델 추론 워크로드를 처리한다. ## 앱 구성 | 앱 | 설명 | 상태 | |---|---|---| | `apps/node` | 노드 에이전트. 디바이스당 1개 실행. 실제 추론 어댑터 관리 | **1차 구현 대상** | | `apps/edge` | 외부 OpenAI-compatible API 게이트웨이 | Placeholder | | `apps/control-plane` | 노드 등록/정책/스케줄링 제어 | Placeholder | | `apps/worker` | 비동기 작업 처리기 | Placeholder | ## 내부 통신 - **프로토콜**: TCP + Protobuf + mTLS - **프레이밍**: 4-byte big-endian length prefix | JSON(Envelope) - gRPC **사용 금지** - WebSocket transport 기본화 **금지** ## 외부 API 외부 OpenAI-compatible API는 향후 `apps/edge`에서 담당한다. ## 빌드 ```bash # 의존성 설치 go mod tidy # node 빌드 go build -o bin/node ./apps/node/cmd/node # 실행 ./bin/node version ./bin/node config print ./bin/node serve ``` ## 모노레포 구조 ``` iop/ apps/ node/ # Node Agent — 1차 구현 edge/ # Edge API — placeholder control-plane/ worker/ packages/ config/ # 설정 로딩 protocol/ # 와이어 포맷 타입 policy/ # 정책 엔진 인터페이스 auth/ # mTLS 인증 metadata/ # 메타데이터 타입 jobs/ # 작업 큐 타입 observability/ # 로깅/메트릭 version/ # 버전 상수 proto/iop/ # Protobuf 스펙 정의 configs/ # 앱별 설정 파일 docs/ # 문서 ```