生产就绪的LASER多语言嵌入
项目描述
LASER嵌入
开箱即用的多语言句子嵌入。
laserembeddings是将Facebook Research的LASER (语言无关句子表示)打包成pip包,用于计算多语言句子嵌入的生产就绪版本。
有关完整文档,请查看项目的repo (master分支 或 此版本)。
入门指南
先决条件
您需要Python 3.6+和PyTorch。请参阅PyTorch安装说明。
安装
pip install laserembeddings
中文语言
默认情况下不支持中文。如果您需要嵌入中文句子,请使用“zh”额外功能安装laserembeddings。此额外功能包括jieba。
pip install laserembeddings[zh]
日语语言
默认情况下不支持日语。如果您需要嵌入日语句子,请使用“ja”额外功能安装laserembeddings。此额外功能包括mecab-python3 和ipadic 字典,后者在原始LASER项目中使用。
如果您在运行laserembeddings时遇到关于日语句子的问题,请参阅mecab-python3文档进行故障排除。
pip install laserembeddings[ja]
下载预训练模型
python -m laserembeddings download-models
这将下载模型到包源代码旁边的默认data
目录。使用python -m laserembeddings download-models path/to/model/directory
将模型下载到指定位置。
使用方法
from laserembeddings import Laser
laser = Laser()
# if all sentences are in the same language:
embeddings = laser.embed_sentences(
['let your neural network be polyglot',
'use multilingual embeddings!'],
lang='en') # lang is only used for tokenization
# embeddings is a N*1024 (N = number of sentences) NumPy array
如果句子不在同一语言中,您可以传递一个语言代码列表
embeddings = laser.embed_sentences(
['I love pasta.',
"J'adore les pâtes.",
'Ich liebe Pasta.'],
lang=['en', 'fr', 'de'])
如果您已将模型下载到特定目录
from laserembeddings import Laser
path_to_bpe_codes = ...
path_to_bpe_vocab = ...
path_to_encoder = ...
laser = Laser(path_to_bpe_codes, path_to_bpe_vocab, path_to_encoder)
# you can also supply file objects instead of file paths
如果您想从S3拉取模型
from io import BytesIO, StringIO
from laserembeddings import Laser
import boto3
s3 = boto3.resource('s3')
MODELS_BUCKET = ...
f_bpe_codes = StringIO(s3.Object(MODELS_BUCKET, 'path_to_bpe_codes.fcodes').get()['Body'].read().decode('utf-8'))
f_bpe_vocab = StringIO(s3.Object(MODELS_BUCKET, 'path_to_bpe_vocabulary.fvocab').get()['Body'].read().decode('utf-8'))
f_encoder = BytesIO(s3.Object(MODELS_BUCKET, 'path_to_encoder.pt').get()['Body'].read())
laser = Laser(f_bpe_codes, f_bpe_vocab, f_encoder)
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源分发
laserembeddings-1.1.2.tar.gz (12.8 kB 查看哈希值)
构建分发
laserembeddings-1.1.2-py3-none-any.whl (13.4 kB 查看哈希值)
关闭
laserembeddings-1.1.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1d0edf86c3ec800d9715d3dd530a04c1a4022ffc355b6d91d1ea6b23bd47a2fb |
|
MD5 | 22ad3225289be7ed7822bfe5ee0163f1 |
|
BLAKE2b-256 | d1d4334569ff2a318e8d587506d4dd1b54260b2391a5759e0614326bc17969bc |
关闭
laserembeddings-1.1.2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 1504af7f2a3353b75cef9ce1f6ea4260779e434906fd1b002d671477216232f7 |
|
MD5 | 7249e0dbd691038becc5efb8634829dd |
|
BLAKE2b-256 | bbc2d52b3171b53352ec5b67196b437d3fbf77b615d529ffa57b5772f84b2ad1 |