许多开发者使用 Stack Overflow 搜索开发中遇到的问题,有时候需要查询的结果中有通俗的讲解,而且最好还能够带上代码 demo,但是两者同时很完美地满足要求还是比较困难的。不过最近 Stack Overflow 官方博客上介绍了一种智能化的技术,或许可以解决这一问题。
新技术名叫 CROKAGE(Crowd Knowledge Answer Generator,群众知识答案生成器),它来源于今年早些时候一个计算机科学研究小组发表的一篇论文,CROKAGE 可以将提问作为查询,然后返回相关的、全面的编程解决方案,所谓全面,就是说它不仅有代码片段,还包括简洁的自然语言解释,这样开发者就不用在众多的答案中拼凑出一个解决方案。
CROKAGE 使用 Stack Overflow 上的数百万个 Q&A 作为训练语料库进行训练,还扩展了自然语言查询(任务描述),包括从 Stack Overflow 中仔细挖掘出来的独特的开源软件库和功能术语。
对于返回来的候选答案,研究人员组合了四个加权因子进行排序,他们利用传统的信息检索(IR)指标,如 TF-IDF 和非对称相关性,同时为了适应 Stack Overflow 的环境,还采用了非常适合软件特定文档的针对性排序机制。
简单来讲,整个运作机制如前边的图片所示,主要分为几个步骤:
- A、语料库准备
- B、构建模型,map、索引
- C、搜索相关答案
- D、整合编程解决方案
研究团队还对结果进行了对比,如下图所示,在对比中,CROKAGE 给出的建议答案中,代码示例的相关性、代码解释的清晰度以及整体解决方案的质量(也就是代码+解释的整体质量),比目前最先进的工具产出了更好的结果。
目前 CROKAGE 还有一些局限性,比如它仅支持 Java 语言的相关查询,而且如果问题描述比较差,那工具也无法给出如何改进的建议。
开发者可以通过 http://www.isel.ufu.br:9000 体验该功能。
关于该功能的更多信息,查看:
继续阅读与本文标签相同的文章
python使用max()函数获取最大值
php实例之从指定位置开始读取文件内容
-
大反转!谷歌态度开始“服软”,华为即将获得GMS许可
2026-05-14栏目: 教程
-
Python 超简单实现9种图像风格迁移
2026-05-14栏目: 教程
-
华为打回欧洲市场!HMS取得重大成功,大量APP接入!谷歌慌不慌?
2026-05-14栏目: 教程
-
PS保存图片提示“无法完成请求”,这里有4种解决方法!
2026-05-14栏目: 教程
-
想买1000元左右的5G手机?我们需要等多久?
2026-05-14栏目: 教程
