https://github.com/seleb/markov-multi-order
Simple markov chain implementation supporting multiple orders of ngrams
https://github.com/seleb/markov-multi-order
chain generation markov procedural text
Last synced: 3 months ago
JSON representation
Simple markov chain implementation supporting multiple orders of ngrams
- Host: GitHub
- URL: https://github.com/seleb/markov-multi-order
- Owner: seleb
- License: mit
- Created: 2020-08-29T03:25:55.000Z (almost 6 years ago)
- Default Branch: main
- Last Pushed: 2020-11-22T22:55:10.000Z (over 5 years ago)
- Last Synced: 2025-02-16T03:05:21.188Z (over 1 year ago)
- Topics: chain, generation, markov, procedural, text
- Language: TypeScript
- Homepage: https://seleb.github.io/markov-multi-order
- Size: 20.5 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# `markov-multi-order`
Simple markov chain implementation supporting multiple orders of ngrams
```sh
npm i markov-multi-order
```
```ts
import { Markov } from 'markov-multi-order';
const markov = new Markov({
delimeter: '', // how to split up strings for ngrams (e.g. '' for letters, ' ' for words)
minOrder: 1, // minimum ngram order
maxOrder: 2, // maximum ngram order
source: ['123','abc'], // source used to generate ngrams
});
markov.randomSequence('a', 3); // generate string of length 3, starting with 'a'
markov.randomSequence('1', '3'); // generate string until the string '3' is reached, starting with '1'
markov.randomSequence(); // generate string until a natural end is reached, using a random start
```