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!']
Release files for Millet 3.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| Millet-3.0.0.tar.gz | 26.2 kB | Details |
Release files / Millet-3.0.0.tar.gz
| Download URL | Millet-3.0.0.tar.gz |
|---|---|
| Size | 26.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1cd7787af19a3a1f541e6d4c8b5cba90a9fd3f7699c9ec9c99af866d24dc1504
|
|
BLAKE2b-256 checksum How to use checksums |
44e7b6e66be0e219db20204203537ceae977abb5bf2ab46ae0997c56489d5236
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is 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
|