3.12.1 (Latest LTS)#

Squirro 3.12.1 was released on February 26, 2025.

Learn more about the Squirro Release Process.

Notes for administrators

  • The Workspaces feature is available from version 3.12.1 and later. For administrators interested in this feature, contact Squirro Support and submit a technical support request. Our solutions engineers will help you find the right set up for your environment.

  • Python 3.8 for SquirroClient and the Squirro SDK is marked as deprecated, and its end of support is scheduled for the next LTS release.

  • Rocky Linux 9 support is nearing completion and arriving in an upcoming release.

  • This release introduces important changes that may require adjustments to your existing setup. Learn more

What’s New#

  • Personal Agents is a customizable feature that allows users to create tailored workflows, using specific data, instructions, and tools to perform tasks and achieve objectives. Learn more

  • GenAI API to integrate Squirro Enterprise GenAI Platform capabilities into your applications, unlocking advanced AI capabilities. It offers management of configurations for LLM runs, including persona, grounding settings, and future support for tool configurations.

  • Search API documentation is being migrated to the OpenAPI standard, providing a more standardized and accessible format for developers.

  • Workspaces provide administrators and engineers with flexible content management, granular access rights, and secure data isolation, enabling multiple departments to share a single Squirro cluster while operating independently. Learn more

Improvements#

AI#

  • Added support to exclude specific documents from CHAT. Such documents are searchable via the regular Dashboard UI, but will be excluded from the chat widget. To use this feature, setup a squirro-query in the project-configuration genai.sqgpt.excluded-documents-for-chat.

  • Support without-data mode for legacy tool-calling-agent and improve passthrough-llm prompt.

  • Improved Chat with selection when Persona-Agents / Dashboard selection uses TERM queries to filter for a selection (priorly the selection was filtered to paragraphs which contain those TERMs / now we only filter against the parent documents which have those terms / and perform semantic search within those).

  • Add GenAI API URL to injected SquirroClient.

  • Changed default system prompt to follow a query execution plan. Call the retriever several times with different structured input arguments (for example, time intervals if applicable), or apply phrase filters on detected key concepts.

  • Context expansion is performed on top ranked (default 3) documents. In addition add the top ranked paragraph of trailing documents (default document position 4, 5) as well to the LLM context.

  • Add genai tool to use Brave search API.

  • Enabled ParagraphExpansionRetriever by default. This retriever fetches more context (paragraph clusters) of top-ranked documents.

  • Allow to set temperature to null: temperature is not supported for OpenAI reasoning models.

  • Added new tool option additional_filter_query. This enables the agent to fetch a diverse set of results when multiple SquirroRetriever Tools are configured, given that each one of them is bound to a different filter-query (for example, additional_filter_query:"source_name:FAQ") and the agent is calling those retriever-tools concurrently.

  • Enhanced streaming_chat endpoint to accept an optional agent_id in the query string, enabling activation of a specific agent by ID during inference.

  • Show the labels tab in item detail for the Chat widget.

  • Persona is now being more re-inforced by the LLM. Added more structural prompting to the LLM.

  • Agent persona added directly to the user message.

Platform#

  • Workspaces domains are case insensitive. For example, you cannot create a new workspace test if you already have one named TEST.

  • WidgetHeader: split date sorting option to newest and oldest.

  • Improvements for the pydantic templating mechanism.

  • Introducing code for authenticating with PASETO tokens on FastAPI` endpoints.

  • Moved the internal plugins folder to $GENAI/components/packaged_plugins and removed $GENAI/components/plugins to prevent accidental misusage and conflicts with volume-mapping.

  • Add markdown package as dependency.

  • Adds a new unified register_component decorator that allows to specify the full name of the component for reference in the deployment YAML; decorators register_builtin and register_addon are marked as deprecated. Use this new decorator on all pre-installed components.

  • Add an optional drive_ids for the SharePoint connector to specify a list of drive_ids that a user wants to download data from.

  • Added export and import of agent configuration to client.

  • Introduce methods to interact with GenAI service endpoints.

  • Do not allow removing cluster admins from the cluster user list.

  • Allow deleting users from the cluster users page.

  • Update workspace user list after deletion.

  • Forbid deleting admin users from the workspace user list.

  • Temporarily remove the group assignment when inviting a user to a workspace.

  • Updated copyright and the corporate address in email templates.

  • Turn buttons in edit workspace role dialogs into loading buttons.

  • Make the data virtualization tool compatible with the Google Gemini LLM.

  • When attempting to delete a workspace that contains groups, an error message is now returned, informing the user that they must first delete the groups before deleting the workspace.

  • Show a message on disabled remove user button in user lists.

  • Do not allow removing yourself from the workspaces cluster user list.

  • Autosize tables to fit the page.

  • Convert all emails to lowercase in add users to workspace dialog.

  • Add disable drilldown support to the Labels widget.

  • Added caching invalidation for get_item_api_cache, the invalidation occurs when calling either modify_item or modify_items API endpoints. Important to keep in mind that get_items endpoint is not covered by get_item_api_cache, only get_item.

  • TLS security improvements, disable TLS <= 1.1, disable weaker ciphers, and other hardening measures.

Bug Fixes#

  • 6 items do not fit when there is a category for AdvancedSelector.

  • GenAI call from intent detection not providing the right parameters.

  • Do not show the Workspaces space when Workspaces is not activated.

  • When Workspaces is not activated, the Studio plugins that were previously displayed under the Server space are now displayed under the Cluster space.

  • starter-questions endpoint generating excessive amount of questions.

  • Permission issue that was breaking the embed_token generation mechanism.

  • Squirro-legacy retriever compatibility with recent schema additions in topic.

  • Gmail plugin parts breaking code.

  • Create agent squirro client wrong path.

  • In the help menu feedback and version are still shown while being disabled in the project configuration.

  • Move the fastcgi_busy_buffers_size directive to the /etc/nginx/conf.d/studio-fastcgi.inc file, ensuring nginx restarts properly after upgrading Squirro.

  • genai.sqgpt.query-workflow project configuration not defined causes skipping of the default workflow for processing the Squirro GPT query before fetching items.

  • Ensure user is looked up for the tenant the project belongs to, not the tenant provided in the route parameter.

  • Negative value of queued items while using QFSS.

  • When the editable chip value is cleared, it still persists and is added to the query for the Search widget.

  • Legacy Squirro Retriever for Chat gets stuck while trying to do query pre-processing.

  • When Workspaces is activated, ensure genai_reader user is added to the workspace the project belongs to, before being added to the project.

  • Add a different response status code and message when trying to delete a Cluster Admin user from a workspace.

  • Quoted facet name is not parsed as facets for the Search widget.

  • Missing focus state in editable chips when navigating with teh tab key for a Search widget.

  • get_oof_pred dropping training data that fails evaluation.

  • Gmail dataloader throwing error once parts do not exist in payload.

  • Q&A answer index starts at 0 instead of 1.

  • Set http2_max_field_size to 8kB to enable the preview of data sources using the Confluence 1-click connector.

  • Move the http2_max_field_size directive to the /etc/nginx/conf.d/studio.conf file, ensuring nginx restarts properly after upgrading Squirro.

  • New retriever issue with source-chip highlighting.

  • Paragraphs that span across pages have not been able to get highlighted before. This is now improved by highlighting each individual sentence.

  • Load cluster/workspace users and groups into the project and add a dependency on the flag.

  • Adjust routes for workspace management.

  • Fix project import functionality by importing pipelets to a specific workspace rather than _global.

  • Fix OneDrive data loader in case, when MS OneDrive API returning not supported drives IDs.

  • Restore server space for non workspace installations.

  • React to user removal from a workspace in cluster user list.

  • Ensure that attempting to mount a faulty plugin and does not impact the entire service.

  • Encode file content to ensure special characters are treated properly.

  • Fix add new user link in project member add.

  • Show project owner role in the Workspaces user details.

  • Increase the max length of the column name in pipeline_workflows from 50 to 256 to avoid problems with too long names for some Sharepoint use cases.

  • When Workspaces is activated, ensure the genai_reader user is added to the workspace the project belongs to, before being added to the project.

  • Ensure that using a refresh token in the query parameters does not lead to fetching all EMBED chat conversations.

  • Fix table flash when assigning user to workspaces.

  • Disable functionalities in workspaces that should be available to admins only.

  • Fixed an issue where language instructions were not strictly being followed.

Miscellaneous#

  • Webshot metadata from parent to paragraph during paragraph creation.

  • Ensure index type is int for Squirro Retriever.

Known issue#

Labels technical names with spaces cause backend issues and errors (SQ-26080).

Breaking Changes#

  • User information fetched for Query Templates is now fetched from the latest user session of a trusted Squirro client, to ensure it is valid.

  • The query and get item endpoints now enforce strict validation of parameters and their types. Any validation errors will result in a 400 Bad Request response.

  • Validation error messages for the query and get item endpoints have been enhanced to offer more detailed explanations, making it easier to identify and resolve issues. This change is breaking only if your implementation relies on specific error message formats.

  • Squirro Authentication now uses PASETO tokens, meaning existing Access Tokens will become invalid on upgrade and new tokens must be generated. Existing Refresh Tokens will still be valid, but newly generated Refresh Tokens will have the PASETO format.

  • The GenAI service endpoints now require Bearer Authentication, where the Bearer Token is a Squirro Access Token.

  • The Intent Detection step now needs SquirroClient credentials in order to access the GenAI endpoint for source detection. If the step is being executed outside the machinelearning service, it must be adjusted according to the new description.

  • Requires update of tool config in deployment YAML (change LLM config: openai_chat_modelllm, add a chat_history field with placeholder).

Installation and Upgrade#

For new installations, find step-by-step instructions on the Install and Manage Squirro with Ansible page (recommended) and Installing Squirro on Linux pages.

To upgrade an existing installation, see the Upgrading Squirro page.