快速开始
备注
阅读本篇前,请确保已按照 安装教程 准备好昇腾环境及 sentence-transformers !
本教程以 all-MiniLM-L6-v2 模型为例,讲述如何使用 sentence-transformers 在昇腾 NPU 上实现文本数据的 Embedding。
前置准备
本篇样例代码为 sentence-transformers 的官方样例,需提前进行下载:
git clone https://github.com/UKPLab/sentence-transformers.git
使用模型
进入 sentence-transformers 项目目录,依次执行如下命令:
cd examples/applications/computing-embeddings
python computing_embeddings.py
出现如下日志则代表执行成功:
2024-10-15 08:11:36 - Use pytorch device_name: npu
2024-10-15 08:11:36 - Load pretrained SentenceTransformer: all-MiniLM-L6-v2
[W compiler_depend.ts:623] Warning: expandable_segments currently defaults to false. You can enable this feature by `export PYTORCH_NPU_ALLOC_CONF = expandable_segments:True`. (function operator())
Batches: 100%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 1/1 [00:00<00:00, 1.61it/s]
Sentence: This framework generates embeddings for each input sentence
Embedding: [-0.01375547 -0.04301599 -0.01562478 ... 0.10029524 0.12379668 -0.04230832]
Sentence: Sentences are passed as a list of string.
Embedding: [ 0.05640831 0.05488579 0.03137118 ... 0.06652435 0.08493122 -0.03337045]
Sentence: The quick brown fox jumps over the lazy dog.
Embedding: [0.04393559 0.05903088 0.04824848 ... 0.05215353 0.05615513 0.10205095]
可以看到该模型成功生成了这些句子对应的 Embedding 向量。