You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: documentation/docs/advanced/lifecycle.mdx
+3-3
Original file line number
Diff line number
Diff line change
@@ -1,12 +1,12 @@
1
1
---
2
-
title: 'Execution Lifecycle'
2
+
title: 'Lifecycle'
3
3
description: 'Understanding the Lifecycle of Task when executed in Julep'
4
4
icon: 'arrows-spin'
5
5
---
6
6
7
7
## Overview
8
8
9
-
Understanding the execution lifecycle of a Julep task is crucial for building effective workflows.
9
+
Understanding the lifecycle of a Julep task is crucial for building effective workflows.
10
10
Let's explore this through the lens of a [Trip Plan task](/docs/tutorials/trip-planning) - a practical example that showcases key aspects of task execution.
11
11
12
12
The Trip Plan task is an ideal example because it demonstrates:
@@ -19,7 +19,7 @@ The Trip Plan task is an ideal example because it demonstrates:
19
19
20
20
Below is a visual representation of how this task flows through Julep's execution lifecycle:
21
21
22
-
<Framecaption="Understanding the Execution Lifecycle through Trip Plan Task">
This guide will help you set up Julep locally. Before we setup any of the components, we would you to install Docker.
9
+
10
+
You can find the installation instructions [here](https://docs.docker.com/get-docker/).
11
+
12
+
## Setup Instructions
13
+
14
+
### 1. Clone the Repository
15
+
Clone the repository from your preferred source:
16
+
17
+
```bash
18
+
git clone <repository_url>
19
+
```
20
+
21
+
### 2. Navigate to the Root Directory
22
+
Change to the root directory of the project:
23
+
24
+
```bash
25
+
cd<repository_root>
26
+
```
27
+
28
+
### 3. Set Up Environment Variables
29
+
- Create a `.env` file in the root directory.
30
+
- Refer to the [`.env.example`](https://github.com/julep-ai/julep/blob/dev/.env.example) file for a list of required variables.
31
+
- Ensure that all necessary variables are set in the `.env` file.
32
+
33
+
### 4. Create a Docker Volume for Backup
34
+
Create a Docker volume named `grafana_data`, `memory_store_data`, `temporal-db-data`, `prometheus_data` and `seadweedfs_data`:
35
+
36
+
```bash
37
+
docker volume create grafana_data
38
+
docker volume create memory_store_data
39
+
docker volume create temporal-db-data
40
+
docker volume create prometheus_data
41
+
docker volume create seadweedfs_data
42
+
docker volume create memories
43
+
```
44
+
<Info>
45
+
The volumes are used to store the data for the Grafana, Memory Store (Timescale DB), Temporal DB, Prometheus, and SeadweedFS, and Memories respectively.
46
+
</Info>
47
+
48
+
### 5. Run the Project using Docker Compose
49
+
You can run the project in two different modes: **Single Tenant** or **Multi-Tenant**. Choose one of the following commands based on your requirement:
Copy file name to clipboardExpand all lines: documentation/docs/concepts/tasks.mdx
+48-54
Original file line number
Diff line number
Diff line change
@@ -8,27 +8,24 @@ icon: 'list-check'
8
8
9
9
Tasks are GitHub Actions-style workflows that define multi-step actions in Julep. Think of them as recipes that tell an agent exactly how to accomplish a goal. For example, a task might outline the steps to "Summarize a Research Paper" or "Debug a Code Issue".
10
10
11
-
<Note>
12
-
Watch our [video walkthrough](https://www.loom.com/embed/c5cda67936254465aaff4548245b3e13?hideEmbedTopBar=true) to see tasks in action.
13
-
</Note>
14
-
15
-
<AccordionGroup>
16
-
<Accordiontitle="Chain Multiple AI Interactions"icon="link"defaultOpen={true}>
Tools are functions that can be used by an agent to perform tasks. Julep supports a wide range of tools from Integrations to external API calls to custom deinfed functions.
53
-
More information on tools can be found [here](/docs/concepts/tools).
49
+
Tools are functions that can be used by an agent to perform tasks. Julep supports:
Copy file name to clipboardExpand all lines: documentation/docs/concepts/tools.mdx
+16-10
Original file line number
Diff line number
Diff line change
@@ -16,15 +16,15 @@ Tools in Julep consist of three main components:
16
16
17
17
1.**Name**: A unique identifier for the tool.
18
18
2.**Type**: The category of the tool. In Julep, there are four types of tools:
19
-
-**User-defined `functions`**: Function signatures provided to the model, similar to OpenAI's function-calling. These require client handling, and the workflow pauses until the client executes the function and returns the results to Julep.
20
-
-**`system` tools**: Built-in tools for calling Julep APIs, such as triggering task execution or appending to a metadata field.
21
-
-**`integrations`**: Built-in third-party tools that enhance the capabilities of your agents.
22
-
-**`api_calls`**: Direct API calls executed during workflow processes as tool calls.
19
+
-**User-defined `functions`**: Function signatures provided to the model, similar to OpenAI's function-calling. These require client handling, and the workflow pauses until the client executes the function and returns the results to Julep.[Learn more](#user-defined-functions)
20
+
-**`system` tools**: Built-in tools for calling Julep APIs, such as triggering task execution or appending to a metadata field.[Learn more](#system-tools)
21
+
-**`integrations`**: Built-in third-party tools that enhance the capabilities of your agents.[Learn more](#integration-tools)
22
+
-**`api_calls`**: Direct API calls executed during workflow processes as tool calls.[Learn more](#api-call-tools)
23
23
3.**Arguments**: The inputs required by the tool.
24
24
25
-
###Tool Types Definitions:
25
+
#### User-defined `functions`
26
26
27
-
1.**User-defined `functions`**: These are function signatures that you can give the model to choose from, similar to how [openai]'s function-calling works. An example:
27
+
These are function signatures that you can give the model to choose from, similar to how [openai]'s function-calling works. An example:
28
28
29
29
```yaml Task YAML
30
30
name: Example system tool task
@@ -52,7 +52,9 @@ main:
52
52
Whenever julep encounters a user-defined function, it pauses, giving control back to the client and waits for the client to run the function call and give the results back to julep.
53
53
</Note>
54
54
55
-
2. **`system` tools**: Built-in tools that can be used to call the julep APIs themselves, like triggering a task execution, appending to a metadata field, etc.
55
+
#### `System` Tools
56
+
57
+
Built-in tools that can be used to call the julep APIs themselves, like triggering a task execution, appending to a metadata field, etc.
56
58
57
59
`System`tools are built into the backend. They get executed automatically when needed. They do not require any action from the client-side. For example,
58
60
@@ -75,7 +77,7 @@ main:
75
77
limit: 10 # <-- python expression
76
78
```
77
79
78
-
<Accordion title="Available `system` resources and operations">
80
+
<Accordion title="Available system resources and operations">
79
81
<Accordion title="Agent">
80
82
<ul>
81
83
<li><strong>list</strong>: List all agents.</li>
@@ -133,7 +135,9 @@ main:
133
135
</Accordion>
134
136
</Accordion>
135
137
136
-
3. **`integrations`**: Julep comes with a number of built-in integrations (as described in the section below). `integration` tools are directly executed on the julep backend. Any additional parameters needed by them at runtime can be set in the agent/session/user's `metadata` fields.
138
+
#### `Integration` Tools
139
+
140
+
Julep comes with a number of built-in integrations (as described in the section below). `integration` tools are directly executed on the julep backend. Any additional parameters needed by them at runtime can be set in the agent/session/user's `metadata` fields.
137
141
138
142
An example of how to create a `integration` tool for an agent using the `wikipedia` integration:
139
143
@@ -158,7 +162,9 @@ main:
158
162
Checkout the list of integrations that Julep supports [here](/docs/integrations).
159
163
</Info>
160
164
161
-
4. **Direct `api_calls`**: Julep can also directly make api calls during workflow executions as tool calls. Same as `integration`s, additional runtime parameters are loaded from metadata fields. For example,
165
+
#### `API Call` Tools
166
+
167
+
Julep can also directly make api calls during workflow executions as tool calls. Same as `integration`s, additional runtime parameters are loaded from metadata fields. For example,
Julep supports a wide range of integrations to help you build powerful workflows. This page provides an overview of the supported integrations and their capabilities.
8
10
9
-
Handle communication-related tasks such as sending emails via SMTP or accessing real-time weather data.
0 commit comments