CLI for semantic string similarity
Project description
Semantic String Similarity CLI
simil
is a CLI interface to spacy
's string similarity engine. It uses the en_vectors_web_lg
dataset to compare strings for their English semantic similarity. Given two words, phrases, or sentences, simil
will tell you how similar their meanings are.
Installation
First install simil
itself:
$ pip3 install --user -U simil
Now install one of spacy's web_vector models:
$ python3 -m spacy download en_vectors_web_lg
You can choose between en_vectors_web_lg
, en_core_web_lg
, and en_core_web_md
, (en_core_web_sm
don't include word vectors at all, and can't be used with simil
.) simil
will use the largest model that you have installed, with preference for the vectors
model over a core
model.
I suggest using the large vectors model (en_vectors_web_lg
), but you might want to use a smaller model in order to save on disk space or memory usage.
Usage:
$ sim first_file.txt second_file.txt # compare two files
$ sim -s "first string" "second string" # compare two strings
The output is a number between 0 and 1, representing how similar the two strings are.
Details:
simil
uses Spacy's word vector models trained with GLoVe
, such as en_vectors_web_lg
.
This can be a large dataset, which makes for long startup times. So simil
spins off a process in the background to hold the model, and works under a client-server model with it. This means that if you run simil
a number of times in a row, only the first run is slow.
This background process does take up a fair bit of memory, typically around 2GB (for the en_vectors_web_lg
model). After 10 minutes of inactivity it will automatically be killed, in order not to take up memory indefinitely. You can change the length of this timeout with the --timeout
flag.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file simil-0.0.2.tar.gz
.
File metadata
- Download URL: simil-0.0.2.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | f001b1ed3332904252ca0a51b08238fa38e79f6722550cf13ff145813d4f53b6 |
|
MD5 | 9926a3ced34f2ea0f61d46b00e93af59 |
|
BLAKE2b-256 | 4a9eb058d2c36d06710884ef25242b556a6cd66012ecc3c7173856e9723ed3e7 |
File details
Details for the file simil-0.0.2-py3-none-any.whl
.
File metadata
- Download URL: simil-0.0.2-py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.2 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a669ec1ee83d7d582b701685d0d6cc905e215ddc519b6b21c770343e4b21638b |
|
MD5 | 4425767b574b5c23aecd30faa99b9855 |
|
BLAKE2b-256 | def555385babcb872c97c4a42f4231d422a60c9d4f8d4fbad65e8248f0032d7a |