18 Dec, 2025
1 commit
-
索引的两项功能: 1. 多语言。 店铺配置的语言如果不等于zh,那么要调用翻译 获得中文翻译结果,同时 如果不等于en,要翻译en的结果。 要缓存到redis。 先查询缓存,没命中缓存再调用翻译,然后存入redis缓存起来。 这些逻辑应该是 @query/translator.py 内部的,不需要调用的地方关心。但是现在是 DictCache,直接改掉,改为redis的缓存 2. 填充 标题的向量化字段。如果该店铺的标题向量化打开,那么应该请求向量化模型根据英文的title得到embedding。使用 BgeEncoder. 以上两个模块的缓存,过期时间都是 最近多长时间内没有访问过。 feat: 1. 更新 REDIS_CONFIG 配置 在 config/env_config.py 中添加了用户提供的配置项(snapshot_db, translation_cache_expire_days, translation_cache_prefix 等) 2. 修改 query/translator.py 将 DictCache 改为 Redis 缓存 实现了 translate_for_indexing 方法,自动处理多语言翻译: 如果店铺语言不等于 zh,自动翻译成 zh 如果店铺语言不等于 en,自动翻译成 en 翻译逻辑封装在 translator.py 内部,调用方无需关心 3. 修改 embeddings/text_encoder.py 在 BgeEncoder 中添加了 Redis 缓存 实现了滑动过期策略(每次访问时重置过期时间) 缓存逻辑参考了提供的 CacheManager 对象 4. 修改 indexer/document_transformer.py 添加了 encoder 和 enable_title_embedding 参数 实现了 _fill_title_embedding 方法,使用英文标题(title_en)生成 embedding 更新了 _fill_text_fields 方法,使用新的 translate_for_indexing 方法 5. 更新 indexer/indexing_utils.py 更新了 create_document_transformer 函数,支持新的 encoder 和 enable_title_embedding 参数 如果启用标题向量化且未提供 encoder,会自动初始化 BgeEncoder
14 Nov, 2025
1 commit
-
2. 向量服务不用本地预估,改用网络服务
13 Nov, 2025
4 commits
-
主要变更: 1. 创建.env文件,添加MySQL数据库配置(Shoplazza生产环境) 2. 更新config/env_config.py,添加DB_CONFIG配置 3. 创建demo_base.sh脚本,完整的演示流程: - 生成测试数据 - 导入MySQL - 导入Elasticsearch - 启动后端服务 - 启动前端服务 4. 创建create_base_frontend.py,生成base配置专用的前端JS 5. 创建frontend/base.html,base配置专用前端页面 6. 更新frontend_server.py,支持base.html路由和PORT环境变量 7. 创建stop_base.sh,停止演示服务脚本 使用方式: bash scripts/demo_base.sh [tenant_id] 访问地址: http://localhost:6003/base
08 Nov, 2025
2 commits