Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pteichman/cobe
A Markov chain based text generation library and MegaHAL style chatbot
https://github.com/pteichman/cobe
Last synced: 3 days ago
JSON representation
A Markov chain based text generation library and MegaHAL style chatbot
- Host: GitHub
- URL: https://github.com/pteichman/cobe
- Owner: pteichman
- License: mit
- Created: 2010-03-07T02:24:49.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2021-07-08T20:43:32.000Z (over 3 years ago)
- Last Synced: 2024-11-06T02:52:48.381Z (8 days ago)
- Language: Python
- Homepage: http://teichman.org/blog/
- Size: 661 KB
- Stars: 242
- Watchers: 17
- Forks: 51
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
COBE stands for Code of Business Ethics. Cobe is a conversation
simulator, originally a database backed port of MegaHAL but a bit
more now.According to the Nobel Prize committee, "the COBE project can also
be regarded as the starting point for cosmology as a precision
science."There are a few relevant posts here:
- http://teichman.org/blog/2011/09/cobe-2.0.html
- http://teichman.org/blog/2011/05/singularity.html
- http://teichman.org/blog/2011/02/cobe.htmlYou can read its release history [here](https://github.com/pteichman/cobe/wiki).
Cobe has been inspired by
[the success of Hailo](http://blogs.perl.org/users/aevar_arnfjor_bjarmason/2010/01/hailo-a-perl-rewrite-of-megahal.html)Our goals are similar to Hailo: an on-disk data store for lower memory
usage, better support for Unicode, and general stability.You can read about the original MegaHAL [here](http://megahal.alioth.debian.org/How.html).
In short, it uses Markov modeling to generate text responses after
learning from input text.Cobe creates a directed graph of word n-grams (default n=3) from the
text it learns. When generating a response, it performs random walks
on this graph to create as many candidate replies as it can in half a
second.As the candidate responses are created, they're run through a scoring
algorithm that identifies which is the best of the group. After the
half second is over, the best candidate is returned as the response.Cobe installs a command line tool (called cobe) for interacting with a
brain database, though it is also intended to be used as a Python
api. See the documentation in the cobe.brain module for details.To install from a tarball:
```
$ python setup.py install
```
Or from the Python Package Index:```
$ easy_install pip
# pip install cobe
```Usage:
```
$ cobe init
$ cobe learn
$ cobe console
```