Giter Site home page Giter Site logo

seedvault / bot Goto Github PK

View Code? Open in Web Editor NEW
12.0 7.0 5.0 25 KB

The .BOT description is a human-readable open-source model for building a range of conversational AI.

Home Page: https://seedtoken.io

License: Other

bot description-language ai seedtoken bot-framework

bot's Introduction

.BOT Description (version 1.1)

What is .BOT

The .BOT description is a human-readable open-source model for building a range of conversational AI.

Introduction

Part of the SEED token project. This is a sneak preview - there is more to come. See the Wiki for more information.

About the SEED Token Project

SEED democratizes AI by offering an open and independent alternative to the monopolies of a few large corporations that currently control conversational user interfaces (CUIs) and AI technologies. SEED's licensed, monetized open-source platform for bots on blockchain supports collaboration and creative compensation that will exceed the proprietary deployments from industry giants. We are also giving users back control of their personal data. Find out more about the SEED Token project at seedtoken.io.

How to contribute - how to get involved

Go to our Developers Garden to see all featured projects, pick one and fill out the Developer Interest Form. If you rather like to discuss ideas before rolling up your sleeves, please come visit our Discord channels for developers

.BOT Description


Like .HTML for the web, .BOT it is a simple model that allows inexperienced developers, content authors, and engineers to build and distribute conversational user interfaces completely platform independent. Whether they be chatbots, assistants, conversational avatars for VR or AR or even video bots the .BOT format is intended to work with a range of modalities.

Modalities for a conversation with a bot can be the following:

  • text
  • voice
  • facial expressions and gestures (3D avatars and video)

This simple yet powerful approach is scalable, modular, and integrates with a range of channels and blockchains. It comes after many years' experience developing conversational UI, however it is also the beginning of a dialogue around how to build conversations.

Examples of channels (bold: already available):

  • Web (all modalities)
  • Telegram (text)
  • Facebook (text)
  • Signal (text and video)
  • Skype (text and video avatars)
  • Amazon Echo (voice assistants)
  • Snips (open-source voice assistants)
  • VR (3D avatars)
  • AR (3D avatars)
  • Virtual Worlds (3D avatars)

Disclaimer

These files are made available to you on an as-is and restricted basis, and may only be redistributed or sold to any third party as expressly indicated in the Terms of Use for Seed Vault.

Objective

To define a complete bot language that gives servers the possibility to build a bot with all its logic, including external services configuration, conversation logic flow, avatar library and any other information needed to create and execute a bot.

The format used to store the .BOT description is JSON, use this link in order to see its schema.

Sections

The description file is divided into sections to group the parameters:

  • Basic information: It is defined on the first level of the JSON file and includes the bot ID, name and other basic parameters.

  • Author: It includes as much information the author wants to share about itself. It could go from anonymous bots to pretty detailed author information including address and wallet information.

  • License: On this section is defined the license of the bot.

  • Remuneration: Here is defined the remuneration method selected by the authors in order to collect tokens on bot usage.

  • Tags: To help users to discover the bot into the search engine, the author is able to set different tags to the bot.

  • Modes: Defines the modes available for the bot. Examples: chat, voice, avatar, VR.

  • Channels: Defines the configuration of each channel where users can use the bot.

  • Media: Here is listed all the files used to deploy the bot. It includes the thumbnail and all the files necessary to create a 3D avatar following the ACTR standard.

  • Runtime: This section is filled by the server that is running the bot. Includes information about port, server, etc.

  • Modules: Defines the internal modules used on the bot.

  • Services: Here is defined all the external services used by the bot, including main services like voice recognition, to third party services like mapping or weather information.

  • Connections: Bot to bot conversation configuration.

  • Logging: Includes the information about logging method used by the bot.

  • Conversation Flow: All the conversation logic is contained on this section. For detailed information check the .FLOW documentation.

Check the structure documentation in order to get more detailed information related with the sections.

Runtime information

Even when almost all information is provided by the developer, some information is filled by the server that is running the bot. The runtime section is completed on the deployment process.

    "runtime": {
      "server": "serverID",
      "type": "string",
      "IP": "ip_address",
      "port": "integer",
      "encoding": "string",
      "seedAddress": "string",
      "mode": "string",
      subscribers: "array"
    },

Basic example

With a minimum number of parameters is possible to define a bot into the server:

"bot": {
    "ID": "",
    "name": "Example bot",
    "description": "05f079c46d096717604cc815f8eb5886",
    "version": "1.0",
    "language": "english",

    "remuneration": {
      "method": "free",
    }
    "author": {
      "name": "John Doe",
      "email": "[email protected]",
      "seedAddress": "17mmd6HfhkFB2kLy2GBbWenn48YJf7mGwg"
    },

    "modes": {
      "chat": true
    },

    "channels": {
      "channel": {
        "name": "web",
        "enabled": true,
        "mode": "chat",
       }
    },

    "media": {
      "thumbnail": "www.example.com",
    },

    "conversationFlow": {
        "url": "www.example.com/flows/flowID/32"
    }

}

Check a more complete example to see the structure of the other sections.

Enhancements on version 1.1

On version 1.1 we improved the description adding:

  • Sentiment Analysis server configuration
  • SMTP server information
  • oAuth configuration
  • Extra runtime variables

Documentation

Connect

Feel free to throw general questions regarding SEED and what to expect in the following months here on GitHub at @consiliera ([email protected]) ☀️

Connect with us elsewhere

Seed Vault Code (c) Botanic Technologies, Inc. Used under license.

bot's People

Contributors

epolidor avatar seedtoken avatar windfee avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

bot's Issues

Migrate to GitLab

Is your feature request related to a problem? Please describe.
we want to migrate to GitLab

Describe the solution you'd like

  1. I'd like to import all repositories including history/issues etc. to GitLab
  2. then mirror all GitLab updates to the "old" GitHub repos

Describe alternatives you've considered
staying here

Additional context
better pm tools/tracking on GitLab

┆Issue is synchronized with this Asana task

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.