首页 » SEO优化 » PHP中dbtoolsincphp技巧_写代码搜问题全部都在终端完成如斯编程神器是时刻入手了

PHP中dbtoolsincphp技巧_写代码搜问题全部都在终端完成如斯编程神器是时刻入手了

duote123 2024-11-17 0

扫一扫用手机浏览

文章目录 [+]

最常见的方法是去论坛讯问、谷歌搜索,须要反复在网页和编译器页面切换,纵然有两个很大的分屏,生产力也会受到影响。

但是现在这个问题有希望办理了,一个便捷编程Q&A工具codequestion可以帮到你。

PHP中dbtoolsincphp技巧_写代码搜问题全部都在终端完成如斯编程神器是时刻入手了

直接在终端输入「你要问的问题」,用普通的自然措辞就行,和你去谷歌搜索没什么两样。

PHP中dbtoolsincphp技巧_写代码搜问题全部都在终端完成如斯编程神器是时刻入手了
(图片来自网络侵删)

然后立时就能返回详细操作教程,实现了直接在终端用对话形式来查询操作手册。

这么好用的工具安装起来也不繁芜。

安装教程

安装codequestion最大略的方法是通过pip或PyPI:

pip install codequestion

当然,你也可以克隆Github上的项目到本地:

pip install git+https://github.com/neuml/codequestion

安装codequestion须要Python 3.6版本以上。

对付Linux系统来说,可以直接运行项目,但是Windows和Mac须要安装额外项。

Windows须要安装C++ Build Tools,地址如下:

https://visualstudio.microsoft.com/visual-cpp-build-tools/

PyTorch Windows的二进制文件不在PyPI上,安装时必须添加以下url链接:

pip install txtai -f https://download.pytorch.org/whl/torch_stable.html

对付Mac来说,安装前须要运行这个命令:

brew install libomp

安装步骤已经完成了,接下来看看实例测试吧

AI驱动的问答机制

codequestion下载完成往后,还须要安装一个模型。

python -m codequestion.download

这个模型的核心便是作者David Mezzetti之前开拓的AI算法txtai。

txtai支持构建文本索引,实行相似性搜索,并创建基于提取式问题回答的系统。

作者还供应了预演习的模型:

unzip cqmodel.zip ~/.codequestion

codequestion是可以定制的,可以针对自定义的问答库运行。
目前,只支持Stack Exchange库中的问题帮助,未来会有更多的支持选项。

完成模型安装后,可以通过以下命令运行测试:

mkdir -p ~/.codequestion/test/stackexchangewget https://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地址:https://github.com/neuml/codequestion

C++ Build Tools安装地址:https://visualstudio.microsoft.com/visual-cpp-build-tools/

量子位之前先容过的Linux命令行查询工具:https://mp.weixin.qq.com/s/5vfQRsAZ4zEKOJnUNT8Ebg

— 完 —

量子位 QbitAI · 头条号签约

关注我们,第一韶光获知前沿科技动态

相关文章

QQ聊天恶搞代码技术背后的趣味与风险

人们的生活越来越离不开社交软件。在我国,QQ作为一款历史悠久、用户众多的社交平台,深受广大网民喜爱。在QQ聊天的过程中,恶搞代码的...

SEO优化 2025-03-02 阅读1 评论0

Python代码截屏技术与应用的完美融合

计算机屏幕截图已经成为人们日常生活中不可或缺的一部分。无论是分享工作成果、记录游戏瞬间,还是保存网页信息,屏幕截图都发挥着重要作用...

SEO优化 2025-03-02 阅读1 评论0

QQ无限刷礼物代码技术突破还是道德沦丧

社交平台逐渐成为人们生活中不可或缺的一部分。QQ作为我国最具影响力的社交软件之一,其丰富的功能吸引了大量用户。近期有关QQ无限刷礼...

SEO优化 2025-03-02 阅读1 评论0