xiaomo 396e005686 feat: embedding service — Cloudflare Worker + KV cache + Dashscope
- POST /embed: batch text → vector (max 100)
- KV cache: sha256(model+text), content-addressable, no expiry
- Dashscope text-embedding-v3 upstream (1024 dims)
- Bearer token auth
- Health endpoint

Deployed: https://embed.shazhou.workers.dev
2026-04-29 07:21:46 +00:00

Embedding Service

Text → vector 计算服务,nerve knowledge 的 embedding 后端。

接口

POST /embed
Authorization: Bearer <token>

{
  "texts": ["chunk 1", "chunk 2"],
  "model": "text-embedding-v3"
}

→ 200
{
  "embeddings": [[0.012, ...], [0.056, ...]],
  "model": "text-embedding-v3",
  "dimensions": 1024,
  "cached": [false, true]
}

特性

  • 缓存: KV 存储,key = sha256(model + text),永不过期
  • 上游: Dashscope text-embedding-v3(可配置)
  • 批量: 单次最多 100 条
  • 鉴权: Bearer token

开发

pnpm install
pnpm dev       # 本地开发
pnpm deploy    # 部署到 Cloudflare Workers

环境变量(Secrets)

  • AUTH_TOKEN — 鉴权 token
  • DASHSCOPE_API_KEY — Dashscope API key
  • DEFAULT_MODEL — 默认模型(可选,默认 text-embedding-v3)
S
Description
Embedding computation service — text → vector + cache (Cloudflare Worker)
Readme 54 KiB
Languages
TypeScript 100%