Inferable is an open source platform that helps you build reliable LLM-powered agentic automations at scale.
- Managed Agent Runtime - ReAct-like agent runtime powered by your own functions
- Durable Tool Calling - Recover from failures, load balance across compute, cache results
- Zero Network Config - No inbound connections or networking required
- Multiple Language Support - Native SDKs for TypeScript, Go, .NET and more
- Fully Open Source - MIT licensed and self-hostable
Automations are powered by your greenfield or brownfield code. Agent capabilities are defined by your own functions.
1. Define one or more functions that can be called by an automation
async function readWebPage({ url }: { url: string }) {
const browser = await chromium.launch();
const page = await browser.newPage();
await page.goto(url);
return await page.content();
}
2. Register the function with Inferable
inferable.default.register({
name: "readWebPage",
func: readWebPage,
input: z.object({
url: z.string(),
}),
});
3. Create a run that uses the function
inferable.run({
initialPrompt: `
Produce me a list of all the open source projects
at https://news.ycombinator.com/show, with their
github url, programming language and fork count.
`,
resultSchema: z.array(
z.object({
url: z.string().regex(/^https:\/\/github\.com\/.*$/),
language: z.string(),
forkCount: z.number(),
})
),
// attachedFunctions: ["readWebPage"], // Optional, defaults to all registered functions
});
Check out our quick start guide for a step-by-step guide on how to get started with creating your first automation.
Inferable is 100% open-source and self-hostable. See our self hosting guide for more details.
For comprehensive documentation on using Inferable AI, please visit our official documentation.
This repository contains the Inferable control-plane, as well as SDKs for various languages.
Core services:
/control-plane
- The core Inferable control plane service/app
- Web console/dashboard application/cli
- Command-line interface tool
SDKs:
/sdk-node
- Node.js/TypeScript SDK/sdk-go
- Go SDK/sdk-dotnet
- .NET SDK/sdk-react
- React SDK
Bootstrap templates:
/bootstrap-node
- Node.js bootstrap application template/bootstrap-go
- Go bootstrap application template/bootstrap-dotnet
- .NET bootstrap application template
We welcome contributions to all projects in the Inferable repository. Please read our contributing guidelines before submitting any pull requests.
All code in this repository is licensed under the MIT License.