순차적 질문 MCP 서버
LLM(대규모 언어 모델)이 순차적 질문을 통해 특정 정보를 수집할 수 있도록 하는 특수 서버입니다. 이 프로젝트는 LLM 클라이언트와의 원활한 통합을 위해 MCP(모델 제어 프로토콜) 표준을 구현합니다.
프로젝트 상태
🎉 버전 1.0.0 출시 🎉
순차적 질의 MCP 서버가 이제 완성되어 프로덕션 배포 준비가 되었습니다. 계획된 모든 기능은 구현, 테스트 및 문서화되었습니다.
Related MCP server: Vibe-Coder MCP Server
특징
순차적 질문 엔진 : 이전 응답을 기반으로 상황에 맞는 후속 질문을 생성합니다.
MCP 프로토콜 지원 : LLM과의 통합을 위한 MCP 사양의 전체 구현
강력한 API : 포괄적인 검증 및 오류 처리 기능을 갖춘 RESTful API
벡터 데이터베이스 통합 : 질문 패턴의 효율적인 저장 및 검색
종합 모니터링 : Prometheus 및 Grafana를 통한 성능 측정 및 관찰
프로덕션 준비 완료 배포 : 다중 환경 지원을 갖춘 Kubernetes 배포 구성
고가용성 : 생산 안정성을 위한 수평형 Pod 자동 확장기 및 Pod 중단 예산
보안 : 트래픽을 제한하고 애플리케이션을 보호하는 네트워크 정책
선적 서류 비치
시작하기
필수 조건
파이썬 3.10+
Docker 및 Docker Compose(로컬 개발용)
Kubernetes 클러스터(프로덕션 배포용)
포스트그레SQL 15.4+
Qdrant 인스턴스에 대한 액세스
빠른 시작
시작하는 가장 쉬운 방법은 초기화 스크립트를 사용하는 것입니다.
지엑스피1
이 스크립트는 다음을 수행합니다.
Docker가 실행 중인지 확인하세요
Docker Compose로 필요한 모든 컨테이너를 시작하세요
데이터베이스 마이그레이션을 자동으로 실행
애플리케이션에 접근하는 방법에 대한 정보를 제공하세요
해당 애플리케이션은 http://localhost:8001 에서 사용 가능합니다.
지역 개발
저장소를 복제합니다
git clone https://github.com/your-organization/sequential-questioning.git cd sequential-questioning종속성 설치
pip install -e ".[dev]"환경 변수 설정
cp .env.example .env # Edit .env file with your configuration개발 서버 실행
uvicorn app.main:app --reload
도커 배포
데이터베이스 설정
애플리케이션을 수동으로 시작하는 경우 데이터베이스 마이그레이션을 실행하는 것을 잊지 마세요.
쿠버네티스 배포
개발 환경
kubectl apply -k k8s/overlays/dev스테이징 환경
kubectl apply -k k8s/overlays/staging프로덕션 환경
kubectl apply -k k8s/overlays/prod
자세한 지침은 최종 배포 계획 및 운영 런북을 참조하세요.
모니터링
모니터링을 위해 Prometheus 및 Grafana 대시보드에 액세스하세요.
CI/CD 파이프라인
GitHub Actions를 사용한 자동화된 CI/CD 파이프라인:
지속적인 통합: 린팅, 유형 검사 및 테스트
지속적인 배포: 개발, 스테이징 및 프로덕션에 대한 자동화된 배포
배포 확인: 배포 후 자동 확인
테스트
테스트 모음을 실행합니다.
성능 테스트 실행:
문제 해결
데이터베이스 테이블이 생성되지 않았습니다
애플리케이션이 실행 중이지만 데이터베이스 테이블이 없는 경우:
데이터베이스 컨테이너가 실행 중인지 확인하세요
데이터베이스 마이그레이션을 수동으로 실행합니다.
export DATABASE_URL="postgresql://postgres:postgres@localhost:5432/postgres" bash scripts/run_migrations.sh
Pydantic 버전 호환성
pydantic.errors.PydanticImportError: BaseSettings has been moved to the pydantic-settings package 오류가 발생하면 다음을 확인하세요.
pydantic-settings패키지는 종속성에 포함되어 있습니다.pydantic에서 직접 가져오는 대신pydantic_settings에서BaseSettings가져오고 있습니다.
이 프로젝트에서는 BaseSettings 별도의 패키지로 옮긴 Pydantic v2.x를 사용합니다.
기여하다
기여를 환영합니다! 자세한 내용은 CONTRIBUTING.md를 참조하세요.
특허
연락하다
지원이나 문의사항이 있으시면 support@example.com 으로 연락주세요.