Skip to content

Commit

Permalink
Documentation internal link problem addressed
Browse files Browse the repository at this point in the history
  • Loading branch information
yohasebe committed Nov 29, 2024
1 parent d721e7b commit b13fe9a
Show file tree
Hide file tree
Showing 37 changed files with 165 additions and 165 deletions.
2 changes: 1 addition & 1 deletion docs/README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Monadic Chat

![Monadic Chat Architecture](/assets/images/monadic-chat-architecture.svg ':size=800')
![Monadic Chat Architecture](./assets/images/monadic-chat-architecture.svg ':size=800')

## Overview

Expand Down
58 changes: 29 additions & 29 deletions docs/basic-apps.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# Basic Apps

Currently, the following basic apps are available. You can select any of the basic apps and adjust the behavior of the AI agent by changing parameters or rewriting the initial prompt. The adjusted settings can be exported/imported to/from an external JSON file. For information on how to develop your own apps, refer to the [App Development](/develop_apps.md) section.
Currently, the following basic apps are available. You can select any of the basic apps and adjust the behavior of the AI agent by changing parameters or rewriting the initial prompt. The adjusted settings can be exported/imported to/from an external JSON file. For information on how to develop your own apps, refer to the [App Development](./develop_apps.md) section.

> Click the dropdown to see the recipe file of each app. The files are the same as the ones in the `main` branch of the Monadic Chat's [GitHub repository](https://github.com/yohasebe/monadic-chat).
## Assistant

### Chat

![Chat app icon](/assets/icons/chat.png ':size=40')
![Chat app icon](./assets/icons/chat.png ':size=40')

This is a standard chat application. The AI responds to the text input by the user. Emojis corresponding to the content are also displayed.

Expand All @@ -21,7 +21,7 @@ This is a standard chat application. The AI responds to the text input by the us

### Chat Plus

![Chat app icon](/assets/icons/chat.png ':size=40')
![Chat app icon](./assets/icons/chat.png ':size=40')

This is a chat application that is "monadic" and has additional features compared to the standard chat application. The AI responds to the user's text input and while doing so, it also provides additional information as follows:

Expand All @@ -39,15 +39,15 @@ This is a chat application that is "monadic" and has additional features compare

### Voice Chat

![Voice Chat app icon](/assets/icons/voice-chat.png ':size=40')
![Voice Chat app icon](./assets/icons/voice-chat.png ':size=40')

This application allows you to chat using voice, utilizing OpenAI's Whisper voice recognition API and the browser's speech synthesis API. The initial prompt is basically the same as the Chat app. A web browser that supports the Text to Speech API, such as Google Chrome or Microsoft Edge, is required.

![Voice input](/assets/images/voice-input-stop.png ':size=400')
![Voice input](./assets/images/voice-input-stop.png ':size=400')

While the user is speaking, a waveform is displayed. When the user stops speaking, the probability value (p-value, 0 - 1) of the voice recognition result is displayed.

![Voice p-value](/assets/images/voice-p-value.png ':size=400')
![Voice p-value](./assets/images/voice-p-value.png ':size=400')

<details>
<summary>voice_chat_app.rb</summary>
Expand All @@ -58,7 +58,7 @@ While the user is speaking, a waveform is displayed. When the user stops speakin

### Wikipedia

![Wikipedia app icon](/assets/icons/wikipedia.png ':size=40')
![Wikipedia app icon](./assets/icons/wikipedia.png ':size=40')

This is basically the same as Chat, but for questions about events that occurred after the language model's cutoff date, which GPT cannot answer, it searches Wikipedia for answers. If the query is in a language other than English, the Wikipedia search is conducted in English, and the results are translated back into the original language.

Expand All @@ -71,7 +71,7 @@ This is basically the same as Chat, but for questions about events that occurred

### Math Tutor

![Math Tutor app icon](/assets/icons/math.png ':size=40')
![Math Tutor app icon](./assets/icons/math.png ':size=40')

This application responds using mathematical notation with [MathJax](https://www.mathjax.org/). It is suitable for math-related questions and answers.

Expand All @@ -86,7 +86,7 @@ This application responds using mathematical notation with [MathJax](https://www

### Second Opinion

![Second Opinion app icon](/assets/icons/second-opinion.png ':size=40')
![Second Opinion app icon](./assets/icons/second-opinion.png ':size=40')

This app generates an answer to your question. To verify the validity of that answer, it also asks the same question to the same LLM model and compares the answers. This application can be used to prevent hallucinations or misunderstandings in AI responses.

Expand All @@ -101,7 +101,7 @@ This app generates an answer to your question. To verify the validity of that an

### Language Practice

![Language Practice app icon](/assets/icons/language-practice.png ':size=40')
![Language Practice app icon](./assets/icons/language-practice.png ':size=40')

This is a language learning application where the conversation starts with the assistant's speech. The assistant's speech is played back using speech synthesis. The user starts speech input by pressing the Enter key and ends it by pressing the Enter key again.

Expand All @@ -114,7 +114,7 @@ This is a language learning application where the conversation starts with the a

### Language Practice Plus

![Language Practice Plus app icon](/assets/icons/language-practice-plus.png ':size=40')
![Language Practice Plus app icon](./assets/icons/language-practice-plus.png ':size=40')

This is a language learning application where the conversation starts with the assistant's speech, played back using speech synthesis. The user starts and ends speech input by pressing the Enter key. In addition to the usual response, the assistant includes linguistic advice, presented as text, not speech.

Expand All @@ -128,7 +128,7 @@ This is a language learning application where the conversation starts with the a

### Translate

![Translate app icon](/assets/icons/translate.png ':size=40')
![Translate app icon](./assets/icons/translate.png ':size=40')

This app translates the user's input text into another language. First, the assistant asks for the target language. Then, it translates the input text into the specified language. If you want to specify how a particular phrase should be translated, enclose the relevant part of the input text in parentheses and provide the desired translation within the parentheses.

Expand All @@ -141,7 +141,7 @@ This app translates the user's input text into another language. First, the assi

### Voice Interpreter

![Voice Interpreter app icon](/assets/icons/voice-chat.png ':size=40')
![Voice Interpreter app icon](./assets/icons/voice-chat.png ':size=40')

This app translates the user's voice input into another language and speaks the translation using speech synthesis. First, the assistant asks for the target language. Then, it translates the input text into the specified language.

Expand All @@ -156,7 +156,7 @@ This app translates the user's voice input into another language and speaks the

### Novel Writer

![Novel Writer app icon](/assets/icons/novel.png ':size=40')
![Novel Writer app icon](./assets/icons/novel.png ':size=40')

This application is for co-writing novels with the assistant. The story unfolds based on the user's prompts, maintaining consistency and flow. The AI agent first asks for the story's setting, characters, genre, and target word count. The user can then provide prompts, and the AI agent will continue the story based on those prompts.

Expand All @@ -169,7 +169,7 @@ This application is for co-writing novels with the assistant. The story unfolds

### Image Generator

![Image Generator app icon](/assets/icons/image-generator.png ':size=40')
![Image Generator app icon](./assets/icons/image-generator.png ':size=40')

This application generates images based on descriptions. If the prompt is not specific or is written in a language other than English, it returns an improved prompt and asks whether to proceed with the improved prompt. It uses the Dall-E 3 API internally.

Expand All @@ -184,7 +184,7 @@ Images are saved in the `Shared Folder` and also displayed in the chat.

### Mail Composer

![Mail Composer app icon](/assets/icons/mail-composer.png ':size=40')
![Mail Composer app icon](./assets/icons/mail-composer.png ':size=40')

This application is for drafting emails in collaboration with the assistant. The assistant drafts emails based on the user's requests and specifications.

Expand All @@ -197,7 +197,7 @@ This application is for drafting emails in collaboration with the assistant. The

### Mermaid Grapher

![Mermaid Grapher app icon](/assets/icons/diagram-draft.png ':size=40')
![Mermaid Grapher app icon](./assets/icons/diagram-draft.png ':size=40')

This application visualizes data using [mermaid.js](https://mermaid.js.org/). When you input any data or instructions, the agent generates Mermaid code for a flowchart and renders the image.

Expand All @@ -210,7 +210,7 @@ This application visualizes data using [mermaid.js](https://mermaid.js.org/). Wh

### Music Composer

![Music Composer app icon](/assets/icons/music.png ':size=40')
![Music Composer app icon](./assets/icons/music.png ':size=40')

This application creates simple sheet music using [ABC notation](https://en.wikipedia.org/wiki/ABC_notation) and plays it in Midi. Specify the instrument and the genre or style of music to be used.

Expand All @@ -223,7 +223,7 @@ This application creates simple sheet music using [ABC notation](https://en.wiki

### Speech Draft Helper

![Speech Draft Helper app icon](/assets/icons/speech-draft-helper.png ':size=40')
![Speech Draft Helper app icon](./assets/icons/speech-draft-helper.png ':size=40')

This application helps you draft speeches. You can ask the assistant to draft a speech based on a specific topic or provide a speech draft (plain text, Word, PDF) and ask the assistant to improve it. It can also generate an MP3 file of the speech.

Expand All @@ -238,7 +238,7 @@ This application helps you draft speeches. You can ask the assistant to draft a

### Video Describer

![Video Describer app icon](/assets/icons/video.png ':size=40')
![Video Describer app icon](./assets/icons/video.png ':size=40')

This application analyzes video content and describes what is happening. The app extracts frames from the video, converts them into base64 PNG images, and extracts audio data, saving it as an MP3 file. Based on this information, the AI provides a description of the visual and audio content.

Expand All @@ -253,17 +253,17 @@ To use this app, store the video file in the `Shared Folder` and provide the fil

### PDF Navigator

![PDF Navigator app icon](/assets/icons/pdf-navigator.png ':size=40')
![PDF Navigator app icon](./assets/icons/pdf-navigator.png ':size=40')

This application reads PDF files and allows the assistant to answer user questions based on the content. Click the `Upload PDF` button to specify the file. The content of the file is divided into segments of the length specified by `max_tokens`, and text embeddings are calculated for each segment. Upon receiving input from the user, the text segment closest to the input sentence's text embedding value is passed to GPT along with the user's input, and a response is generated based on that content.

?> The PDF Navigator app uses [PyMuPDF](https://pymupdf.readthedocs.io/en/latest/) to extract text from PDF files and the text data and its embeddings are stored in [PGVector](https://github.com/pgvector/pgvector) database.

![PDF button](/assets/images/app-pdf.png ':size=700')
![PDF button](./assets/images/app-pdf.png ':size=700')

![Import PDF](/assets/images/import-pdf.png ':size=400')
![Import PDF](./assets/images/import-pdf.png ':size=400')

![PDF DB Panel](/assets/images/monadic-chat-pdf-db.png ':size=400')
![PDF DB Panel](./assets/images/monadic-chat-pdf-db.png ':size=400')

<details>
<summary>pdf_navigator_app.rb</summary>
Expand All @@ -274,7 +274,7 @@ This application reads PDF files and allows the assistant to answer user questio

### Content Reader

![Content Reader app icon](/assets/icons/document-reader.png ':size=40')
![Content Reader app icon](./assets/icons/document-reader.png ':size=40')

This application features an AI chatbot that examines and explains the content of provided files or web URLs in a clear, beginner-friendly manner. Users can upload files or URLs containing various text data, including programming code. If a URL is mentioned in the prompt message, the app automatically retrieves and integrates the content into the conversation with GPT.

Expand Down Expand Up @@ -304,7 +304,7 @@ Supported file formats:

### Code Interpreter

![Code Interpreter app icon](/assets/icons/code-interpreter.png ':size=40')
![Code Interpreter app icon](./assets/icons/code-interpreter.png ':size=40')

This application allows the AI to create and execute program code. The execution of the program uses a Python environment within a Docker container. Text data and images obtained as execution results are saved in the `Shared Folder` and also displayed in the chat. If you have a file (such as Python code or CSV data) that you want the AI to read, save the file in the `Shared Folder` and specify the file name in the User message. If the AI cannot find the file location, please verify the file name and inform the message that it is accessible from the current code execution environment.

Expand All @@ -317,7 +317,7 @@ This application allows the AI to create and execute program code. The execution

### Coding Assistant

![Coding Assistant app icon](/assets/icons/coding-assistant.png ':size=40')
![Coding Assistant app icon](./assets/icons/coding-assistant.png ':size=40')

This application is designed for writing computer program code. You can interact with an AI configured as a professional software engineer. It answers various questions, writes code, makes appropriate suggestions, and provides helpful advice through user prompts.

Expand All @@ -332,12 +332,12 @@ This application is designed for writing computer program code. You can interact

### Jupyter Notebook

![Jupyter Notebook app icon](/assets/icons/jupyter-notebook.png ':size=40')
![Jupyter Notebook app icon](./assets/icons/jupyter-notebook.png ':size=40')

This application allows the AI to create Jupyter Notebooks, add cells, and execute code within the cells based on user requests. The execution of the code uses a Python environment within a Docker container. The created Notebook is saved in the `Shared Folder`.

> You can start or stop JupyterLab by asking the AI agent. Alternatively, you can use the `Start JupyterLab` or `Stop JupyterLab` menu items in the `Console Panel` menu bar.
<br /><br />![Action menu](/assets/images/action-menu.png ':size=150')
<br /><br />![Action menu](./assets/images/action-menu.png ':size=150')
<details>
<summary>jupyter_notebook_app.rb</summary>
Expand Down
4 changes: 2 additions & 2 deletions docs/basic-architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Both users and AI agents can access the Docker container, allowing them to colla

It also provides a mechanism for sharing data between the host computer and individual Docker containers. This allows users to seamlessly collaborate with the virtual environment, providing necessary files to the AI agent and retrieving files generated by the AI agent.

![Basic Architecture](/assets/images/basic-architecture.svg ':size=800')
![Basic Architecture](./assets/images/basic-architecture.svg ':size=800')

# Standard Docker Containers

Expand All @@ -22,7 +22,7 @@ This container is used to run Python scripts that extend the functionality of Mo
This container is used to operate a virtual web browser using Selenium for web scraping.

**pgvector Container** (`monadic-chat-pgvector-container`)
This container is used to store text embedding vector data on PostgreSQL for using pgvector. For more information on adding Docker containers, see [Adding Docker Containers](/adding-containers.md).
This container is used to store text embedding vector data on PostgreSQL for using pgvector. For more information on adding Docker containers, see [Adding Docker Containers](./adding-containers.md).

You can install new software on a Docker container or edit files to extend the functionality of Monadic Chat.

8 changes: 4 additions & 4 deletions docs/console-panel.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

## Console Button Items

![Monadic Chat Console](/assets/images/monadic-chat-console.png ':size=700')
![Monadic Chat Console](./assets/images/monadic-chat-console.png ':size=700')

**Start** Launch Monadic Chat. The initial startup may take some time due to environment setup on Docker.

Expand All @@ -23,9 +23,9 @@ Exit the Monadic Chat Console.

## Console Menu Items

![Console Menu](/assets/images/console-menu.png ':size=300')
![Console Menu](./assets/images/console-menu.png ':size=300')

![Action Menu](/assets/images/action-menu.png ':size=150')
![Action Menu](./assets/images/action-menu.png ':size=150')

**Rebuild All** <br />
Rebuild all Docker images and containers for Monadic Chat.
Expand Down Expand Up @@ -56,7 +56,7 @@ Import PDF document data exported by Monadic Chat's export feature into the PGVe

## API Token Settings Panel

![Settings Panel](/assets/images/settings-panel.png ':size=600')
![Settings Panel](./assets/images/settings-panel.png ':size=600')

All settings here are saved in the `~/monadic/data/.env` file.

Expand Down
4 changes: 2 additions & 2 deletions docs/develop_apps.md
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,7 @@ Specify the text of the system prompt.

Specify the group name for grouping the app on the Base App selector on the web settings screen. Though optional, it is recommended to specify some group name to distinguish custom apps from the base apps.

There are many optional settings. See [Setting Items](/setting-items.md) for details.
There are many optional settings. See [Setting Items](./setting-items.md) for details.

## Calling Functions in the App

Expand All @@ -131,7 +131,7 @@ The ways to specify the function name and arguments in `tools` are somewhat diff

### Execute Commands or Shell Scripts

You can execute commands or shell scripts in the app. The `send_command` method is used to execute commands or shell scripts. The `send_command` method is defined in the `MonadicApp` module, which is the base class for all additional apps. Commands or shell scripts are executed with the shared folder (`/monadic/data`) as the current working directory in each container. Shell scripts saved in the `scripts` directory in the shared folder on the host computer are executable in the container, and you can execute them by specifying the script name.
You can execute commands or shell scripts in the app. The `send_command` method is used to execute commands or shell scripts. The `send_command` method is defined in the `MonadicApp` module, which is the base class for all additional apps. Commands or shell scripts are executed with the shared folder (./monadic/data`) as the current working directory in each container. Shell scripts saved in the `scripts` directory in the shared folder on the host computer are executable in the container, and you can execute them by specifying the script name.

The `send_command` method takes the following arguments: the name of the command or shell script to execute (`command`), the container name (`container`), and an optional message to display when the command is executed successfully (`success`). The `container` argument uses short string notation; for example, `python` represents `monadic-chat-python-container`.

Expand Down
4 changes: 2 additions & 2 deletions docs/docker-access.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ docker exec -it monadic-chat-python-container bash

When you click the Start button on the Monadic Chat console, all containers will start. Once the startup is complete, commands to access each container will be displayed. You can copy and paste these commands into the terminal to execute them.

![Start JupyterLab](/assets/images/docker-commands.png ':size=600')
![Start JupyterLab](./assets/images/docker-commands.png ':size=600')

## JupyterLab

By using the `Actions/Start JupyterLab` menu in the Monadic Chat console, you can start JupyterLab, which will launch with `/monadic/data` as the current directory on the Python container. By clicking `Terminal` on the JupyterLab Launcher screen, you can access the Python container.

![JupyterLab Terminal](/assets/images/jupyterlab-terminal.png ':size=600')
![JupyterLab Terminal](./assets/images/jupyterlab-terminal.png ':size=600')
Loading

0 comments on commit b13fe9a

Please sign in to comment.