Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="" xml:lang="">
<head>
  <meta charset="utf-8" />
  <meta name="generator" content="pandoc" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
  <title>README</title>
  <style>
    html {
      color: #1a1a1a;
      background-color: #fdfdfd;
    }
    body {
      margin: 0 auto;
      max-width: 36em;
      padding-left: 50px;
      padding-right: 50px;
      padding-top: 50px;
      padding-bottom: 50px;
      hyphens: auto;
      overflow-wrap: break-word;
      text-rendering: optimizeLegibility;
      font-kerning: normal;
    }
    @media (max-width: 600px) {
      body {
        font-size: 0.9em;
        padding: 12px;
      }
      h1 {
        font-size: 1.8em;
      }
    }
    @media print {
      html {
        background-color: white;
      }
      body {
        background-color: transparent;
        color: black;
        font-size: 12pt;
      }
      p, h2, h3 {
        orphans: 3;
        widows: 3;
      }
      h2, h3, h4 {
        page-break-after: avoid;
      }
    }
    p {
      margin: 1em 0;
    }
    a {
      color: #1a1a1a;
    }
    a:visited {
      color: #1a1a1a;
    }
    img {
      max-width: 100%;
    }
    svg {
      height; auto;
      max-width: 100%;
    }
    h1, h2, h3, h4, h5, h6 {
      margin-top: 1.4em;
    }
    h5, h6 {
      font-size: 1em;
      font-style: italic;
    }
    h6 {
      font-weight: normal;
    }
    ol, ul {
      padding-left: 1.7em;
      margin-top: 1em;
    }
    li > ol, li > ul {
      margin-top: 0;
    }
    blockquote {
      margin: 1em 0 1em 1.7em;
      padding-left: 1em;
      border-left: 2px solid #e6e6e6;
      color: #606060;
    }
    code {
      font-family: Menlo, Monaco, Consolas, 'Lucida Console', monospace;
      font-size: 85%;
      margin: 0;
      hyphens: manual;
    }
    pre {
      margin: 1em 0;
      overflow: auto;
    }
    pre code {
      padding: 0;
      overflow: visible;
      overflow-wrap: normal;
    }
    .sourceCode {
     background-color: transparent;
     overflow: visible;
    }
    hr {
      background-color: #1a1a1a;
      border: none;
      height: 1px;
      margin: 1em 0;
    }
    table {
      margin: 1em 0;
      border-collapse: collapse;
      width: 100%;
      overflow-x: auto;
      display: block;
      font-variant-numeric: lining-nums tabular-nums;
    }
    table caption {
      margin-bottom: 0.75em;
    }
    tbody {
      margin-top: 0.5em;
      border-top: 1px solid #1a1a1a;
      border-bottom: 1px solid #1a1a1a;
    }
    th {
      border-top: 1px solid #1a1a1a;
      padding: 0.25em 0.5em 0.25em 0.5em;
    }
    td {
      padding: 0.125em 0.5em 0.25em 0.5em;
    }
    header {
      margin-bottom: 4em;
      text-align: center;
    }
    #TOC li {
      list-style: none;
    }
    #TOC ul {
      padding-left: 1.3em;
    }
    #TOC > ul {
      padding-left: 0;
    }
    #TOC a:not(:hover) {
      text-decoration: none;
    }
    code{white-space: pre-wrap;}
    span.smallcaps{font-variant: small-caps;}
    div.columns{display: flex; gap: min(4vw, 1.5em);}
    div.column{flex: auto; overflow-x: auto;}
    div.hanging-indent{margin-left: 1.5em; text-indent: -1.5em;}
    /* The extra [class] is a hack that increases specificity enough to
       override a similar rule in reveal.js */
    ul.task-list[class]{list-style: none;}
    ul.task-list li input[type="checkbox"] {
      font-size: inherit;
      width: 0.8em;
      margin: 0 0.8em 0.2em -1.6em;
      vertical-align: middle;
    }
    .display.math{display: block; text-align: center; margin: 0.5rem auto;}
  </style>
  <!--[if lt IE 9]>
    <script src="//cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv-printshiv.min.js"></script>
  <![endif]-->
</head>
<body>
<h1
id="chatscript-guide-to-documentation-user-guides-tutorials-papers">ChatScript
Guide To Documentation (user guides, tutorials, papers)</h1>
<p><br>Copyright Bruce Wilcox, mailto:gowilcox@gmail.com
www.brilligunderstanding.com <br>Revision CS13.1</p>
<p>ChatScript has a lot of documentation in various manuals, so knowing
what to read may seem daunting. Here is an overview.</p>
<h2 id="basic-chatscript-for-starters">Basic ChatScript for
starters</h2>
<ul>
<li><p><a href="OVERVIEWS-AND-TUTORIALS/What-is-ChatScript.md">What is
ChatScript?</a> <br>Overview of the design goals and abilities of CS.
Not necessary to read.</p></li>
<li><p><a href="ChatScript-Basic-User-Manual.md">ChatScript Basic User
Manual</a> <br>This explains how to run CS, how to understand basic CS
ideas like rules, topics, and concepts. A must starting place.</p></li>
<li><p><a
href="OVERVIEWS-AND-TUTORIALS/ChatScript-Tutorial.md">ChatScript
Tutorial</a> <br>A briew step-by-step on creating a chatbot travel
agent, written by a CS user.</p></li>
<li><p><a href="ChatScript-Memorization.md">ChatScript Memorization</a>
<br>A simple explanation of how to “learn” data about the user.</p></li>
<li><p><a href="ChatScript-Common-Beginner-Mistakes.md">ChatScript
Common Beginner Mistakes</a> <br>Here are a collection of common
beginner mistakes.</p></li>
</ul>
<h2 id="predefined-bots">Predefined Bots</h2>
<ul>
<li><p><a href="PREDEFINED-BOTS/Bot-Harry.md">Bot Harry - basic bot</a>
<br>A brief overview of the simple Harry bot and how to make simple
modifications. Potentially useful for a beginner read.</p></li>
<li><p><a href="PREDEFINED-BOTS/Bot-NLTK.md">Bot NLTK - NL analysis
bot</a> <br>A brief description of how to run the NLTK bot. Not useful
for most people, especially if NLTK means nothing to you.</p></li>
<li><p><a href="PREDEFINED-BOTS/Bot-Stockpile.md">Bot Stockpile -
planner bot</a> <br>A brief description of how to run the Stockpile bot.
Not useful for most people. It’s about planner capabilities of
CS.</p></li>
<li><p><a href="PREDEFINED-BOTS/Bot-Postgres.md">Bot Postgres - postgres
bot</a> <br>Illustration of using Postgres database.</p></li>
<li><p><a href="PREDEFINED-BOTS/Bot-German.md">Bot German</a> <br>An
illustration of hooking in an external pos-tagger for foreign language
support.</p></li>
</ul>
<h2 id="advanced-chatscript">Advanced ChatScript</h2>
<ul>
<li><p><a href="ChatScript-Advanced-User-Manual.md">ChatScript Advanced
User Manual</a> <br>Once you’ve master basic CS, this is the place to go
next.</p></li>
<li><p><a href="ChatScript-System-Functions-Manual.md">ChatScript System
Functions Manual</a> <br>A listing of all the functions of CS.</p></li>
<li><p><a href="ChatScript-Fact-Manual.md">ChatScript Fact Manual</a>
<br>A discussion of how to manipulate facts in CS.</p></li>
<li><p><a href="ChatScript-Json.md">ChatScript Json</a> <br>ChatScript
support for Json</p></li>
<li><p><a href="ChatScript-Overview-of-Input-to-Output.md">ChatScript
Overview Input to Output</a> <br>An overview of the process of
converting input to output. Not necessary except for really advanced
users wanting the appropriate mental model.</p></li>
<li><p><a href="ChatScript-Pattern-Redux.md">ChatScript Pattern
Redux</a> <br>A terse but detailed look at everything involving rule
patterns.</p></li>
<li><p><a
href="ChatScript-System-Variables-and-Engine-defined-Concepts.md">ChatScript
System Variables and Engine-defined Concepts</a> <br> Engine-defined
Concepts. System Variables. Control over Input. Interchange
Variables.</p></li>
<li><p><a href="ChatScript-Command-Line-Parameters.md">ChatScript
Command Line Parameters</a> <br> Command line parameters details and
usage.</p></li>
<li><p><a href="ChatScript-Multiple-Bots.md">ChatScript Multiple
Bots</a> <br> How to control multiple bots in a single server.</p></li>
<li><p><a href="Installing-and-Updating-ChatScript.md">Installing and
Updating ChatScript</a> <br>Installing on Windows, Mac, Linux. Updating
ChatScript (advanced).</p></li>
<li><p><a href="ChatScript-Coding-Standards.md">ChatScript Coding
Standards</a></p></li>
</ul>
<h2 id="test-and-debug">Test and Debug</h2>
<ul>
<li><p><a href="ChatScript-Finalizing-A-Bot.md">ChatScript Finalizing a
Bot</a> <br>Once you have built a bot, how to polish it and make sure it
is “ready”. A bot will likely never be complete because you will want to
keep improving it.</p></li>
<li><p><a href="ChatScript-Debugging-Manual.md">ChatScript Testing
Manual</a> <br>The features of CS that support debugging, including
tracing.</p></li>
<li><p><a href="ChatScript-Debugger.md">ChatScript Debugger</a>
<br>Built-in text oriented step debugger.</p></li>
</ul>
<h2 id="specialized-chatscript">Specialized ChatScript</h2>
<ul>
<li><h3 id="servers-and-clients">Servers and Clients</h3></li>
<li><p><a
href="CLIENTS-AND-SERVERS/ChatScript-ClientServer-Manual.md">ChatScript
ClientServer Manual</a> <br>How to configure and run CS as a server. And
thinking about CS on mobile.</p></li>
<li><p><a
href="CLIENTS-AND-SERVERS/ChatScript-External-Communications.md">ChatScript
External Communications</a> <br> How to embedding ChatScript inside
another main program, calling programs on the OS from ChatScript, and
getting services via the Internet from ChatScript.</p></li>
<li><p><a
href="CLIENTS-AND-SERVERS/ChatScript-Amazon-Server.md">ChatScript Amazon
Server</a> <br>How to install CS as a server on Amazon AWS.</p></li>
<li><h3 id="esoteric-chatscript">Esoteric ChatScript</h3></li>
<li><p><a
href="ESOTERIC-CHATSCRIPT/ChatScript-Control-Scripts.md">ChatScript
Control Scripts</a> <br>Brief overview of writing your own control
scripts</p></li>
<li><p><a
href="ESOTERIC-CHATSCRIPT/ChatScript-Analytics-Manual.md">ChatScript
Analytics</a> <br>Debug functions that can dissect log files.</p></li>
<li><p><a
href="ESOTERIC-CHATSCRIPT/ChatScript-Document-Reader.md">ChatScript
Document Reader</a> <br>How to use CS to acquire information from a
document.</p></li>
<li><p><a href="ESOTERIC-CHATSCRIPT/ChatScript-Javascript.md">ChatScript
Javascript</a> <br>How to write outputmacros in Javascript and call
them.</p></li>
<li><p><a href="ESOTERIC-CHATSCRIPT/ChatScript-MongoDB.md">ChatScript
Mongo</a> <br>How to use the Mongo db directly from CS</p></li>
<li><p><a href="ESOTERIC-CHATSCRIPT/ChatScript-Planning.md">ChatScript
Planning</a> <br>How to use CS as an HTN (hierarchical task network)
planner.</p></li>
<li><p><a href="ESOTERIC-CHATSCRIPT/ChatScript-PosParser.md">ChatScript
PosParser</a> <br>How to use grammar/parsing in CS patterns.</p></li>
<li><p><a
href="ESOTERIC-CHATSCRIPT/ChatScript-Database_Access.md">ChatScript
Database Access</a> <br>How to use the MySQL and other databases
directly from CS.</p></li>
<li><p><a
href="ESOTERIC-CHATSCRIPT/ChatScript-Exotica-Examples.md">ChatScript
Exotica</a> <br>Brief old interesting scripting tips</p></li>
<li><p><a
href="ESOTERIC-CHATSCRIPT/ChatScript-Foreign-Languages.md">ChatScript
Foreign Languages</a> <br>Running CS in a language other than
English.</p></li>
<li><p><a href="ESOTERIC-CHATSCRIPT/ChatScript-Engine.md">ChatScript
Engine</a> <br>How the internals of the engine work and how to extend it
with private code.</p></li>
</ul>
<h2 id="papers-in-order">Papers in order</h2>
<ul>
<li><p><a href="../PAPERS/Paper-%20ChatBots%20102.pdf">Paper - ChatBots
102</a> <br>My first paper, looking at the flaws of AIML and why I felt
I could do better (before Suzette won anything).</p></li>
<li><p><a
href="PAPERS/Paper-Pattern-Matching-for-Natural-Language-Applications.md">Paper
- Pattern Matching for Natural Language</a> <br>Compares CS, AIML, and
Facade</p></li>
<li><p><a href="PAPERS/Suzette-The-Most-Human-Computer.md">Paper -
Suzette The Most Human Computer</a> <br>How our first chatbot came
about, won the Loebner’s, and differed from AIML.</p></li>
<li><p><a href="../PAPERS/Paper-%20Speaker%20for%20theDead.pdf">Paper -
Speaker for the Dead</a> <br>Applying chatbots to manage people’s
accumulations of papers, photos, etc.</p></li>
<li><p><a href="PAPERS/Paper-Google-Talk.md">Paper - Google Talk</a>
<br>A talk I gave at Google about my history, CS, and writing code to
act out stories</p></li>
<li><p><a href="PAPERS/Writing-a-Chatbot.md">Paper - Writing a
Chatbot</a> <br>Useful discussion on how to think about writing a
chatbot</p></li>
<li><p><a href="PAPERS/Paper-ARBOR-MakingItReal.md">Paper - ARBOR_
MakingItReal</a> <br>Useful discussion on how to think about writing a
chatbot</p></li>
<li><p><a
href="../PAPERS/Paper-%20Winning%2015%20Minute%20Conversation.pdf">Paper
- Winning 15 Minute Conversation</a> <br>The conversation (1 of 2) that
had our chatbot easily win best 15 minute conversation at ChatBot
Battles 2012.</p></li>
<li><p><a href="PAPERS/Paper%20-%20WinningTheLoebners.md">Paper -
Winning the Loebner’s</a> <br>Realities of the Loebner competition and
additional ideas of english applied to chatbots</p></li>
<li><p><a href="PAPERS/ChatScript-Training.md">ChatScript Training</a>
<br>A slide series on how CS works and how the engine works.</p></li>
</ul>
</body>
</html>