3.0 KiB
3.0 KiB
LLM Macro
OCR(광학 문자 인식) 결과를 파싱하고, 지정된 LLM(거대 언어 모델)을 통해 처리한 후, 정제된 결과를 반환하는 API 게이트웨이입니다.
다양한 LLM 공급자를 지원하며, Docker를 통해 쉽게 배포하고 실행할 수 있습니다.
주요 기능
- OCR 결과 텍스트 정제 및 분석
- 다중 LLM 공급자 지원 (Gemini, Anthropic, OpenAI 등)
- RESTful API 엔드포인트 제공
- Docker Compose를 이용한 간편한 실행 환경
프로젝트 구조
/
├── .env # API 키 및 환경 변수 설정
├── api_keys.json # 클라이언트 API 키 관리
├── docker-compose.yml # Docker Compose 설정
├── Dockerfile # Docker 이미지 빌드 설정
├── requirements.txt # Python 의존성 목록
├── post/ # OCR 결과 후처리 관련 모듈
├── result/ # 처리 결과 저장 디렉토리 (Git 무시)
└── workspace/ # API 서버 로직 (FastAPI 기반)
시작하기
사전 요구사항
- Git
- Docker
- Docker Compose
설치 및 실행
프로젝트 클론
git clone https://github.com/your-username/llm_gateway_macro.git cd llm_gateway_macro환경 변수 설정
.env.example파일을 복사하여.env파일을 생성하고, 내부에 실제 API 키들을 입력합니다.cp .env.example .env# .env ADMIN_API_KEY=your_admin_api_key GEMINI_API_KEY=your_gemini_api_key ANTHROPIC_API_KEY=your_anthropic_api_key OPENAI_API_KEY=your_openai_api_key클라이언트 API 키 설정
api_keys.json.example파일을 복사하여api_keys.json파일을 생성하고, API를 호출할 클라이언트의 키를 설정합니다.cp api_keys.json.example api_keys.jsonDocker 컨테이너 실행 아래 명령어를 실행하여 애플리케이션을 백그라운드에서 시작합니다.
docker-compose up -d --build로그 확인 (선택 사항)
docker-compose logs -f
API 사용법
OCR 결과 처리 요청
- Endpoint:
POST /api/v1/process - Header:
X-API-KEY: {your_client_api_key} - Body:
{
"ocr_text": "여기에 OCR 결과로 추출된 텍스트를 입력합니다.",
"llm_provider": "gemini" // "gemini", "openai", "anthropic" 중 선택
}cURL 예시
curl -X POST "http://localhost:8000/api/v1/process" \
-H "Content-Type: application/json" \
-H "X-API-KEY: your_client_api_key" \
-d '{
"ocr_text": "처리할 OCR 텍스트입니다.",
"llm_provider": "gemini"
}'응답 예시
{
"original_text": "처리할 OCR 텍스트입니다.",
"processed_text": "LLM에 의해 처리된 결과입니다.",
"provider": "gemini"
}라이선스
이 프로젝트는 [라이선스 이름] 라이선스를 따릅니다. 자세한 내용은
LICENSE 파일을 참고하세요.