클라우디우스가 실행되는 기반 구축 노트

클라우디우스가 실행되는 기반 구축

이 글은 Claude 기반 챗봇인 Claudius의 서버 측 설정을 상세히 설명하며, ID 시스템, 서비스 연결, 배포 현실에 초점을 맞춥니다. ID 시스템은 관리자, 회원, 게스트와 같은 사용자 역할이 서버에서만 결정되며 클라이언트에서 조작될 수 없도록 보장합니다. 이는 Google 제공업체와 MongoDB 어댑터를 사용하는 Auth.js를 통해 달성되며, 역할은 관리자 이메일, 허용 목록 또는 기본값으로 게스트에 따라 결정됩니다. 그런 다음 결정된 역할은 JWT에 포함되어 애플리케이션 내에서 효율적인 액세스를 제공합니다. 프로비저닝 프로세스는 사용자별 필드에 대한 기본값을 설정하고 각 로그인 시 역할이 다시 계산되도록 합니다.연결은 MongoDB Atlas를 핑하고 선택적으로 Bedrock의 Claude Haiku 모델에 작은 호출을 하는 상태 확인 라우트를 통해 검증됩니다. 이 프로브는 애플리케이션이 AI 백엔드와 성공적으로 상호 작용할 수 있는지 확인하고 토큰 사용 메타데이터가 반환되는지 확인합니다. 애플리케이션은 또한 각 추론 프로필 ID 및 가격 정보와 함께 AI 모델 카탈로그를 정의합니다. 환경 변수는 각 개발 단계에 필요한 대로 반복적으로 검증되며, 현재 설정에는 인증, 데이터베이스 및 Bedrock 자격 증명이 포함됩니다.이 설정 단계에서 몇 가지 중요한 문제 또는 "함정"이 발생하고 해결되었습니다. 중요한 문제는 Auth.js 어댑터와 애플리케이션의 데이터베이스 도우미 모두에서 올바른 데이터베이스를 대상으로 하도록 하는 것이었습니다. 연결 문자열에 데이터베이스 경로가 누락되면 액세스할 수 없는 "test" 데이터베이스로 기본 설정되었습니다. MongoDB 클라이언트를 전역적으로 캐싱하여 연결 풀링을 최적화했습니다. 모노레포 내의 종속성 관리는 런타임 종속성에 주의를 기울이고 배포를 위해 선택적 종속성에 플랫폼별 이진 파일을 포함해야 했습니다. 사용자 ID 및 서비스 상호 작용의 기반이 이제 확립되었지만, 핵심 채팅 기능은 아직 구현되지 않았습니다.