Files
deploy.stack/honcho/env.cfg.example
T
cnphpbb 80d485605b fix(honcho): embedding 升 Qwen3-8B 并 force dimensions=1536 兼容旧 schema
- vm61 数据库 public.documents.embedding dim 是 1536(旧 OpenAI 部署遗留)
- Qwen3-Embedding-8B 默认 4096 维,撞 schema 不匹配导致 honcho-api 启动失败
- 通过 SiliconFlow OpenAI 兼容 API 的 dimensions 参数强制输出 1536
- env.cfg + stack.yml + readme 全部同步更新
- docker compose config 校验通过,vm61 honcho-api /health HTTP 200
2026-06-19 18:26:45 +08:00

80 lines
4.2 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ============================================================
# Honcho Self-Hosted 部署 — 公共环境变量(不含敏感信息)
# 复制为 env.cfg 后填入真实值,env.cfg 已被 .gitignore 忽略
# ============================================================
# ============================================================
# 镜像版本
# ============================================================
# Honcho 主仓库 git ref(源码 build 用,可填 tag / branch / SHA
HONCHO_VERSION=main
# PostgreSQL 大版本号(pgvector 镜像 tag 后缀,必须与镜像仓库支持的 tag 对应)
HONCHO_DB_VERSION=18
# Redis 大版本号
HONCHO_REDIS_VERSION=8
# 镜像仓库(默认公共镜像;自建私有 hub 可改 hub.tp229.com:3500/...
HONCHO_DB_IMAGE=pgvector/pgvector
HONCHO_REDIS_IMAGE=redis
# ============================================================
# PostgreSQL 数据库
# ============================================================
HONCHO_DB_USER=honcho
HONCHO_DB_NAME=honcho
# scram-sha-256 比 md5 安全;与 POSTGRES_INITDB_ARGS --auth-host 同步
POSTGRES_HOST_AUTH_METHOD=scram-sha-256
# ============================================================
# 宿主机数据卷路径(必须 WSL/Linux ext4 原生 fs,不能放 /mnt/9P
# 9P drvfs 的 fsync 不可靠,会导致 PG 数据损坏
# ============================================================
Volumes_Path=/data/Volumes/honcho
# ============================================================
# 服务端口(宿主机:容器,全部绑定 0.0.0.0 供 LAN 访问)
# 5432 与 hindsight/dbSer 撞车,多服务共存时改 HONCHO_DB_PORT 区分
# ============================================================
HONCHO_API_PORT=8000
HONCHO_DB_PORT=5432
HONCHO_REDIS_PORT=6379
# ============================================================
# Honcho 应用配置
# ============================================================
HONCHO_LOG_LEVEL=INFO
# 本地 LAN 自用可设 false;公网暴露必须改 true
HONCHO_AUTH_USE_AUTH=false
HONCHO_NAMESPACE=honcho
# 关闭可省 embedding 费用(但失去语义检索能力)
HONCHO_EMBED_MESSAGES=true
# Embedding 模型(默认走 SiliconFlow 兼容端点,独立 base URL
HONCHO_EMBEDDING_MODEL=Qwen/Qwen3-Embedding-8B
HONCHO_EMBEDDING_BASE_URL=https://api.siliconflow.cn/v1
# 替代方案 A:本地 Ollama(零成本、隐私优先)
# HONCHO_EMBEDDING_MODEL=qwen3-embedding:0.6b
# HONCHO_EMBEDDING_BASE_URL=http://host.docker.internal:11434/v1
# EMBEDDING_API_KEY 可留空(Ollama 默认无 key;如配了 OLLAMA_API_KEY 环境变量再填)
# 前置:宿主机 `ollama pull qwen3-embedding:0.6b`
# docker compose 中 host.docker.internal 在 Linux compose v2 默认可用,Windows/WSL2 自动转发
# Embedding 维度(Qwen3-Embedding-8B 默认 4096,但通过 SiliconFlow 的 dimensions 参数强制输出 1536
# 必须与已有 DB schema 的 public.documents.embedding dim 一致;切换模型必须先 migrate 旧数据
# 若 Honcho 自动推断失败,需在 stack.yml 同步设置 EMBEDDING_VECTOR_DIMENSIONS=1536
# deriver 必须用支持 tool calling 的模型
HONCHO_DERIVER_MODEL=gpt-5.4-mini
HONCHO_DERIVER_WORKERS=1
# ============================================================
# LLMOpenAI 兼容协议;可换 OpenRouter / vLLM / Ollama 等端点)
# deriver 启动时强校验 API Key 非空,占位符会反复重启
# ============================================================
HONCHO_LLM_BASE_URL=https://api.openai.com/v1
# ============================================================
# 敏感值(必填,env.cfg 不提交)— 在 .gitignore 已忽略
# 占位符约定:REPLACE_ME_XXX → 替换为真实值(避免使用 <...> 占位符,patch 工具链会吞)
# ============================================================
# HONCHO_LLM_API_KEY=REPLACE_ME_LLM_KEY # 你的 OpenAI key 或兼容端点 key
# HONCHO_EMBEDDING_API_KEY=REPLACE_ME_EMBEDDING_KEY # SiliconFlow keyhttps://cloud.siliconflow.cn/account/ak
# HONCHO_DB_PASSWORD=REPLACE_ME_DB_PASSWORD # 强密码,不要带特殊字符,避免 URI 编码问题
# HONCHO_AUTH_JWT_SECRET=REPLACE_ME_JWT_SECRET # 仅 AUTH_USE_AUTH=true 时需要;用 python scripts/generate_jwt_secret.py 生成