Files
검색 증강 생성(RAG)을 통해 참조할 수 있는 파일들을 업로드하기 위해 사용되는 API입니다.
파일 등록
POST /ksm/rag/v5/files
검색 증강 생성(RAG)을 통해 참조할 파일을 업로드합니다. 업로드된 파일들은 필터를 통해 텍스트로 변환되고 청킹을 거쳐 벡터 스토어 볼륨에 저장됩니다.
Request Parameters
file MultipartFile Required
업로드할 파일들입니다. multipart/form-data 타입으로 복수 개의 파일을 업로드할 수 있습니다.
volume string Required
업로드할 파일들이 저장될 볼륨명입니다.
⚠️ 사용자 개인 볼륨은
{userid}형식으로 볼륨명을 지정할 수 있습니다.
embedding string Required
임베딩 모델의 아이디입니다.
do_chunking integer Optional Defaults to 0
업로드한 파일들에 대해 텍스트를 추출한 후 청킹 및 임베딩을 수행할 지 여부를 지정합니다.
0으로 설정 시 청킹과 임베딩을 수행하지 않습니다. 1로 설정 시 청킹과 임베딩을 모두 수행합니다. 2로 설정 시 청킹만 수행합니다.
Response
code integer
결과 코드값입니다. 성공 시에는 200이 반환됩니다.
message string
응답 메시지입니다. 성공 시에는 OK가 반환됩니다.
infoz array
업로드된 파일들의 FileInfo 정보
예제
curl https://.../ksm/rag/v5/files \
-X POST \
-H "Content-Type: multipart/form-data" \
-H "Authorization: Bearer $KONANLLM_API_KEY" \
-F volume=myvol \
-F embedding="embedding-10" \
-F do_chunking=1 \
-F file=@OOO/tabaco.pdf \
-F file=@업무메뉴얼.hwp
파일 목록 조회
GET /ksm/rag/v5/files
파일 목록을 반환합니다.
Request Body
volume string Required
목록을 조회할 볼륨명입니다.
⚠️ 사용자 개인 볼륨은
{userid}형식으로 볼륨명을 지정할 수 있습니다.
offset integer Optional Defaults to 0
목록 시작 옵셋
limit integer Optional Defaults to 20
옵셋부터 가져올 목록 개수
Response
code integer
결과 코드값입니다. 성공 시에는 200이 반환됩니다.
message string
응답 메시지입니다. 성공 시에는 OK가 반환됩니다.
total integer
전체 파일 개수
infoz array
조회한 파일들의 FileInfo 정보
예제
Request
볼륨 myvol에 저장된 파일 목록을 조회합니다.
curl https://.../ksm/rag/v5/files \
-H "Authorization: Bearer $KONANLLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"volume": "myvol"}'
사용자 tiger@konan.com의 개인 볼륨에 저장된 파일 목록을 조회합니다.
curl https://.../ksm/rag/v5/files \
-H "Authorization: Bearer $KONANLLM_API_KEY" \
-H "Content-Type: application/json"
-d '{"volume": "{tiger@konantech.com}"}'
Response
{
"code": 200,
"message": "OK",
"total": 142,
"infoz": [
{
"uuid": "7d263f69-bb08-45af-8576-7b6791734908",
"filename": "취업규칙_코난테크놀로지.pdf",
"status": "done",
"filesize": 341326,
"date": "20250712200815",
"isdir": 0
},
...
{
"uuid": "123e4567-e89b-12d3-a456-556642440000",
"name": "회사소개서_코난테크놀로지.pdf",
"status": "done",
"filesize": 10253993,
"date": "20250605131718",
"isdir": 0
}
]
}
파일 삭제
볼륨에 저장된 파일 및 관련 chunk들을 삭제합니다.
DELETE /ksm/rag/v5/files
Request Body
volume string Required
삭제 대상 파일들이 저장된 볼륨명입니다.
⚠️ 사용자 개인 볼륨은
{userid}형식으로 볼륨명을 지정할 수 있습니다.
uuidz array Required
삭제할 파일들의 아이디 목록입니다.
Response
code integer
결과 코드값입니다. 성공 시에는 200이 반환됩니다.
message string
응답 메시지입니다. 성공 시에는 OK가 반환됩니다.
예제
curl https://.../ksm/rag/v5/files \
-X DELETE \
-H "Authorization: Bearer $KONANLLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"volume": "{tiger@konantech.com}",
"uuidz": ["5a62a526-e235-4e11-aa21-8a3feb2f82c9", "39fc4d31-c954-4d6a-8cb2-848161f939c6"]
}'
FileInfo 객체
볼륨에 저장된 파일을 나타내는 객체입니다.
uuid string
아이디
filename string
파일 혹은 폴더명
status string
업로드 상태
uploaded, waiting, chunking, embedding, indexing, done, na
⚠️
done상태의 파일들만 RAG 검색 대상이 될 수 있습니다.
filesize integer
파일 크기(bytes)
date string
파일 업로드 시각
isdir integer
폴더 여부
0: 파일, 1: 폴더