initial commit: slides ready + upgraded
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
---
|
||||
layout: default
|
||||
---
|
||||
|
||||
# toolCallLimitMiddleware: Limitar Tools
|
||||
|
||||
<div class="mt-4 text-xs">
|
||||
|
||||
<v-click>
|
||||
|
||||
```typescript
|
||||
import { createAgent, toolCallLimitMiddleware } from "langchain";
|
||||
|
||||
const agent = createAgent({
|
||||
model: "mistral:mistral-large-latest",
|
||||
tools: [searchTool, databaseTool, scraperTool],
|
||||
middleware: [
|
||||
// Límite global: máx 20 por thread, 10 por run
|
||||
toolCallLimitMiddleware({ threadLimit: 20, runLimit: 10 }),
|
||||
|
||||
// Límite específico para búsquedas
|
||||
toolCallLimitMiddleware({
|
||||
toolName: "search",
|
||||
threadLimit: 5,
|
||||
runLimit: 3,
|
||||
}),
|
||||
|
||||
// Límite estricto para scraping (lanza error si excede)
|
||||
toolCallLimitMiddleware({
|
||||
toolName: "scrape_webpage",
|
||||
runLimit: 2,
|
||||
exitBehavior: "error", // "continue" | "error" | "end"
|
||||
}),
|
||||
],
|
||||
});
|
||||
```
|
||||
|
||||
</v-click>
|
||||
|
||||
<v-click>
|
||||
|
||||
<div class="mt-3 text-xs opacity-80">
|
||||
Requiere checkpointer para `threadLimit`. `runLimit` se resetea en cada invocación.
|
||||
</div>
|
||||
|
||||
</v-click>
|
||||
|
||||
</div>
|
||||
Reference in New Issue
Block a user