feat: NanoClaude Phase 1 — 비동기 job 기반 AI Gateway 코어 구현

POST /chat → job_id ACK, GET /chat/{job_id}/stream → SSE 스트리밍,
EXAONE Ollama adapter, JobManager, StateStream, Worker 구조

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Hyungi Ahn
2026-04-06 11:12:04 +09:00
parent 4917fd568f
commit d946b769e5
13 changed files with 450 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
"""Pydantic models for NanoClaude API."""
from __future__ import annotations
from enum import Enum
from pydantic import BaseModel
class JobStatus(str, Enum):
queued = "queued"
processing = "processing"
completed = "completed"
failed = "failed"
cancelled = "cancelled"
class ChatRequest(BaseModel):
message: str
class ChatResponse(BaseModel):
job_id: str
class CancelResponse(BaseModel):
status: str
class SSEEvent(BaseModel):
event: str # ack | processing | result | error | done
data: dict