Skip to main content

Python interface to libcrm114

Project description

travis-ci

pycrm114

Python bindings for libcrm114

Quickstart

No persistence

import pycrm114

crm = pycrm114.CRM114(classes=["spam", "ham"])
crm.learn("spam", "foo bar")
crm.learn("ham", "bar is good")
assert crm.classify("is bar good")["class"] == "ham"
assert crm.classify("foo bar good")["class"] == "spam"
crm.forget("spam", "foo bar")
assert crm.classify("foo bar good")["class"] == "ham"

File System Persistence

import pycrm114

crm = pycrm114.CRM114(
    classes=["spam", "ham"],
    storage=pycrm.storage.FileSystemStorage("/var/tmp/crm-test")
)
crm.learn("spam", "foo bar")
crm.learn("ham", "bar is good")
crm.save()
new_crm = pycrm114.CRM114(
    classes=["spam", "ham"],
    storage=pycrm.storage.FileSystemStorage("/var/tmp/crm-test")
)
assert new_crm.classify("is bar good")["class"] == "ham"
assert new_crm.classify("foo bar good")["class"] == "spam"

Dependencies

Debian/Ubuntu: sudo apt-get install libtre5 libtre-dev

OS X: brew install tre

Tests

Dependencies

pip install -r requirements/test.txt

To test against different python versions use tox:

tox

To run the tests with the active python:

python setup.py build && nosetests tests

Building

python setup.py build

References

Changelog

0.2.2 2015-04-18

  • Added a forget method to unlearn a text from a class

0.2.0 2015-04-18

  • Python 3 compatibility

  • Added a Pythonic wrapper with a potentially pluggable storage backend

  • Support for dumping control block/data block to string instead of file

  • Added basic tests

0.1.0 2015-04-10

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycrm114-0.2.2.tar.gz (242.9 kB view hashes)

Uploaded Source

Built Distribution

pycrm114-0.2.2-py2.7-macosx-10.10-x86_64.egg (136.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page