Agents
The main idea behind agents is to leverage the reasoning capabilities of LLMs, allowing the model to choose sequences of actions to take, rather than having these actions pre-coded.
With sufficient prompts and access to knowledge, LLM agents can operate semi-autonomously to assist humans across a variety of applications, from conversational chatbots to workflow automation and goal-based task execution.
Cognitive Solutions agents can be configured dynamically and quickly, with the ability to choose from a wide range of options to model different problems and tasks for them to solve.
Key Features of Agent's configuration
Interaction's flow
Flows allow the modeling of a wide range of complex interactions, enabling customization of all stages of user interaction as well as the internal process of generating responses or executing actions.
We use tools to perform more complex tasks. These tools can be fully configurable Python scripts.
Within flows, we can define:
- Prompt instructions for the task.
- Tools that do not require a model to execute, such as retrieving the current date.
- Tools that gather information from user interactions and perform actions using that information.
- Different stages of model access where tools are made available.
- Optimized generation configurations for each stage of interaction with LLMs, with the ability to use different providers and models within the same interaction.
- Use of frequently asked questions to speed up responses.
- Use of fixed responses based on the topic of the question to ensure controlled responses, especially recommended for sensitive topics.
- The number of recursive calls to LLMs allowed.
Generation
It is possible to select different generation configurations optimized for various tasks such as question answering, complex reasoning, image-based responses, goal-oriented guidance, and more.
The service provider, model, temperature, and other parameters can be configured. Different settings can be applied depending on the stage of the flow. For more details, see Generation settings.
Generation settings can also use a custom provider exposed through an OpenAI SDK compatible URL.
Content and information retrieval techniques
Information sources, search repositories, and retrieval techniques are fully configurable.
Content upload can be performed easily using standard parameters or can be fully customized to provide complete control over the uploaded information and its format. More information in the information section.
Evaluation
A component used during implementation to measure the agent’s performance at each stage of the process. Using LLM-based metrics, embedding-based metrics, and traditional NLP metrics, we generate reports for the client with the agent’s performance at a particular point in time. After the implementation stage, it is periodically run as regression tests.
When an agent is created, is necessary to define metrics, acceptance criterias and visualizations for reports. More information in the evaluation section.
Manage Agents
Agents are managed from Agents > Manage Agents in the portal. From there you can open, test, duplicate, disable or delete each agent.
Agent actions
Every agent offers its actions in the ⋮ menu, both in the agents list and in the header of the agent detail page:
| Action | Description |
|---|---|
| Edit | Opens the agent detail page (only in the agents list). |
| Developer Mode | Opens the agent in Developer mode, to chat, edit and troubleshoot it side by side. |
| Troubleshoot | Opens the agent's conversations in Troubleshooting. |
| Analyze | Analyzes the agent's conversations with the Analyzer. |
| Evaluate | Evaluates the agent with the Evaluator. |
| Duplicate | Creates a copy of the agent. See Duplicate an agent. |
| Disable / Enable | Turns the agent off or on. See Disable or enable an agent. |
| Delete | Permanently deletes the agent, after confirmation. This action cannot be undone. |
Next to the menu, the chat button opens a new tab where you can talk to the agent and test it.
Disable or enable an agent
Disabling an agent lets you take it out of service without deleting it or losing its configuration.
To disable an agent, select Disable in its ⋮ menu. The change applies immediately, without a confirmation step. When an agent is disabled:
- It stops showing up in the chat and no longer accepts new chats or messages.
- It shows a Disabled badge next to its name in the agents list.
- Its chat button is greyed out, with the tooltip "The agent is disabled".
- It remains in the agents list, so you can enable it again, and its past conversations remain available in Activity.
To put it back in service, select Enable in the same menu. The agent shows up in the chat again and accepts new chats and messages.
Duplicate an agent
Duplicating an agent is the quickest way to create a variant of an existing configuration, for example to try a different prompt or model without affecting the original.
- Select Duplicate in the agent's ⋮ menu.
- Enter the New agent name. By default it is the original name followed by
- Copy. - Click Duplicate.
The copy includes:
- The main model and the pre-processing model.
- The system prompt, temperature and limits (maximum responses, maximum message length and maximum consecutive tool calls).
- The initial, lack of information and forced termination messages, and the text added to user messages.
- Tools and pre-tools.
- Features such as FAQs, fixed responses, lessons, Self-Improvement Mode, realtime and streaming.
- Personalization: display name, logo and colors.
Conversation starters, attachments, web search and reasoning settings are not copied; review them in the new agent if you need them.
Accessing Agents via API
Retrieving Agent Information for Chat-UI Integration
When integrating agents into a chat-ui component (such as ShowQuestion), you can use the GET /assistants/info/ endpoint to retrieve lightweight agent data containing only the essential fields required to configure and display the chat interface.
This endpoint returns each agent's:
- Display name (
info) — Customizable from the implementation portal - Description — Purpose or scope of the agent
- Initial message — Welcome message to greet the user
- Message length limit (
max_msg_length) — Maximum character limit per message - Feature flags —
streaming_available,matrix_mode_available,realtime_available - Visual personalization —
logoURL and customcolors(name color, border color, primary color, secondary color)
This lightweight response is optimized for chat-ui initialization, avoiding the overhead of full agent configuration data. Personalization fields (info, logo, colors) can be null; in such cases, the chat-ui should apply appropriate defaults.
For complete agent configuration details, use the GET /assistants/ endpoint instead.