
智能问答开源
有疑问时该去哪里? 自从人类开始在地球上行走以来,我们就问周围的人-我们的家人,朋友,邻居,同学,同事或其他我们熟悉的人。 后来出现了图书馆和书店,它们提供了知识和资源,并允许任何人进入并搜索答案。 当家用计算机变得普遍时,这些知识库扩展到软盘或CD-ROM上附带的电子百科全书。 然后,当互联网时代到来时,这些知识库就在线迁移到了Wikipedia之类的公司,而诸如Google之类的搜索引擎便应运而生,其目的是使人们能够轻松地找到问题的答案。 现在,诸如StackOverflow之类的网站可以回答我们的软件问题,并为我们的一般查询提供Quora。
不过,这一课很清楚。 我们都有问题,我们都想要答案。 我们中有些人想帮助其他人找到问题的答案,这就是自我托管的问答网站的来源。
如果您想创建自己的问答平台,始终可以选择从头开始开发所有内容。 但这意味着您需要为前端,后端,数据库,安全性等编写大量代码。这些都不是简单的任务。
值得庆幸的是,开源领域中有许多经过测试的问答平台解决方案。 这些包括:
名称 | 执照 | 技术栈 | 描述 |
---|---|---|---|
Discourse | GPLv2 | Ruby on Rails,Ember.js,PostgreSQL,Redis | 非常流行的基于Ruby的100%开源讨论平台 |
Vanilla | GPLv2 | PHP,MySQL | 基于PHP的现代时尚问答网站 |
Askbot | GPLv3 | Python,Django,MySQL或PostgreSQL | 基于Django和Python的有趣问答平台,以前称为OSQA |
Scoold | 阿帕奇2.0 | Java,Spring,数据库不可知 | 基于Java的功能极为强大且功能齐全的问答网站 |
Question2Answer | GPLv2 + | PHP,MySQL | 基于PHP的问答平台,支持40种语言的22,000个站点 |
Shapado | GNU AGPL | Ruby,MongoMapper,MongoDB | 基于Ruby的简单问答网站 |
LampCMS | GNU LGPLv3 | PHP,MongoDB | 开源高性能Web程序,用于基于PHP创建问答网站 |
如果您更喜欢视频而不是文本,请观看我关于这七个开源问答平台的YouTube视频。
对于开放源代码项目的问答站点, 语篇是一种越来越受欢迎的选择。 Mozilla最近采用了Discourse,Python和Go等编程语言也使用了Discourse。 这些网站可以是公共的也可以是私人的,就像Opensource.com通讯员的Discourse平台一样。 在撰写本文时,Discourse有713位贡献者和35,933次提交。
有趣的是,Discourse的三位创始人之一是Stack Overflow的创建者Jeff Atwood,毫无疑问,这是开发人员中最受欢迎的问答网站。 话语具有许多高级功能,使其功能强大。
其中一些功能是:
话语基于Ruby编程语言,并且其开放源代码版本可在GNU GPLv2下获得。 缺点是Docker映像是在生产环境中安装Discourse的唯一受支持的方式。 尽管功能强大,但配置和安装可能需要具备技术技能的人员。
开源问答软件Vanilla并非一无是处。 我喜欢香草的一件事是它的外观和感觉。 在我看来,在所有问答软件中,Vanilla的网站都是最现代,最直观,最干净的网站。
Vanilla的开源贡献者非常活跃-GitHub页面上有118个贡献者和29,491个提交(截至撰写本文时)。
Vanilla基于久经考验的技术构建:它是用PHP编写的,其后端数据库是MySQL。 有人可能会问:“为什么要使用PHP?” 尽管有许多新的Web语言,但是PHP仍然是Internet上的主要语言,而Vanilla与基于PHP的Drupal和WordPress保持了良好的合作关系。 它在GNU GPLv2下可用。
测试环境需要在本地安装多种技术,包括Docker,Brew,Yarn,Node和Composer,您可以按照其设置说明来启动和运行它。
从前,有一个称为OSQA的开源平台。 这个很酷的开源问答平台是由AnswerHub的制造商创建的,AnswerHub是企业受欢迎的平台。 尽管不再维护该平台,但是您可以在GitHub上找到OSQA的其余部分 。
幸运的是,基于OSQA创建了一个名为Askbot的新开源平台。
Askbot平台基于Python和Django框架,并已获得GNU GPLv3的许可。 在撰写本文时,其GitHub社区有101个贡献者和6,612个提交。 不错!
Scoold的平台集成了许多高级功能。 我特别喜欢它具有与许多数据库一起使用的功能以及开箱即用的OAuth支持。
用户界面干净直观。
Scoold的开放源代码项目已获得Apache License 2.0的许可,但是具有沉重的商业意义,其Pro版本是封闭源代码。 这个开源项目似乎有很多限制,在其“ 常见问题”页面上有详细说明:
但是,从GitHub页面看,这个开源项目似乎只有18个贡献者维护,并且只有852个提交。
如果您尝试使用Scoold,请注意这些事项,因为该项目可能会有一些限制,使您感到负担重。
Question2Answer是另一个基于PHP的开源问答平台。 乍一看,该平台有点卡通般的感觉,尽管我认为主题可以自定义。
在撰写本文时,Question2Answer在其GitHub页面上只有20个贡献者和1,291个提交,因此请多加注意。 但是该项目基于GNU GPLv2或更高版本,因此您可以轻松地做出贡献。
Shapado是一个基于Ruby和MongoDB数据库的开源问答平台。 它的GitHub只有14个贡献者和5149个提交。 它的追随者似乎并不多,最新的更新是在2018年,因此在采用它之前要谨慎。
它也是在一个不太常见的许可证下开源的,该许可证值得一提,即GNU Affero通用公共许可证 (AGPL)。
LampCMS是具有GNU LGPLv3许可证的开源PHP平台。 它只有一个贡献者,但是我认为这很有趣。
由于其占地空间小,因此我不建议将LampCMS用于您的生产服务器问答平台。 但是由于其简单性,它可能是一个学习问答平台如何工作的很好的实验平台。
使用所有这些选项,您如何选择要使用的一个? 毕竟,每个问答平台都各有利弊。 一些平台更易于安装,另一些文档记录得更好,而另一些平台则提供了更大的灵活性。 从长远来看,但是,您希望选择一个具有开放源码社区积极参与的平台。 另外,考虑通过为这些平台做出自己的贡献来参与进来。 毕竟,这就是开源项目的目的。
我是否错过了一个有趣的开源问答平台? 请在评论中分享您的想法。
翻译自: https://opensource.com/article/20/2/open-source-qa
智能问答开源