.env.local, Docker 배포에서는 .env.production을 사용하고, Vercel에서는 프로젝트의 Settings → Environment Variables에서 설정합니다.
환경 변수
DEEPSEEK_API_KEY와 GEMINI_API_KEY 중 하나 이상을 입력하세요. 둘 다 입력하지 않으면 방문자가 설정에서 자신의 키를 입력해야 앱을 사용할 수 있고, 홈 화면의 오늘의 문장도 내장된 예비 문장으로 바뀝니다..env.production
모델 제공업체
앱은 OpenAI 호환 Chat Completions API로 모델을 호출합니다.
서버는 제공업체에 따라 요청 매개변수를 자동으로 조정합니다.
- DeepSeek:
json_object형식으로 구조화된 결과를 받고, 사고 모드를 끕니다. - Gemini: 엄격한 JSON Schema로 구조화된 결과를 받습니다.
gemini-flash-latest는low추론 단계를,gemini-flash-lite-latest는minimal추론 단계를 사용합니다.
사용자 지정 API 주소 사용
프록시나 호환 게이트웨이를 통해 모델 제공업체에 접속한다면DEEPSEEK_API_URL 또는 GEMINI_API_URL을 설정할 수 있습니다. 주소는 Base URL이 아니라 전체 Chat Completions 엔드포인트여야 합니다.
요청 시간 제한
접속 비밀번호
CODE를 설정하면 방문자는 사이트를 열 때 먼저 접속 비밀번호를 입력해야 합니다.
- 인증에 성공하면 서버가 HttpOnly 세션 Cookie
ja_session을 기록합니다. 유효 기간은 7일입니다. - 세션 토큰은
CODE를 키로 사용해 HMAC-SHA256으로 서명합니다.CODE를 바꾸면 로그인된 모든 세션이 즉시 무효가 됩니다. - 인증하지 않으면 분석, 번역, 뜻풀이, 이미지 인식, 음성 읽기, 대화, 오늘의 문장 등의 API가 모두
401을 반환합니다. - 프로덕션 환경에서는 Cookie에
Secure플래그가 붙으므로 HTTPS로 접속해야 합니다.
CODE는 간단한 비공개 배포에서 모르는 사람이 API 사용량을 소모하지 못하게 막는 용도입니다. 완전한 계정 및 권한 시스템을 대신할 수는 없습니다.