关闭
搜索
搜索
本版
帖子
用户
热搜:
程序员
简洁模式
高级模式
用户组: 游客
消息
提醒
新听众
我关注的
帖子
道具
勋章
任务
设置
退出
请
登录
后使用快捷导航
没有帐号?
立即注册
设为首页
收藏本站
开启辅助访问
切换到窄版
登录
or
立即注册
快捷导航
搜索
首页
论坛
BBS
MCU单片机技术
程序员交流
写代码、搜问题,全部都在终端完成!如此编程神器,是时候入手了
[复制链接]
作者:
致命啲傷
版块:
›
嵌入式操作系统
›
linux
发布时间:
2020-9-15 00:54:50
1501
0
返回列表
致命啲傷
当前离线
注册会员
注册会员, 积分 146, 距离下一级还需 54 积分
注册会员
注册会员, 积分 146, 距离下一级还需 54 积分
积分
146
发消息
楼主
电梯直达
致命啲傷
发表于 2020-9-15 00:54:50
|
只看该作者
|
倒序浏览
|
阅读模式
无论你是编程小白还是老司机,coding过程中总会遇到不懂的问题。
最常见的方法是去论坛询问、谷歌搜索,需要反复在网页和编译器页面切换,即使有两个很大的分屏,生产力也会受到影响。
但是现在这个问题有希望解决了,一个便捷编程Q&A工具
codequestion
可以帮到你。
直接在终端输入「你要问的问题」,用普通的自然语言就行,和你去谷歌搜索没什么两样。
然后马上就能返回详细操作教程,
实现了直接在终端用对话形式来查询操作手册
。
这么好用的工具安装起来也不复杂。
安装codequestion最简单的方法是通过pip或PyPI:
pip install codequestion
当然,你也可以克隆github上的项目到本地:
pip install git+http://github.com/neuml/codequestion
安装codequestion需要Python 3.6版本以上。
对于Linux系统来说,可以直接运行项目,但是Windows和Mac需要安装额外项。
Windows需要安装
C++ Build Tools
,地址如下:
PyTorch Windows的二进制文件不在PyPI上,安装时必须添加以下url链接:
pip install txtai -f https:
对于Mac来说,安装前需要运行这个命令:
brew install libomp
安装步骤已经完成了,接下来看看实例测试吧
codequestion下载完成以后,还需要安装一个模型。
python -m codequestion.download
这个模型的核心就是作者
David Mezzetti
之前开发的AI算法
txtai
。
txtai支持构建文本索引,执行相似性搜索,并创建基于提取式问题回答的系统。
作者还提供了预训练的模型:
codequestion是可以定制的,可以针对自定义的问答库运行。目前,只支持Stack Exchange库中的问题帮助,未来会有更多的支持选项。
完成模型安装后,可以通过以下命令运行测试:
mkdir -p ~/.codequestion/test/stackexchangewget http://raw.githubusercontent.com/neuml/codequestion/master/test/stackexchange/query.txt -P ~/.codequestion/test/stackexchangewget http://ixa2.si.ehu.es/stswiki/images/4/48/Stsbenchmark.tar.gztar -C ~/.codequestion/test -xvzf Stsbenchmark.tar.gzpython -m codequestion.evaluate -s test
代码中包含将测试数据下载到/ .codequestion / test中。
下面的表格显示了各种词向量/评分组合的测试结果。
SE 300d单词向量与BM25评分在这个数据集中表现最好。即使减少了词汇量的Stack Exchange问题,SE 300d - BM25在STS基准测试中的表现也相当不错。
之前,量子位也介绍过一个相似的Linux命令行查询工具,也是直接在终端输入问题,返回答案。
不同的是,当时的工具
howdoi
是在在线技术论坛上搜索已有答案,范围比较有限。
那么这次介绍的codequestion的AI驱动机制,有什么先进之处呢?
来自Stack Exchange库的原始7z XML转储通过一系列步骤进行处理。
只有高分的问题和答案才会被检索到,并存储在模型中。
问题和答案被整合到一个名为questions.db的单一SQLite文件中。questions.db 的模式如下:
Id INTEGER PRIMARY KEYSource TEXTSourceId INTEGERDate DATETIMETags TEXTQuestion TEXTQuestionUser TEXTAnswer TEXTAnswerUser TEXTReference TEXT
第二步:检索
codequestion工具为questions.db建立了一个句子嵌入索引。
questions.db模式中的每个问题都会被标记,并解析为单词嵌入。
词嵌入模型是建立在questions.db上的自定义fastText模型。一旦某个token被转换为单词嵌入,就会创建一个加权的句子嵌入。
词嵌入使用BM25索引对资源库中的所有token进行加权。但有一个重要的修改:标签被用来提升标签标记的权重。
一旦question.db被转换为句子嵌入的集合,它们就会被归一化并存储在Faiss中,从而可以进行快速的相似性搜索。
第三步:查询
codequestion使用与索引相同的方法对每个查询进行标记。这些标记被用来建立一个句子嵌入。根据Faiss索引对该嵌入句进行查询,以找到最相似的问题。
可以看出,这个codequestion工具的优势在于灵活的搜索匹配问题,并且能够根据问题回答的质量优先推选好的回答。
这一点是类似工具使用关键词匹配搜索答案无法比拟的。
目前codequestion的局限在于只支持Stack Exchange中的问题,但是,作者承诺后期会加入更多的库。
不少网友都反应,这个工具十分实用,尤其是它支持本地库中的问答机制,对于有离线开发需求的码农来说,帮助颇巨。
怎么样?如果这个工具对你有用,那就赶快上手操作吧~
参考链接&传送门:
Github地址:
C++ Build Tools安装地址:
量子位之前介绍过的Linux命令行查询工具:
— 完 —
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有帐号?
立即注册
收藏
0
相关帖子
•
RHCE人才招聘
•
如何在Ubuntu服务器上安装桌面环境(GUI)
•
Xmanager使用教程:如何在Linux系统上安装Xterm应用
•
一个惊人快速的终端录像工具,也能录制VSCode和Chrome窗口
•
【干货】绝对是你没见过的超全Linux性能分析工具汇总!
•
推荐10个不错的网络监视工具,建议收藏!
•
简单架设LINUXVPS服务器
•
M1芯片MacSSD磨损问题将在macOS11.4中得到修复
•
SpringBoot搭建ELK,这才是正确看日志的方式!
•
Debian11.0“Bullseye”第2个候选版发布:基于Linux5.10内核
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
表情
@朋友
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
生活交流*灌水区*工程师滋润生活*
音乐*架子鼓*电子琴*娱乐
快速回复
返回顶部
返回列表