Swirl Metasearch 2.5 #505
erikspears
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Team Swirl is announcing General Availability of Swirl 2.5!
The theme for this release was performance. Swirl 2.5 produces a median search time of 3 queries per second in our test setup, at a maximum rate of 15 queries/second on a Standard F16s v2 (16 vcpus, 32 GiB memory) server.
PLEASE STAR OUR REPO: https://github.com/swirlai/swirl-search
New Features
Performance Improvements
🔹 Swirl's asynchronous back-end was refactored to use the
group
method and replaced RabbitMQ with Redis🔹 Relevancy processing was split into two stages to improve performance
CosineRelevancyPostResultProcessor
must be in theSearch.post_result_processors
list.SearchProviders/
directory and update existing configurations to match.HubSpot SearchProviders
🔹 Search Company, Contact, and Deal records with new token-based HubSpot SearchProviders
result_mapptings
, theurl
mapping must contain the HubSpot Org IDImprovements
🔹 The
DateFindingResultProcessor
was added to the Google PSE SearchProvider JSON. It finds a date in a large percentage of results that otherwise wouldn't have one, and copies the date to thedate_published
field. Existing PSE SearchProvider configurations should be updated as follows:🔹 Swirl's control script (
python swirl.py
) was updateddefault
key was added to the services list, includingdebug
, inswirl/services.py
celery-beats
service was set todefault: False
swirl.py
was modified to load only services withdefault: True
To use the subscribe or expiration features,
celery-beats
must be started manually:python swirl.py start celery-beats
Celery-beats
must also be stopped separately.🔹 Swirl now outputs a single log entry with each request at the default log level INFO
Detailed logging is available in Debug mode: restart Swirl with the
--debug
flag to enable🔹 The
install.sh
script was refactored to better handle spaCy upgrades🔹 Swirl's Docker image was updated to use the latest, stable release of Python, version 3.11.4
🔹 Use of the unsafe
eval()
function was removedResolved Issues
🔹 Swirl's log files now persist and append new entries across restarts
🔹 The SearchProvider configurations for Elastic, OpenSearch, and Microsoft Outlook Messages were updated
🔹 A seesion-related issue in the connectors for Sqlite3, PostgreSQL, and Elastic was fixed
🔹 Errors in the
DedupeByFieldResultProcessor
were addressed🔹 The SearchProvider
results_per_query
value is handled correctly now🔹 An issue where some searches didn't appear to reach the Swirl backend was fixed
🔹 Unnecessary WARNING messages were removed from the logs
🔹 Result URLs on Search objects are now constructed correctly using the Request instead of loading from django settings
Known Issues
🔹 Clicking a Microsoft Teams result sometimes results in this error from the MS Teams app:
For Teams links to resolve correctly, you must have the Microsoft Teams app open before clicking the result link.
🔹 Subscribed searches are not returning results for Microsoft sources; this will be addressed in an upcoming release.
🔹 Creating searches from a browser with q= can sometimes create two Search objects.
This is because of browser prefetch AKA predictive service. Turn off Chrome prediction service. Turn off Safari prefetch.
Please report any issues with this to support.
Upgrading
CosineRelevancyResultProcessor
must be added last to theresult_processors
block of all SearchProvider configurations except ChatGPT. For example:This following of Error message in the Swirl logs indicates that one or more SearchProviders have not been updated:
hosts=
andhttp-auth=
(just that text, not the values that follow)query_template
syntax to the following:result_grouping_field
andresult_processors
to the following:Documentation
🔹 Quick Start 🔹 User Guide 🔹 Admin Guide 🔹 M365 Guide 🔹 Developer Guide 🔹 Developer Reference
Support
🔹 Join the Swirl Metasearch Community on Slack!
🔹 Email: [email protected] with issues, requests, questions, etc - we'd love to hear from you!
Beta Was this translation helpful? Give feedback.
All reactions