A simple framework for building complex dialogue systems.
Project description
A simple framework for building complex dialogue systems.
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
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
Millet-3.0.0.tar.gz
(26.2 kB
view details)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1cd7787af19a3a1f541e6d4c8b5cba90a9fd3f7699c9ec9c99af866d24dc1504 |
|
MD5 | 8b6dc3fc0b5ac1dfae0d7ba41df40e51 |
|
BLAKE2b-256 | 44e7b6e66be0e219db20204203537ceae977abb5bf2ab46ae0997c56489d5236 |