DEV Community

Cover image for Swirl: An open-source search engine with LLMs and ChatGPT to provide all the answers you need 🌌
Saurabh Rai
Saurabh Rai Subscriber

Posted on

Swirl: An open-source search engine with LLMs and ChatGPT to provide all the answers you need 🌌

We need search engines with AI

Last week I had a strange problem at work to tackle. The business head wanted to know. How many Jiras the developers have worked on.
And what commits, code they have done.

While this sounds strange. This activity of searching and searching led me to discovery of a common problem. Let's start here with the story.

If you wanted to know how many tickets, you have worked with and how many codes and commits are written per each ticket in the last two weeks. This is a pretty simple way to check how productive you have been. How would you go ahead and do that?
The step is as follow:

  1. Go to your ticketing system (Jira, You Track, Trello, etc.) and search by username.
  2. Narrow down the search to the last two weeks.
  3. Go to GitHub and search your commits in the previous two weeks.
  4. Manually cross-check which commit is for which Jira.

Wow, you've spent 120 minutes of your life searching through two different platforms. Just to get some productivity metrics. And in the end, you're getting some links to stuff. And if time is money, then this is what the whole process looks like:

Image description

You want answers, not links to webpages, Jiras, or GitHub commits. So, how can you solve this problem? We already have search providers in all the websites. We have Large Language Models and ChatGPT introduced its enterprise version. Is there a way to combine them both?

Open-Source Search Engine Meets AI - Swirl Search 🌌

I recently discovered this open-source search engine, Swirl Search. And it exactly does what I wanted back them. Search through multiple platforms, and then generate the data I want via ChatGPT (or any LLM).

It's an open-source search engine that combines many data sources and returns a single answer via it's UI.

Now, when you take that output and send it to any Large Language Model (let's say ChatGPT's API). You get answers that you want within seconds instead of minutes. So, LLMs are combined with multiple data sources via Swirl, and you get what you want.

Swirl becomes a search bar of search bars 😂. You can say it's one search bar to rule them all. And it basically searches everything at once. The best part is that it's open source, in Python, and doesn't require re-indexing. Meaning no extra database is required.
I find this idea to be purely genius and something that we need. With the growing data and databases.

Image description

So, let's dive deep and see what Swirl is about.

What is Swirl Search? 🤔

Swirl search is an open-source search tool built on the Python/Django stack. But what sets Swirl apart from other search tools? It's the ability to adapt and distribute user queries to virtually any platform with a search API.

This includes search engines, databases, NoSQL engines, cloud services, and more. But Swirl doesn't stop there. Once it retrieves the data, it employs Artificial Intelligence, specifically Large Language Models (LLMs), to re-rank and present the most relevant results. This is done without the need to extract or index any data, ensuring a seamless and efficient user experience.

Image description

Swirl builds on the power of Large Language Models. 💪

One of the standout features of Swirl is its use of LLMs through Swirl's Metapipe. Large Language Models have taken the tech world by storm, showcasing their ability to understand and generate human-like text based on the information they've been trained on. By integrating LLMs into its framework, Swirl can provide more accurate, relevant, and context-aware search results. This is a significant leap from traditional search methods that often return vast amounts of irrelevant data.

Below is a screenshot of Retrieval Augmented Generation using Swirl. While searching for persons or lesser known data any LLM can generate generic stuff. But using Swirl and Multi-platform search you can find information and send it to your Language Model for better answers and insights.

Image description

While searching for Sid Probstein, ChatGPT gave random answers at first. But once we queried the transcript of a podcast sent via an outlook mail, it returned some amazing answers. Imagine doing this with your own data. Which will increase your productivity by a huge margin.

Integration Capabilities: Connecting with Multiple Platforms 🚀

Swirl's strength lies not just in its advanced search capabilities but also in its extensive integration options. It offers OAuth2 support for Microsoft 365, ensuring secure access to data. Moreover, Swirl seamlessly integrates with enterprise services such as Atlassian Jira and Confluence, JetBrains YouTrack, HubSpot, and many others. Users can search multiple platforms and services with a single query, saving time and effort.

And with the recent connection to ChatGPT, you can take in the output from the search and send it to ChatGPT for some amazing answers with references. And this feature is what I liked the most about it.

List of Existing and Upcoming Connectors in Swirl

Current and Upcoming Platforms available for Search using Swirl

Saving Time and Getting the Answers from Multiple Data Sources 📚

Swirl can search through multiple data sources. If it has an API, It's searchable through Swirl.

Connect Outlook Emails, Notion, Teams Chat, and much more together. And it's all safe and no data is collected. This is the best part of having an open-source engine.

By using Swirl search alongside generative AI language models, businesses, startups, individual creators can efficiently feed relevant data to ChatGPT, enabling users to easily derive insightful answers directly from application data.

So, if your company, startup has multiple data sources, and you want to retrieve data and generate insights from all of them. Then by using Swirl you can save time and money. Get the work done faster. Be more productive 🔥.

Check the Project on GitHub and Contribute 🌟

The best part of the Swirl is its open source. And they're looking for contributors, community members and enthusiasts. My experience with the team has been positive.

With the upcoming Hacktoberfest, this can be a great new project to get started with.

If you like creating a search engine that queries multiple data from multiple sources altogether. Then let's Dive into the future of search with Swirl. Check out our GitHub repository.
Give it a Star 🌟 and join the Slack. Let's shape the future of data retrieval together!

GitHub logo swirlai / swirl-search

SWIRL AI Connect: AI infrastructure software that powers your Search & Retrieval Augmented Generation (RAG) applications. Simplify and enhance your AI pipelines with seamless integration of large language models (LLMs) and data sources.

Whitepaper

Swirl

SWIRL AI Connect

Bring AI to the Data, not the Data to the AI

SWIRL AI Connect is advanced AI infrastructure software. It supports enhanced Retrieval Augmented Generation (RAG) capabilities, powerful analytics, and SWIRL Co-Pilot. SWIRL harnesses AI for business, enabling organizations to make better decisions and take more effective and timely actions.

Start Searching · Slack · Key Features · Contribute · Documentation · Connectors


License: Apache 2.0 GitHub Release

Website SWIRL Slack

Test and Build Pipeline

Get your AI up and running in minutes, not months. SWIRL AI Connect is an open-source AI Connect platform that streamlines the integration of advanced AI technologies into business operations. It supports powerful features like Retrieval-Augmented Generation (RAG), Analytics, and Co-Pilot, enabling enhanced decision-making with AI and boosting enterprise AI transformation.

SWIRL operated without needing to move data into a vector database or undergo ETL processes. This approach not only enhances security but also speeds up the deployment. As a private cloud AI provider…

Top comments (11)

Collapse
 
forkedsofar profile image
Johann Abberton

Wow looks like a great tool! I'm glad some people are looking into search and working on open sourcing it!

Collapse
 
srbhr profile image
Saurabh Rai

Thanks Johann,
I think it's much needed tool. We already have a lot of data sources, what's stopping us to perform a federated search and send the search results to any LLMs for better and precise answers.

Collapse
 
nevodavid profile image
Nevo David

This is great! Thank you for posting!

Collapse
 
srbhr profile image
Saurabh Rai

Thanks Nevo!

Collapse
 
anurag_vishwakarma profile image
Anurag Vishwakarma

Loved it bro.

Collapse
 
srbhr profile image
Saurabh Rai

Before anyone asks again!

GitHub : github.com/swirlai/swirl-search

Link to Join the Slack: Swirl Community Slack

Collapse
 
owenm profile image
Owen

Hey Saurabh! This is a great find. Really interesting project. I was wondering thought how is the data you feed into swirl kept private if it feeds it into ChatGPT which I believe retrains on fed in data?

Collapse
 
srbhr profile image
Saurabh Rai

Hi @owenm , yes indeed this is a great tool. Answer to your question:

"How is the data you feed into swirl kept private if it feeds it into ChatGPT which I believe retrains on fed in data?"

Swirl doesn't feed on any data. There is no database in Swirl. Rather it just connects via an API and provides search. Anything with a proper API structure can be searched with Swirl. And regarding ChatGPT. I just took it as an example. You can use any LLM in here. Like LLaMa 2, or the ChatGPT Enterprise which doesn't collect any data. It's just an example. 😉

Collapse
 
krad750 profile image
Adam Haight

Great article, thanks for posting.

Collapse
 
nathan_tarbert profile image
Nathan Tarbert

This is a great article! Nice job

Collapse
 
srbhr profile image
Saurabh Rai

I'm glad that you liked it @nathan_tarbert !