Skip to main content

Nardial Dialog System

Project description

NarDialPy

Python implementation of the Narrative Dialog Management System.


Demo

Here is a demo showcasing an agent-driven conversation utilizing Google Dialogflow, Google TTS, and OpenAI's GPT4

First, you need to set-up Google Cloud Console with dialogflow and Google TTS:

  1. Dialogflow: https://socialrobotics.atlassian.net/wiki/spaces/CBSR/pages/2205155343/Getting+a+google+dialogflow+key
  2. TTS: https://console.cloud.google.com/apis/api/texttospeech.googleapis.com/ Note: you need to set-up a paid account with a credit card. You get $300,- free tokens, which is more then enough for testing this agent. So in practice it will not cost anything.
  3. Create a keyfile as instructed in (1) and save it conf/dialogflow/google_keyfile.json (Never share the keyfile online!)

Secondly you need to configure your dialogflow agent. 4. In your empty dialogflow agent do the following things:

  • Remove all default intents
  • Go to settings -> import and export -> and import the resources/droomrobot_dialogflow_agent.zip into your dialogflow agent. That gives all the necessary intents and entities that are part of this example (and many more)

Thirdly, you need an openAI key: 5. Generate your personal openai api key here: https://platform.openai.com/api-keys 6. Either add your openai key to your systems variables or create a .openai_env file in the conf/openai folder and add your key there like this: OPENAI_API_KEY="your key"

Forth, the redis server, Dialogflow, Google TTS and OpenAI gpt service need to be running:

  1. Run:
pip install --upgrade social-interaction-cloud[dialogflow,google-tts,openai-gpt]
  1. Run:
conf/redis/redis-server.exe conf/redis/redis.conf
  1. Run in new terminal:
run-dialogflow 
  1. Run in new terminal:
run-google-tts
  1. Run in new terminal:
run-gpt
  1. Connect a device e.g. desktop, nao, pepper, alphamini
  2. Run this script in a new terminal.

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

nardial-0.1.2.tar.gz (71.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nardial-0.1.2-py3-none-any.whl (58.1 kB view details)

Uploaded Python 3

File details

Details for the file nardial-0.1.2.tar.gz.

File metadata

  • Download URL: nardial-0.1.2.tar.gz
  • Upload date:
  • Size: 71.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.12

File hashes

Hashes for nardial-0.1.2.tar.gz
Algorithm Hash digest
SHA256 6a131c7b688c51c763ae59c3e8433ddbc7d8aab0dc17eaa15205c74245ea5d50
MD5 952b296703358030fdb8e53ae95667e7
BLAKE2b-256 6b3e717bb771920303a227b5300b21d26b837a29587a369939ee88151fab34ee

See more details on using hashes here.

File details

Details for the file nardial-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: nardial-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 58.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.12

File hashes

Hashes for nardial-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f0706d0c5614b0b7c5ba1006fc9b101b71e757fa0988d5067930c2784927595e
MD5 03ea7bf946679647b13c06fe4e786e81
BLAKE2b-256 20fa9d9f2c20cae0422feaa7bcd9c6bd669b88f0f2cacac0062600d6d6c1b67a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page