#!/usr/bin/env python
# -*- coding: utf-8 -*-

"""
调试QueryRewriteManager.query_extract方法
"""

import sys
import os
import time
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))

from foundation.ai.rag.retrieval.query_rewrite import QueryRewriteManager
from foundation.observability.logger.loggering import review_logger as logger


def debug_query_extract():
    """
    调试query_extract方法
    """
    # 测试数据
    review_content = """
主要部件说明
1、主梁总成
主梁总成由主梁和导梁构成。主梁单节长12m，共7节，每节重10.87t，主梁为主要承载受力构件，其上弦杆上方设有轨道供纵移桁车走行，实现预制梁的纵向移动;下弦设有反滚轮行走轨道，作为导梁纵移、前中支腿移动纵行轨道。导梁长18m，主要是为降低过孔挠度和承受中支腿移动荷载，起安全引导、辅助过孔作用。主梁、导梁为三角桁架构件单元，采用销轴连接，前、后端各设置横联构架。

图4-1 主梁总成图
注意事项：
（1）更换上、下弦销轴时，应优先向设备供应方购买符合要求的备件。自行更换时，材料性能必须优于设计零件性能，并按规定进行热处理，否则可能造成人员、设备事故。
（2）销轴不得弯曲受力，不得用销轴作为锤砸工具，不得任意放置及焊接

"""
    query_rewrite_manager = QueryRewriteManager()
    start_time = time.time()
    result = query_rewrite_manager.query_extract(review_content)
    end_time = time.time()
    elapsed_time = end_time - start_time

    print(f"[OK] 原始方法提取完成，耗时: {elapsed_time:.2f}秒")
    print(f"[OK] 原始方法返回结果: {result}")



def main():
    """
    主测试函数
    """
    print("开始调试 QueryRewriteManager.query_extract 方法")

    debug_query_extract()

    print("\n调试完成")


if __name__ == "__main__":
    main()