Langchain/LangGraph
Examples of using the Agentuity JavaScript SDK with Langchain (LangGraph)
Simple LangGraph Agent with structured output
Below is an example of how you can take a LangGraph example, empower it with Agentuity's SDK, and deploy it to Agentuity, all in one go.
// Example borrowed from https://langchain-ai.github.io/langgraphjs/how-tos/react-return-structured-output/
import type { AgentRequest, AgentResponse, AgentContext } from "@agentuity/sdk";
import { ChatOpenAI } from "@langchain/openai";
import { createReactAgent } from "@langchain/langgraph/prebuilt";
import { tool } from "@langchain/core/tools";
import { z } from "zod";
// Tools for the agent
const weatherTool = tool(
async (input): Promise<string> => {
if (input.city === "nyc") {
return "It might be cloudy in nyc";
} else if (input.city === "sf") {
return "It's always sunny in sf";
} else {
throw new Error("Unknown city");
}
},
{
name: "get_weather",
description: "Use this to get weather information.",
schema: z.object({
city: z.enum(["nyc", "sf"]).describe("The city to get weather for"),
}),
}
);
const langGraphAgent = createReactAgent({
llm: new ChatOpenAI({ model: "gpt-4o", temperature: 0 }),
tools: [weatherTool],
responseFormat: z.object({
conditions: z.string().describe("Weather conditions"),
}),
});
export default async function AgentHandler(
req: AgentRequest,
resp: AgentResponse,
ctx: AgentContext,
) {
const response = await langGraphAgent.invoke({
messages: [
{
role: "user",
content: (await req.data.text()) ?? "What's the weather in NYC?",
},
],
})
return resp.json(response.structuredResponse);
}
Need Help?
Join our Community for assistance or just to hang with other humans building agents.
Send us an email at hi@agentuity.com if you'd like to get in touch.
Please Follow us on
If you haven't already, please Signup for your free account now and start building your first agent!