#!/usr/bin/env python3 """ 测试模型缓存机制 """ from lib.text_embedding import compare_phrases print("=" * 60) print("测试模型缓存机制") print("=" * 60) print() # 第一次调用 - 会加载模型 print("第一次调用 compare_phrases(会加载模型):") result1 = compare_phrases("深度学习", "神经网络") print(f"相似度: {result1['相似度']:.3f}") print() # 第二次调用 - 不会加载模型(使用缓存) print("第二次调用 compare_phrases(使用缓存,不会重新加载):") result2 = compare_phrases("机器学习", "人工智能") print(f"相似度: {result2['相似度']:.3f}") print() # 第三次调用 - 不会加载模型(使用缓存) print("第三次调用 compare_phrases(使用缓存,不会重新加载):") result3 = compare_phrases("Python", "Java") print(f"相似度: {result3['相似度']:.3f}") print() # 切换到多语言模型 - 第一次会加载 print("切换到多语言模型(第一次会加载):") result4 = compare_phrases("Hello", "Hi", model_name="multilingual") print(f"相似度: {result4['相似度']:.3f}") print() # 再次使用多语言模型 - 不会加载(使用缓存) print("再次使用多语言模型(使用缓存,不会重新加载):") result5 = compare_phrases("Good", "Great", model_name="multilingual") print(f"相似度: {result5['相似度']:.3f}") print() # 切换回中文模型 - 不会加载(之前已加载) print("切换回中文模型(使用缓存,不会重新加载):") result6 = compare_phrases("编程", "开发") print(f"相似度: {result6['相似度']:.3f}") print() print("=" * 60) print("总结:") print(" - 每个模型只在第一次使用时加载一次") print(" - 后续调用直接使用缓存的模型") print(" - 可以自由切换不同模型,已加载的模型会保留在内存中") print("=" * 60)