You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
swarms/docs/site/swarms_cloud/agent_api/index.html

8413 lines
235 KiB

<!doctype html>
<html lang="en" class="no-js">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="description" content="The Enterprise-Grade Production-Ready Multi-Agent Orchestration Framework">
<meta name="author" content="Swarms">
<link rel="canonical" href="https://docs.swarms.world/swarms_cloud/agent_api/">
<link rel="prev" href="../best_practices/">
<link rel="next" href="../swarms_api_tools/">
<link rel="icon" href="../../assets/images/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.15">
<title>Individual Agent Completions - Swarms</title>
<link rel="stylesheet" href="../../assets/stylesheets/main.342714a4.min.css">
<link rel="stylesheet" href="../../assets/stylesheets/palette.06af60db.min.css">
<style>
/* Custom Footer Styling - Base */
.md-footer-custom {
padding: 2.4rem 0 1.2rem;
border-top: 0.05rem solid var(--md-default-fg-color--lightest);
}
.md-footer-custom__inner {
margin: 0 auto;
padding: 0 1.2rem;
}
.md-footer-links {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 2rem;
max-width: 1220px;
margin: 0 auto;
}
.md-footer-links__section {
min-width: 0;
}
.md-footer-links__title {
font-size: 0.64rem;
font-weight: 700;
margin: 0 0 1rem;
text-transform: uppercase;
letter-spacing: 0.1em;
padding-bottom: 0.4rem;
}
.md-footer-links__list {
list-style: none;
margin: 0;
padding: 0;
}
.md-footer-links__item {
margin: 0;
line-height: 1.8;
}
.md-footer-links__link {
text-decoration: none;
font-size: 0.7rem;
display: block;
padding: 0.1rem 0;
transition: color 125ms;
border-radius: 0.1rem;
}
.md-footer-links__link:hover,
.md-footer-links__link:focus {
color: var(--md-accent-fg-color);
}
/* Light Mode (Default) */
[data-md-color-scheme="default"] .md-footer-custom {
background: #ffffff;
border-top-color: #e1e5e9;
}
[data-md-color-scheme="default"] .md-footer-links__title {
color: #2e3440;
border-bottom: 0.05rem solid #e1e5e9;
}
[data-md-color-scheme="default"] .md-footer-links__link {
color: #636c76;
}
[data-md-color-scheme="default"] .md-footer-links__link:hover,
[data-md-color-scheme="default"] .md-footer-links__link:focus {
color: #1976d2;
}
/* Dark Mode (Slate) */
[data-md-color-scheme="slate"] .md-footer-custom {
background: #1F2129;
border-top-color: #404040;
}
[data-md-color-scheme="slate"] .md-footer-links__title {
color: #ffffff;
border-bottom: 0.05rem solid #404040;
}
[data-md-color-scheme="slate"] .md-footer-links__link {
color: #9ca3af;
}
[data-md-color-scheme="slate"] .md-footer-links__link:hover,
[data-md-color-scheme="slate"] .md-footer-links__link:focus {
color: #42a5f5;
}
/* Company Information Section - Base */
.md-footer-company {
padding: 1.5rem 0;
border-top: 0.05rem solid var(--md-default-fg-color--lightest);
}
.md-footer-company__inner {
margin: 0 auto;
padding: 0 1.2rem;
max-width: 1220px;
}
.md-footer-company__content {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
gap: 1rem;
}
.md-footer-company__brand {
flex: 1;
min-width: 200px;
}
.md-footer-company__name {
margin: 0 0 0.5rem 0;
font-size: 1.2rem;
font-weight: 700;
letter-spacing: 0.05em;
}
.md-footer-company__description {
margin: 0;
font-size: 0.8rem;
line-height: 1.4;
font-style: italic;
}
.md-footer-company__copyright {
text-align: right;
}
.md-footer-company__copyright p {
margin: 0;
font-size: 0.7rem;
opacity: 0.8;
}
/* Company Section - Light Mode */
[data-md-color-scheme="default"] .md-footer-company {
background: #f8f9fa;
border-top-color: #e1e5e9;
}
[data-md-color-scheme="default"] .md-footer-company__name {
color: #DC143C;
}
[data-md-color-scheme="default"] .md-footer-company__description {
color: #495057;
}
[data-md-color-scheme="default"] .md-footer-company__copyright p {
color: #6c757d;
}
/* Company Section - Dark Mode */
[data-md-color-scheme="slate"] .md-footer-company {
background: #1F2129;
border-top-color: #404040;
}
[data-md-color-scheme="slate"] .md-footer-company__name {
color: #DC143C;
}
[data-md-color-scheme="slate"] .md-footer-company__description {
color: #d1d5db;
}
[data-md-color-scheme="slate"] .md-footer-company__copyright p {
color: #9ca3af;
}
/* Responsive Design */
@media screen and (max-width: 76.1875em) {
.md-footer-links {
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 1.5rem;
}
.md-footer-custom {
padding: 2rem 0 1rem;
}
}
@media screen and (max-width: 59.9375em) {
.md-footer-links {
grid-template-columns: repeat(2, 1fr);
gap: 1.5rem;
}
}
@media screen and (max-width: 44.9375em) {
.md-footer-links {
grid-template-columns: 1fr;
gap: 1.5rem;
}
.md-footer-custom {
padding: 1.5rem 0 0.8rem;
}
.md-footer-custom__inner {
padding: 0 1rem;
}
/* Company section mobile styles */
.md-footer-company__content {
flex-direction: column;
text-align: center;
gap: 1rem;
}
.md-footer-company__brand {
min-width: auto;
}
.md-footer-company__copyright {
text-align: center;
}
.md-footer-company__inner {
padding: 0 1rem;
}
}
</style>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Fira+Sans:300,300i,400,400i,700,700i%7CFira+Code:400,400i,700,700i&display=fallback">
<style>:root{--md-text-font:"Fira Sans";--md-code-font:"Fira Code"}</style>
<link rel="stylesheet" href="../../assets/_mkdocstrings.css">
<link rel="stylesheet" href="../../assets/css/extra.css">
<script>__md_scope=new URL("../..",location),__md_hash=e=>[...e].reduce(((e,_)=>(e<<5)-e+_.charCodeAt(0)),0),__md_get=(e,_=localStorage,t=__md_scope)=>JSON.parse(_.getItem(t.pathname+"."+e)),__md_set=(e,_,t=localStorage,a=__md_scope)=>{try{t.setItem(a.pathname+"."+e,JSON.stringify(_))}catch(e){}}</script>
<script id="__analytics">function __md_analytics(){function e(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],e("js",new Date),e("config","G-MPE9C65596"),document.addEventListener("DOMContentLoaded",(function(){document.forms.search&&document.forms.search.query.addEventListener("blur",(function(){this.value&&e("event","search",{search_term:this.value})}));document$.subscribe((function(){var t=document.forms.feedback;if(void 0!==t)for(var a of t.querySelectorAll("[type=submit]"))a.addEventListener("click",(function(a){a.preventDefault();var n=document.location.pathname,d=this.getAttribute("data-md-value");e("event","feedback",{page:n,data:d}),t.firstElementChild.disabled=!0;var r=t.querySelector(".md-feedback__note [data-md-value='"+d+"']");r&&(r.hidden=!1)})),t.hidden=!1})),location$.subscribe((function(t){e("config","G-MPE9C65596",{page_path:t.pathname})}))}));var t=document.createElement("script");t.async=!0,t.src="https://www.googletagmanager.com/gtag/js?id=G-MPE9C65596",document.getElementById("__analytics").insertAdjacentElement("afterEnd",t)}</script>
<script>"undefined"!=typeof __md_analytics&&__md_analytics()</script>
</head>
<body dir="ltr" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="white">
<input class="md-toggle" data-md-toggle="drawer" type="checkbox" id="__drawer" autocomplete="off">
<input class="md-toggle" data-md-toggle="search" type="checkbox" id="__search" autocomplete="off">
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#agent-api" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
<aside class="md-banner">
<div class="md-banner__inner md-grid md-typeset">
<button class="md-banner__button md-icon" aria-label="Don't show this again">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
</button>
<div style="text-align:center">
<a href="https://github.com/kyegomez/swarms">Star and contribute</a> to Swarms on GitHub!
</div>
</div>
<script>var el=document.querySelector("[data-md-component=announce]");if(el){var content=el.querySelector(".md-typeset");__md_hash(content.innerHTML)===__md_get("__announce")&&(el.hidden=!0)}</script>
</aside>
</div>
<header class="md-header" data-md-component="header">
<nav class="md-header__inner md-grid" aria-label="Header">
<a href="../.." title="Swarms" class="md-header__button md-logo" aria-label="Swarms" data-md-component="logo">
<img src="../../assets/img/swarms-logo.png" alt="logo">
</a>
<label class="md-header__button md-icon" for="__drawer">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z"/></svg>
</label>
<div class="md-header__title" data-md-component="header-title">
<div class="md-header__ellipsis">
<div class="md-header__topic">
<span class="md-ellipsis">
Swarms
</span>
</div>
<div class="md-header__topic" data-md-component="header-topic">
<span class="md-ellipsis">
Individual Agent Completions
</span>
</div>
</div>
</div>
<form class="md-header__option" data-md-component="palette">
<input class="md-option" data-md-color-media="" data-md-color-scheme="default" data-md-color-primary="white" data-md-color-accent="white" aria-label="Switch to dark mode" type="radio" name="__palette" id="__palette_0">
<label class="md-header__button md-icon" title="Switch to dark mode" for="__palette_1" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 8a4 4 0 0 0-4 4 4 4 0 0 0 4 4 4 4 0 0 0 4-4 4 4 0 0 0-4-4m0 10a6 6 0 0 1-6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
</label>
<input class="md-option" data-md-color-media="" data-md-color-scheme="slate" data-md-color-primary="black" data-md-color-accent="black" aria-label="Switch to light mode" type="radio" name="__palette" id="__palette_1">
<label class="md-header__button md-icon" title="Switch to light mode" for="__palette_0" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 18c-.89 0-1.74-.2-2.5-.55C11.56 16.5 13 14.42 13 12s-1.44-4.5-3.5-5.45C10.26 6.2 11.11 6 12 6a6 6 0 0 1 6 6 6 6 0 0 1-6 6m8-9.31V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12z"/></svg>
</label>
</form>
<script>var palette=__md_get("__palette");if(palette&&palette.color){if("(prefers-color-scheme)"===palette.color.media){var media=matchMedia("(prefers-color-scheme: light)"),input=document.querySelector(media.matches?"[data-md-color-media='(prefers-color-scheme: light)']":"[data-md-color-media='(prefers-color-scheme: dark)']");palette.color.media=input.getAttribute("data-md-color-media"),palette.color.scheme=input.getAttribute("data-md-color-scheme"),palette.color.primary=input.getAttribute("data-md-color-primary"),palette.color.accent=input.getAttribute("data-md-color-accent")}for(var[key,value]of Object.entries(palette.color))document.body.setAttribute("data-md-color-"+key,value)}</script>
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
<input type="text" class="md-search__input" name="query" aria-label="Search" placeholder="Search" autocapitalize="off" autocorrect="off" autocomplete="off" spellcheck="false" data-md-component="search-query" required>
<label class="md-search__icon md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</label>
<nav class="md-search__options" aria-label="Search">
<button type="reset" class="md-search__icon md-icon" title="Clear" aria-label="Clear" tabindex="-1">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg>
</button>
</nav>
</form>
<div class="md-search__output">
<div class="md-search__scrollwrap" tabindex="0" data-md-scrollfix>
<div class="md-search-result" data-md-component="search-result">
<div class="md-search-result__meta">
Initializing search
</div>
<ol class="md-search-result__list" role="presentation"></ol>
</div>
</div>
</div>
</div>
</div>
<div class="md-header__source">
<a href="https://github.com/kyegomez/swarms" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
</div>
<div class="md-source__repository">
kyegomez/swarms
</div>
</a>
</div>
</nav>
</header>
<div class="md-container" data-md-component="container">
<nav class="md-tabs" aria-label="Tabs" data-md-component="tabs">
<div class="md-grid">
<ul class="md-tabs__list">
<li class="md-tabs__item">
<a href="../.." class="md-tabs__link">
Home
</a>
</li>
<li class="md-tabs__item">
<a href="../../examples/" class="md-tabs__link">
Examples
</a>
</li>
<li class="md-tabs__item md-tabs__item--active">
<a href="../swarms_api/" class="md-tabs__link">
Swarms Cloud API
</a>
</li>
<li class="md-tabs__item">
<a href="../../swarms_platform/" class="md-tabs__link">
Swarms Marketplace
</a>
</li>
<li class="md-tabs__item">
<a href="../../swarms_rs/overview/" class="md-tabs__link">
Swarms Rust
</a>
</li>
<li class="md-tabs__item">
<a href="../../contributors/main/" class="md-tabs__link">
Contributors
</a>
</li>
<li class="md-tabs__item">
<a href="../../swarms/concept/vision/" class="md-tabs__link">
About Swarms
</a>
</li>
</ul>
</div>
</nav>
<main class="md-main" data-md-component="main">
<div class="md-main__inner md-grid">
<div class="md-sidebar md-sidebar--primary" data-md-component="sidebar" data-md-type="navigation" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--primary md-nav--lifted" aria-label="Navigation" data-md-level="0">
<label class="md-nav__title" for="__drawer">
<a href="../.." title="Swarms" class="md-nav__button md-logo" aria-label="Swarms" data-md-component="logo">
<img src="../../assets/img/swarms-logo.png" alt="logo">
</a>
Swarms
</label>
<div class="md-nav__source">
<a href="https://github.com/kyegomez/swarms" title="Go to repository" class="md-source" data-md-component="source">
<div class="md-source__icon md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M439.55 236.05 244 40.45a28.87 28.87 0 0 0-40.81 0l-40.66 40.63 51.52 51.52c27.06-9.14 52.68 16.77 43.39 43.68l49.66 49.66c34.23-11.8 61.18 31 35.47 56.69-26.49 26.49-70.21-2.87-56-37.34L240.22 199v121.85c25.3 12.54 22.26 41.85 9.08 55a34.34 34.34 0 0 1-48.55 0c-17.57-17.6-11.07-46.91 11.25-56v-123c-20.8-8.51-24.6-30.74-18.64-45L142.57 101 8.45 235.14a28.86 28.86 0 0 0 0 40.81l195.61 195.6a28.86 28.86 0 0 0 40.8 0l194.69-194.69a28.86 28.86 0 0 0 0-40.81"/></svg>
</div>
<div class="md-source__repository">
kyegomez/swarms
</div>
</a>
</div>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1" >
<label class="md-nav__link" for="__nav_1" id="__nav_1_label" tabindex="0">
<span class="md-ellipsis">
Home
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1">
<span class="md-nav__icon md-icon"></span>
Home
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../.." class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_2" >
<label class="md-nav__link" for="__nav_1_2" id="__nav_1_2_label" tabindex="0">
<span class="md-ellipsis">
Onboarding
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_2">
<span class="md-nav__icon md-icon"></span>
Onboarding
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/install/install/" class="md-nav__link">
<span class="md-ellipsis">
Installation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/install/env/" class="md-nav__link">
<span class="md-ellipsis">
Environment Configuration
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../quickstart/" class="md-nav__link">
<span class="md-ellipsis">
Quickstart
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/" class="md-nav__link">
<span class="md-ellipsis">
Agents
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/" class="md-nav__link">
<span class="md-ellipsis">
Multi-Agent Architectures
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/features/" class="md-nav__link">
<span class="md-ellipsis">
Feature Set
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_3" >
<label class="md-nav__link" for="__nav_1_3" id="__nav_1_3_label" tabindex="0">
<span class="md-ellipsis">
Agents
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_3">
<span class="md-nav__icon md-icon"></span>
Agents
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/framework/agents_explained/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/" class="md-nav__link">
<span class="md-ellipsis">
Agents
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/agent/" class="md-nav__link">
<span class="md-ellipsis">
Reference
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/models/agent_and_models/" class="md-nav__link">
<span class="md-ellipsis">
LLM Providers
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/tools/tools_examples/" class="md-nav__link">
<span class="md-ellipsis">
Tools and MCP
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/agent_multi_agent_communication/" class="md-nav__link">
<span class="md-ellipsis">
Multi-Agent Helpers
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/create_agents_yaml/" class="md-nav__link">
<span class="md-ellipsis">
Running Agents with YAML
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_3_8" >
<label class="md-nav__link" for="__nav_1_3_8" id="__nav_1_3_8_label" tabindex="0">
<span class="md-ellipsis">
Additional Capabilities
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_1_3_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_3_8">
<span class="md-nav__icon md-icon"></span>
Additional Capabilities
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_3_8_1" >
<label class="md-nav__link" for="__nav_1_3_8_1" id="__nav_1_3_8_1_label" tabindex="0">
<span class="md-ellipsis">
Tools Reference
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_3_8_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_3_8_1">
<span class="md-nav__icon md-icon"></span>
Tools Reference
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/tools/main/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/tools/build_tool/" class="md-nav__link">
<span class="md-ellipsis">
What are tools?
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/structured_outputs/" class="md-nav__link">
<span class="md-ellipsis">
Structured Outputs
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/agent_mcp/" class="md-nav__link">
<span class="md-ellipsis">
Agent MCP Integration
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_3_8_2" >
<label class="md-nav__link" for="__nav_1_3_8_2" id="__nav_1_3_8_2_label" tabindex="0">
<span class="md-ellipsis">
Long Term Memory Reference
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_3_8_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_3_8_2">
<span class="md-nav__icon md-icon"></span>
Long Term Memory Reference
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/memory/diy_memory/" class="md-nav__link">
<span class="md-ellipsis">
Integrating RAG with Agents
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_4" >
<label class="md-nav__link" for="__nav_1_4" id="__nav_1_4_label" tabindex="0">
<span class="md-ellipsis">
Third-Party Agents
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_4">
<span class="md-nav__icon md-icon"></span>
Third-Party Agents
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/agents/new_agent/" class="md-nav__link">
<span class="md-ellipsis">
Creating Custom Agents
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/openai_assistant/" class="md-nav__link">
<span class="md-ellipsis">
OpenAI Assistant
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/external_party_agents/" class="md-nav__link">
<span class="md-ellipsis">
Integrating External Agents from Griptape, Langchain, etc
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_5" >
<label class="md-nav__link" for="__nav_1_5" id="__nav_1_5_label" tabindex="0">
<span class="md-ellipsis">
Reasoning Agents
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_5">
<span class="md-nav__icon md-icon"></span>
Reasoning Agents
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/agents/reasoning_agents_overview/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/consistency_agent/" class="md-nav__link">
<span class="md-ellipsis">
Self Consistency Agent
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/iterative_agent/" class="md-nav__link">
<span class="md-ellipsis">
IRE Agent
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/reasoning_duo/" class="md-nav__link">
<span class="md-ellipsis">
Reasoning Duo
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/reflexion_agent/" class="md-nav__link">
<span class="md-ellipsis">
Reflexion Agent
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/gkp_agent/" class="md-nav__link">
<span class="md-ellipsis">
GKP Agent
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/agent_judge/" class="md-nav__link">
<span class="md-ellipsis">
Agent Judge
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/agents/reasoning_agent_router/" class="md-nav__link">
<span class="md-ellipsis">
Reasoning Agent Router
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6" >
<label class="md-nav__link" for="__nav_1_6" id="__nav_1_6_label" tabindex="0">
<span class="md-ellipsis">
Multi-Agent Architectures
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6">
<span class="md-nav__icon md-icon"></span>
Multi-Agent Architectures
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/concept/swarm_architectures/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/concept/why/" class="md-nav__link">
<span class="md-ellipsis">
Benefits
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/concept/how_to_choose_swarms/" class="md-nav__link">
<span class="md-ellipsis">
Choosing Multi Agent Architecture
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_4" >
<label class="md-nav__link" for="__nav_1_6_4" id="__nav_1_6_4_label" tabindex="0">
<span class="md-ellipsis">
Board of Directors
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_1_6_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_4">
<span class="md-nav__icon md-icon"></span>
Board of Directors
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/board_of_directors/board_of_directors_swarm/" class="md-nav__link">
<span class="md-ellipsis">
BoardOfDirectorsSwarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/board_of_directors/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/board_of_directors/board_of_directors_workflow/" class="md-nav__link">
<span class="md-ellipsis">
Workflow
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/board_of_directors/board_of_directors_roles/" class="md-nav__link">
<span class="md-ellipsis">
Roles & Responsibilities
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/board_of_directors/board_of_directors_decision_making/" class="md-nav__link">
<span class="md-ellipsis">
Decision Making
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5" >
<label class="md-nav__link" for="__nav_1_6_5" id="__nav_1_6_5_label" tabindex="0">
<span class="md-ellipsis">
Documentation
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_1_6_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5">
<span class="md-nav__icon md-icon"></span>
Documentation
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/overview/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/custom_swarm/" class="md-nav__link">
<span class="md-ellipsis">
Custom Multi Agent Architectures
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/majorityvoting/" class="md-nav__link">
<span class="md-ellipsis">
MajorityVoting
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/round_robin_swarm/" class="md-nav__link">
<span class="md-ellipsis">
RoundRobin
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/moa/" class="md-nav__link">
<span class="md-ellipsis">
Mixture of Agents
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/spreadsheet_swarm/" class="md-nav__link">
<span class="md-ellipsis">
SpreadSheetSwarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/forest_swarm/" class="md-nav__link">
<span class="md-ellipsis">
ForestSwarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/malt/" class="md-nav__link">
<span class="md-ellipsis">
MALT
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/various_execution_methods/" class="md-nav__link">
<span class="md-ellipsis">
Various Execution Methods
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/deep_research_swarm/" class="md-nav__link">
<span class="md-ellipsis">
Deep Research Swarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/council_of_judges/" class="md-nav__link">
<span class="md-ellipsis">
Council of Judges
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/heavy_swarm/" class="md-nav__link">
<span class="md-ellipsis">
Heavy Swarm
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_13" >
<label class="md-nav__link" for="__nav_1_6_5_13" id="__nav_1_6_5_13_label" tabindex="0">
<span class="md-ellipsis">
Hiearchical Architectures
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_13_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_13">
<span class="md-nav__icon md-icon"></span>
Hiearchical Architectures
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/multi_swarm_orchestration/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/hierarchical_swarm/" class="md-nav__link">
<span class="md-ellipsis">
HierarchicalSwarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/auto_agent_builder/" class="md-nav__link">
<span class="md-ellipsis">
Auto Agent Builder
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/hhcs/" class="md-nav__link">
<span class="md-ellipsis">
Hybrid Hierarchical-Cluster Swarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/auto_swarm_builder/" class="md-nav__link">
<span class="md-ellipsis">
Auto Swarm Builder
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/swarm_matcher/" class="md-nav__link">
<span class="md-ellipsis">
Swarm Matcher
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_14" >
<label class="md-nav__link" for="__nav_1_6_5_14" id="__nav_1_6_5_14_label" tabindex="0">
<span class="md-ellipsis">
Routers
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_14_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_14">
<span class="md-nav__icon md-icon"></span>
Routers
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/swarm_router/" class="md-nav__link">
<span class="md-ellipsis">
SwarmRouter
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/multi_agent_router/" class="md-nav__link">
<span class="md-ellipsis">
MultiAgentRouter
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/model_router/" class="md-nav__link">
<span class="md-ellipsis">
ModelRouter
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_15" >
<label class="md-nav__link" for="__nav_1_6_5_15" id="__nav_1_6_5_15_label" tabindex="0">
<span class="md-ellipsis">
Configuration
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_15_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_15">
<span class="md-nav__icon md-icon"></span>
Configuration
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/config/board_config/" class="md-nav__link">
<span class="md-ellipsis">
Board of Directors Configuration
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_16" >
<label class="md-nav__link" for="__nav_1_6_5_16" id="__nav_1_6_5_16_label" tabindex="0">
<span class="md-ellipsis">
Rearrangers
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_16_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_16">
<span class="md-nav__icon md-icon"></span>
Rearrangers
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/swarm_rearrange/" class="md-nav__link">
<span class="md-ellipsis">
SwarmRearrange
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/agent_rearrange/" class="md-nav__link">
<span class="md-ellipsis">
AgentRearrange
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_17" >
<label class="md-nav__link" for="__nav_1_6_5_17" id="__nav_1_6_5_17_label" tabindex="0">
<span class="md-ellipsis">
GroupChats
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_17_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_17">
<span class="md-nav__icon md-icon"></span>
GroupChats
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/group_chat/" class="md-nav__link">
<span class="md-ellipsis">
GroupChat
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/interactive_groupchat/" class="md-nav__link">
<span class="md-ellipsis">
Interactive Group Chat
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_18" >
<label class="md-nav__link" for="__nav_1_6_5_18" id="__nav_1_6_5_18_label" tabindex="0">
<span class="md-ellipsis">
Workflows
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_18_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_18">
<span class="md-nav__icon md-icon"></span>
Workflows
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/concurrentworkflow/" class="md-nav__link">
<span class="md-ellipsis">
ConcurrentWorkflow
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/sequential_workflow/" class="md-nav__link">
<span class="md-ellipsis">
SequentialWorkflow
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/graph_workflow/" class="md-nav__link">
<span class="md-ellipsis">
GraphWorkflow
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_6_5_19" >
<label class="md-nav__link" for="__nav_1_6_5_19" id="__nav_1_6_5_19_label" tabindex="0">
<span class="md-ellipsis">
Storage
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_6_5_19_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_6_5_19">
<span class="md-nav__icon md-icon"></span>
Storage
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/structs/agent_registry/" class="md-nav__link">
<span class="md-ellipsis">
AgentRegistry
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../swarms/structs/conversation/" class="md-nav__link">
<span class="md-ellipsis">
Communication Structure
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_7" >
<label class="md-nav__link" for="__nav_1_7" id="__nav_1_7_label" tabindex="0">
<span class="md-ellipsis">
Tools
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_7">
<span class="md-nav__icon md-icon"></span>
Tools
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_tools/overview/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/tools/base_tool/" class="md-nav__link">
<span class="md-ellipsis">
BaseTool Reference
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/tools/mcp_client_call/" class="md-nav__link">
<span class="md-ellipsis">
MCP Client Utils
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_7_4" >
<label class="md-nav__link" for="__nav_1_7_4" id="__nav_1_7_4_label" tabindex="0">
<span class="md-ellipsis">
Vertical Tools
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_1_7_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_7_4">
<span class="md-nav__icon md-icon"></span>
Vertical Tools
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_tools/finance/" class="md-nav__link">
<span class="md-ellipsis">
Finance
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms_tools/search/" class="md-nav__link">
<span class="md-ellipsis">
Search
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_7_4_3" >
<label class="md-nav__link" for="__nav_1_7_4_3" id="__nav_1_7_4_3_label" tabindex="0">
<span class="md-ellipsis">
Social Media
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_1_7_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_7_4_3">
<span class="md-nav__icon md-icon"></span>
Social Media
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_tools/twitter/" class="md-nav__link">
<span class="md-ellipsis">
Twitter
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_8" >
<label class="md-nav__link" for="__nav_1_8" id="__nav_1_8_label" tabindex="0">
<span class="md-ellipsis">
Deployment Solutions
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_8">
<span class="md-nav__icon md-icon"></span>
Deployment Solutions
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../cloud_run/" class="md-nav__link">
<span class="md-ellipsis">
Deploy on Google Cloud Run
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../phala_deploy/" class="md-nav__link">
<span class="md-ellipsis">
Deploy on Phala
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_1_9" >
<label class="md-nav__link" for="__nav_1_9" id="__nav_1_9_label" tabindex="0">
<span class="md-ellipsis">
More About Us
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_1_9_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_1_9">
<span class="md-nav__icon md-icon"></span>
More About Us
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/ecosystem/" class="md-nav__link">
<span class="md-ellipsis">
Swarms Ecosystem
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/support/" class="md-nav__link">
<span class="md-ellipsis">
Technical Support
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
<span class="md-ellipsis">
Examples
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../examples/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../examples/cookbook_index/" class="md-nav__link">
<span class="md-ellipsis">
CookBook Index
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../examples/paper_implementations/" class="md-nav__link">
<span class="md-ellipsis">
Paper Implementations
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../examples/templates/" class="md-nav__link">
<span class="md-ellipsis">
Templates & Applications
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5" >
<label class="md-nav__link" for="__nav_2_5" id="__nav_2_5_label" tabindex="0">
<span class="md-ellipsis">
Basic Examples
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5">
<span class="md-nav__icon md-icon"></span>
Basic Examples
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_1" >
<label class="md-nav__link" for="__nav_2_5_1" id="__nav_2_5_1_label" tabindex="0">
<span class="md-ellipsis">
Individual Agents
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_5_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5_1">
<span class="md-nav__icon md-icon"></span>
Individual Agents
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/basic_agent/" class="md-nav__link">
<span class="md-ellipsis">
Basic Agent
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_1_2" >
<label class="md-nav__link" for="__nav_2_5_1_2" id="__nav_2_5_1_2_label" tabindex="0">
<span class="md-ellipsis">
Tool Usage
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_5_1_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5_1_2">
<span class="md-nav__icon md-icon"></span>
Tool Usage
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/vision_tools/" class="md-nav__link">
<span class="md-ellipsis">
Agents with Vision and Tool Usage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/agent_with_tools/" class="md-nav__link">
<span class="md-ellipsis">
Agents with Callable Tools
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/agent_structured_outputs/" class="md-nav__link">
<span class="md-ellipsis">
Agent with Structured Outputs
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/agent_with_mcp.md" class="md-nav__link">
<span class="md-ellipsis">
Agent With MCP Integration
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_1_3" >
<label class="md-nav__link" for="__nav_2_5_1_3" id="__nav_2_5_1_3_label" tabindex="0">
<span class="md-ellipsis">
Vision
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_5_1_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5_1_3">
<span class="md-nav__icon md-icon"></span>
Vision
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/vision_processing/" class="md-nav__link">
<span class="md-ellipsis">
Agents with Vision
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/multiple_images/" class="md-nav__link">
<span class="md-ellipsis">
Agent with Multiple Images
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_1_4" >
<label class="md-nav__link" for="__nav_2_5_1_4" id="__nav_2_5_1_4_label" tabindex="0">
<span class="md-ellipsis">
Utils
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_5_1_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5_1_4">
<span class="md-nav__icon md-icon"></span>
Utils
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../examples/agent_stream/" class="md-nav__link">
<span class="md-ellipsis">
Agent with Streaming
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/agent_output_types/" class="md-nav__link">
<span class="md-ellipsis">
Agent Output Types
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/ui/main/" class="md-nav__link">
<span class="md-ellipsis">
Gradio Chat Interface
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_5_1_5" >
<label class="md-nav__link" for="__nav_2_5_1_5" id="__nav_2_5_1_5_label" tabindex="0">
<span class="md-ellipsis">
LLM Providers
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_5_1_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_5_1_5">
<span class="md-nav__icon md-icon"></span>
LLM Providers
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/model_providers/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/openai_example/" class="md-nav__link">
<span class="md-ellipsis">
OpenAI
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/claude/" class="md-nav__link">
<span class="md-ellipsis">
Anthropic
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/groq/" class="md-nav__link">
<span class="md-ellipsis">
Groq
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/cohere/" class="md-nav__link">
<span class="md-ellipsis">
Cohere
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/deepseek/" class="md-nav__link">
<span class="md-ellipsis">
DeepSeek
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/ollama/" class="md-nav__link">
<span class="md-ellipsis">
Ollama
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/openrouter/" class="md-nav__link">
<span class="md-ellipsis">
OpenRouter
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/xai/" class="md-nav__link">
<span class="md-ellipsis">
XAI
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/vllm_integration/" class="md-nav__link">
<span class="md-ellipsis">
VLLM
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/llama4/" class="md-nav__link">
<span class="md-ellipsis">
Llama4
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_6" >
<label class="md-nav__link" for="__nav_2_6" id="__nav_2_6_label" tabindex="0">
<span class="md-ellipsis">
Advanced Examples
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_2_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_6">
<span class="md-nav__icon md-icon"></span>
Advanced Examples
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_6_1" >
<label class="md-nav__link" for="__nav_2_6_1" id="__nav_2_6_1_label" tabindex="0">
<span class="md-ellipsis">
Multi-Agent Architectures
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_2_6_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_6_1">
<span class="md-nav__icon md-icon"></span>
Multi-Agent Architectures
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/hierarchical_swarm_example/" class="md-nav__link">
<span class="md-ellipsis">
HierarchicalSwarm Examples
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/board_of_directors_example.md" class="md-nav__link">
<span class="md-ellipsis">
Board of Directors Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/hhcs_examples/" class="md-nav__link">
<span class="md-ellipsis">
Hybrid Hierarchical-Cluster Swarm Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/groupchat_example/" class="md-nav__link">
<span class="md-ellipsis">
Group Chat Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/sequential_example/" class="md-nav__link">
<span class="md-ellipsis">
Sequential Workflow Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/swarm_router/" class="md-nav__link">
<span class="md-ellipsis">
SwarmRouter Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/multi_agent_router_minimal/" class="md-nav__link">
<span class="md-ellipsis">
MultiAgentRouter Minimal Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/concurrent_workflow/" class="md-nav__link">
<span class="md-ellipsis">
ConcurrentWorkflow Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/moa_example/" class="md-nav__link">
<span class="md-ellipsis">
Mixture of Agents Example
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/unique_swarms/" class="md-nav__link">
<span class="md-ellipsis">
Unique Swarms
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/agents_as_tools/" class="md-nav__link">
<span class="md-ellipsis">
Agents as Tools
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/aggregate/" class="md-nav__link">
<span class="md-ellipsis">
Aggregate Multi-Agent Responses
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/igc_example/" class="md-nav__link">
<span class="md-ellipsis">
Interactive GroupChat Example
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2_6_1_14" >
<label class="md-nav__link" for="__nav_2_6_1_14" id="__nav_2_6_1_14_label" tabindex="0">
<span class="md-ellipsis">
Applications
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_2_6_1_14_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2_6_1_14">
<span class="md-nav__icon md-icon"></span>
Applications
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/swarms_dao/" class="md-nav__link">
<span class="md-ellipsis">
Swarms DAO
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/swarms_of_browser_agents/" class="md-nav__link">
<span class="md-ellipsis">
Swarms of Browser Agents
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/vllm/" class="md-nav__link">
<span class="md-ellipsis">
ConcurrentWorkflow with VLLM Agents
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" checked>
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="">
<span class="md-ellipsis">
Swarms Cloud API
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Swarms Cloud API
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../swarms_api/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../quickstart/" class="md-nav__link">
<span class="md-ellipsis">
Quickstart
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../mcp/" class="md-nav__link">
<span class="md-ellipsis">
MCP Server
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../rate_limits/" class="md-nav__link">
<span class="md-ellipsis">
Rate Limits
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../best_practices/" class="md-nav__link">
<span class="md-ellipsis">
Best Practices
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--active md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_6" checked>
<label class="md-nav__link" for="__nav_3_6" id="__nav_3_6_label" tabindex="">
<span class="md-ellipsis">
Capabilities
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3_6">
<span class="md-nav__icon md-icon"></span>
Capabilities
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--active md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_6_1" checked>
<label class="md-nav__link" for="__nav_3_6_1" id="__nav_3_6_1_label" tabindex="0">
<span class="md-ellipsis">
Agents
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_3_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3_6_1">
<span class="md-nav__icon md-icon"></span>
Agents
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--active">
<input class="md-nav__toggle md-toggle" type="checkbox" id="__toc">
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
Individual Agent Completions
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
<span class="md-ellipsis">
Individual Agent Completions
</span>
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#getting-started" class="md-nav__link">
<span class="md-ellipsis">
Getting Started
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#individual-agent-api" class="md-nav__link">
<span class="md-ellipsis">
Individual Agent API
</span>
</a>
<nav class="md-nav" aria-label="Individual Agent API">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#agent-configuration-agentspec" class="md-nav__link">
<span class="md-ellipsis">
Agent Configuration (AgentSpec)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#agent-completion" class="md-nav__link">
<span class="md-ellipsis">
Agent Completion
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#single-agent-endpoint" class="md-nav__link">
<span class="md-ellipsis">
Single Agent Endpoint
</span>
</a>
<nav class="md-nav" aria-label="Single Agent Endpoint">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#request" class="md-nav__link">
<span class="md-ellipsis">
Request
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#example-usage" class="md-nav__link">
<span class="md-ellipsis">
Example Usage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#response-structure" class="md-nav__link">
<span class="md-ellipsis">
Response Structure
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#batch-agent-api" class="md-nav__link">
<span class="md-ellipsis">
Batch Agent API
</span>
</a>
<nav class="md-nav" aria-label="Batch Agent API">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#batch-agent-endpoint" class="md-nav__link">
<span class="md-ellipsis">
Batch Agent Endpoint
</span>
</a>
<nav class="md-nav" aria-label="Batch Agent Endpoint">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#request_1" class="md-nav__link">
<span class="md-ellipsis">
Request
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#example-usage_1" class="md-nav__link">
<span class="md-ellipsis">
Example Usage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#response-structure_1" class="md-nav__link">
<span class="md-ellipsis">
Response Structure
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#error-handling" class="md-nav__link">
<span class="md-ellipsis">
Error Handling
</span>
</a>
<nav class="md-nav" aria-label="Error Handling">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#common-errors-and-solutions" class="md-nav__link">
<span class="md-ellipsis">
Common Errors and Solutions
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#advanced-usage" class="md-nav__link">
<span class="md-ellipsis">
Advanced Usage
</span>
</a>
<nav class="md-nav" aria-label="Advanced Usage">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#setting-dynamic-temperature" class="md-nav__link">
<span class="md-ellipsis">
Setting Dynamic Temperature
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#using-agent-tools" class="md-nav__link">
<span class="md-ellipsis">
Using Agent Tools
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#best-practices" class="md-nav__link">
<span class="md-ellipsis">
Best Practices
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#faq" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#further-resources" class="md-nav__link">
<span class="md-ellipsis">
Further Resources
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../swarms_api_tools/" class="md-nav__link">
<span class="md-ellipsis">
Tools
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_6_2" >
<label class="md-nav__link" for="__nav_3_6_2" id="__nav_3_6_2_label" tabindex="0">
<span class="md-ellipsis">
Multi-Agent
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="3" aria-labelledby="__nav_3_6_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_6_2">
<span class="md-nav__icon md-icon"></span>
Multi-Agent
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../swarm_types/" class="md-nav__link">
<span class="md-ellipsis">
Multi Agent Architectures Available
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_6_2_2" >
<label class="md-nav__link" for="__nav_3_6_2_2" id="__nav_3_6_2_2_label" tabindex="0">
<span class="md-ellipsis">
Examples
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="4" aria-labelledby="__nav_3_6_2_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_6_2_2">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/examples/swarms_api_medical/" class="md-nav__link">
<span class="md-ellipsis">
Medical Swarm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/examples/swarms_api_finance/" class="md-nav__link">
<span class="md-ellipsis">
Finance Swarm
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_7" >
<label class="md-nav__link" for="__nav_3_7" id="__nav_3_7_label" tabindex="">
<span class="md-ellipsis">
Clients
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_7">
<span class="md-nav__icon md-icon"></span>
Clients
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../api_clients/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../python_client/" class="md-nav__link">
<span class="md-ellipsis">
Python Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../rust_client/" class="md-nav__link">
<span class="md-ellipsis">
Rust Client
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--section md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3_8" >
<label class="md-nav__link" for="__nav_3_8" id="__nav_3_8_label" tabindex="">
<span class="md-ellipsis">
Pricing
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_8">
<span class="md-nav__icon md-icon"></span>
Pricing
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../api_pricing/" class="md-nav__link">
<span class="md-ellipsis">
Pricing
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../subscription_tiers/" class="md-nav__link">
<span class="md-ellipsis">
Subscription Tiers
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<span class="md-ellipsis">
Swarms Marketplace
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Swarms Marketplace
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_platform/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
<span class="md-ellipsis">
Marketplace
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Marketplace
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_platform/share_and_discover/" class="md-nav__link">
<span class="md-ellipsis">
Share and Discover Agents, Prompts, and Tools
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms_platform/monetize/" class="md-nav__link">
<span class="md-ellipsis">
Monetize Your Prompts, Agents, and Tools
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
<span class="md-ellipsis">
Platform
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Platform
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_platform/apps_page/" class="md-nav__link">
<span class="md-ellipsis">
Customize Your Sidebar
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms_platform/playground_page/" class="md-nav__link">
<span class="md-ellipsis">
Playground
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms_platform/apikeys/" class="md-nav__link">
<span class="md-ellipsis">
API Key Management
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms_platform/account_management/" class="md-nav__link">
<span class="md-ellipsis">
Account Management
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
<span class="md-ellipsis">
Swarms Rust
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Swarms Rust
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms_rs/overview/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms_rs/agents/" class="md-nav__link">
<span class="md-ellipsis">
Agents
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
<span class="md-ellipsis">
Contributors
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Contributors
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../contributors/main/" class="md-nav__link">
<span class="md-ellipsis">
Overview
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributors/environment_setup/" class="md-nav__link">
<span class="md-ellipsis">
Environment Setup
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../corporate/bounty_program/" class="md-nav__link">
<span class="md-ellipsis">
Bounty Program
</span>
</a>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_4" >
<label class="md-nav__link" for="__nav_6_4" id="__nav_6_4_label" tabindex="0">
<span class="md-ellipsis">
Development Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_4">
<span class="md-nav__icon md-icon"></span>
Development Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/framework/code_cleanliness/" class="md-nav__link">
<span class="md-ellipsis">
Code Style Guide & Best Practices
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/framework/test/" class="md-nav__link">
<span class="md-ellipsis">
Adding Tests
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributors/docs/" class="md-nav__link">
<span class="md-ellipsis">
Adding Documentation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../contributors/tools/" class="md-nav__link">
<span class="md-ellipsis">
New Tools & Plugins
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_5" >
<label class="md-nav__link" for="__nav_6_5" id="__nav_6_5_label" tabindex="0">
<span class="md-ellipsis">
Architecture & Design
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6_5">
<span class="md-nav__icon md-icon"></span>
Architecture & Design
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/concept/framework_architecture/" class="md-nav__link">
<span class="md-ellipsis">
Understanding Swarms Architecture
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/concept/philosophy/" class="md-nav__link">
<span class="md-ellipsis">
Development Philosophy & Principles
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
About Swarms
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
About Swarms
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../swarms/concept/vision/" class="md-nav__link">
<span class="md-ellipsis">
Vision & Mission
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/concept/swarm_ecosystem/" class="md-nav__link">
<span class="md-ellipsis">
Swarm Ecosystem
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../swarms/products/" class="md-nav__link">
<span class="md-ellipsis">
Products
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-sidebar md-sidebar--secondary" data-md-component="sidebar" data-md-type="toc" >
<div class="md-sidebar__scrollwrap">
<div class="md-sidebar__inner">
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#getting-started" class="md-nav__link">
<span class="md-ellipsis">
Getting Started
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#individual-agent-api" class="md-nav__link">
<span class="md-ellipsis">
Individual Agent API
</span>
</a>
<nav class="md-nav" aria-label="Individual Agent API">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#agent-configuration-agentspec" class="md-nav__link">
<span class="md-ellipsis">
Agent Configuration (AgentSpec)
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#agent-completion" class="md-nav__link">
<span class="md-ellipsis">
Agent Completion
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#single-agent-endpoint" class="md-nav__link">
<span class="md-ellipsis">
Single Agent Endpoint
</span>
</a>
<nav class="md-nav" aria-label="Single Agent Endpoint">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#request" class="md-nav__link">
<span class="md-ellipsis">
Request
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#example-usage" class="md-nav__link">
<span class="md-ellipsis">
Example Usage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#response-structure" class="md-nav__link">
<span class="md-ellipsis">
Response Structure
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#batch-agent-api" class="md-nav__link">
<span class="md-ellipsis">
Batch Agent API
</span>
</a>
<nav class="md-nav" aria-label="Batch Agent API">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#batch-agent-endpoint" class="md-nav__link">
<span class="md-ellipsis">
Batch Agent Endpoint
</span>
</a>
<nav class="md-nav" aria-label="Batch Agent Endpoint">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#request_1" class="md-nav__link">
<span class="md-ellipsis">
Request
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#example-usage_1" class="md-nav__link">
<span class="md-ellipsis">
Example Usage
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#response-structure_1" class="md-nav__link">
<span class="md-ellipsis">
Response Structure
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#error-handling" class="md-nav__link">
<span class="md-ellipsis">
Error Handling
</span>
</a>
<nav class="md-nav" aria-label="Error Handling">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#common-errors-and-solutions" class="md-nav__link">
<span class="md-ellipsis">
Common Errors and Solutions
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#advanced-usage" class="md-nav__link">
<span class="md-ellipsis">
Advanced Usage
</span>
</a>
<nav class="md-nav" aria-label="Advanced Usage">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#setting-dynamic-temperature" class="md-nav__link">
<span class="md-ellipsis">
Setting Dynamic Temperature
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#using-agent-tools" class="md-nav__link">
<span class="md-ellipsis">
Using Agent Tools
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="#best-practices" class="md-nav__link">
<span class="md-ellipsis">
Best Practices
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#faq" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#further-resources" class="md-nav__link">
<span class="md-ellipsis">
Further Resources
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
<div class="md-content" data-md-component="content">
<article class="md-content__inner md-typeset">
<h1 id="agent-api">Agent API<a class="headerlink" href="#agent-api" title="Permanent link">&para;</a></h1>
<p>The Swarms.ai Agent API provides powerful endpoints for running individual AI agents and batch agent operations. This documentation explains how to use these endpoints for effective agent-based task execution.</p>
<h2 id="getting-started">Getting Started<a class="headerlink" href="#getting-started" title="Permanent link">&para;</a></h2>
<p>To use the Agent API, you'll need a Swarms.ai API key:</p>
<ol>
<li>Go to <a href="https://swarms.world/platform/api-keys">https://swarms.world/platform/api-keys</a></li>
<li>Generate a new API key</li>
<li>Store your API key securely - it won't be shown again</li>
</ol>
<div class="language-python highlight"><pre><span></span><code><span id="__span-0-1"><a id="__codelineno-0-1" name="__codelineno-0-1" href="#__codelineno-0-1"></a><span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
</span><span id="__span-0-2"><a id="__codelineno-0-2" name="__codelineno-0-2" href="#__codelineno-0-2"></a><span class="kn">import</span><span class="w"> </span><span class="nn">requests</span>
</span><span id="__span-0-3"><a id="__codelineno-0-3" name="__codelineno-0-3" href="#__codelineno-0-3"></a><span class="kn">from</span><span class="w"> </span><span class="nn">dotenv</span><span class="w"> </span><span class="kn">import</span> <span class="n">load_dotenv</span>
</span><span id="__span-0-4"><a id="__codelineno-0-4" name="__codelineno-0-4" href="#__codelineno-0-4"></a>
</span><span id="__span-0-5"><a id="__codelineno-0-5" name="__codelineno-0-5" href="#__codelineno-0-5"></a><span class="c1"># Load API key from environment</span>
</span><span id="__span-0-6"><a id="__codelineno-0-6" name="__codelineno-0-6" href="#__codelineno-0-6"></a><span class="n">load_dotenv</span><span class="p">()</span>
</span><span id="__span-0-7"><a id="__codelineno-0-7" name="__codelineno-0-7" href="#__codelineno-0-7"></a><span class="n">API_KEY</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">getenv</span><span class="p">(</span><span class="s2">&quot;SWARMS_API_KEY&quot;</span><span class="p">)</span>
</span><span id="__span-0-8"><a id="__codelineno-0-8" name="__codelineno-0-8" href="#__codelineno-0-8"></a><span class="n">BASE_URL</span> <span class="o">=</span> <span class="s2">&quot;https://api.swarms.world&quot;</span>
</span><span id="__span-0-9"><a id="__codelineno-0-9" name="__codelineno-0-9" href="#__codelineno-0-9"></a>
</span><span id="__span-0-10"><a id="__codelineno-0-10" name="__codelineno-0-10" href="#__codelineno-0-10"></a><span class="c1"># Configure headers with your API key</span>
</span><span id="__span-0-11"><a id="__codelineno-0-11" name="__codelineno-0-11" href="#__codelineno-0-11"></a><span class="n">headers</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-0-12"><a id="__codelineno-0-12" name="__codelineno-0-12" href="#__codelineno-0-12"></a> <span class="s2">&quot;x-api-key&quot;</span><span class="p">:</span> <span class="n">API_KEY</span><span class="p">,</span>
</span><span id="__span-0-13"><a id="__codelineno-0-13" name="__codelineno-0-13" href="#__codelineno-0-13"></a> <span class="s2">&quot;Content-Type&quot;</span><span class="p">:</span> <span class="s2">&quot;application/json&quot;</span>
</span><span id="__span-0-14"><a id="__codelineno-0-14" name="__codelineno-0-14" href="#__codelineno-0-14"></a><span class="p">}</span>
</span></code></pre></div>
<h2 id="individual-agent-api">Individual Agent API<a class="headerlink" href="#individual-agent-api" title="Permanent link">&para;</a></h2>
<p>The Individual Agent API allows you to run a single agent with a specific configuration and task.</p>
<h3 id="agent-configuration-agentspec">Agent Configuration (<code>AgentSpec</code>)<a class="headerlink" href="#agent-configuration-agentspec" title="Permanent link">&para;</a></h3>
<p>The <code>AgentSpec</code> class defines the configuration for an individual agent.</p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Type</th>
<th>Default</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>agent_name</code></td>
<td>string</td>
<td>Required</td>
<td>Unique name identifying the agent and its functionality</td>
</tr>
<tr>
<td><code>description</code></td>
<td>string</td>
<td>None</td>
<td>Detailed explanation of the agent's purpose and capabilities</td>
</tr>
<tr>
<td><code>system_prompt</code></td>
<td>string</td>
<td>None</td>
<td>Initial instructions guiding the agent's behavior and responses</td>
</tr>
<tr>
<td><code>model_name</code></td>
<td>string</td>
<td>"gpt-4o-mini"</td>
<td>The AI model used by the agent (e.g., gpt-4o, gpt-4o-mini, openai/o3-mini)</td>
</tr>
<tr>
<td><code>auto_generate_prompt</code></td>
<td>boolean</td>
<td>false</td>
<td>Whether the agent should automatically create prompts based on task requirements</td>
</tr>
<tr>
<td><code>max_tokens</code></td>
<td>integer</td>
<td>8192</td>
<td>Maximum number of tokens the agent can generate in its responses</td>
</tr>
<tr>
<td><code>temperature</code></td>
<td>float</td>
<td>0.5</td>
<td>Controls output randomness (lower values = more deterministic responses)</td>
</tr>
<tr>
<td><code>role</code></td>
<td>string</td>
<td>"worker"</td>
<td>The agent's role within a swarm, influencing its behavior and interactions</td>
</tr>
<tr>
<td><code>max_loops</code></td>
<td>integer</td>
<td>1</td>
<td>Maximum number of times the agent can repeat its task for iterative processing</td>
</tr>
<tr>
<td><code>tools_dictionary</code></td>
<td>array</td>
<td>None</td>
<td>Dictionary of tools the agent can use to complete its task</td>
</tr>
<tr>
<td><code>mcp_url</code></td>
<td>string</td>
<td>None</td>
<td>URL for the MCP server that the agent can connect to</td>
</tr>
</tbody>
</table>
<h3 id="agent-completion">Agent Completion<a class="headerlink" href="#agent-completion" title="Permanent link">&para;</a></h3>
<p>The <code>AgentCompletion</code> class combines an agent configuration with a specific task.</p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>agent_config</code></td>
<td>AgentSpec</td>
<td>Configuration of the agent to be completed</td>
</tr>
<tr>
<td><code>task</code></td>
<td>string</td>
<td>The task to be completed by the agent</td>
</tr>
<tr>
<td><code>history</code></td>
<td>Optional[Union[Dict[Any, Any], List[Dict[str, str]]]]</td>
<td>The history of the agent's previous tasks and responses. Can be either a dictionary or a list of message objects.</td>
</tr>
</tbody>
</table>
<h3 id="single-agent-endpoint">Single Agent Endpoint<a class="headerlink" href="#single-agent-endpoint" title="Permanent link">&para;</a></h3>
<p><strong>Endpoint:</strong> <code>POST /v1/agent/completions</code></p>
<p>Run a single agent with a specific configuration and task.</p>
<h4 id="request">Request<a class="headerlink" href="#request" title="Permanent link">&para;</a></h4>
<div class="language-python highlight"><pre><span></span><code><span id="__span-1-1"><a id="__codelineno-1-1" name="__codelineno-1-1" href="#__codelineno-1-1"></a><span class="k">def</span><span class="w"> </span><span class="nf">run_single_agent</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">):</span>
</span><span id="__span-1-2"><a id="__codelineno-1-2" name="__codelineno-1-2" href="#__codelineno-1-2"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
</span><span id="__span-1-3"><a id="__codelineno-1-3" name="__codelineno-1-3" href="#__codelineno-1-3"></a><span class="sd"> Run a single agent with the AgentCompletion format.</span>
</span><span id="__span-1-4"><a id="__codelineno-1-4" name="__codelineno-1-4" href="#__codelineno-1-4"></a>
</span><span id="__span-1-5"><a id="__codelineno-1-5" name="__codelineno-1-5" href="#__codelineno-1-5"></a><span class="sd"> Args:</span>
</span><span id="__span-1-6"><a id="__codelineno-1-6" name="__codelineno-1-6" href="#__codelineno-1-6"></a><span class="sd"> agent_config: Dictionary containing agent configuration</span>
</span><span id="__span-1-7"><a id="__codelineno-1-7" name="__codelineno-1-7" href="#__codelineno-1-7"></a><span class="sd"> task: String describing the task for the agent</span>
</span><span id="__span-1-8"><a id="__codelineno-1-8" name="__codelineno-1-8" href="#__codelineno-1-8"></a>
</span><span id="__span-1-9"><a id="__codelineno-1-9" name="__codelineno-1-9" href="#__codelineno-1-9"></a><span class="sd"> Returns:</span>
</span><span id="__span-1-10"><a id="__codelineno-1-10" name="__codelineno-1-10" href="#__codelineno-1-10"></a><span class="sd"> Dictionary containing the agent&#39;s response</span>
</span><span id="__span-1-11"><a id="__codelineno-1-11" name="__codelineno-1-11" href="#__codelineno-1-11"></a><span class="sd"> &quot;&quot;&quot;</span>
</span><span id="__span-1-12"><a id="__codelineno-1-12" name="__codelineno-1-12" href="#__codelineno-1-12"></a> <span class="n">payload</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-1-13"><a id="__codelineno-1-13" name="__codelineno-1-13" href="#__codelineno-1-13"></a> <span class="s2">&quot;agent_config&quot;</span><span class="p">:</span> <span class="n">agent_config</span><span class="p">,</span>
</span><span id="__span-1-14"><a id="__codelineno-1-14" name="__codelineno-1-14" href="#__codelineno-1-14"></a> <span class="s2">&quot;task&quot;</span><span class="p">:</span> <span class="n">task</span>
</span><span id="__span-1-15"><a id="__codelineno-1-15" name="__codelineno-1-15" href="#__codelineno-1-15"></a> <span class="p">}</span>
</span><span id="__span-1-16"><a id="__codelineno-1-16" name="__codelineno-1-16" href="#__codelineno-1-16"></a>
</span><span id="__span-1-17"><a id="__codelineno-1-17" name="__codelineno-1-17" href="#__codelineno-1-17"></a> <span class="k">try</span><span class="p">:</span>
</span><span id="__span-1-18"><a id="__codelineno-1-18" name="__codelineno-1-18" href="#__codelineno-1-18"></a> <span class="n">response</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">post</span><span class="p">(</span>
</span><span id="__span-1-19"><a id="__codelineno-1-19" name="__codelineno-1-19" href="#__codelineno-1-19"></a> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">BASE_URL</span><span class="si">}</span><span class="s2">/v1/agent/completions&quot;</span><span class="p">,</span>
</span><span id="__span-1-20"><a id="__codelineno-1-20" name="__codelineno-1-20" href="#__codelineno-1-20"></a> <span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">,</span>
</span><span id="__span-1-21"><a id="__codelineno-1-21" name="__codelineno-1-21" href="#__codelineno-1-21"></a> <span class="n">json</span><span class="o">=</span><span class="n">payload</span>
</span><span id="__span-1-22"><a id="__codelineno-1-22" name="__codelineno-1-22" href="#__codelineno-1-22"></a> <span class="p">)</span>
</span><span id="__span-1-23"><a id="__codelineno-1-23" name="__codelineno-1-23" href="#__codelineno-1-23"></a> <span class="n">response</span><span class="o">.</span><span class="n">raise_for_status</span><span class="p">()</span>
</span><span id="__span-1-24"><a id="__codelineno-1-24" name="__codelineno-1-24" href="#__codelineno-1-24"></a> <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">json</span><span class="p">()</span>
</span><span id="__span-1-25"><a id="__codelineno-1-25" name="__codelineno-1-25" href="#__codelineno-1-25"></a> <span class="k">except</span> <span class="n">requests</span><span class="o">.</span><span class="n">exceptions</span><span class="o">.</span><span class="n">RequestException</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-1-26"><a id="__codelineno-1-26" name="__codelineno-1-26" href="#__codelineno-1-26"></a> <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Error making request: </span><span class="si">{</span><span class="n">e</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
</span><span id="__span-1-27"><a id="__codelineno-1-27" name="__codelineno-1-27" href="#__codelineno-1-27"></a> <span class="k">return</span> <span class="kc">None</span>
</span></code></pre></div>
<h4 id="example-usage">Example Usage<a class="headerlink" href="#example-usage" title="Permanent link">&para;</a></h4>
<div class="language-python highlight"><pre><span></span><code><span id="__span-2-1"><a id="__codelineno-2-1" name="__codelineno-2-1" href="#__codelineno-2-1"></a><span class="n">agent_config</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-2-2"><a id="__codelineno-2-2" name="__codelineno-2-2" href="#__codelineno-2-2"></a> <span class="s2">&quot;agent_name&quot;</span><span class="p">:</span> <span class="s2">&quot;Research Analyst&quot;</span><span class="p">,</span>
</span><span id="__span-2-3"><a id="__codelineno-2-3" name="__codelineno-2-3" href="#__codelineno-2-3"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;An expert in analyzing and synthesizing research data&quot;</span><span class="p">,</span>
</span><span id="__span-2-4"><a id="__codelineno-2-4" name="__codelineno-2-4" href="#__codelineno-2-4"></a> <span class="s2">&quot;system_prompt&quot;</span><span class="p">:</span> <span class="p">(</span>
</span><span id="__span-2-5"><a id="__codelineno-2-5" name="__codelineno-2-5" href="#__codelineno-2-5"></a> <span class="s2">&quot;You are a Research Analyst with expertise in data analysis and synthesis. &quot;</span>
</span><span id="__span-2-6"><a id="__codelineno-2-6" name="__codelineno-2-6" href="#__codelineno-2-6"></a> <span class="s2">&quot;Your role is to analyze provided information, identify key insights, &quot;</span>
</span><span id="__span-2-7"><a id="__codelineno-2-7" name="__codelineno-2-7" href="#__codelineno-2-7"></a> <span class="s2">&quot;and present findings in a clear, structured format. &quot;</span>
</span><span id="__span-2-8"><a id="__codelineno-2-8" name="__codelineno-2-8" href="#__codelineno-2-8"></a> <span class="s2">&quot;Focus on accuracy, clarity, and actionable recommendations.&quot;</span>
</span><span id="__span-2-9"><a id="__codelineno-2-9" name="__codelineno-2-9" href="#__codelineno-2-9"></a> <span class="p">),</span>
</span><span id="__span-2-10"><a id="__codelineno-2-10" name="__codelineno-2-10" href="#__codelineno-2-10"></a> <span class="s2">&quot;model_name&quot;</span><span class="p">:</span> <span class="s2">&quot;gpt-4o&quot;</span><span class="p">,</span>
</span><span id="__span-2-11"><a id="__codelineno-2-11" name="__codelineno-2-11" href="#__codelineno-2-11"></a> <span class="s2">&quot;role&quot;</span><span class="p">:</span> <span class="s2">&quot;worker&quot;</span><span class="p">,</span>
</span><span id="__span-2-12"><a id="__codelineno-2-12" name="__codelineno-2-12" href="#__codelineno-2-12"></a> <span class="s2">&quot;max_loops&quot;</span><span class="p">:</span> <span class="mi">2</span><span class="p">,</span>
</span><span id="__span-2-13"><a id="__codelineno-2-13" name="__codelineno-2-13" href="#__codelineno-2-13"></a> <span class="s2">&quot;max_tokens&quot;</span><span class="p">:</span> <span class="mi">8192</span><span class="p">,</span>
</span><span id="__span-2-14"><a id="__codelineno-2-14" name="__codelineno-2-14" href="#__codelineno-2-14"></a> <span class="s2">&quot;temperature&quot;</span><span class="p">:</span> <span class="mf">0.5</span><span class="p">,</span>
</span><span id="__span-2-15"><a id="__codelineno-2-15" name="__codelineno-2-15" href="#__codelineno-2-15"></a> <span class="s2">&quot;auto_generate_prompt&quot;</span><span class="p">:</span> <span class="kc">False</span><span class="p">,</span>
</span><span id="__span-2-16"><a id="__codelineno-2-16" name="__codelineno-2-16" href="#__codelineno-2-16"></a><span class="p">}</span>
</span><span id="__span-2-17"><a id="__codelineno-2-17" name="__codelineno-2-17" href="#__codelineno-2-17"></a>
</span><span id="__span-2-18"><a id="__codelineno-2-18" name="__codelineno-2-18" href="#__codelineno-2-18"></a><span class="n">task</span> <span class="o">=</span> <span class="s2">&quot;Analyze the impact of artificial intelligence on healthcare delivery and provide a comprehensive report with key findings and recommendations.&quot;</span>
</span><span id="__span-2-19"><a id="__codelineno-2-19" name="__codelineno-2-19" href="#__codelineno-2-19"></a>
</span><span id="__span-2-20"><a id="__codelineno-2-20" name="__codelineno-2-20" href="#__codelineno-2-20"></a><span class="n">result</span> <span class="o">=</span> <span class="n">run_single_agent</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">)</span>
</span><span id="__span-2-21"><a id="__codelineno-2-21" name="__codelineno-2-21" href="#__codelineno-2-21"></a><span class="nb">print</span><span class="p">(</span><span class="n">result</span><span class="p">)</span>
</span></code></pre></div>
<h4 id="response-structure">Response Structure<a class="headerlink" href="#response-structure" title="Permanent link">&para;</a></h4>
<div class="language-json highlight"><pre><span></span><code><span id="__span-3-1"><a id="__codelineno-3-1" name="__codelineno-3-1" href="#__codelineno-3-1"></a><span class="p">{</span>
</span><span id="__span-3-2"><a id="__codelineno-3-2" name="__codelineno-3-2" href="#__codelineno-3-2"></a><span class="w"> </span><span class="nt">&quot;id&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;agent-6a8b9c0d1e2f3g4h5i6j7k8l9m0n&quot;</span><span class="p">,</span>
</span><span id="__span-3-3"><a id="__codelineno-3-3" name="__codelineno-3-3" href="#__codelineno-3-3"></a><span class="w"> </span><span class="nt">&quot;success&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span>
</span><span id="__span-3-4"><a id="__codelineno-3-4" name="__codelineno-3-4" href="#__codelineno-3-4"></a><span class="w"> </span><span class="nt">&quot;name&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;Research Analyst&quot;</span><span class="p">,</span>
</span><span id="__span-3-5"><a id="__codelineno-3-5" name="__codelineno-3-5" href="#__codelineno-3-5"></a><span class="w"> </span><span class="nt">&quot;description&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;An expert in analyzing and synthesizing research data&quot;</span><span class="p">,</span>
</span><span id="__span-3-6"><a id="__codelineno-3-6" name="__codelineno-3-6" href="#__codelineno-3-6"></a><span class="w"> </span><span class="nt">&quot;temperature&quot;</span><span class="p">:</span><span class="w"> </span><span class="mf">0.5</span><span class="p">,</span>
</span><span id="__span-3-7"><a id="__codelineno-3-7" name="__codelineno-3-7" href="#__codelineno-3-7"></a><span class="w"> </span><span class="nt">&quot;outputs&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
</span><span id="__span-3-8"><a id="__codelineno-3-8" name="__codelineno-3-8" href="#__codelineno-3-8"></a><span class="w"> </span><span class="nt">&quot;content&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;# Impact of Artificial Intelligence on Healthcare Delivery\n\n## Executive Summary\n...&quot;</span><span class="p">,</span>
</span><span id="__span-3-9"><a id="__codelineno-3-9" name="__codelineno-3-9" href="#__codelineno-3-9"></a><span class="w"> </span><span class="nt">&quot;role&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;assistant&quot;</span>
</span><span id="__span-3-10"><a id="__codelineno-3-10" name="__codelineno-3-10" href="#__codelineno-3-10"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-3-11"><a id="__codelineno-3-11" name="__codelineno-3-11" href="#__codelineno-3-11"></a><span class="w"> </span><span class="nt">&quot;usage&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
</span><span id="__span-3-12"><a id="__codelineno-3-12" name="__codelineno-3-12" href="#__codelineno-3-12"></a><span class="w"> </span><span class="nt">&quot;input_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1250</span><span class="p">,</span>
</span><span id="__span-3-13"><a id="__codelineno-3-13" name="__codelineno-3-13" href="#__codelineno-3-13"></a><span class="w"> </span><span class="nt">&quot;output_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">3822</span><span class="p">,</span>
</span><span id="__span-3-14"><a id="__codelineno-3-14" name="__codelineno-3-14" href="#__codelineno-3-14"></a><span class="w"> </span><span class="nt">&quot;total_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">5072</span>
</span><span id="__span-3-15"><a id="__codelineno-3-15" name="__codelineno-3-15" href="#__codelineno-3-15"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-3-16"><a id="__codelineno-3-16" name="__codelineno-3-16" href="#__codelineno-3-16"></a><span class="w"> </span><span class="nt">&quot;timestamp&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;2025-05-10T18:35:29.421Z&quot;</span>
</span><span id="__span-3-17"><a id="__codelineno-3-17" name="__codelineno-3-17" href="#__codelineno-3-17"></a><span class="p">}</span>
</span></code></pre></div>
<h2 id="batch-agent-api">Batch Agent API<a class="headerlink" href="#batch-agent-api" title="Permanent link">&para;</a></h2>
<p>The Batch Agent API allows you to run multiple agents in parallel, each with different configurations and tasks.</p>
<h3 id="batch-agent-endpoint">Batch Agent Endpoint<a class="headerlink" href="#batch-agent-endpoint" title="Permanent link">&para;</a></h3>
<p><strong>Endpoint:</strong> <code>POST /v1/agent/batch/completions</code></p>
<p>Run multiple agents with different configurations and tasks in a single API call.</p>
<h4 id="request_1">Request<a class="headerlink" href="#request_1" title="Permanent link">&para;</a></h4>
<div class="language-python highlight"><pre><span></span><code><span id="__span-4-1"><a id="__codelineno-4-1" name="__codelineno-4-1" href="#__codelineno-4-1"></a><span class="k">def</span><span class="w"> </span><span class="nf">run_batch_agents</span><span class="p">(</span><span class="n">agent_completions</span><span class="p">):</span>
</span><span id="__span-4-2"><a id="__codelineno-4-2" name="__codelineno-4-2" href="#__codelineno-4-2"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;</span>
</span><span id="__span-4-3"><a id="__codelineno-4-3" name="__codelineno-4-3" href="#__codelineno-4-3"></a><span class="sd"> Run multiple agents in batch.</span>
</span><span id="__span-4-4"><a id="__codelineno-4-4" name="__codelineno-4-4" href="#__codelineno-4-4"></a>
</span><span id="__span-4-5"><a id="__codelineno-4-5" name="__codelineno-4-5" href="#__codelineno-4-5"></a><span class="sd"> Args:</span>
</span><span id="__span-4-6"><a id="__codelineno-4-6" name="__codelineno-4-6" href="#__codelineno-4-6"></a><span class="sd"> agent_completions: List of dictionaries, each containing agent_config and task</span>
</span><span id="__span-4-7"><a id="__codelineno-4-7" name="__codelineno-4-7" href="#__codelineno-4-7"></a>
</span><span id="__span-4-8"><a id="__codelineno-4-8" name="__codelineno-4-8" href="#__codelineno-4-8"></a><span class="sd"> Returns:</span>
</span><span id="__span-4-9"><a id="__codelineno-4-9" name="__codelineno-4-9" href="#__codelineno-4-9"></a><span class="sd"> List of agent responses</span>
</span><span id="__span-4-10"><a id="__codelineno-4-10" name="__codelineno-4-10" href="#__codelineno-4-10"></a><span class="sd"> &quot;&quot;&quot;</span>
</span><span id="__span-4-11"><a id="__codelineno-4-11" name="__codelineno-4-11" href="#__codelineno-4-11"></a> <span class="k">try</span><span class="p">:</span>
</span><span id="__span-4-12"><a id="__codelineno-4-12" name="__codelineno-4-12" href="#__codelineno-4-12"></a> <span class="n">response</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">post</span><span class="p">(</span>
</span><span id="__span-4-13"><a id="__codelineno-4-13" name="__codelineno-4-13" href="#__codelineno-4-13"></a> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">BASE_URL</span><span class="si">}</span><span class="s2">/v1/agent/batch/completions&quot;</span><span class="p">,</span>
</span><span id="__span-4-14"><a id="__codelineno-4-14" name="__codelineno-4-14" href="#__codelineno-4-14"></a> <span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">,</span>
</span><span id="__span-4-15"><a id="__codelineno-4-15" name="__codelineno-4-15" href="#__codelineno-4-15"></a> <span class="n">json</span><span class="o">=</span><span class="n">agent_completions</span>
</span><span id="__span-4-16"><a id="__codelineno-4-16" name="__codelineno-4-16" href="#__codelineno-4-16"></a> <span class="p">)</span>
</span><span id="__span-4-17"><a id="__codelineno-4-17" name="__codelineno-4-17" href="#__codelineno-4-17"></a> <span class="n">response</span><span class="o">.</span><span class="n">raise_for_status</span><span class="p">()</span>
</span><span id="__span-4-18"><a id="__codelineno-4-18" name="__codelineno-4-18" href="#__codelineno-4-18"></a> <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">json</span><span class="p">()</span>
</span><span id="__span-4-19"><a id="__codelineno-4-19" name="__codelineno-4-19" href="#__codelineno-4-19"></a> <span class="k">except</span> <span class="n">requests</span><span class="o">.</span><span class="n">exceptions</span><span class="o">.</span><span class="n">RequestException</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-4-20"><a id="__codelineno-4-20" name="__codelineno-4-20" href="#__codelineno-4-20"></a> <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Error making batch request: </span><span class="si">{</span><span class="n">e</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
</span><span id="__span-4-21"><a id="__codelineno-4-21" name="__codelineno-4-21" href="#__codelineno-4-21"></a> <span class="k">return</span> <span class="kc">None</span>
</span></code></pre></div>
<h4 id="example-usage_1">Example Usage<a class="headerlink" href="#example-usage_1" title="Permanent link">&para;</a></h4>
<div class="language-python highlight"><pre><span></span><code><span id="__span-5-1"><a id="__codelineno-5-1" name="__codelineno-5-1" href="#__codelineno-5-1"></a><span class="n">batch_completions</span> <span class="o">=</span> <span class="p">[</span>
</span><span id="__span-5-2"><a id="__codelineno-5-2" name="__codelineno-5-2" href="#__codelineno-5-2"></a> <span class="p">{</span>
</span><span id="__span-5-3"><a id="__codelineno-5-3" name="__codelineno-5-3" href="#__codelineno-5-3"></a> <span class="s2">&quot;agent_config&quot;</span><span class="p">:</span> <span class="p">{</span>
</span><span id="__span-5-4"><a id="__codelineno-5-4" name="__codelineno-5-4" href="#__codelineno-5-4"></a> <span class="s2">&quot;agent_name&quot;</span><span class="p">:</span> <span class="s2">&quot;Research Analyst&quot;</span><span class="p">,</span>
</span><span id="__span-5-5"><a id="__codelineno-5-5" name="__codelineno-5-5" href="#__codelineno-5-5"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;An expert in analyzing research data&quot;</span><span class="p">,</span>
</span><span id="__span-5-6"><a id="__codelineno-5-6" name="__codelineno-5-6" href="#__codelineno-5-6"></a> <span class="s2">&quot;system_prompt&quot;</span><span class="p">:</span> <span class="s2">&quot;You are a Research Analyst...&quot;</span><span class="p">,</span>
</span><span id="__span-5-7"><a id="__codelineno-5-7" name="__codelineno-5-7" href="#__codelineno-5-7"></a> <span class="s2">&quot;model_name&quot;</span><span class="p">:</span> <span class="s2">&quot;gpt-4o&quot;</span><span class="p">,</span>
</span><span id="__span-5-8"><a id="__codelineno-5-8" name="__codelineno-5-8" href="#__codelineno-5-8"></a> <span class="s2">&quot;max_loops&quot;</span><span class="p">:</span> <span class="mi">2</span>
</span><span id="__span-5-9"><a id="__codelineno-5-9" name="__codelineno-5-9" href="#__codelineno-5-9"></a> <span class="p">},</span>
</span><span id="__span-5-10"><a id="__codelineno-5-10" name="__codelineno-5-10" href="#__codelineno-5-10"></a> <span class="s2">&quot;task&quot;</span><span class="p">:</span> <span class="s2">&quot;Analyze the impact of AI on healthcare delivery.&quot;</span>
</span><span id="__span-5-11"><a id="__codelineno-5-11" name="__codelineno-5-11" href="#__codelineno-5-11"></a> <span class="p">},</span>
</span><span id="__span-5-12"><a id="__codelineno-5-12" name="__codelineno-5-12" href="#__codelineno-5-12"></a> <span class="p">{</span>
</span><span id="__span-5-13"><a id="__codelineno-5-13" name="__codelineno-5-13" href="#__codelineno-5-13"></a> <span class="s2">&quot;agent_config&quot;</span><span class="p">:</span> <span class="p">{</span>
</span><span id="__span-5-14"><a id="__codelineno-5-14" name="__codelineno-5-14" href="#__codelineno-5-14"></a> <span class="s2">&quot;agent_name&quot;</span><span class="p">:</span> <span class="s2">&quot;Market Analyst&quot;</span><span class="p">,</span>
</span><span id="__span-5-15"><a id="__codelineno-5-15" name="__codelineno-5-15" href="#__codelineno-5-15"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;An expert in market analysis&quot;</span><span class="p">,</span>
</span><span id="__span-5-16"><a id="__codelineno-5-16" name="__codelineno-5-16" href="#__codelineno-5-16"></a> <span class="s2">&quot;system_prompt&quot;</span><span class="p">:</span> <span class="s2">&quot;You are a Market Analyst...&quot;</span><span class="p">,</span>
</span><span id="__span-5-17"><a id="__codelineno-5-17" name="__codelineno-5-17" href="#__codelineno-5-17"></a> <span class="s2">&quot;model_name&quot;</span><span class="p">:</span> <span class="s2">&quot;gpt-4o&quot;</span><span class="p">,</span>
</span><span id="__span-5-18"><a id="__codelineno-5-18" name="__codelineno-5-18" href="#__codelineno-5-18"></a> <span class="s2">&quot;max_loops&quot;</span><span class="p">:</span> <span class="mi">1</span>
</span><span id="__span-5-19"><a id="__codelineno-5-19" name="__codelineno-5-19" href="#__codelineno-5-19"></a> <span class="p">},</span>
</span><span id="__span-5-20"><a id="__codelineno-5-20" name="__codelineno-5-20" href="#__codelineno-5-20"></a> <span class="s2">&quot;task&quot;</span><span class="p">:</span> <span class="s2">&quot;Analyze the AI startup landscape in 2025.&quot;</span>
</span><span id="__span-5-21"><a id="__codelineno-5-21" name="__codelineno-5-21" href="#__codelineno-5-21"></a> <span class="p">}</span>
</span><span id="__span-5-22"><a id="__codelineno-5-22" name="__codelineno-5-22" href="#__codelineno-5-22"></a><span class="p">]</span>
</span><span id="__span-5-23"><a id="__codelineno-5-23" name="__codelineno-5-23" href="#__codelineno-5-23"></a>
</span><span id="__span-5-24"><a id="__codelineno-5-24" name="__codelineno-5-24" href="#__codelineno-5-24"></a><span class="n">batch_results</span> <span class="o">=</span> <span class="n">run_batch_agents</span><span class="p">(</span><span class="n">batch_completions</span><span class="p">)</span>
</span><span id="__span-5-25"><a id="__codelineno-5-25" name="__codelineno-5-25" href="#__codelineno-5-25"></a><span class="nb">print</span><span class="p">(</span><span class="n">batch_results</span><span class="p">)</span>
</span></code></pre></div>
<h4 id="response-structure_1">Response Structure<a class="headerlink" href="#response-structure_1" title="Permanent link">&para;</a></h4>
<div class="language-json highlight"><pre><span></span><code><span id="__span-6-1"><a id="__codelineno-6-1" name="__codelineno-6-1" href="#__codelineno-6-1"></a><span class="p">[</span>
</span><span id="__span-6-2"><a id="__codelineno-6-2" name="__codelineno-6-2" href="#__codelineno-6-2"></a><span class="w"> </span><span class="p">{</span>
</span><span id="__span-6-3"><a id="__codelineno-6-3" name="__codelineno-6-3" href="#__codelineno-6-3"></a><span class="w"> </span><span class="nt">&quot;id&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;agent-1a2b3c4d5e6f7g8h9i0j&quot;</span><span class="p">,</span>
</span><span id="__span-6-4"><a id="__codelineno-6-4" name="__codelineno-6-4" href="#__codelineno-6-4"></a><span class="w"> </span><span class="nt">&quot;success&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span>
</span><span id="__span-6-5"><a id="__codelineno-6-5" name="__codelineno-6-5" href="#__codelineno-6-5"></a><span class="w"> </span><span class="nt">&quot;name&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;Research Analyst&quot;</span><span class="p">,</span>
</span><span id="__span-6-6"><a id="__codelineno-6-6" name="__codelineno-6-6" href="#__codelineno-6-6"></a><span class="w"> </span><span class="nt">&quot;description&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;An expert in analyzing research data&quot;</span><span class="p">,</span>
</span><span id="__span-6-7"><a id="__codelineno-6-7" name="__codelineno-6-7" href="#__codelineno-6-7"></a><span class="w"> </span><span class="nt">&quot;temperature&quot;</span><span class="p">:</span><span class="w"> </span><span class="mf">0.5</span><span class="p">,</span>
</span><span id="__span-6-8"><a id="__codelineno-6-8" name="__codelineno-6-8" href="#__codelineno-6-8"></a><span class="w"> </span><span class="nt">&quot;outputs&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
</span><span id="__span-6-9"><a id="__codelineno-6-9" name="__codelineno-6-9" href="#__codelineno-6-9"></a><span class="w"> </span><span class="nt">&quot;content&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;# Impact of AI on Healthcare Delivery\n...&quot;</span><span class="p">,</span>
</span><span id="__span-6-10"><a id="__codelineno-6-10" name="__codelineno-6-10" href="#__codelineno-6-10"></a><span class="w"> </span><span class="nt">&quot;role&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;assistant&quot;</span>
</span><span id="__span-6-11"><a id="__codelineno-6-11" name="__codelineno-6-11" href="#__codelineno-6-11"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-6-12"><a id="__codelineno-6-12" name="__codelineno-6-12" href="#__codelineno-6-12"></a><span class="w"> </span><span class="nt">&quot;usage&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
</span><span id="__span-6-13"><a id="__codelineno-6-13" name="__codelineno-6-13" href="#__codelineno-6-13"></a><span class="w"> </span><span class="nt">&quot;input_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">1250</span><span class="p">,</span>
</span><span id="__span-6-14"><a id="__codelineno-6-14" name="__codelineno-6-14" href="#__codelineno-6-14"></a><span class="w"> </span><span class="nt">&quot;output_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">3822</span><span class="p">,</span>
</span><span id="__span-6-15"><a id="__codelineno-6-15" name="__codelineno-6-15" href="#__codelineno-6-15"></a><span class="w"> </span><span class="nt">&quot;total_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">5072</span>
</span><span id="__span-6-16"><a id="__codelineno-6-16" name="__codelineno-6-16" href="#__codelineno-6-16"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-6-17"><a id="__codelineno-6-17" name="__codelineno-6-17" href="#__codelineno-6-17"></a><span class="w"> </span><span class="nt">&quot;timestamp&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;2025-05-10T18:35:29.421Z&quot;</span>
</span><span id="__span-6-18"><a id="__codelineno-6-18" name="__codelineno-6-18" href="#__codelineno-6-18"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-6-19"><a id="__codelineno-6-19" name="__codelineno-6-19" href="#__codelineno-6-19"></a><span class="w"> </span><span class="p">{</span>
</span><span id="__span-6-20"><a id="__codelineno-6-20" name="__codelineno-6-20" href="#__codelineno-6-20"></a><span class="w"> </span><span class="nt">&quot;id&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;agent-9i8h7g6f5e4d3c2b1a0&quot;</span><span class="p">,</span>
</span><span id="__span-6-21"><a id="__codelineno-6-21" name="__codelineno-6-21" href="#__codelineno-6-21"></a><span class="w"> </span><span class="nt">&quot;success&quot;</span><span class="p">:</span><span class="w"> </span><span class="kc">true</span><span class="p">,</span>
</span><span id="__span-6-22"><a id="__codelineno-6-22" name="__codelineno-6-22" href="#__codelineno-6-22"></a><span class="w"> </span><span class="nt">&quot;name&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;Market Analyst&quot;</span><span class="p">,</span>
</span><span id="__span-6-23"><a id="__codelineno-6-23" name="__codelineno-6-23" href="#__codelineno-6-23"></a><span class="w"> </span><span class="nt">&quot;description&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;An expert in market analysis&quot;</span><span class="p">,</span>
</span><span id="__span-6-24"><a id="__codelineno-6-24" name="__codelineno-6-24" href="#__codelineno-6-24"></a><span class="w"> </span><span class="nt">&quot;temperature&quot;</span><span class="p">:</span><span class="w"> </span><span class="mf">0.5</span><span class="p">,</span>
</span><span id="__span-6-25"><a id="__codelineno-6-25" name="__codelineno-6-25" href="#__codelineno-6-25"></a><span class="w"> </span><span class="nt">&quot;outputs&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
</span><span id="__span-6-26"><a id="__codelineno-6-26" name="__codelineno-6-26" href="#__codelineno-6-26"></a><span class="w"> </span><span class="nt">&quot;content&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;# AI Startup Landscape 2025\n...&quot;</span><span class="p">,</span>
</span><span id="__span-6-27"><a id="__codelineno-6-27" name="__codelineno-6-27" href="#__codelineno-6-27"></a><span class="w"> </span><span class="nt">&quot;role&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;assistant&quot;</span>
</span><span id="__span-6-28"><a id="__codelineno-6-28" name="__codelineno-6-28" href="#__codelineno-6-28"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-6-29"><a id="__codelineno-6-29" name="__codelineno-6-29" href="#__codelineno-6-29"></a><span class="w"> </span><span class="nt">&quot;usage&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
</span><span id="__span-6-30"><a id="__codelineno-6-30" name="__codelineno-6-30" href="#__codelineno-6-30"></a><span class="w"> </span><span class="nt">&quot;input_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">980</span><span class="p">,</span>
</span><span id="__span-6-31"><a id="__codelineno-6-31" name="__codelineno-6-31" href="#__codelineno-6-31"></a><span class="w"> </span><span class="nt">&quot;output_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">4120</span><span class="p">,</span>
</span><span id="__span-6-32"><a id="__codelineno-6-32" name="__codelineno-6-32" href="#__codelineno-6-32"></a><span class="w"> </span><span class="nt">&quot;total_tokens&quot;</span><span class="p">:</span><span class="w"> </span><span class="mi">5100</span>
</span><span id="__span-6-33"><a id="__codelineno-6-33" name="__codelineno-6-33" href="#__codelineno-6-33"></a><span class="w"> </span><span class="p">},</span>
</span><span id="__span-6-34"><a id="__codelineno-6-34" name="__codelineno-6-34" href="#__codelineno-6-34"></a><span class="w"> </span><span class="nt">&quot;timestamp&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;2025-05-10T18:35:31.842Z&quot;</span>
</span><span id="__span-6-35"><a id="__codelineno-6-35" name="__codelineno-6-35" href="#__codelineno-6-35"></a><span class="w"> </span><span class="p">}</span>
</span><span id="__span-6-36"><a id="__codelineno-6-36" name="__codelineno-6-36" href="#__codelineno-6-36"></a><span class="p">]</span>
</span></code></pre></div>
<h2 id="error-handling">Error Handling<a class="headerlink" href="#error-handling" title="Permanent link">&para;</a></h2>
<p>The API uses standard HTTP status codes to indicate success or failure:</p>
<table>
<thead>
<tr>
<th>Status Code</th>
<th>Meaning</th>
</tr>
</thead>
<tbody>
<tr>
<td>200</td>
<td>Success</td>
</tr>
<tr>
<td>400</td>
<td>Bad Request - Check your request parameters</td>
</tr>
<tr>
<td>401</td>
<td>Unauthorized - Invalid or missing API key</td>
</tr>
<tr>
<td>403</td>
<td>Forbidden - Insufficient permissions</td>
</tr>
<tr>
<td>429</td>
<td>Too Many Requests - Rate limit exceeded</td>
</tr>
<tr>
<td>500</td>
<td>Server Error - Something went wrong on the server</td>
</tr>
</tbody>
</table>
<p>When an error occurs, the response body will contain additional information:</p>
<div class="language-json highlight"><pre><span></span><code><span id="__span-7-1"><a id="__codelineno-7-1" name="__codelineno-7-1" href="#__codelineno-7-1"></a><span class="p">{</span>
</span><span id="__span-7-2"><a id="__codelineno-7-2" name="__codelineno-7-2" href="#__codelineno-7-2"></a><span class="w"> </span><span class="nt">&quot;detail&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;Error message explaining what went wrong&quot;</span>
</span><span id="__span-7-3"><a id="__codelineno-7-3" name="__codelineno-7-3" href="#__codelineno-7-3"></a><span class="p">}</span>
</span></code></pre></div>
<h3 id="common-errors-and-solutions">Common Errors and Solutions<a class="headerlink" href="#common-errors-and-solutions" title="Permanent link">&para;</a></h3>
<table>
<thead>
<tr>
<th>Error</th>
<th>Possible Solution</th>
</tr>
</thead>
<tbody>
<tr>
<td>"Invalid API Key"</td>
<td>Verify your API key is correct and properly included in the request headers</td>
</tr>
<tr>
<td>"Rate limit exceeded"</td>
<td>Reduce the number of requests or contact support to increase your rate limit</td>
</tr>
<tr>
<td>"Invalid agent configuration"</td>
<td>Check your agent_config parameters for any missing or invalid values</td>
</tr>
<tr>
<td>"Failed to create agent"</td>
<td>Ensure your system_prompt and model_name are valid</td>
</tr>
<tr>
<td>"Insufficient credits"</td>
<td>Add credits to your account at <a href="https://swarms.world/platform/account">https://swarms.world/platform/account</a></td>
</tr>
</tbody>
</table>
<h2 id="advanced-usage">Advanced Usage<a class="headerlink" href="#advanced-usage" title="Permanent link">&para;</a></h2>
<h3 id="setting-dynamic-temperature">Setting Dynamic Temperature<a class="headerlink" href="#setting-dynamic-temperature" title="Permanent link">&para;</a></h3>
<p>The agent can dynamically adjust its temperature for optimal outputs:</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-8-1"><a id="__codelineno-8-1" name="__codelineno-8-1" href="#__codelineno-8-1"></a><span class="n">agent_config</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-8-2"><a id="__codelineno-8-2" name="__codelineno-8-2" href="#__codelineno-8-2"></a> <span class="c1"># Other config options...</span>
</span><span id="__span-8-3"><a id="__codelineno-8-3" name="__codelineno-8-3" href="#__codelineno-8-3"></a> <span class="s2">&quot;temperature&quot;</span><span class="p">:</span> <span class="mf">0.7</span><span class="p">,</span>
</span><span id="__span-8-4"><a id="__codelineno-8-4" name="__codelineno-8-4" href="#__codelineno-8-4"></a> <span class="s2">&quot;dynamic_temperature_enabled&quot;</span><span class="p">:</span> <span class="kc">True</span>
</span><span id="__span-8-5"><a id="__codelineno-8-5" name="__codelineno-8-5" href="#__codelineno-8-5"></a><span class="p">}</span>
</span></code></pre></div>
<h3 id="using-agent-tools">Using Agent Tools<a class="headerlink" href="#using-agent-tools" title="Permanent link">&para;</a></h3>
<p>Agents can utilize various tools to enhance their capabilities:</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-9-1"><a id="__codelineno-9-1" name="__codelineno-9-1" href="#__codelineno-9-1"></a><span class="n">agent_config</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-9-2"><a id="__codelineno-9-2" name="__codelineno-9-2" href="#__codelineno-9-2"></a> <span class="c1"># Other config options...</span>
</span><span id="__span-9-3"><a id="__codelineno-9-3" name="__codelineno-9-3" href="#__codelineno-9-3"></a> <span class="s2">&quot;tools_dictionary&quot;</span><span class="p">:</span> <span class="p">[</span>
</span><span id="__span-9-4"><a id="__codelineno-9-4" name="__codelineno-9-4" href="#__codelineno-9-4"></a> <span class="p">{</span>
</span><span id="__span-9-5"><a id="__codelineno-9-5" name="__codelineno-9-5" href="#__codelineno-9-5"></a> <span class="s2">&quot;name&quot;</span><span class="p">:</span> <span class="s2">&quot;web_search&quot;</span><span class="p">,</span>
</span><span id="__span-9-6"><a id="__codelineno-9-6" name="__codelineno-9-6" href="#__codelineno-9-6"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;Search the web for information&quot;</span><span class="p">,</span>
</span><span id="__span-9-7"><a id="__codelineno-9-7" name="__codelineno-9-7" href="#__codelineno-9-7"></a> <span class="s2">&quot;parameters&quot;</span><span class="p">:</span> <span class="p">{</span>
</span><span id="__span-9-8"><a id="__codelineno-9-8" name="__codelineno-9-8" href="#__codelineno-9-8"></a> <span class="s2">&quot;query&quot;</span><span class="p">:</span> <span class="s2">&quot;string&quot;</span>
</span><span id="__span-9-9"><a id="__codelineno-9-9" name="__codelineno-9-9" href="#__codelineno-9-9"></a> <span class="p">}</span>
</span><span id="__span-9-10"><a id="__codelineno-9-10" name="__codelineno-9-10" href="#__codelineno-9-10"></a> <span class="p">},</span>
</span><span id="__span-9-11"><a id="__codelineno-9-11" name="__codelineno-9-11" href="#__codelineno-9-11"></a> <span class="p">{</span>
</span><span id="__span-9-12"><a id="__codelineno-9-12" name="__codelineno-9-12" href="#__codelineno-9-12"></a> <span class="s2">&quot;name&quot;</span><span class="p">:</span> <span class="s2">&quot;calculator&quot;</span><span class="p">,</span>
</span><span id="__span-9-13"><a id="__codelineno-9-13" name="__codelineno-9-13" href="#__codelineno-9-13"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;Perform mathematical calculations&quot;</span><span class="p">,</span>
</span><span id="__span-9-14"><a id="__codelineno-9-14" name="__codelineno-9-14" href="#__codelineno-9-14"></a> <span class="s2">&quot;parameters&quot;</span><span class="p">:</span> <span class="p">{</span>
</span><span id="__span-9-15"><a id="__codelineno-9-15" name="__codelineno-9-15" href="#__codelineno-9-15"></a> <span class="s2">&quot;expression&quot;</span><span class="p">:</span> <span class="s2">&quot;string&quot;</span>
</span><span id="__span-9-16"><a id="__codelineno-9-16" name="__codelineno-9-16" href="#__codelineno-9-16"></a> <span class="p">}</span>
</span><span id="__span-9-17"><a id="__codelineno-9-17" name="__codelineno-9-17" href="#__codelineno-9-17"></a> <span class="p">}</span>
</span><span id="__span-9-18"><a id="__codelineno-9-18" name="__codelineno-9-18" href="#__codelineno-9-18"></a> <span class="p">]</span>
</span><span id="__span-9-19"><a id="__codelineno-9-19" name="__codelineno-9-19" href="#__codelineno-9-19"></a><span class="p">}</span>
</span></code></pre></div>
<h2 id="best-practices">Best Practices<a class="headerlink" href="#best-practices" title="Permanent link">&para;</a></h2>
<div class="admonition tip">
<p class="admonition-title">API Key Security</p>
<p>Store API keys in environment variables or secure vaults, never in code repositories.
<div class="language-python highlight"><pre><span></span><code><span id="__span-10-1"><a id="__codelineno-10-1" name="__codelineno-10-1" href="#__codelineno-10-1"></a><span class="c1"># DON&#39;T do this</span>
</span><span id="__span-10-2"><a id="__codelineno-10-2" name="__codelineno-10-2" href="#__codelineno-10-2"></a><span class="n">api_key</span> <span class="o">=</span> <span class="s2">&quot;sk-123456789abcdef&quot;</span>
</span><span id="__span-10-3"><a id="__codelineno-10-3" name="__codelineno-10-3" href="#__codelineno-10-3"></a>
</span><span id="__span-10-4"><a id="__codelineno-10-4" name="__codelineno-10-4" href="#__codelineno-10-4"></a><span class="c1"># DO this instead</span>
</span><span id="__span-10-5"><a id="__codelineno-10-5" name="__codelineno-10-5" href="#__codelineno-10-5"></a><span class="kn">import</span><span class="w"> </span><span class="nn">os</span>
</span><span id="__span-10-6"><a id="__codelineno-10-6" name="__codelineno-10-6" href="#__codelineno-10-6"></a><span class="kn">from</span><span class="w"> </span><span class="nn">dotenv</span><span class="w"> </span><span class="kn">import</span> <span class="n">load_dotenv</span>
</span><span id="__span-10-7"><a id="__codelineno-10-7" name="__codelineno-10-7" href="#__codelineno-10-7"></a><span class="n">load_dotenv</span><span class="p">()</span>
</span><span id="__span-10-8"><a id="__codelineno-10-8" name="__codelineno-10-8" href="#__codelineno-10-8"></a><span class="n">api_key</span> <span class="o">=</span> <span class="n">os</span><span class="o">.</span><span class="n">getenv</span><span class="p">(</span><span class="s2">&quot;SWARMS_API_KEY&quot;</span><span class="p">)</span>
</span></code></pre></div></p>
</div>
<div class="admonition info">
<p class="admonition-title">Agent Naming Conventions</p>
<p>Use a consistent naming pattern for your agents to make your code more maintainable.
<div class="language-python highlight"><pre><span></span><code><span id="__span-11-1"><a id="__codelineno-11-1" name="__codelineno-11-1" href="#__codelineno-11-1"></a><span class="c1"># Good naming convention</span>
</span><span id="__span-11-2"><a id="__codelineno-11-2" name="__codelineno-11-2" href="#__codelineno-11-2"></a><span class="n">agent_configs</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-11-3"><a id="__codelineno-11-3" name="__codelineno-11-3" href="#__codelineno-11-3"></a> <span class="s2">&quot;market_analyst&quot;</span><span class="p">:</span> <span class="p">{</span><span class="o">...</span><span class="p">},</span>
</span><span id="__span-11-4"><a id="__codelineno-11-4" name="__codelineno-11-4" href="#__codelineno-11-4"></a> <span class="s2">&quot;research_specialist&quot;</span><span class="p">:</span> <span class="p">{</span><span class="o">...</span><span class="p">},</span>
</span><span id="__span-11-5"><a id="__codelineno-11-5" name="__codelineno-11-5" href="#__codelineno-11-5"></a> <span class="s2">&quot;code_reviewer&quot;</span><span class="p">:</span> <span class="p">{</span><span class="o">...</span><span class="p">}</span>
</span><span id="__span-11-6"><a id="__codelineno-11-6" name="__codelineno-11-6" href="#__codelineno-11-6"></a><span class="p">}</span>
</span></code></pre></div></p>
</div>
<div class="admonition success">
<p class="admonition-title">Crafting Effective System Prompts</p>
<p>A well-crafted system prompt acts as your agent's personality and instruction set.</p>
<div class="tabbed-set tabbed-alternate" data-tabs="1:2"><input checked="checked" id="best-practices-basic-prompt" name="__tabbed_1" type="radio" /><input id="best-practices-enhanced-prompt" name="__tabbed_1" type="radio" /><div class="tabbed-labels"><label for="best-practices-basic-prompt">Basic Prompt</label><label for="best-practices-enhanced-prompt">Enhanced Prompt</label></div>
<div class="tabbed-content">
<div class="tabbed-block">
<div class="language-text highlight"><pre><span></span><code><span id="__span-12-1"><a id="__codelineno-12-1" name="__codelineno-12-1" href="#__codelineno-12-1"></a>You are a research analyst. Analyze the data and provide insights.
</span></code></pre></div>
</div>
<div class="tabbed-block">
<div class="language-text highlight"><pre><span></span><code><span id="__span-13-1"><a id="__codelineno-13-1" name="__codelineno-13-1" href="#__codelineno-13-1"></a>You are a Research Analyst with 15+ years of experience in biotech market analysis.
</span><span id="__span-13-2"><a id="__codelineno-13-2" name="__codelineno-13-2" href="#__codelineno-13-2"></a>
</span><span id="__span-13-3"><a id="__codelineno-13-3" name="__codelineno-13-3" href="#__codelineno-13-3"></a>Your task is to:
</span><span id="__span-13-4"><a id="__codelineno-13-4" name="__codelineno-13-4" href="#__codelineno-13-4"></a>1. Analyze the provided market data methodically
</span><span id="__span-13-5"><a id="__codelineno-13-5" name="__codelineno-13-5" href="#__codelineno-13-5"></a>2. Identify key trends and emerging patterns
</span><span id="__span-13-6"><a id="__codelineno-13-6" name="__codelineno-13-6" href="#__codelineno-13-6"></a>3. Highlight potential investment opportunities
</span><span id="__span-13-7"><a id="__codelineno-13-7" name="__codelineno-13-7" href="#__codelineno-13-7"></a>4. Assess risks and regulatory considerations
</span><span id="__span-13-8"><a id="__codelineno-13-8" name="__codelineno-13-8" href="#__codelineno-13-8"></a>5. Provide actionable recommendations supported by the data
</span><span id="__span-13-9"><a id="__codelineno-13-9" name="__codelineno-13-9" href="#__codelineno-13-9"></a>
</span><span id="__span-13-10"><a id="__codelineno-13-10" name="__codelineno-13-10" href="#__codelineno-13-10"></a>Format your response as a professional report with clear sections,
</span><span id="__span-13-11"><a id="__codelineno-13-11" name="__codelineno-13-11" href="#__codelineno-13-11"></a>focusing on data-driven insights rather than generalities.
</span></code></pre></div>
</div>
</div>
</div>
</div>
<div class="admonition warning">
<p class="admonition-title">Token Management</p>
<p>Manage your token usage carefully to control costs.</p>
<ul>
<li>Higher token limits provide more complete responses but increase costs</li>
<li>Consider using different models based on task complexity</li>
<li>For gpt-4o models, typical settings:<ul>
<li>Simple tasks: 2048 tokens (lower cost)</li>
<li>Medium complexity: 4096 tokens (balanced)</li>
<li>Complex analysis: 8192+ tokens (higher cost, more detail)</li>
</ul>
</li>
</ul>
</div>
<div class="admonition danger">
<p class="admonition-title">Error Handling</p>
<p>Implement comprehensive error handling to make your application resilient.</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-14-1"><a id="__codelineno-14-1" name="__codelineno-14-1" href="#__codelineno-14-1"></a><span class="k">try</span><span class="p">:</span>
</span><span id="__span-14-2"><a id="__codelineno-14-2" name="__codelineno-14-2" href="#__codelineno-14-2"></a> <span class="n">response</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">post</span><span class="p">(</span>
</span><span id="__span-14-3"><a id="__codelineno-14-3" name="__codelineno-14-3" href="#__codelineno-14-3"></a> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">BASE_URL</span><span class="si">}</span><span class="s2">/v1/agent/completions&quot;</span><span class="p">,</span>
</span><span id="__span-14-4"><a id="__codelineno-14-4" name="__codelineno-14-4" href="#__codelineno-14-4"></a> <span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">,</span>
</span><span id="__span-14-5"><a id="__codelineno-14-5" name="__codelineno-14-5" href="#__codelineno-14-5"></a> <span class="n">json</span><span class="o">=</span><span class="n">payload</span><span class="p">,</span>
</span><span id="__span-14-6"><a id="__codelineno-14-6" name="__codelineno-14-6" href="#__codelineno-14-6"></a> <span class="n">timeout</span><span class="o">=</span><span class="mi">30</span> <span class="c1"># Add timeout to prevent hanging requests</span>
</span><span id="__span-14-7"><a id="__codelineno-14-7" name="__codelineno-14-7" href="#__codelineno-14-7"></a> <span class="p">)</span>
</span><span id="__span-14-8"><a id="__codelineno-14-8" name="__codelineno-14-8" href="#__codelineno-14-8"></a> <span class="n">response</span><span class="o">.</span><span class="n">raise_for_status</span><span class="p">()</span>
</span><span id="__span-14-9"><a id="__codelineno-14-9" name="__codelineno-14-9" href="#__codelineno-14-9"></a> <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">json</span><span class="p">()</span>
</span><span id="__span-14-10"><a id="__codelineno-14-10" name="__codelineno-14-10" href="#__codelineno-14-10"></a><span class="k">except</span> <span class="n">requests</span><span class="o">.</span><span class="n">exceptions</span><span class="o">.</span><span class="n">HTTPError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-14-11"><a id="__codelineno-14-11" name="__codelineno-14-11" href="#__codelineno-14-11"></a> <span class="k">if</span> <span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">status_code</span> <span class="o">==</span> <span class="mi">429</span><span class="p">:</span>
</span><span id="__span-14-12"><a id="__codelineno-14-12" name="__codelineno-14-12" href="#__codelineno-14-12"></a> <span class="c1"># Implement exponential backoff for rate limiting</span>
</span><span id="__span-14-13"><a id="__codelineno-14-13" name="__codelineno-14-13" href="#__codelineno-14-13"></a> <span class="n">retry_after</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">headers</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;Retry-After&#39;</span><span class="p">,</span> <span class="mi">5</span><span class="p">))</span>
</span><span id="__span-14-14"><a id="__codelineno-14-14" name="__codelineno-14-14" href="#__codelineno-14-14"></a> <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="n">retry_after</span><span class="p">)</span>
</span><span id="__span-14-15"><a id="__codelineno-14-15" name="__codelineno-14-15" href="#__codelineno-14-15"></a> <span class="k">return</span> <span class="n">run_agent</span><span class="p">(</span><span class="n">payload</span><span class="p">)</span> <span class="c1"># Retry the request</span>
</span><span id="__span-14-16"><a id="__codelineno-14-16" name="__codelineno-14-16" href="#__codelineno-14-16"></a> <span class="k">elif</span> <span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">status_code</span> <span class="o">==</span> <span class="mi">401</span><span class="p">:</span>
</span><span id="__span-14-17"><a id="__codelineno-14-17" name="__codelineno-14-17" href="#__codelineno-14-17"></a> <span class="n">logger</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="s2">&quot;Authentication failed. Check your API key.&quot;</span><span class="p">)</span>
</span><span id="__span-14-18"><a id="__codelineno-14-18" name="__codelineno-14-18" href="#__codelineno-14-18"></a> <span class="k">else</span><span class="p">:</span>
</span><span id="__span-14-19"><a id="__codelineno-14-19" name="__codelineno-14-19" href="#__codelineno-14-19"></a> <span class="n">logger</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;HTTP Error: </span><span class="si">{</span><span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">status_code</span><span class="si">}</span><span class="s2"> - </span><span class="si">{</span><span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">text</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
</span><span id="__span-14-20"><a id="__codelineno-14-20" name="__codelineno-14-20" href="#__codelineno-14-20"></a> <span class="k">return</span> <span class="p">{</span><span class="s2">&quot;error&quot;</span><span class="p">:</span> <span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">text</span><span class="p">}</span>
</span><span id="__span-14-21"><a id="__codelineno-14-21" name="__codelineno-14-21" href="#__codelineno-14-21"></a><span class="k">except</span> <span class="n">requests</span><span class="o">.</span><span class="n">exceptions</span><span class="o">.</span><span class="n">Timeout</span><span class="p">:</span>
</span><span id="__span-14-22"><a id="__codelineno-14-22" name="__codelineno-14-22" href="#__codelineno-14-22"></a> <span class="n">logger</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="s2">&quot;Request timed out. The server might be busy.&quot;</span><span class="p">)</span>
</span><span id="__span-14-23"><a id="__codelineno-14-23" name="__codelineno-14-23" href="#__codelineno-14-23"></a> <span class="k">return</span> <span class="p">{</span><span class="s2">&quot;error&quot;</span><span class="p">:</span> <span class="s2">&quot;Request timed out&quot;</span><span class="p">}</span>
</span><span id="__span-14-24"><a id="__codelineno-14-24" name="__codelineno-14-24" href="#__codelineno-14-24"></a><span class="k">except</span> <span class="n">requests</span><span class="o">.</span><span class="n">exceptions</span><span class="o">.</span><span class="n">RequestException</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-14-25"><a id="__codelineno-14-25" name="__codelineno-14-25" href="#__codelineno-14-25"></a> <span class="n">logger</span><span class="o">.</span><span class="n">error</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Request Error: </span><span class="si">{</span><span class="n">e</span><span class="si">}</span><span class="s2">&quot;</span><span class="p">)</span>
</span><span id="__span-14-26"><a id="__codelineno-14-26" name="__codelineno-14-26" href="#__codelineno-14-26"></a> <span class="k">return</span> <span class="p">{</span><span class="s2">&quot;error&quot;</span><span class="p">:</span> <span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">)}</span>
</span></code></pre></div>
</div>
<div class="admonition example">
<p class="admonition-title">Implementing Caching</p>
<p>Cache identical requests to improve performance and reduce costs.</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-15-1"><a id="__codelineno-15-1" name="__codelineno-15-1" href="#__codelineno-15-1"></a><span class="kn">import</span><span class="w"> </span><span class="nn">hashlib</span>
</span><span id="__span-15-2"><a id="__codelineno-15-2" name="__codelineno-15-2" href="#__codelineno-15-2"></a><span class="kn">import</span><span class="w"> </span><span class="nn">json</span>
</span><span id="__span-15-3"><a id="__codelineno-15-3" name="__codelineno-15-3" href="#__codelineno-15-3"></a><span class="kn">from</span><span class="w"> </span><span class="nn">functools</span><span class="w"> </span><span class="kn">import</span> <span class="n">lru_cache</span>
</span><span id="__span-15-4"><a id="__codelineno-15-4" name="__codelineno-15-4" href="#__codelineno-15-4"></a>
</span><span id="__span-15-5"><a id="__codelineno-15-5" name="__codelineno-15-5" href="#__codelineno-15-5"></a><span class="k">def</span><span class="w"> </span><span class="nf">generate_cache_key</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">):</span>
</span><span id="__span-15-6"><a id="__codelineno-15-6" name="__codelineno-15-6" href="#__codelineno-15-6"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Generate a unique cache key for an agent request.&quot;&quot;&quot;</span>
</span><span id="__span-15-7"><a id="__codelineno-15-7" name="__codelineno-15-7" href="#__codelineno-15-7"></a> <span class="n">cache_data</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">({</span><span class="s2">&quot;agent_config&quot;</span><span class="p">:</span> <span class="n">agent_config</span><span class="p">,</span> <span class="s2">&quot;task&quot;</span><span class="p">:</span> <span class="n">task</span><span class="p">},</span> <span class="n">sort_keys</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
</span><span id="__span-15-8"><a id="__codelineno-15-8" name="__codelineno-15-8" href="#__codelineno-15-8"></a> <span class="k">return</span> <span class="n">hashlib</span><span class="o">.</span><span class="n">md5</span><span class="p">(</span><span class="n">cache_data</span><span class="o">.</span><span class="n">encode</span><span class="p">())</span><span class="o">.</span><span class="n">hexdigest</span><span class="p">()</span>
</span><span id="__span-15-9"><a id="__codelineno-15-9" name="__codelineno-15-9" href="#__codelineno-15-9"></a>
</span><span id="__span-15-10"><a id="__codelineno-15-10" name="__codelineno-15-10" href="#__codelineno-15-10"></a><span class="nd">@lru_cache</span><span class="p">(</span><span class="n">maxsize</span><span class="o">=</span><span class="mi">100</span><span class="p">)</span>
</span><span id="__span-15-11"><a id="__codelineno-15-11" name="__codelineno-15-11" href="#__codelineno-15-11"></a><span class="k">def</span><span class="w"> </span><span class="nf">cached_agent_run</span><span class="p">(</span><span class="n">cache_key</span><span class="p">,</span> <span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">):</span>
</span><span id="__span-15-12"><a id="__codelineno-15-12" name="__codelineno-15-12" href="#__codelineno-15-12"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Run agent with caching based on config and task.&quot;&quot;&quot;</span>
</span><span id="__span-15-13"><a id="__codelineno-15-13" name="__codelineno-15-13" href="#__codelineno-15-13"></a> <span class="c1"># Convert agent_config back to a dictionary if it&#39;s a string representation</span>
</span><span id="__span-15-14"><a id="__codelineno-15-14" name="__codelineno-15-14" href="#__codelineno-15-14"></a> <span class="k">if</span> <span class="nb">isinstance</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="nb">str</span><span class="p">):</span>
</span><span id="__span-15-15"><a id="__codelineno-15-15" name="__codelineno-15-15" href="#__codelineno-15-15"></a> <span class="n">agent_config</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">loads</span><span class="p">(</span><span class="n">agent_config</span><span class="p">)</span>
</span><span id="__span-15-16"><a id="__codelineno-15-16" name="__codelineno-15-16" href="#__codelineno-15-16"></a>
</span><span id="__span-15-17"><a id="__codelineno-15-17" name="__codelineno-15-17" href="#__codelineno-15-17"></a> <span class="n">payload</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-15-18"><a id="__codelineno-15-18" name="__codelineno-15-18" href="#__codelineno-15-18"></a> <span class="s2">&quot;agent_config&quot;</span><span class="p">:</span> <span class="n">agent_config</span><span class="p">,</span>
</span><span id="__span-15-19"><a id="__codelineno-15-19" name="__codelineno-15-19" href="#__codelineno-15-19"></a> <span class="s2">&quot;task&quot;</span><span class="p">:</span> <span class="n">task</span>
</span><span id="__span-15-20"><a id="__codelineno-15-20" name="__codelineno-15-20" href="#__codelineno-15-20"></a> <span class="p">}</span>
</span><span id="__span-15-21"><a id="__codelineno-15-21" name="__codelineno-15-21" href="#__codelineno-15-21"></a>
</span><span id="__span-15-22"><a id="__codelineno-15-22" name="__codelineno-15-22" href="#__codelineno-15-22"></a> <span class="k">try</span><span class="p">:</span>
</span><span id="__span-15-23"><a id="__codelineno-15-23" name="__codelineno-15-23" href="#__codelineno-15-23"></a> <span class="n">response</span> <span class="o">=</span> <span class="n">requests</span><span class="o">.</span><span class="n">post</span><span class="p">(</span>
</span><span id="__span-15-24"><a id="__codelineno-15-24" name="__codelineno-15-24" href="#__codelineno-15-24"></a> <span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">BASE_URL</span><span class="si">}</span><span class="s2">/v1/agent/completions&quot;</span><span class="p">,</span>
</span><span id="__span-15-25"><a id="__codelineno-15-25" name="__codelineno-15-25" href="#__codelineno-15-25"></a> <span class="n">headers</span><span class="o">=</span><span class="n">headers</span><span class="p">,</span>
</span><span id="__span-15-26"><a id="__codelineno-15-26" name="__codelineno-15-26" href="#__codelineno-15-26"></a> <span class="n">json</span><span class="o">=</span><span class="n">payload</span>
</span><span id="__span-15-27"><a id="__codelineno-15-27" name="__codelineno-15-27" href="#__codelineno-15-27"></a> <span class="p">)</span>
</span><span id="__span-15-28"><a id="__codelineno-15-28" name="__codelineno-15-28" href="#__codelineno-15-28"></a> <span class="n">response</span><span class="o">.</span><span class="n">raise_for_status</span><span class="p">()</span>
</span><span id="__span-15-29"><a id="__codelineno-15-29" name="__codelineno-15-29" href="#__codelineno-15-29"></a> <span class="k">return</span> <span class="n">response</span><span class="o">.</span><span class="n">json</span><span class="p">()</span>
</span><span id="__span-15-30"><a id="__codelineno-15-30" name="__codelineno-15-30" href="#__codelineno-15-30"></a> <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-15-31"><a id="__codelineno-15-31" name="__codelineno-15-31" href="#__codelineno-15-31"></a> <span class="k">return</span> <span class="p">{</span><span class="s2">&quot;error&quot;</span><span class="p">:</span> <span class="nb">str</span><span class="p">(</span><span class="n">e</span><span class="p">)}</span>
</span><span id="__span-15-32"><a id="__codelineno-15-32" name="__codelineno-15-32" href="#__codelineno-15-32"></a>
</span><span id="__span-15-33"><a id="__codelineno-15-33" name="__codelineno-15-33" href="#__codelineno-15-33"></a><span class="k">def</span><span class="w"> </span><span class="nf">run_agent_with_cache</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">):</span>
</span><span id="__span-15-34"><a id="__codelineno-15-34" name="__codelineno-15-34" href="#__codelineno-15-34"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Wrapper function to run agent with caching.&quot;&quot;&quot;</span>
</span><span id="__span-15-35"><a id="__codelineno-15-35" name="__codelineno-15-35" href="#__codelineno-15-35"></a> <span class="c1"># Generate a cache key</span>
</span><span id="__span-15-36"><a id="__codelineno-15-36" name="__codelineno-15-36" href="#__codelineno-15-36"></a> <span class="n">cache_key</span> <span class="o">=</span> <span class="n">generate_cache_key</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">)</span>
</span><span id="__span-15-37"><a id="__codelineno-15-37" name="__codelineno-15-37" href="#__codelineno-15-37"></a>
</span><span id="__span-15-38"><a id="__codelineno-15-38" name="__codelineno-15-38" href="#__codelineno-15-38"></a> <span class="c1"># Convert agent_config to a hashable type for lru_cache</span>
</span><span id="__span-15-39"><a id="__codelineno-15-39" name="__codelineno-15-39" href="#__codelineno-15-39"></a> <span class="n">hashable_config</span> <span class="o">=</span> <span class="n">json</span><span class="o">.</span><span class="n">dumps</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">sort_keys</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
</span><span id="__span-15-40"><a id="__codelineno-15-40" name="__codelineno-15-40" href="#__codelineno-15-40"></a>
</span><span id="__span-15-41"><a id="__codelineno-15-41" name="__codelineno-15-41" href="#__codelineno-15-41"></a> <span class="c1"># Call the cached function</span>
</span><span id="__span-15-42"><a id="__codelineno-15-42" name="__codelineno-15-42" href="#__codelineno-15-42"></a> <span class="k">return</span> <span class="n">cached_agent_run</span><span class="p">(</span><span class="n">cache_key</span><span class="p">,</span> <span class="n">hashable_config</span><span class="p">,</span> <span class="n">task</span><span class="p">)</span>
</span></code></pre></div>
</div>
<div class="admonition abstract">
<p class="admonition-title">Usage &amp; Cost Monitoring</p>
<p>Set up a monitoring system to track your API usage and costs.</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-16-1"><a id="__codelineno-16-1" name="__codelineno-16-1" href="#__codelineno-16-1"></a><span class="k">def</span><span class="w"> </span><span class="nf">log_api_usage</span><span class="p">(</span><span class="n">api_call_type</span><span class="p">,</span> <span class="n">tokens_used</span><span class="p">,</span> <span class="n">cost_estimate</span><span class="p">):</span>
</span><span id="__span-16-2"><a id="__codelineno-16-2" name="__codelineno-16-2" href="#__codelineno-16-2"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Log API usage for monitoring.&quot;&quot;&quot;</span>
</span><span id="__span-16-3"><a id="__codelineno-16-3" name="__codelineno-16-3" href="#__codelineno-16-3"></a> <span class="k">with</span> <span class="nb">open</span><span class="p">(</span><span class="s2">&quot;api_usage_log.csv&quot;</span><span class="p">,</span> <span class="s2">&quot;a&quot;</span><span class="p">)</span> <span class="k">as</span> <span class="n">f</span><span class="p">:</span>
</span><span id="__span-16-4"><a id="__codelineno-16-4" name="__codelineno-16-4" href="#__codelineno-16-4"></a> <span class="n">timestamp</span> <span class="o">=</span> <span class="n">datetime</span><span class="o">.</span><span class="n">now</span><span class="p">()</span><span class="o">.</span><span class="n">isoformat</span><span class="p">()</span>
</span><span id="__span-16-5"><a id="__codelineno-16-5" name="__codelineno-16-5" href="#__codelineno-16-5"></a> <span class="n">f</span><span class="o">.</span><span class="n">write</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;</span><span class="si">{</span><span class="n">timestamp</span><span class="si">}</span><span class="s2">,</span><span class="si">{</span><span class="n">api_call_type</span><span class="si">}</span><span class="s2">,</span><span class="si">{</span><span class="n">tokens_used</span><span class="si">}</span><span class="s2">,</span><span class="si">{</span><span class="n">cost_estimate</span><span class="si">}</span><span class="se">\n</span><span class="s2">&quot;</span><span class="p">)</span>
</span><span id="__span-16-6"><a id="__codelineno-16-6" name="__codelineno-16-6" href="#__codelineno-16-6"></a>
</span><span id="__span-16-7"><a id="__codelineno-16-7" name="__codelineno-16-7" href="#__codelineno-16-7"></a><span class="k">def</span><span class="w"> </span><span class="nf">estimate_cost</span><span class="p">(</span><span class="n">tokens</span><span class="p">):</span>
</span><span id="__span-16-8"><a id="__codelineno-16-8" name="__codelineno-16-8" href="#__codelineno-16-8"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Estimate cost based on token usage.&quot;&quot;&quot;</span>
</span><span id="__span-16-9"><a id="__codelineno-16-9" name="__codelineno-16-9" href="#__codelineno-16-9"></a> <span class="c1"># Example pricing: $0.002 per 1K tokens (adjust according to current pricing)</span>
</span><span id="__span-16-10"><a id="__codelineno-16-10" name="__codelineno-16-10" href="#__codelineno-16-10"></a> <span class="k">return</span> <span class="p">(</span><span class="n">tokens</span> <span class="o">/</span> <span class="mi">1000</span><span class="p">)</span> <span class="o">*</span> <span class="mf">0.002</span>
</span><span id="__span-16-11"><a id="__codelineno-16-11" name="__codelineno-16-11" href="#__codelineno-16-11"></a>
</span><span id="__span-16-12"><a id="__codelineno-16-12" name="__codelineno-16-12" href="#__codelineno-16-12"></a><span class="k">def</span><span class="w"> </span><span class="nf">run_agent_with_logging</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">):</span>
</span><span id="__span-16-13"><a id="__codelineno-16-13" name="__codelineno-16-13" href="#__codelineno-16-13"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Run agent and log usage.&quot;&quot;&quot;</span>
</span><span id="__span-16-14"><a id="__codelineno-16-14" name="__codelineno-16-14" href="#__codelineno-16-14"></a> <span class="n">result</span> <span class="o">=</span> <span class="n">run_single_agent</span><span class="p">(</span><span class="n">agent_config</span><span class="p">,</span> <span class="n">task</span><span class="p">)</span>
</span><span id="__span-16-15"><a id="__codelineno-16-15" name="__codelineno-16-15" href="#__codelineno-16-15"></a>
</span><span id="__span-16-16"><a id="__codelineno-16-16" name="__codelineno-16-16" href="#__codelineno-16-16"></a> <span class="k">if</span> <span class="s2">&quot;usage&quot;</span> <span class="ow">in</span> <span class="n">result</span><span class="p">:</span>
</span><span id="__span-16-17"><a id="__codelineno-16-17" name="__codelineno-16-17" href="#__codelineno-16-17"></a> <span class="n">total_tokens</span> <span class="o">=</span> <span class="n">result</span><span class="p">[</span><span class="s2">&quot;usage&quot;</span><span class="p">][</span><span class="s2">&quot;total_tokens&quot;</span><span class="p">]</span>
</span><span id="__span-16-18"><a id="__codelineno-16-18" name="__codelineno-16-18" href="#__codelineno-16-18"></a> <span class="n">cost</span> <span class="o">=</span> <span class="n">estimate_cost</span><span class="p">(</span><span class="n">total_tokens</span><span class="p">)</span>
</span><span id="__span-16-19"><a id="__codelineno-16-19" name="__codelineno-16-19" href="#__codelineno-16-19"></a> <span class="n">log_api_usage</span><span class="p">(</span><span class="s2">&quot;single_agent&quot;</span><span class="p">,</span> <span class="n">total_tokens</span><span class="p">,</span> <span class="n">cost</span><span class="p">)</span>
</span><span id="__span-16-20"><a id="__codelineno-16-20" name="__codelineno-16-20" href="#__codelineno-16-20"></a>
</span><span id="__span-16-21"><a id="__codelineno-16-21" name="__codelineno-16-21" href="#__codelineno-16-21"></a> <span class="k">return</span> <span class="n">result</span>
</span></code></pre></div>
</div>
<h2 id="faq">FAQ<a class="headerlink" href="#faq" title="Permanent link">&para;</a></h2>
<details class="question">
<summary>What's the difference between Single Agent and Batch Agent APIs?</summary>
<p>The Single Agent API (<code>/v1/agent/completions</code>) runs one agent with one task, while the Batch Agent API (<code>/v1/agent/batch/completions</code>) allows running multiple agents with different configurations and tasks in parallel. Use Batch Agent when you need to process multiple independent tasks efficiently.</p>
</details>
<details class="question">
<summary>How do I choose the right model for my agent?</summary>
<p>Model selection depends on your task complexity, performance requirements, and budget:</p>
<table>
<thead>
<tr>
<th>Model</th>
<th>Best For</th>
<th>Characteristics</th>
</tr>
</thead>
<tbody>
<tr>
<td>gpt-4o</td>
<td>Complex analysis, creative tasks</td>
<td>Highest quality, most expensive</td>
</tr>
<tr>
<td>gpt-4o-mini</td>
<td>General purpose tasks</td>
<td>Good balance of quality and cost</td>
</tr>
<tr>
<td>openai/o3-mini</td>
<td>Simple, factual tasks</td>
<td>Fast, economical</td>
</tr>
</tbody>
</table>
<p>For exploratory work, start with gpt-4o-mini and adjust based on results.</p>
</details>
<details class="question">
<summary>What should I include in my system prompt?</summary>
<p>A good system prompt should include:</p>
<ol>
<li><strong>Role definition</strong>: Who the agent is and their expertise</li>
<li><strong>Task instructions</strong>: Specific, clear directions on what to do</li>
<li><strong>Output format</strong>: How results should be structured</li>
<li><strong>Constraints</strong>: Any limitations or requirements</li>
<li><strong>Examples</strong>: Sample inputs and outputs when helpful</li>
</ol>
<p>Keep prompts focused and avoid contradictory instructions.</p>
</details>
<details class="question">
<summary>How can I optimize costs when using the Agent API?</summary>
<p>Cost optimization strategies include:</p>
<ul>
<li>Use the appropriate model for your task complexity</li>
<li>Set reasonable token limits based on expected output length</li>
<li>Implement caching for repeated or similar requests</li>
<li>Batch related requests together</li>
<li>Use <code>max_loops: 1</code> unless you specifically need iterative refinement</li>
<li>Monitor usage patterns and adjust configurations accordingly</li>
</ul>
</details>
<details class="question">
<summary>What's the maximum number of agents I can run in a batch?</summary>
<p>While there's no hard limit specified, we recommend keeping batch sizes under 20 agents for optimal performance. For very large batches, consider splitting them into multiple calls or contacting support for guidance on handling high-volume processing.</p>
</details>
<details class="question">
<summary>How do I handle rate limiting?</summary>
<p>Implement exponential backoff in your error handling:</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-17-1"><a id="__codelineno-17-1" name="__codelineno-17-1" href="#__codelineno-17-1"></a><span class="kn">import</span><span class="w"> </span><span class="nn">time</span>
</span><span id="__span-17-2"><a id="__codelineno-17-2" name="__codelineno-17-2" href="#__codelineno-17-2"></a>
</span><span id="__span-17-3"><a id="__codelineno-17-3" name="__codelineno-17-3" href="#__codelineno-17-3"></a><span class="k">def</span><span class="w"> </span><span class="nf">run_with_backoff</span><span class="p">(</span><span class="n">func</span><span class="p">,</span> <span class="n">max_retries</span><span class="o">=</span><span class="mi">5</span><span class="p">,</span> <span class="n">initial_delay</span><span class="o">=</span><span class="mi">1</span><span class="p">):</span>
</span><span id="__span-17-4"><a id="__codelineno-17-4" name="__codelineno-17-4" href="#__codelineno-17-4"></a><span class="w"> </span><span class="sd">&quot;&quot;&quot;Run a function with exponential backoff retry logic.&quot;&quot;&quot;</span>
</span><span id="__span-17-5"><a id="__codelineno-17-5" name="__codelineno-17-5" href="#__codelineno-17-5"></a> <span class="n">retries</span> <span class="o">=</span> <span class="mi">0</span>
</span><span id="__span-17-6"><a id="__codelineno-17-6" name="__codelineno-17-6" href="#__codelineno-17-6"></a> <span class="n">delay</span> <span class="o">=</span> <span class="n">initial_delay</span>
</span><span id="__span-17-7"><a id="__codelineno-17-7" name="__codelineno-17-7" href="#__codelineno-17-7"></a>
</span><span id="__span-17-8"><a id="__codelineno-17-8" name="__codelineno-17-8" href="#__codelineno-17-8"></a> <span class="k">while</span> <span class="n">retries</span> <span class="o">&lt;</span> <span class="n">max_retries</span><span class="p">:</span>
</span><span id="__span-17-9"><a id="__codelineno-17-9" name="__codelineno-17-9" href="#__codelineno-17-9"></a> <span class="k">try</span><span class="p">:</span>
</span><span id="__span-17-10"><a id="__codelineno-17-10" name="__codelineno-17-10" href="#__codelineno-17-10"></a> <span class="k">return</span> <span class="n">func</span><span class="p">()</span>
</span><span id="__span-17-11"><a id="__codelineno-17-11" name="__codelineno-17-11" href="#__codelineno-17-11"></a> <span class="k">except</span> <span class="n">requests</span><span class="o">.</span><span class="n">exceptions</span><span class="o">.</span><span class="n">HTTPError</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-17-12"><a id="__codelineno-17-12" name="__codelineno-17-12" href="#__codelineno-17-12"></a> <span class="k">if</span> <span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">status_code</span> <span class="o">==</span> <span class="mi">429</span><span class="p">:</span> <span class="c1"># Too Many Requests</span>
</span><span id="__span-17-13"><a id="__codelineno-17-13" name="__codelineno-17-13" href="#__codelineno-17-13"></a> <span class="n">retry_after</span> <span class="o">=</span> <span class="nb">int</span><span class="p">(</span><span class="n">e</span><span class="o">.</span><span class="n">response</span><span class="o">.</span><span class="n">headers</span><span class="o">.</span><span class="n">get</span><span class="p">(</span><span class="s1">&#39;Retry-After&#39;</span><span class="p">,</span> <span class="n">delay</span><span class="p">))</span>
</span><span id="__span-17-14"><a id="__codelineno-17-14" name="__codelineno-17-14" href="#__codelineno-17-14"></a> <span class="nb">print</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Rate limited. Retrying after </span><span class="si">{</span><span class="n">retry_after</span><span class="si">}</span><span class="s2"> seconds...&quot;</span><span class="p">)</span>
</span><span id="__span-17-15"><a id="__codelineno-17-15" name="__codelineno-17-15" href="#__codelineno-17-15"></a> <span class="n">time</span><span class="o">.</span><span class="n">sleep</span><span class="p">(</span><span class="n">retry_after</span><span class="p">)</span>
</span><span id="__span-17-16"><a id="__codelineno-17-16" name="__codelineno-17-16" href="#__codelineno-17-16"></a> <span class="n">retries</span> <span class="o">+=</span> <span class="mi">1</span>
</span><span id="__span-17-17"><a id="__codelineno-17-17" name="__codelineno-17-17" href="#__codelineno-17-17"></a> <span class="n">delay</span> <span class="o">*=</span> <span class="mi">2</span> <span class="c1"># Exponential backoff</span>
</span><span id="__span-17-18"><a id="__codelineno-17-18" name="__codelineno-17-18" href="#__codelineno-17-18"></a> <span class="k">else</span><span class="p">:</span>
</span><span id="__span-17-19"><a id="__codelineno-17-19" name="__codelineno-17-19" href="#__codelineno-17-19"></a> <span class="k">raise</span>
</span><span id="__span-17-20"><a id="__codelineno-17-20" name="__codelineno-17-20" href="#__codelineno-17-20"></a> <span class="k">except</span> <span class="ne">Exception</span> <span class="k">as</span> <span class="n">e</span><span class="p">:</span>
</span><span id="__span-17-21"><a id="__codelineno-17-21" name="__codelineno-17-21" href="#__codelineno-17-21"></a> <span class="k">raise</span>
</span><span id="__span-17-22"><a id="__codelineno-17-22" name="__codelineno-17-22" href="#__codelineno-17-22"></a>
</span><span id="__span-17-23"><a id="__codelineno-17-23" name="__codelineno-17-23" href="#__codelineno-17-23"></a> <span class="k">raise</span> <span class="ne">Exception</span><span class="p">(</span><span class="sa">f</span><span class="s2">&quot;Failed after </span><span class="si">{</span><span class="n">max_retries</span><span class="si">}</span><span class="s2"> retries&quot;</span><span class="p">)</span>
</span></code></pre></div>
</details>
<details class="question">
<summary>Can I use tools with my agents?</summary>
<p>Yes, you can enable tools through the <code>tools_dictionary</code> parameter in your agent configuration. This allows agents to access external functionality like web searches, calculations, or custom tools.</p>
<div class="language-python highlight"><pre><span></span><code><span id="__span-18-1"><a id="__codelineno-18-1" name="__codelineno-18-1" href="#__codelineno-18-1"></a><span class="n">agent_config</span> <span class="o">=</span> <span class="p">{</span>
</span><span id="__span-18-2"><a id="__codelineno-18-2" name="__codelineno-18-2" href="#__codelineno-18-2"></a> <span class="c1"># Other configuration...</span>
</span><span id="__span-18-3"><a id="__codelineno-18-3" name="__codelineno-18-3" href="#__codelineno-18-3"></a> <span class="s2">&quot;tools_dictionary&quot;</span><span class="p">:</span> <span class="p">[</span>
</span><span id="__span-18-4"><a id="__codelineno-18-4" name="__codelineno-18-4" href="#__codelineno-18-4"></a> <span class="p">{</span>
</span><span id="__span-18-5"><a id="__codelineno-18-5" name="__codelineno-18-5" href="#__codelineno-18-5"></a> <span class="s2">&quot;name&quot;</span><span class="p">:</span> <span class="s2">&quot;web_search&quot;</span><span class="p">,</span>
</span><span id="__span-18-6"><a id="__codelineno-18-6" name="__codelineno-18-6" href="#__codelineno-18-6"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;Search the web for current information&quot;</span><span class="p">,</span>
</span><span id="__span-18-7"><a id="__codelineno-18-7" name="__codelineno-18-7" href="#__codelineno-18-7"></a> <span class="s2">&quot;parameters&quot;</span><span class="p">:</span> <span class="p">{</span>
</span><span id="__span-18-8"><a id="__codelineno-18-8" name="__codelineno-18-8" href="#__codelineno-18-8"></a> <span class="s2">&quot;query&quot;</span><span class="p">:</span> <span class="p">{</span>
</span><span id="__span-18-9"><a id="__codelineno-18-9" name="__codelineno-18-9" href="#__codelineno-18-9"></a> <span class="s2">&quot;type&quot;</span><span class="p">:</span> <span class="s2">&quot;string&quot;</span><span class="p">,</span>
</span><span id="__span-18-10"><a id="__codelineno-18-10" name="__codelineno-18-10" href="#__codelineno-18-10"></a> <span class="s2">&quot;description&quot;</span><span class="p">:</span> <span class="s2">&quot;The search query&quot;</span>
</span><span id="__span-18-11"><a id="__codelineno-18-11" name="__codelineno-18-11" href="#__codelineno-18-11"></a> <span class="p">}</span>
</span><span id="__span-18-12"><a id="__codelineno-18-12" name="__codelineno-18-12" href="#__codelineno-18-12"></a> <span class="p">}</span>
</span><span id="__span-18-13"><a id="__codelineno-18-13" name="__codelineno-18-13" href="#__codelineno-18-13"></a> <span class="p">}</span>
</span><span id="__span-18-14"><a id="__codelineno-18-14" name="__codelineno-18-14" href="#__codelineno-18-14"></a> <span class="p">]</span>
</span><span id="__span-18-15"><a id="__codelineno-18-15" name="__codelineno-18-15" href="#__codelineno-18-15"></a><span class="p">}</span>
</span></code></pre></div>
</details>
<details class="question">
<summary>How do I debug agent performance issues?</summary>
<p>Debugging steps for agent performance issues:</p>
<ol>
<li><strong>Check system prompts</strong>: Ensure they're clear and not overly restrictive</li>
<li><strong>Review model selection</strong>: Try a more capable model if output quality is poor</li>
<li><strong>Adjust token limits</strong>: Increase max_tokens if outputs are getting truncated</li>
<li><strong>Examine temperature</strong>: Lower for more deterministic outputs, higher for creativity</li>
<li><strong>Test with simpler tasks</strong>: Isolate whether the issue is with the task complexity</li>
<li><strong>Enable verbose logging</strong>: Add detailed logging to track request/response cycles</li>
<li><strong>Contact support</strong>: For persistent issues, reach out with example payloads and responses</li>
</ol>
</details>
<details class="question">
<summary>What's the pricing model for the Agent API?</summary>
<p>The Agent API uses a token-based pricing model:</p>
<ol>
<li><strong>Input tokens</strong>: Text sent to the API (task, system prompts)</li>
<li><strong>Output tokens</strong>: Text generated by the agent</li>
</ol>
<p>Pricing varies by model and is calculated per 1,000 tokens. Check the <a href="https://swarms.world/platform/pricing">pricing page</a> for current rates.</p>
<p>The API also offers a "flex" tier for lower-priority, cost-effective processing.</p>
</details>
<h2 id="further-resources">Further Resources<a class="headerlink" href="#further-resources" title="Permanent link">&para;</a></h2>
<p><a class="md-button" href="https://docs.swarms.world"><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 9h5.5L13 3.5zM6 2h8l6 6v12a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V4c0-1.11.89-2 2-2m9 16v-2H6v2zm3-4v-2H6v2z"/></svg></span> Swarms.ai Documentation</a>
<a class="md-button" href="https://swarms.world/platform"><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 2H3c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2m0 5H3V4h18z"/></svg></span> Swarms.ai Platform</a>
<a class="md-button" href="https://swarms.world/platform/api-keys"><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M7 14c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2m5.6-4c-.8-2.3-3-4-5.6-4-3.3 0-6 2.7-6 6s2.7 6 6 6c2.6 0 4.8-1.7 5.6-4H16v4h4v-4h3v-4z"/></svg></span> API Key Management</a>
<a class="md-button" href="https://discord.gg/jM3Z6M9uMq"><span class="twemoji"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 12V3a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v14l4-4h10a1 1 0 0 0 1-1m4-6h-2v9H6v2a1 1 0 0 0 1 1h11l4 4V7a1 1 0 0 0-1-1"/></svg></span> Swarms.ai Community</a></p>
<aside class="md-source-file">
<span class="md-source-file__fact">
<span class="md-icon" title="Last update">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 13.1c-.1 0-.3.1-.4.2l-1 1 2.1 2.1 1-1c.2-.2.2-.6 0-.8l-1.3-1.3c-.1-.1-.2-.2-.4-.2m-1.9 1.8-6.1 6V23h2.1l6.1-6.1zM12.5 7v5.2l4 2.4-1 1L11 13V7zM11 21.9c-5.1-.5-9-4.8-9-9.9C2 6.5 6.5 2 12 2c5.3 0 9.6 4.1 10 9.3-.3-.1-.6-.2-1-.2s-.7.1-1 .2C19.6 7.2 16.2 4 12 4c-4.4 0-8 3.6-8 8 0 4.1 3.1 7.5 7.1 7.9l-.1.2z"/></svg>
</span>
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date" title="July 26, 2025 08:54:38 UTC">July 26, 2025</span>
</span>
<span class="md-source-file__fact">
<span class="md-icon" title="Created">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14.47 15.08 11 13V7h1.5v5.25l3.08 1.83c-.41.28-.79.62-1.11 1m-1.39 4.84c-.36.05-.71.08-1.08.08-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8c0 .37-.03.72-.08 1.08.69.1 1.33.32 1.92.64.1-.56.16-1.13.16-1.72 0-5.5-4.5-10-10-10S2 6.5 2 12s4.47 10 10 10c.59 0 1.16-.06 1.72-.16-.32-.59-.54-1.23-.64-1.92M18 15v3h-3v2h3v3h2v-3h3v-2h-3v-3z"/></svg>
</span>
<span class="git-revision-date-localized-plugin git-revision-date-localized-plugin-date" title="July 26, 2025 08:54:38 UTC">July 26, 2025</span>
</span>
<span class="md-source-file__fact">
<span class="md-icon" title="Contributors">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 5.5A3.5 3.5 0 0 1 15.5 9a3.5 3.5 0 0 1-3.5 3.5A3.5 3.5 0 0 1 8.5 9 3.5 3.5 0 0 1 12 5.5M5 8c.56 0 1.08.15 1.53.42-.15 1.43.27 2.85 1.13 3.96C7.16 13.34 6.16 14 5 14a3 3 0 0 1-3-3 3 3 0 0 1 3-3m14 0a3 3 0 0 1 3 3 3 3 0 0 1-3 3c-1.16 0-2.16-.66-2.66-1.62a5.54 5.54 0 0 0 1.13-3.96c.45-.27.97-.42 1.53-.42M5.5 18.25c0-2.07 2.91-3.75 6.5-3.75s6.5 1.68 6.5 3.75V20h-13zM0 20v-1.5c0-1.39 1.89-2.56 4.45-2.9-.59.68-.95 1.62-.95 2.65V20zm24 0h-3.5v-1.75c0-1.03-.36-1.97-.95-2.65 2.56.34 4.45 1.51 4.45 2.9z"/></svg>
</span>
<nav>
</nav>
</span>
</aside>
</article>
</div>
<script>var target=document.getElementById(location.hash.slice(1));target&&target.name&&(target.checked=target.name.startsWith("__tabbed_"))</script>
</div>
<button type="button" class="md-top md-icon" data-md-component="top" hidden>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M13 20h-2V8l-5.5 5.5-1.42-1.42L12 4.16l7.92 7.92-1.42 1.42L13 8z"/></svg>
Back to top
</button>
</main>
<footer class="md-footer">
<!-- Custom Footer Links Section -->
<div class="md-footer-custom">
<div class="md-footer-custom__inner md-grid">
<div class="md-footer-links">
<div class="md-footer-links__section">
<h4 class="md-footer-links__title">Getting Started</h4>
<ul class="md-footer-links__list">
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/install/install/" class="md-footer-links__link">
Installation
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/quickstart/" class="md-footer-links__link">
Quickstart
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/install/env/" class="md-footer-links__link">
Environment Setup
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/examples/basic_agent/" class="md-footer-links__link">
Basic Agent Example
</a>
</li>
</ul>
</div>
<div class="md-footer-links__section">
<h4 class="md-footer-links__title">Core Capabilities</h4>
<ul class="md-footer-links__list">
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/structs/agent/" class="md-footer-links__link">
Agents
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/tools/tools_examples/" class="md-footer-links__link">
Tools and MCP
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/concept/swarm_architectures/" class="md-footer-links__link">
Multi-Agent Architectures
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/structs/sequential_workflow/" class="md-footer-links__link">
Sequential Workflow
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/structs/concurrentworkflow/" class="md-footer-links__link">
Concurrent Workflow
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/structs/hierarchical_swarm/" class="md-footer-links__link">
Hierarchical Swarm
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/structs/swarm_router/" class="md-footer-links__link">
Swarm Router
</a>
</li>
</ul>
</div>
<div class="md-footer-links__section">
<h4 class="md-footer-links__title">Templates & Applications</h4>
<ul class="md-footer-links__list">
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/examples/index/" class="md-footer-links__link">
Examples Overview
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/examples/cookbook_index/" class="md-footer-links__link">
Cookbook
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/examples/templates/" class="md-footer-links__link">
Templates
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/examples/paper_implementations/" class="md-footer-links__link">
Paper Implementations
</a>
</li>
</ul>
</div>
<div class="md-footer-links__section">
<h4 class="md-footer-links__title">Contributors</h4>
<ul class="md-footer-links__list">
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/contributors/main/" class="md-footer-links__link">
Contributing
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/framework/code_cleanliness/" class="md-footer-links__link">
Code Style Guide
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/contributors/docs/" class="md-footer-links__link">
Adding Documentation
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/corporate/bounty_program/" class="md-footer-links__link">
Bounty Program
</a>
</li>
<li class="md-footer-links__item">
<a href="https://docs.swarms.world/en/latest/swarms/support/" class="md-footer-links__link">
Support
</a>
</li>
</ul>
</div>
<div class="md-footer-links__section">
<h4 class="md-footer-links__title">Community</h4>
<ul class="md-footer-links__list">
<li class="md-footer-links__item">
<a href="https://twitter.com/swarms_corp" class="md-footer-links__link">
Twitter
</a>
</li>
<li class="md-footer-links__item">
<a href="https://discord.gg/jM3Z6M9uMq" class="md-footer-links__link">
Discord
</a>
</li>
<li class="md-footer-links__item">
<a href="https://www.youtube.com/channel/UC9yXyitkbU_WSy7bd_41SqQ" class="md-footer-links__link">
YouTube
</a>
</li>
<li class="md-footer-links__item">
<a href="https://www.linkedin.com/company/the-swarm-corporation" class="md-footer-links__link">
LinkedIn
</a>
</li>
<li class="md-footer-links__item">
<a href="https://medium.com/@kyeg" class="md-footer-links__link">
Blog
</a>
</li>
<li class="md-footer-links__item">
<a href="https://lu.ma/5p2jnc2v" class="md-footer-links__link">
Events
</a>
</li>
<li class="md-footer-links__item">
<a href="https://cal.com/swarms/swarms-onboarding-session" class="md-footer-links__link">
Onboarding Session
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
<!-- Company Information Section -->
<div class="md-footer-company">
<div class="md-footer-company__inner md-grid">
<div class="md-footer-company__content">
<div class="md-footer-company__brand">
<h3 class="md-footer-company__name">Swarms</h3>
<p class="md-footer-company__description">
Automating the world economy with multi-agent collaboration
</p>
</div>
<div class="md-footer-company__copyright">
<p>&copy; 2024 Swarms. All rights reserved.</p>
</div>
</div>
</div>
</div>
<!-- Original Material Footer -->
<footer class="md-footer">
<nav class="md-footer__inner md-grid" aria-label="Footer" >
<a href="../best_practices/" class="md-footer__link md-footer__link--prev" aria-label="Previous: Best Practices">
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M20 11v2H8l5.5 5.5-1.42 1.42L4.16 12l7.92-7.92L13.5 5.5 8 11z"/></svg>
</div>
<div class="md-footer__title">
<span class="md-footer__direction">
Previous
</span>
<div class="md-ellipsis">
Best Practices
</div>
</div>
</a>
<a href="../swarms_api_tools/" class="md-footer__link md-footer__link--next" aria-label="Next: Tools">
<div class="md-footer__title">
<span class="md-footer__direction">
Next
</span>
<div class="md-ellipsis">
Tools
</div>
</div>
<div class="md-footer__button md-icon">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M4 11v2h12l-5.5 5.5 1.42 1.42L19.84 12l-7.92-7.92L10.5 5.5 16 11z"/></svg>
</div>
</a>
</nav>
<div class="md-footer-meta md-typeset">
<div class="md-footer-meta__inner md-grid">
<div class="md-copyright">
<div class="md-copyright__highlight">
TGSC Corp 2024. All rights reserved.
</div>
Made with
<a href="https://squidfunk.github.io/mkdocs-material/" target="_blank" rel="noopener">
Material for MkDocs
</a>
</div>
<div class="md-social">
<a href="https://x.com/swarms_corp" target="_blank" rel="noopener" title="x.com" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253"/></svg>
</a>
<a href="https://github.com/kyegomez/swarms" target="_blank" rel="noopener" title="github.com" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 496 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6m-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3m44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9M244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8M97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1m-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7m32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1m-11.4-14.7c-1.6 1-1.6 3.6 0 5.9s4.3 3.3 5.6 2.3c1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2"/></svg>
</a>
<a href="https://discord.gg/jM3Z6M9uMq" target="_blank" rel="noopener" title="discord.gg" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M524.531 69.836a1.5 1.5 0 0 0-.764-.7A485 485 0 0 0 404.081 32.03a1.82 1.82 0 0 0-1.923.91 338 338 0 0 0-14.9 30.6 447.9 447.9 0 0 0-134.426 0 310 310 0 0 0-15.135-30.6 1.89 1.89 0 0 0-1.924-.91 483.7 483.7 0 0 0-119.688 37.107 1.7 1.7 0 0 0-.788.676C39.068 183.651 18.186 294.69 28.43 404.354a2.02 2.02 0 0 0 .765 1.375 487.7 487.7 0 0 0 146.825 74.189 1.9 1.9 0 0 0 2.063-.676A348 348 0 0 0 208.12 430.4a1.86 1.86 0 0 0-1.019-2.588 321 321 0 0 1-45.868-21.853 1.885 1.885 0 0 1-.185-3.126 251 251 0 0 0 9.109-7.137 1.82 1.82 0 0 1 1.9-.256c96.229 43.917 200.41 43.917 295.5 0a1.81 1.81 0 0 1 1.924.233 235 235 0 0 0 9.132 7.16 1.884 1.884 0 0 1-.162 3.126 301.4 301.4 0 0 1-45.89 21.83 1.875 1.875 0 0 0-1 2.611 391 391 0 0 0 30.014 48.815 1.86 1.86 0 0 0 2.063.7A486 486 0 0 0 610.7 405.729a1.88 1.88 0 0 0 .765-1.352c12.264-126.783-20.532-236.912-86.934-334.541M222.491 337.58c-28.972 0-52.844-26.587-52.844-59.239s23.409-59.241 52.844-59.241c29.665 0 53.306 26.82 52.843 59.239 0 32.654-23.41 59.241-52.843 59.241m195.38 0c-28.971 0-52.843-26.587-52.843-59.239s23.409-59.241 52.843-59.241c29.667 0 53.307 26.82 52.844 59.239 0 32.654-23.177 59.241-52.844 59.241"/></svg>
</a>
<a href="https://www.youtube.com/@kyegomez3242" target="_blank" rel="noopener" title="www.youtube.com" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305m-317.51 213.508V175.185l142.739 81.205z"/></svg>
</a>
<a href="https://www.linkedin.com/company/swarms-corp/" target="_blank" rel="noopener" title="www.linkedin.com" class="md-social__link">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2024 Fonticons, Inc.--><path d="M416 32H31.9C14.3 32 0 46.5 0 64.3v383.4C0 465.5 14.3 480 31.9 480H416c17.6 0 32-14.5 32-32.3V64.3c0-17.8-14.4-32.3-32-32.3M135.4 416H69V202.2h66.5V416zm-33.2-243c-21.3 0-38.5-17.3-38.5-38.5S80.9 96 102.2 96c21.2 0 38.5 17.3 38.5 38.5 0 21.3-17.2 38.5-38.5 38.5m282.1 243h-66.4V312c0-24.8-.5-56.7-34.5-56.7-34.6 0-39.9 27-39.9 54.9V416h-66.4V202.2h63.7v29.2h.9c8.9-16.8 30.6-34.5 62.9-34.5 67.2 0 79.7 44.3 79.7 101.9z"/></svg>
</a>
</div>
</div>
</div>
</footer>
</footer>
</div>
<div class="md-dialog" data-md-component="dialog">
<div class="md-dialog__inner md-typeset"></div>
</div>
<script id="__config" type="application/json">{"base": "../..", "features": ["content.code.copy", "content.code.annotate", "navigation.tabs", "navigation.sections", "navigation.top", "navigation.footer", "announce.dismiss"], "search": "../../assets/javascripts/workers/search.d50fe291.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": null}</script>
<script src="../../assets/javascripts/bundle.56ea9cef.min.js"></script>
</body>
</html>