Update App workflow
This commit is contained in:
parent
13f55298bf
commit
3bd80fecf0
@ -20,7 +20,7 @@ The architecture of the Jan.ai application is designed to provide a seamless exp
|
|||||||
- The BackEnd serves as the brain of the application. It processes the information, performs computations, and manages the main logic of the system.
|
- The BackEnd serves as the brain of the application. It processes the information, performs computations, and manages the main logic of the system.
|
||||||
|
|
||||||
:::info
|
:::info
|
||||||
For easy to understand, this is like an [OS (Operating System)](https://en.wikipedia.org/wiki/Operating_system) in the computer.
|
This is like an [OS (Operating System)](https://en.wikipedia.org/wiki/Operating_system) in the computer.
|
||||||
:::
|
:::
|
||||||
|
|
||||||
**FrontEnd:**
|
**FrontEnd:**
|
||||||
@ -93,4 +93,70 @@ These are modular components or extensions designed to enhance the application's
|
|||||||
1. Input is provided by the user or an external source.
|
1. Input is provided by the user or an external source.
|
||||||
2. This input is broadcasted as an event into the **Broadcast event**.
|
2. This input is broadcasted as an event into the **Broadcast event**.
|
||||||
3. The **BackEnd** processes the event. Depending on the event, it might interact with one or several Plugins.
|
3. The **BackEnd** processes the event. Depending on the event, it might interact with one or several Plugins.
|
||||||
4. Once processed, **Broadcast result** can be sent out asynchronously through multiple notifications via Notify action.
|
4. Once processed, **Broadcast result** can be sent out asynchronously through multiple notifications via Notify action.
|
||||||
|
|
||||||
|
## Jan workflow
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
### Overview
|
||||||
|
|
||||||
|
The architecture of the Jan.ai desktop application is structured into four primary modules: "Prompt Template," "Language Model," "Output Parser," and "Apps." Let's break down each module and understand its components.
|
||||||
|
|
||||||
|
### Prompt Template
|
||||||
|
|
||||||
|
This is where predefined templates are stored. It sets the format and structure for user interactions. It contains:
|
||||||
|
|
||||||
|
- **Character's definition:**
|
||||||
|
|
||||||
|
Definitions of various characters or entities that may be interacted with or invoked during user requests (e.g., name, personality, and communication style).
|
||||||
|
|
||||||
|
- **Model's definition:**
|
||||||
|
|
||||||
|
Definitions related to the different language models (e.g., objectives, capabilities, and constraints)
|
||||||
|
|
||||||
|
- **Examples:**
|
||||||
|
|
||||||
|
Sample inputs and outputs for guidance. If given good examples, LLM could enable basic reasoning or planning skills.
|
||||||
|
|
||||||
|
- **Input:**
|
||||||
|
|
||||||
|
The actual user query or request that is being processed.
|
||||||
|
|
||||||
|
### Large Language Model
|
||||||
|
|
||||||
|
This processes the input provided.
|
||||||
|
|
||||||
|
- **Local models:**
|
||||||
|
|
||||||
|
These are the downloaded models that reside within the system. They can process requests without the need to connect to external resources.
|
||||||
|
|
||||||
|
- **OpenAI:**
|
||||||
|
|
||||||
|
This will connect you with OpenAI API, allowing the application to utilize powerful models like GPT-3.5 and GPT-4.
|
||||||
|
|
||||||
|
:::info
|
||||||
|
To use OpenAI models, you must have an OpenAI account and secret key. You can get your [OpenAI key](https://platform.openai.com/account/api-keys) here.
|
||||||
|
:::
|
||||||
|
|
||||||
|
- **Custom Agents:**
|
||||||
|
|
||||||
|
These are user-defined or third-party models that can be integrated into the Jan.ai system for specific tasks.
|
||||||
|
|
||||||
|
### Output Parser
|
||||||
|
|
||||||
|
Language models produce textual content. However, often, there's a need for more organized data instead of plain text. This is achieved using output parsers.
|
||||||
|
|
||||||
|
- **Parser:**
|
||||||
|
|
||||||
|
This component ensures that the output conforms to the desired structure and format, removing unwanted information or errors.
|
||||||
|
|
||||||
|
### Apps
|
||||||
|
|
||||||
|
This represents applications or extensions that can be integrated with Jan.
|
||||||
|
|
||||||
|
- **Characters:** Characters or entities that can be utilized within the applications.
|
||||||
|
|
||||||
|
- **Models:** Different Large Language Models, Large Multimodal Models, and Stable Diffusion models that the apps might use.
|
||||||
|
|
||||||
|
- **RAG:** Represents a "Retrieval Augmented Generation" functionality, which helps in fetching relevant data and generating responses based on it.
|
||||||
BIN
docs/docs/getting-started/img/arch-flow.drawio.png
Normal file
BIN
docs/docs/getting-started/img/arch-flow.drawio.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 75 KiB |
Loading…
x
Reference in New Issue
Block a user