From 545dda1ba23e0048095e686fe84b53ad36056519 Mon Sep 17 00:00:00 2001 From: Philip Date: Fri, 19 Apr 2024 18:03:50 +0800 Subject: [PATCH] docs: update agents docs --- docs/README.md | 7 +- docs/SUMMARY.md | 30 +-- docs/agents/jessica.md | 10 +- docs/agents/tutorial.md | 10 +- docs/api-reference/agents-api/README.md | 2 +- docs/api-reference/agents-api/agents-api-6.md | 178 +----------------- docs/faqs/general-overview.md | 20 +- docs/faqs/memory-and-learning.md | 16 +- docs/faqs/sessions-and-tasks.md | 50 ++--- docs/faqs/technical-details.md | 28 +-- docs/getting-started/agents-quickstart.md | 12 +- docs/getting-started/python-setup.md | 10 +- docs/introduction/core-concepts.md | 2 - docs/introduction/julep-in-a-nutshell.md | 35 ++-- 14 files changed, 96 insertions(+), 314 deletions(-) diff --git a/docs/README.md b/docs/README.md index cf9332275..563f7045b 100644 --- a/docs/README.md +++ b/docs/README.md @@ -5,7 +5,7 @@ layout: description: visible: false tableOfContents: - visible: true + **visible**: true outline: visible: false pagination: @@ -17,8 +17,7 @@ layout: {% hint style="success" %} Julep is a platform for building AI agents that have memory and can plan and execute tasks. It is: -* Backed by [S1](broken-reference), our model that's optimized for agentic tasks -* [Open source](https://github.com/julep-ai/agents) (coming soon) +* [Open source](https://github.com/julep-ai/julep) {% endhint %} -
TitleDescriptionLink 1

I'm just curious...

Read more about the Julep Platform and why we are building it.julep-in-a-nutshell.md

I want to learn more.

Learn core concepts behind the Julep Platform.core-concepts.md

I'm in, let's go!

Get started building your first agent.agents-quickstart.md

Learn more about Agents

Read the Agents Overview or follow the Tutorial.overview.md

Explore S1

Read more about our model or learn how to use it.overview.md

I'm stuck. Need help!

Get help on our discord community, create a Github issue or check out FAQs.https://discord.gg/RdaGyrzpC8

SDKs

available-sdks.md

FAQs

general-overview.md

API Reference

agents-api
+
TitleDescriptionLink 1

I'm just curious...

Read more about the Julep Platform and why we are building it.julep-in-a-nutshell.md

I want to learn more.

Learn core concepts behind the Julep Platform.core-concepts.md

I'm in, let's go!

Get started building your first agent.agents-quickstart.md

Learn more about Agents

Read the Agents Overview or follow the Tutorial.overview.md
Get help on our discord community, create a Github issue or check out FAQs.https://discord.gg/RdaGyrzpC8

SDKs

available-sdks.md

FAQs

general-overview.md

API Reference

agents-api
diff --git a/docs/SUMMARY.md b/docs/SUMMARY.md index 7cface841..78a4aeb7e 100644 --- a/docs/SUMMARY.md +++ b/docs/SUMMARY.md @@ -5,12 +5,7 @@ * [Welcome to Julep](README.md) * [Julep in a nutshell](introduction/julep-in-a-nutshell.md) * [Motivation]() -* [Core Concepts](introduction/core-concepts.md) - -## šŸš€ Getting Started - * [Agents Quickstart](getting-started/agents-quickstart.md) -* [Model Quickstart](getting-started/python-setup.md) ## šŸ¤– Agents (alpha) @@ -19,20 +14,7 @@ * [Self-hosting](agents/self-hosting.md) * [Example: Jessica](agents/jessica.md) -## šŸ’ S1 Model - -* [Overview](s1-model/overview.md) -* [Tutorial](s1-model/tutorial.md) -* [Concepts](s1-model/context-sections.md) -* [Capabilities](s1-model/capabilities/README.md) - * [Human-like conversations](s1-model/capabilities/capabilities.md) - -## šŸ§Ŗ Agent Studio - -* [Model Playground](agent-studio/playground.md) -* [Agents Playground](agent-studio/agents-playground.md) - -## šŸ› ļø SDKs +## šŸ“– API REFERENCE * [Python SDK](python-sdk-docs/README.md) * [Client](python-sdk-docs/julep/client.md) @@ -52,10 +34,7 @@ * [Session](js-sdk-docs/classes/managers_session.SessionsManager.md) * [Tool](js-sdk-docs/classes/managers_tool.ToolsManager.md) * [User](js-sdk-docs/classes/managers_user.UsersManager.md) - -## šŸ“– API REFERENCE - -* [Agents API (alpha)](api-reference/agents-api/README.md) +* [Agents API](api-reference/agents-api/README.md) * [Agents](api-reference/agents-api/agents-api.md) * [Users](api-reference/agents-api/agents-api-1.md) * [Sessions](api-reference/agents-api/agents-api-2.md) @@ -63,15 +42,10 @@ * [Docs](api-reference/agents-api/agents-api-4.md) * [Tasks](api-reference/agents-api/agents-api-5.md) * [Task Runs](api-reference/agents-api/agents-api-6.md) -* [Model API](api-reference/model-api.md) - * [Chat Completions](api-reference/model-api/model-api.md) - * [Completions (Advanced)](api-reference/model-api/model-api-1.md) - * [Generation Parameters](api-reference/model-api/generation-parameters.md) ## šŸ” FAQs * [General Questions](faqs/general-overview.md) -* [Agent Studio](faqs/agent-prototyping.md) * [Memory and Learning](faqs/memory-and-learning.md) * [Sessions and Tasks](faqs/sessions-and-tasks.md) * [Technical Details](faqs/technical-details.md) diff --git a/docs/agents/jessica.md b/docs/agents/jessica.md index 54272a1a9..8b7726110 100644 --- a/docs/agents/jessica.md +++ b/docs/agents/jessica.md @@ -2,20 +2,20 @@ description: Jessica --- -# Jessica Playground +## Deepnote example -## What is Jessica +Jessica is a satirical AI agent we designed using the Julep API for testing interactions. You can easily test and deploy Jessica or any custom-designed agent on the Deepnote by visiting [this link](https://deepnote.com/app/julep-ai-761c/Julep-Mixers-4dfff09a-84f2-4278-baa3-d1a00b88ba26) + +## Playground site
Jessica page
Jessica prompt
-Jessica is an example agent that uses the Julep Agents API that you can access at [https://jessica.julep.ai](https://jessica.julep.ai). +You can also talk to Jessica via our playground at [https://jessica.julep.ai](https://jessica.julep.ai). The playground is also open source which you can access [here](https://github.com/julep-ai/jessica-public). -## How to run and deploy - To run your own agent using this playground, you simply need to modify the `.env` file and add the following variables. ```.env diff --git a/docs/agents/tutorial.md b/docs/agents/tutorial.md index 51e169262..3487cf6ca 100644 --- a/docs/agents/tutorial.md +++ b/docs/agents/tutorial.md @@ -1,14 +1,10 @@ # Tutorial -{% hint style="info" %} -**Coming soon.** -{% endhint %} - ### Loom Demo (Step by step code follows) -{% embed url="https://www.loom.com/share/9d303e8ad1714c19a20afede05cdc7d3?sid=b5600ea5-583d-498e-8917-f2b35ca38a3c" %} +{% embed url="https://www.loom.com/share/79646b058235467fb9042d242ce0d7a4?sid=86d9da76-87e5-4bf9-a2a8-0e9ee1c59f1c" %} *** @@ -122,7 +118,7 @@ for step in run.execution_steps(): Step Result: Starting the research on Sam Altman. I'll begin by gathering information from various sources on the web. --- -Step Result: +Step Result: --- Step Result: Found numerous articles, interviews, and resources on Sam Altman, including his role at OpenAI, investments, and insights into technology and entrepreneurship. @@ -138,7 +134,7 @@ Sam Altman, known for his leadership at OpenAI, has been a pivotal figure in the Step Result: Now, I'll send the compiled summary and details to the webhook. --- -Step Result: +Step Result: --- Step Result: Delivered data to webhook diff --git a/docs/api-reference/agents-api/README.md b/docs/api-reference/agents-api/README.md index d2b843087..ed15fbb56 100644 --- a/docs/api-reference/agents-api/README.md +++ b/docs/api-reference/agents-api/README.md @@ -1,4 +1,4 @@ -# Agents API (alpha) +# Agents API [![Run In Postman](https://run.pstmn.io/button.svg)](https://god.gw.postman.com/run-collection/33213061-a0a1e3a9-9681-44ae-a5c2-703912b32336?action=collection%2Ffork\&source=rip\_markdown\&collection-url=entityId%3D33213061-a0a1e3a9-9681-44ae-a5c2-703912b32336%26entityType%3Dcollection%26workspaceId%3D183380b4-f2ac-44ef-b018-1f65dfc8256b) diff --git a/docs/api-reference/agents-api/agents-api-6.md b/docs/api-reference/agents-api/agents-api-6.md index 98b28fd05..f5f5bc7ed 100644 --- a/docs/api-reference/agents-api/agents-api-6.md +++ b/docs/api-reference/agents-api/agents-api-6.md @@ -1,177 +1,5 @@ # Task Runs -## Agens - -### List agents - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Create a new agent - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents" method="post" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Get a specific agent by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Update an agent - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}" method="put" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Delete an agent - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}" method="delete" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -*** - -## Users - -### List all users - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Create a new user - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users" method="post" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Get a specific user by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users/{user_id}" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Update a specific user by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users/{user_id}" method="put" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Delete a specific user by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users/{user_id}" method="delete" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -*** - -## Sessions - -### List sessions - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Create a new session - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions" method="post" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Get a specific session by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions/{session_id}" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Update a specific session by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions/{session_id}" method="put" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Delete a specific session by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions/{session_id}" method="delete" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -*** - -## Chat - -### Chat with an agent in a session - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions/{session_id}/chat" method="post" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Get suggestions made by the agent based on the session - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions/{session_id}/suggestions" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Get a session's chat history - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/sessions/{session_id}/history" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -*** - -## Memories - -### Get an agent's memories - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}/memories" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Delete a memory by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}/memories/{memory_id}" method="delete" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -*** - -## Tools - -*** - -## Docs - -### Get all docs (for an agent or user) - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}/additional_info" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users/{user_id}/additional_info" method="get" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Create a new doc (for agent or user) - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}/additional_info" method="post" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users/{user_id}/additional_info" method="post" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -### Delete a doc by id - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/agents/{agent_id}/additional_info/{additional_info_id}" method="delete" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} - -{% swagger src="../../.gitbook/assets/agents-openapi.yaml" path="/users/{user_id}/additional_info/{additional_info_id}" method="delete" %} -[agents-openapi.yaml](../../.gitbook/assets/agents-openapi.yaml) -{% endswagger %} +{% hint style="info" %} +**Coming soon.** +{% endhint %} diff --git a/docs/faqs/general-overview.md b/docs/faqs/general-overview.md index 9bb6707e5..2b940d449 100644 --- a/docs/faqs/general-overview.md +++ b/docs/faqs/general-overview.md @@ -1,13 +1,13 @@ # General Overview -1. **What is Julep AI?**\ - Julep AI is a platform that enables the rapid prototyping and deployment of AI agents. These agents can autonomously accomplish goals by planning steps, selecting tools, and executing actions iteratively, utilizing Large Language Models (LLMs).\ - -2. **How do Julep agents function?**\ - Agents operate semi-autonomously by interacting with users or systems, making decisions, and performing tasks. They leverage a memory system to retain state and context, improving over time as they interact more with their environment.\ - -3. **Can Julep agents be integrated into existing systems?**\ - Absolutely. Julep AI provides an API SDK that facilitates the integration of AI agents into existing products and workflows.\ - -4. **Does Julep support customization of AI agents?**\ +1. **What is Julep AI?** + Julep AI is a platform that enables the rapid prototyping and deployment of AI agents. These agents can autonomously accomplish goals by planning steps, selecting tools, and executing actions iteratively, utilizing Large Language Models (LLMs). +
+2. **How do Julep agents function?** + Agents operate semi-autonomously by interacting with users or systems, making decisions, and performing tasks. They leverage a memory system to retain state and context, improving over time as they interact more with their environment. +
+3. **Can Julep agents be integrated into existing systems?** + Absolutely. Julep AI provides an API SDK that facilitates the integration of AI agents into existing products and workflows. +
+4. **Does Julep support customization of AI agents?** Julep AI offers extensive customization options, allowing users to define the behavior, memory scope, and capabilities of their AI agents. diff --git a/docs/faqs/memory-and-learning.md b/docs/faqs/memory-and-learning.md index 299285207..3ee3e0d04 100644 --- a/docs/faqs/memory-and-learning.md +++ b/docs/faqs/memory-and-learning.md @@ -1,12 +1,12 @@ # Memory and Learning -1. **What types of memory do Julep AI agents have?**\ - Julep AI agents possess three types of memory: _episodic_, for events; _implicit_, for beliefs; and _semantic_, for factual and conceptual information.\ - \ - Episodic memory allows agents to recall past events, implicit memory aids in understanding user preferences and behaviors, and semantic memory provides a knowledge base for factual queries.\ +1. **What types of memory do Julep AI agents have?** + Julep AI agents possess three types of memory: _episodic_, for events; _implicit_, for beliefs; and _semantic_, for factual and conceptual information. -2. **Do agents form new memories from each interaction?**\ - Yes, agents update their memories after each interaction, extracting new episodes, beliefs, and facts to improve future performance and personalization.\ - -3. **Can I reset or delete an agentā€™s memories?**\ + Episodic memory allows agents to recall past events, implicit memory aids in understanding user preferences and behaviors, and semantic memory provides a knowledge base for factual queries. +
+2. **Do agents form new memories from each interaction?** + Yes, agents update their memories after each interaction, extracting new episodes, beliefs, and facts to improve future performance and personalization. +
+3. **Can I reset or delete an agentā€™s memories?** Users have the ability to reset or delete memories within the platform to manage the information that their agents retain. diff --git a/docs/faqs/sessions-and-tasks.md b/docs/faqs/sessions-and-tasks.md index dbbc9a2b7..16b8e48fe 100644 --- a/docs/faqs/sessions-and-tasks.md +++ b/docs/faqs/sessions-and-tasks.md @@ -1,28 +1,28 @@ # Sessions and Tasks -1. **What is a 'Session' in Julep AI?**\ - A Session is a real-time interaction between a user and an AI agent, structured as a conversation with request-response exchanges, often resembling a chat interface.\ - -2. **How do I start a Session with an agent?**\ - You can initiate a Session by selecting an agent and a user within the platform, which creates a unique session\_id used to track the conversation.\ - -3. **What is a 'Task' in Julep AI, and how is it different from a Session?**\ - A Task is a defined operation with multiple steps and objectives, intended to run over a longer duration than a Session. Tasks are like state machines that handle complex, multi-step processes.\ - -4. **Can Sessions use the tools defined in an agent's configuration?**\ - Yes, but a restricted subset only in order to maintain speed and reliability. Sessions can execute instant tools such as document lookups and API calls in real-time, using the results to inform responses within the conversation. They can also _queue_ longer running operations and tasks.\ - -5. **How do agents manage memory within Sessions?**\ - During Sessions, agents automatically pull relevant memories to provide contextually appropriate responses and to maintain continuity in the interaction.\ - -6. **What are Scheduled Tasks and how do they work?**\ - Scheduled Tasks are Tasks that are set to run at specific times or intervals. They are configured to trigger automatically, based on the parameters set by the user.\ - -7. **How can I track the progress of a Task?**\ - Each Task run is associated with a unique run\_id, which you can use to monitor the state transitions and overall progress through the platformā€™s dashboard.\ - -8. **Are there limits on the length or complexity of a Session or Task?**\ - Sessions are designed for shorter interactions. Tasks, however, are better suited for operations with multiple steps and can run for extended periods.\ - -9. **How do I end a Session or Task?**\ +1. **What is a 'Session' in Julep AI?** + A Session is a real-time interaction between a user and an AI agent, structured as a conversation with request-response exchanges, often resembling a chat interface. +
+2. **How do I start a Session with an agent?** + You can initiate a Session by selecting an agent and a user within the platform, which creates a unique session_id used to track the conversation. +
+3. **What is a 'Task' in Julep AI, and how is it different from a Session?** + A Task is a defined operation with multiple steps and objectives, intended to run over a longer duration than a Session. Tasks are like state machines that handle complex, multi-step processes. +
+4. **Can Sessions use the tools defined in an agent's configuration?** + Yes, but a restricted subset only in order to maintain speed and reliability. Sessions can execute instant tools such as document lookups and API calls in real-time, using the results to inform responses within the conversation. They can also _queue_ longer running operations and tasks. +
+5. **How do agents manage memory within Sessions?** + During Sessions, agents automatically pull relevant memories to provide contextually appropriate responses and to maintain continuity in the interaction. +
+6. **What are Scheduled Tasks and how do they work?** + Scheduled Tasks are Tasks that are set to run at specific times or intervals. They are configured to trigger automatically, based on the parameters set by the user. +
+7. **How can I track the progress of a Task?** + Each Task run is associated with a unique run_id, which you can use to monitor the state transitions and overall progress through the platformā€™s dashboard. +
+8. **Are there limits on the length or complexity of a Session or Task?** + Sessions are designed for shorter interactions. Tasks, however, are better suited for operations with multiple steps and can run for extended periods. +
+9. **How do I end a Session or Task?** Sessions typically end when the user's immediate needs are met or when manually concluded by the user. Tasks end when the objective is achieved or if the state machine reaches a terminal state. diff --git a/docs/faqs/technical-details.md b/docs/faqs/technical-details.md index b46bcafce..2766843d1 100644 --- a/docs/faqs/technical-details.md +++ b/docs/faqs/technical-details.md @@ -1,18 +1,18 @@ # Technical Details -1. **What powers agents on the Julep platform?**\ - Julep agents are built on top of Large Language Models (LLMs) with added layers for memory management, planning, and long-running execution capabilities.\ +1. **What powers agents on the Julep platform?** + Julep agents are built on top of Large Language Models (LLMs) with added layers for memory management, planning, and long-running execution capabilities. +
+2. **What languages and frameworks are supported?** + Currently, we maintain official SDKs in python and node.js. We also have a langchain integration. Support for additional runtimes is planned with go, java, and ruby clients coming soon. -2. **What languages and frameworks are supported?**\ - Currently, we maintain official SDKs in python and node.js. We also have a langchain integration. Support for additional runtimes is planned with go, java, and ruby clients coming soon.\ - \ - The API itself is language-agnostic, providing RESTful endpoints that can be consumed by any modern programming language or framework that supports HTTP requests.\ - -3. **How can I integrate Julep AI with my existing data sources?**\ - You can integrate with external data sources through API calls, webhooks, and function calls as the part of the agent configurations. Support for adding vector indices from Weaviate Cloud and Pinecone is planned.\ - -4. **How can I do version control for agent development?**\ - Planned. Not supported at the moment.\ - -5. **How does the platform ensure the security?**\ + The API itself is language-agnostic, providing RESTful endpoints that can be consumed by any modern programming language or framework that supports HTTP requests. +
+3. **How can I integrate Julep AI with my existing data sources?** + You can integrate with external data sources through API calls, webhooks, and function calls as the part of the agent configurations. Support for adding vector indices from Weaviate Cloud and Pinecone is planned. +
+4. **How can I do version control for agent development?** + Planned. Not supported at the moment. +
+5. **How does the platform ensure the security?** We follows industry best practices on encryption, deployments and data storage. We also do regular audits to ensure the integrity of its infrastructure. Compliance and certifications are planned to provide enterprise customers more trust and transparency. diff --git a/docs/getting-started/agents-quickstart.md b/docs/getting-started/agents-quickstart.md index c1f193147..f261e062f 100644 --- a/docs/getting-started/agents-quickstart.md +++ b/docs/getting-started/agents-quickstart.md @@ -81,7 +81,7 @@ You can create as many or as few sessions as your application needs but, for a t session = client.sessions.create( agent_id=agent.id, # from above user_id=user.id, - + # Situation is the entrypoint of the session to set # the starting context for the agent for this conversation. situation="You are chatting with a random stranger from the Internet.", @@ -103,7 +103,7 @@ result = client.sessions.chat( session_id=session.id, messages=[message], max_tokens=200, # and any other generation parameters - + # Memory options remember=True, # "remember" / form memories about this user from the messages recall=True, # "recall" / fetch past memories about this user. @@ -217,7 +217,7 @@ You can create as many or as few sessions as your application needs but, for a t const session = await client.sessions.create({ agentId: agent.id, // from above userId: user.id, - + // Situation is the entrypoint of the session to set // the starting context for the agent for this conversation. situation: "You are chatting with a random stranger from the Internet.", @@ -243,7 +243,7 @@ const result = await client.sessions.chat({ sessionId: session.id, messages: [message], maxTokens: 200, // and any other generation parameters - + // Memory options remember: true, // "remember" / form memories about this user from the messages recall: true // "recall" / fetch past memories about this user. @@ -265,7 +265,3 @@ const history = await client.sessions.history({ ``` {% endtab %} {% endtabs %} - -### - -### diff --git a/docs/getting-started/python-setup.md b/docs/getting-started/python-setup.md index 4f9acb675..4af5ba47b 100644 --- a/docs/getting-started/python-setup.md +++ b/docs/getting-started/python-setup.md @@ -301,17 +301,9 @@ curl --location 'https://api-alpha.julep.ai/v1/completions' \ "max_tokens": 500, "temperature": 0.1, "seed": 21 - }' | jq '.choices[0].text' + }' | jq '.choices[0].text' ``` *** -## What's Next - -* Read more about [context sections](../s1-model/context-sections.md) and how they influence generation. -* Check out the [model capabilities](../s1-model/capabilities/) to explore all the features of the model and more detailed examples. -* See our cookbook for in-depth API use cases and examples. - - - [^1]: It's not in beta thought right? diff --git a/docs/introduction/core-concepts.md b/docs/introduction/core-concepts.md index 6764118f8..49bf6c335 100644 --- a/docs/introduction/core-concepts.md +++ b/docs/introduction/core-concepts.md @@ -1,5 +1,3 @@ # Core Concepts * [Agents](../agents/overview.md) -* Memory -* [S1 Model](../s1-model/overview.md) diff --git a/docs/introduction/julep-in-a-nutshell.md b/docs/introduction/julep-in-a-nutshell.md index d9c86e061..aa6458020 100644 --- a/docs/introduction/julep-in-a-nutshell.md +++ b/docs/introduction/julep-in-a-nutshell.md @@ -1,29 +1,28 @@ # Julep in a nutshell -{% hint style="info" %} -At its core, Julep is a platform for creating and deploying agents[^1] powered by S1. +### Introduction -Read more about about agents [here](broken-reference) and S1 [here](broken-reference). -{% endhint %} +Julep AI is an advanced API designed to empower developers by simplifying the creation of AI-powered applications. This platform provides all the necessary tools and frameworks to build sophisticated AI interactions efficiently, allowing developers to focus more on crafting superior user experiences rather than getting bogged down by the complexities of AI system architecture. -### Agents Platform +### Overview -Julep is kind of like a superpowered version of the Assistants' API allows you to create _stateful actors_ from a specification containing _instructions_ and, _tools_. Also called agents. +Julep acts like a supercharged version of an Assistants' API, enabling the creation of stateful agents from detailed specifications that include instructions and necessary tools. These agents are capable of conversing with users or performing specific tasks. Julep manages the entire lifecycle of these agentsā€”from running prompts and invoking APIs to saving states and managing contexts. This includes sophisticated error recovery mechanisms, waiting for tool results, and generating final outputs. -These agents can be [chatted with](#user-content-fn-2)[^2] or invoked to [perform tasks](#user-content-fn-3)[^3]. Julep orchestrates its entire lifecycle of running prompts, calling APIs, saving state, managing context, recovering from failures, waiting for tool results and then coming up with the final output. +### Key Components of Julep Architecture -This abstraction lets you focus on writing prompts for planning and the tools needed by the agent. The heavylifting of the orchestration and memory management is handled by Julep. +The architecture of Julep AI includes several key components that ensure a seamless and powerful application development experience: -### S1 foundation model +1. **Agent API**: This is the core of Julep AI, handling all user interactions with the AI agents. It manages user input processing, session management, and response generation, thus removing the complexity of conversational AI from the developerā€™s responsibilities. +2. **Memory Store**: All application data, including agent details, user profiles, and interaction histories, are stored here. It uses CozoDB, a scalable and efficient database optimized for high-speed operations, facilitating rapid scaling and robust data management. +3. **Underlying Services**: Julep includes essential services like a task scheduler and session manager to maintain smooth operation. These services automate backend processes such as task management, state management, and data consistency, allowing developers to concentrate on the application front end. +4. **Multi-Step Tasks**: The platform excels in handling intricate, sequential tasks that guide users through a series of steps to achieve specific goals, like scheduling appointments or resolving technical issues. Julepā€™s framework is highly adaptable, designed to tailor these workflows to specific application needs. -{% hint style="success" %} -In order to make this work, we trained a foundation model to execute these specifications natively that we call S1. -{% endhint %} +### Deep Dive into the Agent API -Model trained for this stuff. +The Agent API stands at the forefront of Julep AI, characterized by its ease of use and developer-friendly features: -[^1]: An agent is a prgram that uses foundation models to carry out complex tasks autonomously. - -[^2]: You can chat with agents inside `Sessions` created using the API. - -[^3]: `Tasks` are long-lived executions in which agents can use tools to achieve complex goals. +- **Models & Schemas**: Provides standardized models and schemas for common data types to ensure consistency and save time. +- **Routers**: Simplifies request management across different data types, reducing the need for repetitive code and enhancing code maintainability. +- **Activities & Workflows**: Powered by Temporal, this feature supports robust background task management, improving application performance and reliability. +- **Jobs**: A comprehensive job system monitors and facilitates the completion of complex tasks, keeping users informed of progress and ensuring successful outcomes. +By abstracting the complex aspects of orchestration and memory management, Julep lets developers focus on designing effective prompts and selecting appropriate tools, significantly reducing the technical load and accelerating the development cycle.