18 Dec, 2025
2 commits
-
config/config_loader.py: 从 QueryConfig 类中删除 enable_translation 字段 config/config.yaml: 删除 enable_translation: true 配置项 config/config_loader.py: 从 to_dict() 方法中删除相关输出 2. 索引阶段(离线)- 使用租户配置 indexer/indexing_utils.py: 根据 tenant_config.translate_to_en 和 translate_to_zh 决定是否初始化 translator 只有任一方向开启时才创建 translator indexer/document_transformer.py: _fill_text_fields 从 tenant_config 读取 translate_to_en 和 translate_to_zh 调用 translate_for_indexing 时传递这两个参数 更新了文档注释 3. 查询阶段(在线)- 使用租户配置 query/query_parser.py: parse() 方法新增 tenant_id 参数 根据租户配置决定翻译目标语言(translate_to_zh / translate_to_en) 如果两个都是 false,跳过翻译阶段 translator 属性不再依赖 enable_translation,总是可以初始化 search/searcher.py: search() 方法中根据租户配置计算 enable_translation(用于日志和 metadata) 调用 query_parser.parse() 时传递 tenant_id 4. 翻译器方法更新 query/translator.py: translate_for_indexing() 新增 translate_to_en 和 translate_to_zh 参数(默认 True 保持向后兼容) 根据这两个参数决定翻译目标 更新了文档注释
-
2. translate_multi 还需要提供一种调用方法,异步的,但是 可以等待结果的。 3. 如果detected_lang不是en也不是zh,这时候, 我们调用translate_multi 是需要等待结果返回的(因为是zh 或者 en 都有一个索引字段可以查,因此 本次可以不用结果,直接去走搜索,但是如果两者都不是,只能等待翻译结果。) 4. parse函数 这里可能发起一个异步的调用,下面的encode也要做成异步的,这样 encode和翻译两个异步任务的时间可以重叠,需要等待所有结果都返回。 更改 1. 去除 get_translation_needs 函数,逻辑内联到 parse 函数 在 parse 函数中(第230-234行)直接实现了 get_translation_needs 的逻辑 2. 添加 translate_multi_async 方法,支持异步等待结果 在 translator.py 中添加了 translate_multi_async 方法(第412-459行) 该方法返回字典,值为翻译字符串(缓存命中)或 Future 对象(需要等待) 3. 根据 detected_lang 决定是否需要等待翻译结果 如果 detected_lang 不是 'en' 也不是 'zh',使用 translate_multi_async 并等待结果(第245-261行) 如果是 'en' 或 'zh',使用 translate_multi 的异步模式,不等待结果(第262-273行) 4. 将 encode 和翻译改为异步并行执行 encode 使用 ThreadPoolExecutor 异步执行(第315-330行) 翻译和编码任务并行执行,使用 as_completed 等待所有结果(第332-375行)
08 Dec, 2025
1 commit
07 Dec, 2025
2 commits
-
主要功能: 1. 增量数据获取服务 - 新增 IncrementalIndexerService 提供单个SPU数据获取 - 新增 /indexer/spu/{spu_id} API接口 - 服务启动时预加载分类映射等公共数据 - 提取 SPUDocumentTransformer 统一全量和增量转换逻辑 - 支持根据租户配置进行语言处理和翻译 3. 租户配置系统 - 租户配置合并到统一配置文件 config/config.yaml - 支持每个租户独立配置主语言和翻译选项 - 租户162配置为翻译关闭(用于测试) 4. 翻译功能集成 - 翻译提示词作为DeepL API的context参数传递 - 支持中英文提示词配置 - 索引场景:同步翻译,使用缓存 - 查询场景:异步翻译,立即返回 测试: - 新增 indexer/test_indexing.py 和 query/test_translation.py - 验证租户162翻译关闭功能 - 验证全量和增量索引功能 -
添加 ThreadPoolExecutor 线程池用于异步翻译 修改 translate_multi() 方法,支持 async_mode 参数(默认 True) 添加 _get_cached_translation() 方法,快速获取缓存 添加 _translate_async() 方法,异步执行翻译任务 2. 异步翻译逻辑 命中缓存:立即返回缓存结果 未命中缓存: 异步启动翻译任务(不阻塞) 返回 None(本次查询不使用) 翻译完成后自动存入缓存 下次查询时可直接使用缓存结果 3. QueryParser 更新 调用 translate_multi() 时使用 async_mode=True 过滤掉 None 值(未完成的翻译) 优化日志输出,区分缓存命中和异步翻译 工作流程 首次查询:未命中缓存 → 异步翻译 → 返回空翻译 → 不阻塞 翻译完成:结果存入缓存 后续查询:命中缓存 → 立即返回 → 快速响应
05 Dec, 2025
1 commit
-
将 must 子句改为 should 子句的多查询策略 实现以下查询类型: base_query:主查询,使用 AND 操作符和 75% minimum_should_match 翻译查询:跨语言查询,boost=0.4 短语查询:短查询的精确短语匹配 关键词查询:基于提取名词的查询,boost=0.1 添加 _get_match_fields() 方法,支持中英文字段动态映射 4. 关键改进点 minimum_should_match 从 67% 提升到 75% 添加 operator: "AND" 确保所有词都匹配 使用 should 子句实现多策略融合 支持短语查询和关键词查询的智能触发
02 Dec, 2025
1 commit
-
query config/ranking config优化
26 Nov, 2025
1 commit
14 Nov, 2025
1 commit
-
2. 向量服务不用本地预估,改用网络服务
13 Nov, 2025
2 commits
11 Nov, 2025
1 commit
-
## 🎯 Major Features - Request context management system for complete request visibility - Structured JSON logging with automatic daily rotation - Performance monitoring with detailed stage timing breakdowns - Query analysis result storage and intermediate result tracking - Error and warning collection with context correlation ## 🔧 Technical Improvements - **Context Management**: Request-level context with reqid/uid correlation - **Performance Monitoring**: Automatic timing for all search pipeline stages - **Structured Logging**: JSON format logs with request context injection - **Query Enhancement**: Complete query analysis tracking and storage - **Error Handling**: Enhanced error tracking with context information ## 🐛 Bug Fixes - Fixed DeepL API endpoint (paid vs free API confusion) - Fixed vector generation (GPU memory cleanup) - Fixed logger parameter passing format (reqid/uid handling) - Fixed translation and embedding functionality ## 🌟 API Improvements - Simplified API interface (8→5 parameters, 37.5% reduction) - Made internal functionality transparent to users - Added performance info to API responses - Enhanced request correlation and tracking ## 📁 New Infrastructure - Comprehensive test suite (unit, integration, API tests) - CI/CD pipeline with automated quality checks - Performance monitoring and testing tools - Documentation and example usage guides ## 🔒 Security & Reliability - Thread-safe context management for concurrent requests - Automatic log rotation and structured output - Error isolation with detailed context information - Complete request lifecycle tracking 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
08 Nov, 2025
2 commits