iop/README.md
2026-05-09 06:29:01 +09:00

54 lines
1.3 KiB
Markdown

# IOP — Inference Operations Platform
IOP는 단일 서비스가 아닌 플랫폼이다. 여러 앱이 협력하여 AI 모델 추론 워크로드를 처리한다.
## 앱 구성
| 앱 | 책임 |
|---|---|
| `apps/node` | 디바이스별 node agent. 런타임 라우팅, 추론 어댑터 실행, edge 연결을 담당한다. |
| `apps/edge` | node 등록, 레지스트리, transport, 콘솔 기반 요청 전달을 담당하는 gateway이다. |
| `apps/control-plane` | 노드 등록, 정책, 스케줄링 제어 영역이다. |
| `apps/worker` | 비동기 작업 처리 영역이다. |
## 내부 통신
- **프로토콜**: TCP + Protobuf + mTLS
- **메시지 계약**: `proto/iop/*.proto`
- **생성물**: `proto/gen/iop/*.pb.go`
- gRPC **사용 금지**
- WebSocket transport 기본화 **금지**
## 외부 API
외부 OpenAI-compatible API는 `apps/edge`의 책임 영역으로 둔다.
## 기본 명령 예시
```bash
# 의존성 설치
go mod tidy
# node CLI 빌드 예시
go build -o bin/node ./apps/node/cmd/node
# node CLI 실행 예시
./bin/node version
./bin/node config print
./bin/node serve
```
## 모노레포 구조
```
iop/
apps/
node/
edge/
control-plane/
worker/
packages/ # 공통 패키지
proto/ # Protobuf 스펙과 생성물
configs/ # 앱별 설정 파일
docs/ # 아키텍처와 운영 문서
```