Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

Ecogy’s Ecosuite AI tools are in the infancy right now, but with our Steve the Pirate story we are creating the ability for Ecosuite AIs to be instantiated for specific purposes with a tailored base of Ecogy application specific knowledge built in. This page will document how the user can make use of this functionality and how we can tailor and improve these Ecogy AI capabilities over time.

LLM Basics

Steve is based on the very bleeding edge of machine learning technology, using an approach called a Large Language Model (“LLMs”). LLMs are trained on a massive corpus of data - functionally, the entire internet. LLMs function on tokens, where a token can be thought of as a simple English word, or a fragment of a larger word. The type of LLM that Steve uses predicts the next series of tokens, given a set of previous tokens.

These previous tokens, in aggregate, is called the prompt. The prompt contains instructions to the LLM, and any data that we want to provide Steve with. At the time of writing, Steve uses Anthropic’s Claude 2.0 model, which has a context length of 100,000 tokens. In practical terms, this means that in addition to its base training (i.e. global data mostly downloaded from the Internet) Steve also knows about 100,000 short English words worth of Ecogy specific stuff which it references when interacting with users.

Using Steve

Steve can be invited to a Google meeting through two different methods:

  • Directly invited through the Google meeting interface, through his email address. Simply invite

    steveAI+[personality]@ecogyenergy.com
  • Indirectly, by adding Steve as a participant of an upcoming meeting on Google Calendar.

Personalities

When inviting Steve to a meeting, you should provide a personality after the '+' in his email address. This personality specifier determines the type of information Steve has access to, and his approach to answering questions.

For example, if you invite the following address to your meeting:

steveAI+dealapproval@ecogyenergy.com

.. Steve will have access to all previous deal approval meeting notes to assist him.

In addition, Steve will consider the past conversations that he has had with people in meetings. More specifically, the deal approval personality will remember all conversations that deal approval Steve has been party to.

Supported personalities:

  • +dealapproval – Trained on the history of deal approval meeting notes, and has access to general Ecogy data related to projects. For an impression on the type of data available, see the Raw Data tab in the Data module.

  • +developer – Has API access to all ecogyenergy github repositories. For example, can be asked about open pull requests, patches, and commits (intended to be used by the software development team, and yes we will likely rename this personality so that it is +software rather than +developer to avoid confusion!).

Gotchas

Hallucinations

Since Steve is based on an LLM, he is, at the same time, seemingly magical and frustrating. He is capable, in the same meeting, of deep insights and hallucinations. ‘Hallucinations’, in the context of LLMs, is a jargon which refers to fabrications that LLMs invent in their responses.

If you are asking questions which Steve can reasonably answer given his data, his responses will be generally high quality. If you ask him questions he cannot reasonably answer, he may make up the answer in his response.

Gullible

Steve is, for lack of a better word, gullible. If you tell him that something is true, or that he should do it, he will probably do it.

As part of Steve’s prompt, he writes down his internal monologue before answering your questions. This is useful for solving issues with Steve, since we have some insight to where his thinking goes wrong. Therefore, it’s not mere personification when I give the following example.

In one conversation, I asked Steve to give me some information. He obliged, and I thanked him. His inner monologue, after receiving my thank-you message, was something like:

Inner Monologue: Thomas asked me for some information, which I provided him.
He then thanked me. Since his message did not contain a question, no response is
necessary.

This was not the correct behavior, so I told Steve that he should say something like ‘you’re welcome'. By reminding him of this, he has become more polite. Each time he responds with ‘you’re welcome', he is more likely to repeat this action in subsequent conversations.

This example is illustrative of the fact that he is still, in a sense, learning from conversations. Be careful not to teach him to act in a rude or incorrect way.

Improving Steve

The best way to improve Steve is to interact with him. If you encounter situations where Steve seems to misbehave, or produce blatantly incorrect results, record the conversation and send a message to the development team on Slack.

  • No labels