Skip to content

Commit

Permalink
Merge pull request #2 from dimagi/bdr/versioning
Browse files Browse the repository at this point in the history
Bdr/versioning
  • Loading branch information
snopoke authored Nov 26, 2024
2 parents 7113d09 + d2061c4 commit 34b2fe0
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 3 deletions.
8 changes: 5 additions & 3 deletions docs/conceptual_guide/chatbot_types.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
# Chatbot Types

There are three different types of chatbots that you can build in Open Chat Studio:

- Base language model
- Assistant
- Pipeline

# Base language model
## Base language model

This kind of bot is the most commonly used and simple to configure. It is backed the standard language model APIs such as OpenAI’s [chat completions API][1], Anthropic’s [messages API][2] or Google’s [Gemeni API][3].

Bots configured in this way have all the basic features (memory, source material etc.) and can also use some of the advanced features like Scheduling and Reminders.


# Assistant
## Assistant
Assistant bots make use of OpenAI’s [Assistants][4]. The main advantage of using Assistants is that your bot get’s access to the OpenAI tools:

### [Code Interpreter][5]
Expand All @@ -21,7 +23,7 @@ This allows the bot to write and execute code to accomplish tasks.
This allows the bot to search and reference information provided in uploaded files. Unless your bot needs either of these capabilities, you should use a Base Language Model type bot.


# Pipeline
## Pipeline
This is a beta feature that has not yet been fully released. Pipelines allow you to create more complex bots by defining a ‘graph’ of nodes. Each message to the bot is processed by the graph to produce a final output.

This can be useful if you want to build a complex bot that performs different tasks depending on the user’s request. Generally, trying to make a single bot prompt do multiple functions doesn’t work well so it is better to create multiple prompts for each task and then combine them using a Pipeline. This is similar to the Multi-bot setup but allows more flexibility and complexity.
Expand Down
22 changes: 22 additions & 0 deletions docs/conceptual_guide/versioning.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Versioning

Versioning is now enabled by default for all projects on Open Chat Studio. This comes with a few important changes that modify the default behavior of the platform.

## Terms
OCS uses the following terms:

* **Working copy**. This is the version of the chatbot that exists when you click the edit button on the experiment. It can also be considered a `draft` or that it has "unsaved changes".

* **Deployed version**. This is the version that users will interact with through the web, WhatsApp or any other configured channel--including the public link.


!!! warning "Chatting to the working copy"

The only way to chat to the working copy is through the experiment edit screen.
Only bot authors can chat to the working copy as it is not available through channels.
This is a change in the default behavior of the platform as prior to versioning, all
channels chatted to the working copy at all times.

It is on the near-term roadmap to add support for chatting to a specific version (deployed
or not), as well as the working copy, through the API to support external evaluation of
the chatbot.
5 changes: 5 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,8 @@ site_name: Open Chat Studio Documentation
theme:
name: material
copyright: Copyright © 2024 Dimagi

markdown_extensions:
- admonition
- pymdownx.details
- pymdownx.superfences

0 comments on commit 34b2fe0

Please sign in to comment.