Repository navigation
Expand file tree
/
Copy path.env.example
More file actions
134 lines (118 loc) · 4.16 KB
/
Copy path.env.example
File metadata and controls
134 lines (118 loc) · 4.16 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# NOTE:
# - `pnpm dev` 启动后端时默认读取 `server/.env`
# - `pnpm dev` 启动前端时默认读取 `client/.env` / `client/.env.local`
# - 根目录这个文件更适合当聚合参考,不是 workspace 默认加载入口
# Server
PORT=3000
# 局域网访问:HOST=0.0.0.0 且 ALLOW_LAN=true
HOST=localhost
ALLOW_LAN=false
CORS_ORIGIN=http://localhost:5173
# 默认使用 SQLite;如需 PostgreSQL,取消下一行注释并填写连接串。
# DATABASE_URL=postgresql://postgres:postgres@127.0.0.1:5432/ai_novel
API_JSON_LIMIT=20mb
# 每本小说保留的自动版本快照数量;手动保存的快照不受这个数量限制。
NOVEL_SNAPSHOT_RETENTION_COUNT=10
# 图片资产存储:默认使用 beta 本地文件存储。仅在显式选择 s3/minio 时启用 MinIO/S3。
# IMAGE_STORAGE_DRIVER=local
# IMAGE_STORAGE_ROOT=storage/generated-images
# IMAGE_STORAGE_DRIVER=minio
# IMAGE_STORAGE_S3_ENDPOINT=http://127.0.0.1:9000
# IMAGE_STORAGE_S3_REGION=us-east-1
# IMAGE_STORAGE_S3_BUCKET=ai-novel-images
# IMAGE_STORAGE_S3_ACCESS_KEY_ID=
# IMAGE_STORAGE_S3_SECRET_ACCESS_KEY=
# IMAGE_STORAGE_S3_FORCE_PATH_STYLE=true
# 图片生成接口最长等待时间(毫秒),默认 300000。
# IMAGE_GENERATION_HTTP_TIMEOUT_MS=300000
BOOK_ANALYSIS_LLM_TIMEOUT_MS=90000
OPENAI_API_KEY=
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-5-mini
OPENAI_IMAGE_MODEL=gpt-image-1
OPENAI_EMBEDDING_MODEL=text-embedding-3-small
DEEPSEEK_API_KEY=
DEEPSEEK_BASE_URL=https://api.deepseek.com/v1
DEEPSEEK_MODEL=deepseek-chat
SILICONFLOW_API_KEY=
SILICONFLOW_BASE_URL=https://api.siliconflow.cn/v1
SILICONFLOW_MODEL=Qwen/Qwen2.5-72B-Instruct
SILICONFLOW_IMAGE_MODEL=black-forest-labs/FLUX.1-schnell
SILICONFLOW_EMBEDDING_MODEL=
ANTHROPIC_API_KEY=
ANTHROPIC_BASE_URL=https://api.anthropic.com/v1
ANTHROPIC_MODEL=claude-3-5-sonnet-20241022
XAI_API_KEY=
XAI_BASE_URL=https://api.x.ai/v1
XAI_MODEL=grok-4
XAI_IMAGE_MODEL=grok-imagine-image
KIMI_API_KEY=
KIMI_BASE_URL=https://api.moonshot.cn/v1
KIMI_MODEL=moonshot-v1-32k
GLM_API_KEY=
GLM_BASE_URL=https://open.bigmodel.cn/api/paas/v4
GLM_MODEL=glm-4.5-air
QWEN_API_KEY=
QWEN_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
QWEN_MODEL=qwen-plus
GEMINI_API_KEY=
GEMINI_BASE_URL=https://generativelanguage.googleapis.com/v1beta/openai
GEMINI_MODEL=gemini-2.5-flash
# RAG / Vector
RAG_ENABLED=true
RAG_VERBOSE_LOG=false
RAG_DEFAULT_TENANT=default
EMBEDDING_PROVIDER=openai
EMBEDDING_MODEL=text-embedding-3-small
EMBEDDING_VERSION=1
EMBEDDING_BATCH_SIZE=64
# Local Qdrant:
QDRANT_URL=http://127.0.0.1:6333
# Qdrant Cloud example:
# QDRANT_URL=https://your-cluster.us-west-2-0.aws.cloud.qdrant.io:6333
QDRANT_API_KEY=
QDRANT_COLLECTION=ai_novel_chunks_v1
QDRANT_TIMEOUT_MS=120000
QDRANT_UPSERT_MAX_BYTES=3145728
RAG_CHUNK_SIZE=800
RAG_CHUNK_OVERLAP=120
RAG_VECTOR_CANDIDATES=40
RAG_KEYWORD_CANDIDATES=40
RAG_FINAL_TOP_K=8
RAG_WORKER_POLL_MS=2500
RAG_WORKER_MAX_ATTEMPTS=5
RAG_WORKER_RETRY_BASE_MS=5000
RAG_EMBEDDING_TIMEOUT_MS=30000
RAG_EMBEDDING_MAX_RETRIES=2
RAG_EMBEDDING_RETRY_BASE_MS=500
RAG_HTTP_TIMEOUT_MS=30000
# Short drama video provider
# DRAMA_VIDEO_HTTP_CREATE_URL=
# DRAMA_VIDEO_HTTP_STATUS_URL=
# DRAMA_VIDEO_HTTP_API_KEY=
# DRAMA_VIDEO_HTTP_PROVIDER_ID=http
# DRAMA_VIDEO_HTTP_PROVIDER_LABEL=HTTP 视频通道
# DRAMA_VIDEO_HTTP_PROVIDER_DESCRIPTION=通过环境变量配置的外部视频生成服务。
# DRAMA_VIDEO_HTTP_TIMEOUT_MS=120000
# DRAMA_VIDEO_HTTP_SUPPORTS_REF_IMAGES=false
# DRAMA_VIDEO_REF_IMAGE_BASE_URL=http://localhost:3000
# DRAMA_VIDEO_MOCK_COST_PER_SECOND=0
# DRAMA_VIDEO_HTTP_COST_PER_SECOND=0
# DRAMA_VIDEO_HTTP_COST_CURRENCY=CNY
# Short drama TTS provider
# DRAMA_TTS_HTTP_SYNTHESIZE_URL=
# DRAMA_TTS_HTTP_API_KEY=
# DRAMA_TTS_HTTP_PROVIDER_ID=http
# DRAMA_TTS_HTTP_PROVIDER_LABEL=HTTP 配音通道
# DRAMA_TTS_HTTP_PROVIDER_DESCRIPTION=通过环境变量配置的外部 TTS 服务。
# DRAMA_TTS_HTTP_TIMEOUT_MS=120000
# DRAMA_TTS_MOCK_COST_PER_SECOND=0
# DRAMA_TTS_HTTP_COST_PER_SECOND=0
# DRAMA_TTS_HTTP_COST_CURRENCY=CNY
# Short drama production cost estimate
# DRAMA_COST_CURRENCY=CNY
# DRAMA_IMAGE_COST_PER_IMAGE=0
# DRAMA_IMAGE_COST_PER_IMAGE_OPENAI=0
# Client
VITE_API_BASE_URL=http://localhost:3000/api
VITE_CREATION_STUDIO_ENABLED=true