52 lines
1.4 KiB
Markdown
Executable File
52 lines
1.4 KiB
Markdown
Executable File
# FastAPI LLM Inference Framework
|
|
|
|
## 개요
|
|
|
|
### 목적
|
|
* FastAPI를 이용한 대규모 언어 모델(LLM) 서빙 및 추론 환경 제공
|
|
|
|
### 특징
|
|
* **LLM**을 활용하여 입력 텍스트 기반의 추론 수행
|
|
* **다중 모델 지원:** 여러 모델에 대해 순차적으로 추론 가능
|
|
* **유연한 배치 처리:** 대용량 CSV 데이터를 분할하여 효율적으로 처리
|
|
* **Redis + RQ 큐**를 활용한 비동기 작업 관리 및 확장성 제공
|
|
|
|
---
|
|
|
|
## 사용하기
|
|
|
|
### 빌드
|
|
```
|
|
docker compose build
|
|
```
|
|
|
|
Dockerfile 상 변경은 없으나 디펜던시 변경 또는 환경 설정 업데이트가 있는 경우, `--no-cache` 옵션을 사용하여 캐시 없이 재빌드가 가능합니다.
|
|
|
|
### 실행
|
|
```
|
|
docker compose up
|
|
```
|
|
|
|
`docker-compose.yml`의 실행 진입점은 다음과 같습니다:
|
|
```
|
|
entrypoint: uvicorn main:app --reload --host 0.0.0.0 --port 8000
|
|
```
|
|
|
|
---
|
|
|
|
## API
|
|
|
|
### API 문서 확인
|
|
FastAPI의 자동 생성 API 문서를 확인하려면:
|
|
```
|
|
http://localhost:8000/docs
|
|
```
|
|
|
|
### 주요 API 엔드포인트
|
|
1. **추론 시작** (`POST /start-inference/`):
|
|
- CSV 데이터와 모델 리스트를 업로드하여 추론 작업 시작
|
|
- 결과 파일은 자동으로 저장됨
|
|
|
|
2. **최신 결과 다운로드** (`GET /download-latest`):
|
|
- 가장 최근에 완료된 추론 결과를 다운로드
|
|
--- |