RAG
Retrieval-Augmented Generation(RAG) API입니다. 벡터 컬렉션 관리, 문서 수집, RAG 기반 질의응답 기능을 제공합니다.
엔드포인트
POST /api/v1/rag/collections
설명: 새 벡터 컬렉션을 생성합니다.
요청 본문:
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
| name | string | Y | 컬렉션 이름 |
| dimension | int | N | 벡터 차원 |
| distance_metric | string | N | 거리 메트릭 (cosine, l2 등) |
GET /api/v1/rag/collections
설명: 벡터 컬렉션 목록을 반환합니다.
POST /api/v1/rag/ingest
설명: 문서를 벡터화하여 컬렉션에 수집합니다.
요청 본문:
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
| collection | string | Y | 대상 컬렉션 |
| documents | array | Y | 문서 목록 |
POST /api/v1/rag/query
설명: RAG 기반 질의를 수행합니다. 관련 문서를 검색하고 LLM으로 답변을 생성합니다.
요청 본문:
| 필드 | 타입 | 필수 | 설명 |
|---|---|---|---|
| question | string | Y | 질문 |
| collection | string | Y | 검색 대상 컬렉션 |
| top_k | int | N | 검색 결과 수 (기본: 5) |
인증
JWT Bearer 토큰이 필요합니다.
에러 코드
| 코드 | 설명 |
|---|---|
| 400 | 잘못된 컬렉션 이름 또는 문서 형식 |
| 404 | 컬렉션을 찾을 수 없음 |
| 500 | 벡터 DB 또는 LLM 호출 실패 |