Protect your models from out of scope domains. Focus on what matters.
Project description
Domain Matcher
Domain Matcher is a library that aims at matching a pre-defined domain to your input data. Input without domain are deemed not important and thus can be safely filtered out.
Domain Matching performs very cheap OoD detection using topic modeling and keyword extraction.
pip install domain-matcher
Usage
from datasets import load_dataset
from domain_matcher.core import DomainMatcher, DMConfig
# Custom version of `clinc-oos` where non-banking classes are assigned to oos.
ds = load_dataset("GlowstickAI/banking-clinc-oos", "plus")
config = DMConfig(text_column='text', label_column='intent', oos_class='oos')
dmatcher = DomainMatcher(config)
# Fit DM on your train data see our blog to see what's happening!
dmatcher.fit(ds['train'])
# Predict: You can predict on a string, List[str] or Dataset
dmatcher.transform("Can you cancel my credit card?")['in_domain']
# >>> True
dmatcher.transform("Can you cancel my reservation at Giorgi's?")['in_domain']
# >>> False
Troubleshooting
For troubleshooting, please see our wiki or submit an issue if you can't find what you're looking for.
Development
- Install Pyenv
curl https://pyenv.run | bash
pyenv install 3.9.13 && pyenv global 3.9.13
- Install Poetry
poetry install
- Add precommits
poetry run pre-commit install
Tooling
make format
: format the code with Ruffmake test
: run unit tests and mypy.
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
domain_matcher-0.1.0.tar.gz
(12.3 kB
view details)
Built Distribution
File details
Details for the file domain_matcher-0.1.0.tar.gz
.
File metadata
- Download URL: domain_matcher-0.1.0.tar.gz
- Upload date:
- Size: 12.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.9.13 Linux/6.2.6-76060206-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | d69b3ad6a9509fdfa39306b62c52f3e3be4a23859bd3bc69c738f570b449e603 |
|
MD5 | d85636998cbf32a22d2cd8f01bcfbdf6 |
|
BLAKE2b-256 | c9c0dd60a6b0b8d68bcfa00c60542ce54c4b67122c0bffd997c6bc836b233c11 |
File details
Details for the file domain_matcher-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: domain_matcher-0.1.0-py3-none-any.whl
- Upload date:
- Size: 15.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.5.1 CPython/3.9.13 Linux/6.2.6-76060206-generic
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 32f5de070477ee750d30b5279a6fc7605e8ec10336147a210d85ba47d78492fe |
|
MD5 | 93d61fe9efeb869bccff550d1030ea1b |
|
BLAKE2b-256 | 7dfc87e26de639e18f22dba3a0a8c6f88e1df967de0b1f0ece512ef03e1e8d0e |