Depends on your definition. I created a mapping application that allows one to navigate and style the map with natural language (more or less) as well as some prototype database interaction. When the user inputs a prompt, it gets sent to an "agent" whose sole purpose is to send a request to the API with a custom system prompt with few-shot examples stating something along the lines of "determine which agent should handle this request...only respond with one of [NavigationAgent, StyleAgent, ...]". When the response comes back, the prompt is then sent to the proper agent to handle the request. Each agent has function definitions for properly returning parameters to use to manipulate the map. I don't use any special libraries like langchain or anything, it's just regular API calls organized into classes that have specific system prompt behavior defined, function definitions, and some user prompt context ingestion when required (e.g. the current extent of the map).