Skip to main content

A simple framework for building complex dialogue systems.

Project description

A simple framework for building complex dialogue systems.

https://badge.fury.io/py/Millet.svg Documentation Status https://travis-ci.org/odryfox/millet.svg?branch=master https://coveralls.io/repos/github/odryfox/millet/badge.svg?branch=master

Installing

pip install Millet

A Simple Example

from typing import Dict, List
from millet import Agent, BaseSkill, BaseSkillClassifier


class MeetingSkill(BaseSkill):
    def execute(self, initial_message: str, user_id: str):
        name = self.ask(question='What is your name?')
        self.say(f'Nice to meet you {name}!')


class SkillClassifier(BaseSkillClassifier):
    @property
    def skills_map(self) -> Dict[str, BaseSkill]:
        return {
            'meeting': MeetingSkill(),
        }

    def classify(self, message: str, user_id: str) -> List[str]:
        return ['meeting']


skill_classifier = SkillClassifier()
agent = Agent(skill_classifier=skill_classifier)
conversation = agent.conversation_with_user('100500')
>>> conversation.process_message('Hello')
['What is your name?']
>>> conversation.process_message('Bob')
['Nice to meet you Bob!']

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

Millet-3.0.0.tar.gz (26.2 kB view details)

Uploaded Source

File details

Details for the file Millet-3.0.0.tar.gz.

File metadata

  • Download URL: Millet-3.0.0.tar.gz
  • Upload date:
  • Size: 26.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.3

File hashes

Hashes for Millet-3.0.0.tar.gz
Algorithm Hash digest
SHA256 1cd7787af19a3a1f541e6d4c8b5cba90a9fd3f7699c9ec9c99af866d24dc1504
MD5 8b6dc3fc0b5ac1dfae0d7ba41df40e51
BLAKE2b-256 44e7b6e66be0e219db20204203537ceae977abb5bf2ab46ae0997c56489d5236

See more details on using hashes here.

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