#!/usr/bin/env python3 """ text_embedding 基础使用示例 """ import asyncio from lib.text_embedding import encode, similarity async def main(): print("=" * 60) print("示例1: 文本向量化") print("=" * 60) # 把文字变成数字向量 text = "人工智能正在改变世界" vector = await encode(text, dim=128) print(f"文本: {text}") print(f"向量形状: {vector.shape}") # (128,) 表示128个数字 print(f"向量前10个数字: {vector[:10]}") print() print("=" * 60) print("示例2: 批量转换多个文本") print("=" * 60) texts = [ "深度学习很有趣", "机器学习很强大", "今天天气不错" ] vectors = await encode(texts, dim=128) for i, (text, vec) in enumerate(zip(texts, vectors)): print(f"{i+1}. {text} -> {vec.shape}") print() print("=" * 60) print("示例3: 计算相似度") print("=" * 60) # 方法1: AI直接判断(最准确) result = await similarity("深度学习", "神经网络", method="ai_direct") print(f"深度学习 vs 神经网络") print(f" 相似度: {result['similarity']:.3f}") print(f" 说明: {result.get('explanation', '')}") print() # 方法2: 基于向量计算 result = await similarity("深度学习", "今天吃饭", method="cosine", dim=128) print(f"深度学习 vs 今天吃饭") print(f" 相似度: {result['similarity']:.3f}") print() if __name__ == "__main__": asyncio.run(main())