diff --git a/.env.example b/.env.example index 1b57bc9..526a8ca 100644 --- a/.env.example +++ b/.env.example @@ -33,6 +33,7 @@ DB_SQLITE_PATH=./data/cyrene.db # ---- LLM 多供应商(LLM_PROVIDER 显式声明协议:openai / anthropic,默认 openai) ---- # Provider = openai:OpenAI 兼容 /chat/completions(含 OpenAI 兼容网关,也可经它承载 Anthropic 模型,但失去原生 tool input 对象优势) LLM_PROVIDER=openai + LLM_BASE_URL=https://api.openai.com/v1 LLM_API_KEY=sk-xxxxx LLM_MODEL=gpt-4o @@ -44,11 +45,12 @@ LLM_FALLBACK_MODEL=gpt-4o-mini # ANTHROPIC_MODEL=claude-sonnet-4-20250514 # ANTHROPIC_FALLBACK_MODEL=claude-haiku-3-5 -# ---- 记忆嵌入(可选) ---- -# 不配置时使用内置 n-gram / FTS 向量。配置后必须真实走语义路径(M4 接入)。 -# EMBEDDING_API_URL=http://localhost:11434/v1 +# ---- 记忆嵌入(可选,真语义) ---- +# 不配置时使用内置 n-gram / FTS 向量(dim=256)。配置后必须真实走语义路径。 +# EMBEDDING_API_URL 是【完整 /embeddings 端点】(不是 base)——例:Ollama / llama.cpp = http://localhost:11434/v1/embeddings +# EMBEDDING_API_URL=http://localhost:11434/v1/embeddings # EMBEDDING_API_KEY= -# EMBEDDING_MODEL=bge-m3 +# EMBEDDING_MODEL=Qwen3-Embedding-0.6B # 推荐(Q8_0 ~639MB、dim=1024、ModelScope 国内可下) # ---- IoT 设备提供者 ---- # mock = 模拟智能家居设备(开发测试用);none = 禁用 IoT。 diff --git a/README.md b/README.md index e69dbba..caa778f 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,8 @@ go build -ldflags="-s -w" -trimpath -o cyrene ./cmd/cyrene/ `.env` 示例(本地 Ollama / llama.cpp): ```bash -EMBEDDING_API_URL=http://localhost:11434/v1 +# EMBEDDING_API_URL 必须是【完整 /embeddings 端点】(不是 base) +EMBEDDING_API_URL=http://localhost:11434/v1/embeddings EMBEDDING_MODEL=Qwen3-Embedding-0.6B # EMBEDDING_API_KEY= ``` @@ -82,7 +83,7 @@ EMBEDDING_MODEL=Qwen3-Embedding-0.6B **llama.cpp 能替代 Ollama 吗?** —— 能,且更省内存。llama.cpp 的 `llama-server`(服务模式)同样暴露 **OpenAI 兼容 `/v1/embeddings`**,用单二进制 + 一个 GGUF: ```bash ./llama-server -m Qwen3-Embedding-0.6B-Q8_0.gguf --embedding -ngl 99 --port 11434 -# 然后 EMBEDDING_API_URL=http://localhost:11434/v1 照用(dim=1024;切换前清一次向量表) +# 然后 EMBEDDING_API_URL=http://localhost:11434/v1/embeddings 照用(dim=1024;切换前清一次向量表) ``` - **Ollama**:模型管理方便(`pull`)、开箱即用,但常驻偏重。 - **llama.cpp**:单文件更轻(内存更省,适合资源受限 / 单机部署)、可离线自制 GGUF;但模型要自己下/转(无 registry)。注意:**llama.cpp 只认 GGUF**,`model.safetensors` 是 transformers/HF 用的,不能直接喂 llama.cpp。