创建一个👩💻开源搜索平台:带有人工智能的搜索引擎 - Swirl🌌
Swirl 是一个用 Python 编写的开源搜索引擎,由大型语言模型 (LLM) 和 ChatGPT 以及 ML 和 NLP 算法提供支持。
闲话少叙,先让我来介绍一下 Swirl。这个用 Python 和 Django 构建的统一开源搜索平台,无缝整合了跨数据库(SQL 和 NoSQL)、云服务、搜索提供商、数据孤岛以及 Miro、Jira、GitHub 等工具的搜索功能。
使用 Swirl,用户可以进行单一查询,在一个合并的 UI 中立即汇集和呈现来自多个平台的相关数据。
链接:https : //github.com/swirlai/swirl-search🌌
寻找开源搜索平台🕵️♀️
搜索在我们的日常生活中无处不在。像谷歌搜索、必应和 Duck Duck 这样的巨头让我们只需点击一下按钮就能轻松找到信息。
然而,对于希望将搜索功能融入其平台而不受这些主要参与者束缚的企业、初创企业和开发者来说,选择有些有限。大多数企业级搜索引擎都需要支付许可费用或受到限制。诸如谷歌的可编程搜索引擎和Algolia之类的集成选项功能强大。然而,它们可能并不总是能满足所有企业的特定需求,尤其是在定制和自托管方面。
这就引出了对开源搜索引擎的需求。对于所有试图将搜索功能集成到其平台的用户来说,Swirl 是最佳选择之一。它基于 Python 构建,高度可定制。作为免费开源产品,它遵循 Apache 2.0 许可证,这意味着开发者和企业无需支付任何许可费用即可使用和修改它。团队可以通过改进、修复错误和增强功能来为其开发做出贡献。
处理许多数据源、数据库和数据孤岛
随着任何初创公司或公司的发展,其数据和数据库的规模也会随之增长。最终,查找正确信息的复杂性也会随之增加。随着这些组织的扩张,它们不可避免地会积累各种形式的数据——传统文档、代码库、电子表格,以及 SQL 和 NoSQL 等更结构化的数据库。然而,真正的挑战不仅在于存储如此海量的数据,还在于如何在需要时高效地检索这些信息。
那么,我们的文档位于哪个数据库中?是 USE_CASE_1 还是 USE_CASE_2?
一个典型的场景是,你需要数据,但不知道在哪里。
数据源的多样性进一步加剧了复杂性。想象一下,在一个庞大的图书馆里,书籍、期刊、手写笔记和数字记录都杂乱无章地存放着,需要进行筛选。听起来很吓人,对吧?这正是当今许多企业面临的情况。不同的数据类型,加上彼此孤立的数据孤岛,使得员工难以迅速找到正确的信息。
Swirl 连接多个数据源,可在所有数据源中进行搜索。Swirl 是一个集中式枢纽,支持跨所有集成数据源的精简搜索。这简化了搜索流程,并确保不会因来源或格式问题而遗漏任何关键信息。
使用 LLM 进行搜索并将多个数据源整合在一起
Swirl 使用现有的 API 和基于标准的安全机制(例如 OAuth2)将用户查询分发到搜索引擎、数据库和其他企业云服务。Swirl 使用大型语言模型对统一结果进行异步规范化和重新排序。
让我们了解一下 Swirl 的工作原理。
- 用户提供 Swirl 集成的数据源。
- 用户创建要搜索的查询。
- Swirl 将这些查询发送到每个源。
- 获取响应并使用 LLM 找到最佳答案。
- 然后,Swirl 在异步管道中获取引用。
- 然后它会获取最佳结果并创建提示。
- 它将数据 + 提示发送到 ChatGPT(或任何 LLM)。
- Swirl 通过 ChatGPT 见解返回答案。
图表解释使用 ChatGPT 作为配置的 LLM 进行 Swirl Search
该图表解释了 Swirl 如何与多个数据源协同工作并通过 ChatGPT 洞察提供结果。
整个搜索过程简化了,Swirl 的设置也相当直观。Sense 的 Raman Ramanenkou 说道。
在 Docker 容器中设置和运行 Swirl 非常简单——只需几分钟。
~ Sense 的 Raman Ramanenkou
数据隐私和安全在搜索时至关重要。人们应该只能搜索自己在任何公司中可以访问的信息。Swirl 集成了 OAuth2 身份验证。这意味着数据的访问和可见性将根据搜索用户的凭据受到严格控制。它确保敏感信息受到限制,只有拥有必要权限的人员才能查看。
因此,没有访问关键文件权限的人无法搜索这些文件,甚至不知道它们的存在。
使用 Swirl ✨ 进行检索增强生成 (RAG)
检索增强生成 (RAG) 是一种将信息检索与文本生成相结合的技术。简单来说,RAG 首先通过搜索获取相关数据,然后使用大型语言模型基于这些数据构建答案;一个广为人知的例子是必应 AI 聊天。您可以通过在数据集上实施 RAG 来创建动态知识库。
Swirl 可帮助您轻松创建基于数据的聊天机器人。您可以将 ChatGPT Enterprise 的强大功能与 Swirl 集成,然后即时生成答案。无需任何额外的数据库来存储任何信息。只需搜索即可。
Swirl 可以检索准确的信息,并获得包含原始文献引用的完整答案。这将大幅提升您的工作效率,让您轻松掌握可靠且参考充分的信息。
例如,我们使用 ChatGPT 搜索 Sid Probstein,然后使用 Swirl 的 RAG 管道再次搜索。我们会在左下角的链接中找到用于生成答案的文档。
开始使用 Swirl 💻
如果您想免费试用并运行 Swirl,请前往 GitHub 页面查看。👇
GitHub 🔗:GitHub 上的 Swirl 🌌
💿安装说明:Swirl 入门
📃 文档:Swirl Wiki
Swirl UI 运行时的快照
Galaxy UI 中的 Swirl 功能
Swirl 是一个社区驱动的👩💻开源项目。我们欢迎有兴趣创建搜索平台并为项目开发做出贡献的个人。如果您有兴趣了解该项目,并希望做出贡献或与我们一起开启您的开源之旅,我们很乐意为您提供指导,帮助您理解并创建您的第一个开源贡献。🤗
请在GitHub上给我们一个 Star 🌟 。
在Twitter/𝕏上关注我们以获取最新资讯。
链接链接 https://dev.to/swirl/creating-an-open-source-search-platform-search-engines-with-ai-swirl-2m0h