如今,几乎在所有地方都能看到开源软件和工具的使用。最近的一项研究发现,大约97%的代码库中包含开源软件。
对于个体开发者来说,参与开源项目并做出贡献是提升和优化技能的好方法。
无论你是在探索如人工智能的新技术,寻找实用的工具,还是与全球社区合作,开源项目都提供了无数机会。
在这篇文章里,我整理出了9个好玩的开源项目,你真的应该现在就去试试。
让我们跳进去吧!🚀
可以随时为这些项目和工具贡献,帮助改进这些项目和工具,或者在你的项目中使用它们。
…… (此处为省略或章节划分)
OPAL - 策略引擎的管理层OPAL,是一个开源管理层,旨在与例如 Open Policy Agent (OPA) 和 AWS Cedar 这样的策略引擎一起工作。
如果你是一名在大型项目中工作并涉及复杂访问控制的开发人员,OPAL可以帮助你更简单地在不同团队或用户组间管理权限设置。
实时检测策略和策略数据的变化,确保您的应用程序的授权层始终处于最新状态。
无论您的数据是通过 API、Git 还是第三方服务变更的,OPAL 会自动同步必要的策略和授权数据到您的服务,确保正确的访问控制流程。
现在,让我们来看看OPAL的一些特性和用例:
✅ 实时权限管理: OPAL 自动实时授予或取消权限,无需手动跨应用更新访问权限。
✅ 代码化政策: 开发者可以将政策编写成代码,从而使政策更容易版本化、审查和管理,从而确保一致的政策执行。
✅ 云原生整合: OPAL 能轻松整合基于云的微服务(如 AWS 或 K8s),简化安全和自动化的策略更新。
✅ 细粒度的授权: OPAL 支持端到端的授权,并能与多种策略语言和分布式数据源兼容,非常适合复杂的分布式系统。
这个工具非常有助于实时添加权限更新到你的项目,并且还允许你轻松查看和管理大型软件应用中的不同层级用户权限。
该项目在GitHub上有4.5k星,社区很活跃,可以加入他们的Slack一起参与,或者给项目点个赞来表示支持。
在 GitHub 上给 OPAL 点赞或收藏 ⭐️点击这里查看
此处省略
2024年10月28日至11月1日,OPAL 的幕后团队,Permit.io,将举办一场激动人心的启动周!
如果你是处理授权和权限的开发者,想看看Permit团队的成果,那你就不能错过这个活动! 🔥
✅ [注册](https://launchweek.permit.io/]赶紧注册参加活动吧!
✅ 赢取限量版 贴纸。
✅ 将你的 活动门票 分享到社交媒体,赢取一些周边好礼。
✅ 加入 直播 发现新功能,还有机会赢取定制键盘!
使用你的 GitHub 账号点击[注册],准备好迎接几个激动人心的新项目吧!🎁
……
Hexabot AI - 聊天机器人生成器构建AI聊天机器人通常意味着复杂的编码和使用多种工具。如果你想找一个更简单的方法,这正是你要找的。
Hexabot AI 是一个开源平台,允许你无需编写复杂代码就能制作智能聊天机器人。使用其图形编辑器,你可以用它来构建、管理和在多个渠道和语言中部署聊天机器人。
使用Hexabot这样的工具,您可以打造无需编程的客户支持机器人,并打造多渠道的购物助手,让产品发现更顺畅。
您还可以部署支持多语言的AI预约调度工具,帮助小型企业。您可以通过创建不同类型的聊天机器人来实现各种目的,做很多事情。
略
KitOps- 基于标准的打包与版本控制体系如果你在 AI、ML 或 SRE 团队工作,你可能会使用模型、代码和数据集等组件,这些组件会被分别存储和版本化管理。
KitOps(一个开源工具) 是市场上唯一使用 OCI 标准的开源工具,它将这一切整合起来,并使数据科学家、应用程序开发人员和 SRE(站点可靠性工程师)在集成或管理自托管的 AI/ML 模型时能更顺畅地协作。
现在,我们现在来看看KitOps的一些特性和用例。
✅ 统一打包和版本管理:KitOps 让组织能够将模型、数据集、配置和代码打包成 ModelKits,这些 ModelKits 符合 OCI 标准,可重复构建并可版本管理。这确保不同流程的兼容性,并简化团队间的交接。
✅ 自动化与灵活性:KitOps 与 CI/CD 工作流集成,实现了自动打包、测试和部署流程。它还支持调优大型语言模型和创建 RAG 流程,使用灵活的 YAML 语法定义。
✅ 安全与审计:每个 ModelKit 都通过使用 SHA 摘要进行保护,并对所有模型资产进行数字签名,确保不可篡改性并可靠地追踪来源。
以下是对 ModelKits 的描述:✅ 集成和便携性:ModelKits 遵循标准,可以存放在任何符合 OCI 标准的注册中心,并在不同的 AI/ML 项目中使用。
这个工具特别适合DevOps/MLOps团队来说,他们正在寻找一个企业注册表来管理版本化包,用于AI项目。他们已经在使用该注册表,专门用于管理AI项目的依赖。
KitOps 是一个新且令人兴奋的项目,它帮助开发者高效管理和版本控制 AI/ML 模型,欢迎加入他们的 Discord 或给该项目一个赞来展示你的支持。
以下为另一部分
Langflow — 低代码 AI 应用程序
如果你是开发者想要构建复杂的AI应用而无需编写太多代码,Langflow 可能是个不错的工具。其直观的界面让用户可以专注于应用逻辑和功能,而不是底层基础设施。
Langflow 是一个开源的低代码平台,旨在创建检索增强生成(RAG)技术和其他多代理AI应用程序等。
利用其基于Python的框架,Langflow使开发人员能够轻松集成各种模型、各种API和数据库,不必受限于特定的技术栈。
这是一张与编程或技术流程相关的图片。
下面让我们来看看 Langflow 的一些特性和应用场景实例:
✅ 视觉开发界面: 一个拖放界面,简化了工作流的创建和测试过程,大幅减少了繁琐编码的需求。这种设计大大加快了复杂应用程序的开发速度,使其既适合有经验的开发者,也适合初学者。
✅ 灵活的集成: Langflow 支持多种模型、API 和数据库,比如大家熟悉的 OpenAI、Pinecone 和 MongoDB。这使得开发人员在构建智能代理和定制系统的时候,可以轻松地整合现有的技术栈,适用于各种不同的应用。
✅ 实时原型设计与部署: 配备集成的监控和调试工具,Langflow 可以实现即时的工作流测试,使开发人员能够随时优化性能。这种能力对于开发响应式应用程序来说非常重要,使团队能够根据用户反馈和互动情况调整解决方案。
对于AI开发者来说,这个工具使用像Hugging Face和LangChain这样的流行和新兴AI平台和框架时非常有用。
拥有超过 31k 的星标在 GitHub,它拥有一个活跃的社区,给该项目点个星以支持它:
给 Star Langflow 点个赞 ⭐️
Readyset - 数据库缓存,一个数据库缓存工具
如果你是使用 Postgres 和 MySQL 的开发者,你可能对在处理复杂的 SQL 查询过程中遇到的性能问题比较熟悉。
比如说,你可能还会发现自己需要多次修改应用程序,以实现新的缓存解决方案。在这种情况下,ReadySet 可以成为一个非常有用的工具。
Readyset 是一个透明数据库缓存层,它能够加速应用程序的性能及可扩展性。
它能够轻松地与您现有的系统集成,将复杂的SQL查询转化为快速查询,确保缓存结果与您的数据库保持同步。
它作为你的应用和数据库之间的一层存在,保持缓存结果与底层数据的一致。它也可以与你当前的ORM或数据库客户端一起使用,以支持现有环境。
这个工具在处理以读取为主的應用程序时非常有帮助,比如内容平台类应用或分析工具。
Instant DB - 前端的实时数据库
现在大多数开发者都希望至少开发一个酷炫的实时应用程序,而不必处理复杂的基础设施。处理多个工具,如认证、服务器和后端,既费钱又费力。
如果你是开发者并且正在寻找解决方案,InstantDB 可能正是你所需要的工具。它能帮助提供流畅的实时用户体验,同时简化后端逻辑管理和扩展性。
你可以轻松地在你的应用程序中实现协作功能,例如:显示谁正在打字,支持多光标,以及实现多设备同步。
LanceDB - 多模态人工智能的数据库
[
开发人员在管理和查询大量多样化的数据时经常面对困难。
传统的向量数据库通常需要分别为向量表示和其元数据进行存储,这会使工作流程变得更加复杂,并增加额外成本。这使得保持数据同步和创建高效应用变得更加困难。
LanceDB 通过允许你存储和管理嵌入和实际数据(如图像、视频、文本等)来解决这一问题,所有数据均以 Lance 格式保存。
下面咱们来看看LanceDB的一些特性和用例:
✅ 可扩展且高效的搜索功能: 通过提供大规模的向量搜索能力以及支持多种搜索方式,包括向量相似度、全文搜索和SQL查询,LanceDB提升了数据检索和管理的效率,使其成为需要快速访问复杂数据集的应用程序的理想选择。
✅ 灵活的部署方式: 提供开源嵌入版本和基于云的无服务器版本,LanceDB 为开发者提供了灵活的选择。这让你可以根据项目需求选择最适合的方式,无论你是更喜欢自行托管还是利用无需管理服务器的云服务。
如果你对AI和RAG、AI模型及数据集感兴趣,并且喜欢本地优先的AI应用,这会对你很有帮助。
LanceDB 开源版本允许你在自己的基础设施上运行一个向量数据库,这样你就可以自己管理数据了。
Phidata——AI代理的框架
开发人员或组织广泛使用AI代理程序来自动化特定任务。开发人员在构建可以应对复杂任务并满足用户需求的应用程序时,时常会遇到挑战。
Phidata 通过提供一个框架来创建能有效管理状态和内存的智能系统,来解决这个问题。
使用 Phidata,开发人员可以轻松地在本地或云端运行服务,并利用内置的监控工具来监控性能,例如。
它通过管理代理的状态并提供友好的用户界面来简化开发流程,帮助开发者更高效地构建和优化系统。
如果你想要构建需要记忆、知识,并能与外部工具互动的特定领域代理,Phidata 允许你使用不同的提供商、知识库和存储选项,如 OpenAI、Ollama、Mistral、Pinecone、Qdrant、Postgres、Langchain、DynamoDB 等。
Stack 认证 - 用户认证管理
我们的列表中的最后一个工具是 Stack Auth,这是一个开源的替代品,可以代替 Auth0 和 Clerk。如果你想集成一个自托管和可定制的用户认证系统,Stack Auth 是一个绝佳的选择,而且它的自托管版本完全是免费的。
Stack Auth(https://github.com/stack-auth/stack)支持单点登录(SSO)、OAuth和多因素认证(MFA)等功能。
它特别适合那些需要避免供应商绑定或减少与第三方身份验证服务相关成本的项目。
自行托管功能确保敏感个人用户数据留在您的基础设施中,为需要严格合规的应用程序提供了更强的安全保障。
例如,Stack Auth 提供了一个可自定义的、自托管的身份验证系统,让开发者轻松管理用户访问。
另一方面,OPAL 专注于实时策略的管理,确保授权规则始终与应用程序需求的变化保持同步。
在 GitHub 上给 Star StackAuth 加个星 ⭐️
结束部分
本文中,我列举了9个很酷的开源工具,这些工具可以帮助你搞定各种任务,无论你是搞AI、管权限还是搞数据库。
这些工具能帮助开发人员在各种大小的应用中解决遇到的问题。
如果你发现了其他我没有提到的酷炫项目,请在评论区分享一下。
Permit 团队支持我写这篇文章,但他们没有影响这篇文章的内容。一起来参加 Permit 发布周 吧。
关注我,获取更多这样的内容
Arindam Majumder](https://dev.to/arindam_1729) 关注一下对于付费合作项目,请通过邮件联系我:arindammajumder2022@gmail.com。
感谢你读到最后了。
谢谢