Press "Enter" to skip to content

5 search results for "linter"

利用实体提取、SQL查询和具有Amazon Bedrock的代理来提升基于RAG的智能文档助手的能力

近年来,由于生成式人工智能(Generative AI)的快速发展,尤其是通过指导微调和强化学习等训练技术引入的大语言模型(LLMs)的性能改善,会话型人工智能(Conversational AI)取得了长足的进步在正确提示的情况下,这些模型可以进行连贯的对话,而无需任何特定任务的训练数据[…]

Leave a Comment

“Hugging Face的夏天”

夏天正式结束了,过去的几个月里,Hugging Face非常忙碌。从Hub上的新功能到研究和开源开发,我们的团队一直在努力通过开放和协作的技术来赋能社区。 在这篇博客文章中,您将了解到Hugging Face在六月、七月和八月发生的一切! 本文涵盖了我们团队一直在努力的各个领域,所以请随意跳到您最感兴趣的部分🤗 新功能 社区 开源 解决方案 研究 新功能 在过去的几个月里,Hub的公共模型仓库从10,000个增加到了16,000多个!感谢我们的社区与世界分享了这么多令人惊叹的模型。除了数量,我们还有很多很酷的新功能要与您分享! Spaces Beta ( hf.co/spaces ) Spaces是一个简单且免费的解决方案,可以直接在您的用户个人资料或您的组织hf.co个人资料上托管机器学习演示应用程序。我们支持两个很棒的Python SDK,让您可以轻松构建酷炫的应用程序:Gradio和Streamlit。只需几分钟,您就可以部署一个应用程序并与社区分享!🚀 Spaces可以设置秘密,允许自定义要求,甚至可以直接从GitHub仓库进行管理。您可以在hf.co/spaces上注册beta版本。以下是我们的一些收藏! 使用Chef Transformer创建食谱 使用HuBERT将语音转写为文本 在视频中进行分割,使用DINO模型 使用Paint…

Leave a Comment

大型序列模型用于软件开发活动

由Google研究科学家Petros Maniatis和Daniel Tarlow发布 软件并非一步到位创造出来的,它是逐步改进的,一点一点地改进——编辑、运行单元测试、修复构建错误、处理代码审查、再次编辑、满足linter的要求,修复更多错误——直到最终变得足够好并合并到代码仓库中。软件工程不是孤立的过程,而是人类开发人员、代码审查人员、错误报告人员、软件架构师和工具(如编译器、单元测试、linter和静态分析器)之间的对话。 今天,我们介绍DIDACT(​​Dynamic Integrated Developer ACTivity),这是一种用于培训大型机器学习(ML)模型进行软件开发的方法。 DIDACT的新颖之处在于,它使用软件开发过程作为模型的训练数据源,而不仅仅是该过程的精细终态——完成的代码。通过向模型展示开发人员在工作时看到的上下文以及他们采取的行动,模型学习软件开发的动态,更符合开发人员花费时间的方式。我们利用Google软件开发的工具来扩大开发人员活动数据的数量和多样性,超越了以前的工作。结果在两个方面非常有前途:对专业软件开发人员的有用性,以及作为植入ML模型的一般软件开发技能的潜在基础。 DIDACT是一个多任务模型,训练开发活动,包括编辑、调试、修复和代码审查。 我们构建并内部部署了三个DIDACT工具,评论解决(我们最近宣布)、构建修复和提示预测,每个工具都集成在开发工作流程的不同阶段。所有这三个工具都得到了数千名内部开发人员的热烈反馈。我们认为这是有用性的终极测试:专业开发人员是否利用这些工具来提高生产力? 最令人兴奋的是,我们展示了DIDACT是通向一种通用开发者辅助代理的第一步。我们展示了经过训练的模型可以通过提示开发人员活动的前缀以各种令人惊讶的方式使用,并通过链接多个预测来展开更长的活动轨迹。我们相信DIDACT为开发能够在软件开发过程中通用辅助的代理铺平了一个有前途的道路。 软件工程过程中的数据宝库 Google的软件工程工具链将与代码相关的每个操作存储为工具和开发人员之间交互的日志,并已经这样做了几十年。原则上,人们可以使用这个记录来详细重现“软件工程视频”中Google代码库的关键情节,一步一步地——一次代码编辑、编译、评论、变量重命名等等。 Google的代码位于monorepo中,一个包含所有工具和系统的代码单一存储库。软件开发人员通常会在由名为“Clients in the Cloud(CitC)”的系统管理的本地写时复制工作区中尝试代码更改。当开发人员准备将一组代码更改打包到特定目的(例如修复错误)时,它们会在Critique中创建一个变更列表(CL),这是Google的代码审查系统。与其他类型的代码审查系统一样,开发人员与同行审查人员就功能和样式进行对话。随着对话的进行,开发人员编辑他们的CL以解决审查人员的意见。最终,审查人员宣布“LGTM!”(“看起来不错”),CL被合并到代码库中。 当然,除了与代码审查人员的对话之外,开发人员还与其他大量软件工程工具进行“对话”,例如编译器、测试框架、linter、静态分析器、fuzzer等。 开发软件所涉及到的复杂活动的插图:开发人员的小动作,与代码审查人员的互动以及使用编译器等工具。 软件工程的多任务模型 DIDACT利用工程师和工具之间的交互来支持ML模型,从而协助Google开发人员在追求其软件工程任务时,建议或增强开发人员在上下文中采取的行动。为此,我们定义了许多有关单个开发人员活动的任务:修复破碎的构建、预测代码审查评论、处理代码审查评论、重命名变量、编辑文件等。我们对每个活动使用一个共同的形式化:它需要一些状态(代码文件),一些意图(特定于活动的注释,例如代码审查评论或编译器错误),并产生一个操作(执行任务所需的操作)。这个操作就像一个小型编程语言,可以扩展到新添加的活动中。它涵盖了编辑、添加注释、重命名变量、标记带有错误的代码等内容。我们将这种语言称为DevScript。 DIDACT模型受到任务、代码片段以及与该任务相关的注释的促进,并产生开发操作(例如编辑或评论)。 这种状态-意图-操作形式使我们能够以一般方式捕获许多不同的任务。更重要的是,DevScript是一种简洁的表达复杂操作的方式,无需输出整个状态(原始代码),因为它在动作发生之后就会变得如此;这使得模型更加高效和可解释。例如,重命名可能会触及文件中的数十个地方,但是模型可以预测单个重命名操作。 ML同行程序员…

Leave a Comment

Can't find what you're looking for? Try refining your search: