在 GitHub Universe 2024 上,GitHub 展示了 AI 与代码生成的最新突破,进一步推动了开发者与 AI 的深度协作。这一新阶段不仅强调 AI 的无缝集成与会话式编码,还引入了一种全新的代理式编码模式。在这种模式下,AI 不再仅仅是应用的辅助工具,而是开发者工作流程中不可或缺的重要组成部分。通过全新的设计,每位开发者能够与多个专为特定任务设计的 AI 代理进行互动,显著提高了代码生成的效率和智能化水平。
大会中还展示了一些重要的合作与新功能,例如 GitHub Spark。这一工具进一步降低了开发者的入门门槛,使软件开发朝着更加开放和多样化的方向发展。这个变革性的阶段,将继续引领全球开发者社区,探索 AI 与软件开发深度融合的无限可能。
GitHub Universe 2024 开幕主旨演讲的核心观点包括:
- GitHub 上的 AI 项目迅猛增长:2024 年,GitHub 上新 AI 项目增长达到 98%,Python 成为最受欢迎的编程语言,超越 JavaScript,标志着 GitHub 用户群体的多元化和 AI 时代的到来。
- AI 代码生成的新阶段:GitHub Copilot 进入 AI 代码生成的第二阶段,从 AI 融合转向 AI 原生态,AI 成为开发的核心部分,对话式编码演变为代理式编码,提供更自然的交互体验。
- 多模型选择的开放性:GitHub 坚持开放的开发者平台理念,提供多模型选择功能,满足开发者对不同模型的需求,包括取消 OpenAI o1 的候补名单,引入 Anthropic 的 Claude 3.5 和 Google 的 Gemini 1.5 Pro 模型。
- GitHub Copilot 的全面升级:VS Code 中的 GitHub Copilot 体验得到全方位改进,包括多文件编辑、模型选择、自定义说明等功能,提升了开发效率和体验。
- 代码不再是唯一的构建基础:GitHub Models 平台的推出,使得 AI 工程师可以直接在平台上构建应用程序,标志着代码不再是构建软件的唯一基础,而是向更高层次的抽象发展。
- GitHub Spark 的创新:GitHub Spark 作为一个 AI 原生工具,允许任何人通过自然语言构建应用程序,模糊了开发者与普通人之间的界限,推动了技术经济机会的普及。
以下是本期内容的完整翻译,我们作了不改变原意的删减。
AI 项目在 GitHub 上的增长达到了 98%
托马斯·多姆克(Thomas Dohmke)
早上好。很高兴和大家在这里相聚。今天对我们来说意义重大。这是我们第一次在 Fort Mason 举办 GitHub Universe 活动,同时也是第十次举办这一盛会。年复一年,感谢大家给予我们的支持。在过去的十年中,GitHub Universe 见证了开源软件在创作和使用上的巨大浪潮。如今,开源的成功已毋庸置疑。自 2015 年以来,你们以迅速的行动解决了超过 6700 万个 GitHub 问题,将宏伟构想付诸实践,合并了超过 1.8 亿个 pull requests。
自 2015 年起,已有超过 3.2 亿个公共项目在 GitHub 上发起。这意味着成千上万的问题得到了解决,项目得以实现,来自世界各地的开发者得以协作创新。开源不只是像 NBA、欧洲冠军联赛或者印度超级联赛这样的赛事,它是全球最伟大的团队运动。每一次 pull request,每一次提交,大家一起塑造了全新的软件星座,推动了技术的发展。正是全球开发者们将我们带入了这场新的技术竞赛。
新 AI 时代已跨越鸿沟,AI 的浪潮正在穿越 GitHub。过去一年中,我们见证了 AI 创作的飞速增长。仅在 2024 年,新 AI 项目在 GitHub 上的增长就达到了 98%。 看看这条上升曲线吧,这种增长的影响无处不在。部分原因在于 Python 在机器学习和 AI 开发中的广泛应用,Python 现已成为 GitHub 上第一大编程语言,超越了 JavaScript。祝贺所有 Python 爱好者。这意味着 GitHub 的用户范围正在扩展,成为更多领域人士的欢迎平台,其中包括数据科学、学术界和研究领域的人士,他们在日常工作中越来越多地使用 GitHub。
AI 编程语言正在崛起。始于社交编程平台的工具现已演变为 AI 时代全球最大的创作者网络。正是你们的创造力开启了全新的创作前沿。如今,不仅是构建 AI,GitHub 上的全球开发者更进一步,你们正在使用 AI 来构建 AI。你们为与智能机器的合作绘制了蓝图。开发人员比其他领域的工作者更快地拥抱了 AI。就在三年前,GitHub Copilot 面世,如今它仍是全球最受欢迎的 AI 开发工具。衷心感谢你们的信任和支持,使 Copilot 成为如同 GitHub 一样具有革命性的存在。
现在,多谢你们的支持,Copilot 即将进入下一个阶段。AI CodeGen 的第一个阶段,GitHub Copilot 的第一个阶段,基于三个关键支柱。首先是 AI 的整合,要在开发生命周期的各个环节实现 AI 的集成。当然,如果你选择不使用 AI,完全自主进行开发也是可以的。接下来的支柱是对话式编码,ChatGPT 和 Copilot.chat 为与代码进行自然的交互奠定了基础。就像钢铁侠的盔甲,Java 允许任何人用自然语言编写代码。最后,第一个阶段我们在多模型功能上进行了构建。采用一个默认模型用于特定用例,例如使用 GPT 3.5 进行自动补全,使用 GPT 4.0 用于工作空间。
然而,今天一切开始转变。开发者与 AI 的合作将进入新阶段,第一阶段画上句号,第二阶段 AI 代码生成已经到来。这个阶段不再是 AI 的融合,而是 AI 原生态,AI 成为不可或缺的核心部分。此外,我们将看到 AI 原生态的开发者工作流程,而今天我们向大家展示的正是这种体验。在第二阶段中,对话式编码将演变为代理式编码。在 GitHub,我们定义代理为可以按照你的指令执行任务的 AI 助手。每位开发者将能通过多个为特定任务设计的代理进行交流和构建。我们今天提供的正是这种可能。
最后,在第二阶段,我们将从多模型功能向多模型选择转变。 2024 年见证了一大批高质量模型的涌现。GitHub 仍然是 GitHub,我们是一个开放的开发者平台,开发者希望能够使用对他们最有效的模型。因此,今天我们呈现的就是这样一种体验。首先,我们取消了 OpenAI o1 的候补名单。所有 Copilot 用户现在都可以公开访问 o1 Preview 和 o1 Mini。在我们自己的使用中,o1 Preview 展现了更强的代码约束和边缘情况的推理能力,产生更高效优质的结果。现在,如果你想在 Copilot Chat 中使用 o1 模型,只需点击一下即可。
但这还只是开始。今年有一个模型在开发者中引发了极大关注。它叫什么来着?就是 Claude 3.5。因此今天,我很高兴地宣布与 Anthropic 建立新的合作关系,将 Claude 的强大功能带入 GitHub Copilot。就像使用 OpenAI o1 模型一样,从今天起,你可以在模型选择器中选择 Claude。但在你兴奋地打开电脑上的 Copilot 之前,我们还有一个惊喜要为你揭晓。请欢迎世界著名的理论物理学家、该模型的创造者、Anthropic 的联合创始人兼首席科学家 Jared Kaplan 登台。很高兴见到你,Jared。
贾里德·卡普兰(Jared Kaplan)
非常感谢您的邀请。
托马斯·多姆克(Thomas Dohmke)
谢谢你今天接受采访。Jared,你是如何从理论物理学家转行成为 AI 科学家的呢?
贾里德·卡普兰(Jared Kaplan)
小时候,我对科学和宇宙起源的问题充满了好奇,对人工智能也非常感兴趣。不过,在我求学时,还没有像 GitHub 这样让软件开发和 AI 研究变得如此便捷的工具。由于我比较懒,就选择了继续学习物理。然而,在旧金山做博士后期间,我结识了许多有趣的朋友。随着人工智能领域日益令人兴奋,这些朋友,如当时在 OpenAI 负责研究的 Dario Amodei 和从事可解释性研究的 Chris Olah,向我介绍了很多精彩的事物。于是,我决定稍作停歇,看看自己是否能在这个新兴领域中大展拳脚。接下来的事,大家都知道了。
托马斯·多姆克(Thomas Dohmke)
真是令人惊叹。请您分享一下 Cloud 3.5 Sonnet 的起源,以及它为何在众多开发者中引起如此巨大反响。
贾里德·卡普兰(Jared Kaplan)
我们创立 Anthropic 是因为预见到人工智能将迅速取得重大进展,并希望引导其朝着有益的方向发展。那么,这与 Cloud 3.5 Sonnet 有什么关系呢?我们一直在思考如何让更多的人尽快获得最前沿的模型功能。如果我们无法立即部署新的 AI 模型,那么在六个月或一年后再采用它们时,可能已经落后了。因此,我们思考如何快速地让更多人使用这些模型。答案就是尽可能将模型优化为适合开发人员的工具, 因此我们决定将 Claude 3.5 Sonnet 优化为一个非常适合软件开发的模型。
托马斯·多姆克(Thomas Dohmke)
这真是太棒了。那么,你认为 GitHub 和 Anthropic 的合作对开发者意味着什么呢?
贾里德·卡普兰(Jared Kaplan)
我认为这将非常精彩。当物理学家询问我如何进入 AI 领域时,我总是告诉他们,最有效的方法不是通读大量论文,而是亲自动手实践。因此,我建议他们学习使用 GitHub 等工具,这对于进入 AI 领域是重要的一步。我希望这个机会能够带来惊喜,因为人们可以选择模型,开始编程,并运用最新最好的工具。
托马斯·多姆克(Thomas Dohmke)
好的,那么还有一个问题:Claude 未来的计划是什么?能给我们讲讲具体的发展方案吗?
贾里德·卡普兰(Jared Kaplan)
我倾向于从两个方面思考 AI 能力的提升:一是 AI 模型能完成多么复杂的任务,二是 AI 模型能在何种环境中与你互动。 换句话说,就是 AI 模型能够在哪些环境中运行。随着新版 Sonnet 等新产品的发布,我希望这些模型在任务完成上变得更为优异,如能够自主编程等,从而能够执行更复杂的工作流程,并在与你共事时提供更大帮助。
同时,我期待在不久的将来,借助例如计算机的技术,人们不仅能在终端或集成开发环境(IDE)这类受限的环境中操作,还能通过 Claude 这样的 AI 助手来使用所有应用程序,进行软件测试并扩展各种能力。这正是令我兴奋之处:Claude 能够在更多不同的情境中与你合作。
托马斯·多姆克(Thomas Dohmke)
真是太棒了!我们感到无比兴奋。贾里德,衷心感谢你今天早上拨冗与我们交流。
贾里德·卡普兰(Jared Kaplan)
感谢邀请,我感到非常荣幸。
托马斯·多姆克(Thomas Dohmke)
今天在台上听到 Jared 的消息真是太令人高兴了。我们对此感到无比激动。此外,还有一则重磅消息:我们关于多模型选择的承诺绝非虚言。今天,我们欣然宣布与 Google 合作,将 Gemini 1.5 Pro 引入到 GitHub Copilot 中。正如在我身后的演示中所展示的,GitHub Copilot 即将推出的新模型选择器将允许开发者使用 Gemini 1.5 Pro 来进行开发。此模型具备多模态能力,能够同时处理代码、图像、视频和文本,在课程建议、撰写文档及代码解读等方面表现出色。
在接下来的几周内,我们将逐步为 Copilot 的众多界面提供多模型选择功能。现在,让我们谈谈在 VS Code 中的 Copilot 体验。与 Microsoft 的合作伙伴密切合作后,我们对编辑器内的体验进行了全方位的改进,打造了一个更加出色的 Copilot。现在,让我们展示一下成果。请登场,Cassidy。
卡西迪·威廉姆斯(Cassidy Williams)
大家好,早上好。感谢 Thomas 的介绍。我是 Cassidy,非常高兴能向大家展示我们即将推出的新功能。正如 Thomas 所说,我们正在为 VS Code 中的 GitHub Copilot 进行升级。更多功能的编辑器内集成意味着更少的上下文切换,对于像我这样总是开着太多浏览器标签、邮箱塞满,还有被最新的 Rosé和 Bruno Mars 歌曲分心的人来说,这可是个好消息。不论如何,今天我们要展示很多新内容。
Copilot 不仅仅是一个 AI 开发工具,它是一个智能平台,整合了多种工具和服务,为您提供一个完整的生态系统。那么,GitHub Universe,大家准备好看看我们为你们准备了什么吗?我会进行现场演示,展示如何操作。这是 Copilot Airways 的网站,在这里每个飞行员都是一名副机长,所以这是我们今天将一直在上面工作的项目,用它来创造一些酷炫的东西。
在具体讨论之前,我会先查看一些代码。有谁使用过 GitHub Copilot 吗?哇,太好了,你们让我的工作轻松多了。对于还没有使用过的人也没关系。我会展示一个例子,看看它能做些什么。比如,我可以输入一个函数,命名为“获取世界上最酷的开发者”,然后尝试自动补全,看看到底能返回什么结果。
卡西迪·威廉姆斯(Cassidy Williams)
AI 本质上就是一个非常智能的自动补全工具,你可以通过 GitHub Copilot Chat 使用它。我可以在这里选择内容,甚至无需用英语提问,可以直接用西班牙语说“puedes explicar…”,然后它就会用西班牙语在聊天中解释这段代码的作用。因此,它认定我是世界上最酷的开发者,这就是你需要了解的全部信息。以上是对 Copilot 工作的一个大概介绍。
不过,我们今天想尝试一些新功能。我会重置它,重新访问我们的网站,打开个人资料页面。在这个页面上,你会看到我们的飞行积分记录数据,也就是你在各种旅行中获得的积分。这张表格已经很不错了,但我觉得用图表表示会更好。所以我回到代码中,删除这个函数。我想问 Copilot,代码中有没有其他地方画过折线图?这可能会很有帮助。
这个过程称为意图检测,系统会识别我在问什么,然后询问工作区的代理我的当前操作。它也在对代码库进行索引,把我们的代码库作为可信的参考来源。可以看到,我们的代码库中已经有一个名为“按时折线图”的实例,可以使用它。但我认为面积图会更好。如果我们想用面积图,那就意味着我需要创建一个新组件,需要修改这个个人资料页面,可能还需要添加测试或在 readme 中添加说明。这需要很多的更改。如果可以同时编辑多个文件就好了。现在,我们可以做到这一点了。Copilot 的多文件编辑功能已经上线。
因此,我们在这里有一个新的编辑模式,非常有趣。首先,我可以在下拉菜单中更换模型,比如选择 Claude,然后我可以说,嘿,你能从我们的积分活动服务中创建一个新的可重用面积图吗?我希望它显示在积分活动表格的下方,并且它的行为类似于现有的“按时折线图”。当然,别忘了编写测试。然后我们点击执行,看看结果。
我们收到逐步说明:我们会创建一个图表组件,将其添加到个人资料页面,并为这个新组件创建测试。它立即开始创建这些文件了。你可以看到我们已经有了这个每月积分面积图表,它是基于现有代码库的,并且用绿色差异标记,以确保你能看到新增内容。谢谢大家,我整个星期都会在这里。然后我们还有一个测试文件,为每个组件创建单元测试。我保存下来,效果不错。它将每月积分面积图表直接添加到我们的组件中,所以我可以将所有内容保存并接受,然后如果我回到个人资料页面,看看吧!我们有一个小悬浮图表哦,看上去非常不错。
在今天结束前,我还想展示一些后台功能。所以,如果我回到每月积分面积图中,你可能会注意到这里有一个小的功能标志条件。LaunchDarkly 是一项功能标志服务,它与 GitHub 合作并有一个 GitHub Copilot 扩展。今年 5 月发布的 GitHub Copilot 扩展可以拓展 GitHub Copilot 的功能。
在这个特定的例子中,我会回到我们的聊天中,标记 LaunchDarkly,并基于我们的每月积分图创建标志,然后运行扩展功能。我们已经有一个小弹窗说要创建标志,并提供一个密钥,使其可以在服务器上使用。然后我可以在 VS Code 里直接切换这个标志,而不需要离开这个工具,一切就这样运作了。
还有很多很酷的扩展功能。你可能会问,为什么要加这个功能。这实际上是我们最喜爱的功能之一,叫做 GitHub Copilot 自定义说明。它是一个你可以在 GitHub 文件夹中添加的名为 Copilot Instructions 的 markdown 文件,你可以在其中说明你希望 Copilot 执行的操作。这是我们收到最多请求的功能之一。
在这个代码库中,我们要求每当创建一个可重用的 React 组件时,请确保添加 LaunchDarkly 服务。但你可以在这里放入任何你想要的内容,比如“我希望所有的函数都有一些文档字符串”、“我希望它遵循某些 lint 规则”、“我想在每个组件底部加上一条评论,说 Cassidy 是世界上最酷的开发者,因此你的演示看起来很棒”等等,可能性无限。这就是实现这个图表的幕后工作。
好了,我想我们就讲到这里了,真是太酷了,对吧?谢谢大家。这就是 GitHub Copilot 最新、最强大的功能。我们不仅仅是展示这些功能,还提供给你这些功能。因此,你在演示中看到的一切,所有这些功能,都是你在 VS Code 中的全新体验,从多文件编辑、模型选择、自定义说明到 GitHub 搜索、意图检测、代码库索引,甚至是你没有看到的代码引用和代码审查。我希望你还在这里。所有这些功能将在本周向每一个 Copilot 用户开放,无论是个人、企业还是商业用户。
卡西迪·威廉姆斯(Cassidy Williams)
也就是说,对于那些希望立即使用强大功能的用户来说,GitHub Copilot 的插件现已上线。你可以从 Supabase、Atlassian 和 Sentry 等多种插件中选择。而且,我们将在插件市场中持续增加更多内容,这个市场的多样性就如我们的用户群体一样广泛。你也可以加入其中,因为你可以创建自己的插件。不过,这些选择不仅仅局限于插件,甚至不限于 VS Code。
对了,我们同样关注苹果开发者的需求。现在,GitHub Copilot 已可在 Xcode 中使用。在今天的公开预览中,苹果生态系统的开发者可以在开发、测试和部署过程中利用 GitHub Copilot 的功能。无论你在哪里工作,是在移动设备上、桌面上、GitHub.com 远程操作还是在本地机器上,我们都致力于让你的工作更简单、更轻松,并为你提供自主选择的能力。好了,这就是我今天要分享的全部内容。非常感谢。接下来,让我们欢迎 Tim Rogers。
代码已不再是构建软件的唯一基础
蒂姆·罗杰斯(Tim Rogers)
GitHub 的用户们好!我是 Tim Rogers,GitHub Copilot 的产品经理。今天我们讨论的是关于 GitHub Copilot 的多模型选择问题。我认为这个主题值得深入探讨。如今,代码已不再是构建软件的唯一基础。在这个快速发展的创作者网络中,开发者正在构建更高层次的抽象,无论是大型模型还是小型模型。 今年夏天,GitHub 推出了一款新工具,名为 GitHub Models。这是一个专为 AI 工程师打造的平台,他们可以在上面直接构建应用程序。通过 GitHub Models,您可以快速实现从模型构建到沙箱测试再到部署的全流程。
今年夏天,我们发布了一系列创新产品。在我们的模型市场中,您可以找到独特的模型,比如 Mistral Large 和 Mistral Nemo。我们还推出了小型语言模型 PHY3。像 Meta 的 Llama Suite 这样的模型展示了开放智能的多样性。我们很高兴能够在平台上增加更多的模型,从 Cohere Command 到 Bria AI,再到 OpenAI o1,所有你需要的模型都可以在 GitHub 上找到。
作为一名技术爱好者,我想要展示 GitHub 的强大功能。回到 Copilot Airways,我们想通过网站激发客户的旅行灵感,因此建立了一个展示热门旅游目的地的旅游指南。我撰写了关于我去过的地方的评论,例如旧金山。我需要在地图上标记这些目的地,这需要从评论中提取关键信息,比如描述和亮点。
可以手动完成这项任务,但这种任务正适合于大语言模型。于是,我们在 GitHub Models 上探索并比较了不同的 LLMs。进入 GitHub Marketplace,点击 Models,可以看到许多可用的模型。尽管有筛选器以帮助浏览,但仍可能令人不知所措。不过,如果 Copilot 能在 Copilot Chat 中指导您推荐适合的模型,就能通过应用模型扩展实现此功能。使用这个扩展,我可以征求建议,它将利用所有搜集来的数据帮助我做出决定。
我对于法国模型有所偏爱,因此我请求一些建议,看看哪个 Mistral 模型适合提取评论中的 JSON 数据。Copilot 提供了一些建议,我选择了 Mistral Large 来尝试效果。打开聊天后,确定了合适的供应商,并锁定 Mistral Large。在它的 README 中,有关训练日期和许可证等信息一应俱全。更重要的是通过沙箱测试,我可以用自己的提示和参数真实地检验模型功能。
利用 Compare 功能,我可以比较两个模型在同一任务上的表现,简单易用。右侧选择的是速度更快且小巧的 Mr。Alnimo 模型。在准备好后,我设置这些模型的提示,即通过评论提取出一组 JSON 字段进行比较。
使用参数设置功能,我将关于旧金山的评论作为提示输入系统,然后魔法就开始了。两个模型运行后,可以比较结果。右边的 Mr。Alnimo 模型运行得更快,结果也不错,鉴于其效率和经济性,我可能会选择它。将生成的 JSON 复制到我的项目中,任务就完成了。
在 GitHub Models 上不仅有这些模型,还有大量多模态模型,可以接受图像和文本输入。让我们尝试一下 OpenAI 的 GPT-4o mini。进入沙箱后,我上传了一张金门大桥的图片,询问模型描述,得到了满意的回答:桥。
GitHub Models 及其 App Models 扩展现已对所有 GitHub 用户开放。通过这些工具,我们进一步拓展了 GitHub 的功能。全球超过一亿的开发者现在都可以像我一样,利用这些新工具成长为 AI 工程师。本次实验到此结束,谢谢大家。
卡西迪·威廉姆斯(Cassidy Williams)
请欢迎埃里尼·卡利亚马瓦库。
埃里尼·卡利亚马瓦库(Eirini Kalliamvakou)
大家好,GitHub 生态系统的伙伴们。我是 GitHub Next 团队的成员,这是一个专注于软件开发未来的内部研究团队。半年前的 4 月 29 日,我们推出了 Copilot Workspace 的技术预览版。作为一名优秀的研究员,我今天来向大家汇报这项实验的进展。
首先,Workspace 是一个原生支持 AI 的开发环境,在从构思到执行的每一个步骤中,你都可以利用各类智能代理和 AI 的助力。这个过程源自一个问题的提出,并有三个代理协助你:负责规格的代理会分析你的代码库,找出实现目标状态的方法;负责计划的代理会为需要更改的文件制定计划和方案;负责实现的代理会生成所需的代码。这一切都在你的指导下完成。
自发布以来,技术预览版的开发者已对这些功能进行了测试。到目前为止,我们的早期用户已借助 Workspace 创建了超过 15,000 个拉取请求,其中 10,000 多项已成功合并。更重要的是,我们与数千名使用 Workspace 的开发者进行了沟通,比如视频中的 Nikhil。我们非常感激您的反馈,这对我们来说是无价的礼物。无论是赞美还是批评,我们都从中学习。大多数反馈都是正面的。技术预览上线一个月后,有人分享说 Copilot Workspace 帮助他们轻松启动了一个应用。现在,对于早期用户而言,Copilot Workspace 已成为他们首选的开始方式,将时间从几天缩短为几小时,甚至几分钟。
有时反馈具有建设性,比如有人指出在 Workspace 内验证代码比较麻烦,需要手动进行。这表明我们有需要解决的问题。我们收集了大量反馈,这对我们至关重要。虽然我们的小团队只有五人,但凭借您的反馈,我们取得了显著进展。自技术预览发布以来,我们已经对 Copilot Workspace 进行了超过 100 次改进,包括重新设计、新功能以及一些细微改进以增强用户体验。正是因为有您的建议,Workspace 取得了飞跃性的进步。
相比于四月,现在的功能提升了百倍。我们在工作流的两端增加了两个代理,一个称为 Brainstorm 的创意生成代理,另一个用于代码构建和修复。因此,现在的 Copilot Workspace 体验有五个智能代理。我们还推出了一个 VS Code 扩展,并将 Workspace 的功能扩展到了拉取请求的处理。这仅仅是冰山一角。总之,随着这一系列演变,AI 正在成为开发人员的第二大脑,成为真正有用的合作伙伴。Copilot Workspace 的下一步变革已经到来。你想看看吗?太好了。
埃里尼·卡利亚马瓦库(Eirini Kalliamvakou)
出来吧,Karan。
卡兰(Karan M。V)
感谢你,Eirini。让我们继续开发 Copilot Airways。可以看到,Copilot Airways 目前有一个旅行指南,里面只有地图和推荐城市的描述。之所以如此,是因为在管理页面上,我们只能看到这些内容。我认为,如果我们能为每个帖子添加这些美丽地方的图片会更好。所以,我们需要一个功能来为每个帖子添加图片。
我的一个团队成员已经在 GitHub 上描述了我们的需求。通常情况下,我会创建一个新分支,并开始考虑如何自己实现。但使用 Copilot Workspace,我可以直接从 GitHub 问题中打开。从中可以看到,Copilot Workspace 立即开始工作,提供了实施这一功能的详细说明。通过新推出的头脑风暴功能,我们可以在 Copilot Workspace 中更迭代地进行思考。基于上下文信息,头脑风暴功能给我们提供了一些建议问题来激发想法,或供我自行考虑。让我们在这里进行头脑风暴,看看我们有哪些选项可以用来上传图片。
头脑风暴向我分享了几个建议,包括使用文件输入元素、第三方库或云存储服务。为了保持我们的功能简单,我们选择使用文件输入元素。我点击“添加到任务”,可以看到 Copilot Workspace 从头脑风暴会议中提取了这些想法作为上下文。因此,现在不仅是一个 GitHub 问题,还有来自多个来源的信息。看起来不错,所以我点击“生成计划”,Copilot Workspace 会给我提供需要修改的文件列表,如有必要,我可以进行编辑。但我现在准备好开始了,于是请求 Copilot 执行这个计划,它将在多个文件中进行必要的更改。
可以看到它已经进行了一些编辑;这里是我们的输入字段。嗯,我们有了输入字段,但我认为如果能预览上传的图片会更好。因此,在 Copilot Workspace 中,我们可以通过请求修订来不断迭代我们的计划和实现。现在,我可以使用自然语言与 Copilot 沟通,这意味着即使是使用像印地语这样的语言也可以。我用我的印地语风格请求:上传后显示图片预览。这里就是了。Copilot 理解了我的意思,并返回计划为我进行了更新,希望在我们需要的地方显示图片预览。
好了,我认为我们还没有完成,因为,作为一个对测试持有热情的开发者,让我们先运行一些测试。在 Copilot Workspace 中,我们对构建、测试和运行的命令进行了很好的增强,这些是很常见的情况。可以看到,我这里配置了相关命令,因此可以直接在 Copilot Workspace 中运行测试,并由它为我运行测试。
看起来我的测试技能还不到位。但不用担心,因为 Copilot Workspace 还可以帮助我解决这个问题。借助刚刚启动的构建和修复代理,Copilot Workspace 帮助我想出了一个解决方案。啊,我们只是添加了一个新的输入字段,但实际上没有在测试中包含它,这导致了失败。因此,我可以直接在 Copilot Workspace 中进行更改,正如你在这里看到的。然后我可以返回并重新运行测试,看看问题是否得到解决。太好了,正如预期的那样。测试看起来很简单,对吧?
好了,我认为我们的功能现在可能已经准备好了,这正是我们的意图。所以让我们预览一下我们到目前为止所构建的内容。我可以直接在这里运行命令,如果我还没有配置,不用担心。Copilot 会帮我,它会建议一个命令,我可以再次在 Copilot Workspace 中运行这个命令。你可以看到,它已经为我启动了开发服务器,我可以在这里打开它,显示在管理页面上的 Copilot Airways。
很好,这就是我们想要构建的功能。在过去的几分钟里,我们从一个描述的问题开始,然后在 Copilot Workspace 中进行头脑风暴,实施代码,并在使用自然语言的同时修复错误。这是未来的开发者环境,一种随创意推动的工作流程。
我还有一件事没有展示给你,Copilot Workspace 还扩展到了拉取请求。通过这个新功能,你可以处理来自团队和 AI 代理的反馈,使 Copilot Workspace 成为你团队的一部分。所以从 VS Code 到头脑风暴、构建、修复和拉取请求,这就是 Copilot Workspace 的下一步演进。谢谢,交回给托马斯。
托马斯·多姆克(Thomas Dohmke)
这真是太棒了!请再次为 Cassidy、Tim、Eirini 和 Karan 鼓掌。这些演示是通过 GitHub.com 进行现场部署的。正如大家所见,我们在 CoPilot Workspace 上取得了显著的进展,期待在接下来几周内有更多的开发者能体验到它。自 GitHub CoPilot 推出以来,这可能是我们为专业开发者打造的最具革命性的工具。
CoPilot Workspace 本质上是为开发者设计的工具,但是,若我们更进一步呢?想想那些想要开发软件但不会编写代码的人,比如我们的通讯员、在家观看的家长以及不在技术行业的朋友,他们仍然觉得编程像在看天书。今天,我要展示一个重大进展,它从根本上模糊了开发者与普通人之间的界限。
介绍 GitHub Spark,这是一款完全通过自然语言构建应用程序的 AI 原生工具。 现在任何人,无论有无经验,都可以在几分钟内创建并分享一个应用程序。为什么不再来一个现场演示呢?请看屏幕上的 GitHub Spark,首先注意到,它不是传统意义上的 IDE。我不需要安装 Python。取而代之的是一个问我“想创建什么”的输入框。此外,还有一个新的模型选择器,显示了不同的模型和我最近的 Sparks,可以通过浏览这些了解你能用 Spark 做些什么,比如播客计时器应用、卡拉 OK 晚会规划工具、车辆游戏等。
说到游戏,我总喜欢在空闲时用大型语言模型制作小游戏。那么,让我们来创建一个由河马和橡皮鸭参与的井字游戏。不论是河马还是鸭子,我们来看看这个模型会怎么做。这里是我的提示:创建一个有鸭子和河马的井字游戏。
我点击开始,模型就为我完成了所有工作。你之前已经看到可以在聊天中做到这一点的演示,然后你必须搞清楚要把哪些代码放到哪些文件中,需要复制粘贴内容,还得学会如何在终端上运行。但在这里,它为我们完成了这一切,看到屏幕上的数字流入。底部已经可以看到控制台,我可以在这里优化我的提示。所以这就是我的井字游戏。
当然,我希望 Moo Deng 能赢,对吧?河马需要赢,所以这次是鸭子。看看我是否还可以…这是我的 Moo Deng。假设鸭子玩得很酷。那么,是的!赢了!真不错,让我迅速展示一下底部,我当然可以添加另一个提示来优化我的 Spark。我可以设置主题,因为外面阳光明媚,我想要一个明亮的主题。我可以更改游戏的尺寸,稍微大一点,很酷。我可以更改强调色彩,我能非常快速地对 UI 进行各种修改。我可以点击我的设置,添加自定义指令,这类似于 Cassidy 之前在 VS Code 里做的事情。我可以在由 Azure Cosmos DB 支持的键值存储中存储数据。
在我继续迭代之前,为了节省时间,我的团队在后台已经准备好了一个应用,用于扫描会议徽章,这一切都是用自然语言创建的。你实际上可以在侧边看到每个步骤,看到他们使用的所有提示。为了达到这个演示点用了很多提示。你当然可以点击这些,并在历史记录中滚动查看。但最酷的是,它确实运行了。所以我可以打开相机,看看,我在这里。还有我的会议徽章,和你们得到的一样。哦,它消失了。相机在哪里?然后我扫描我的徽章,出现了我的照片、姓名、账户等等。我可以隐藏这些信息,也可以在展会上用手机运行这个应用程序。这是一个个人应用的例子。
那么,我想展示一下,如果我点击数据,当然,这里有我之前扫描的所有存储数据。这是 GitHub Spark 强大功能的一个简短展示。我们非常期待赶快把它送到你手中。通过这个演示,我真正想展示的是,好奇心的浪潮已经全面展开。一波新的个人应用正在涌现。
这意味着什么呢?因为很长一段时间以来,无论是因为英语作为编程的主要语言不是你的母语,还是因为你没有机会学习编程,或者觉得编程的技术高不可攀,不敢迈出第一步。长期以来,一道坚实的水泥墙将世界上大多数人隔离在不能创建软件的圈子外。这限制了技术经济的机会,把我们的行业变成了一个围墙花园。通过 GitHub Spark,我们将在这堵墙上打出无数裂缝。有一天,很快的某一天,在你们所有人的帮助下,我们将最终打破这道屏障,将它彻底推倒。
现在,比以往任何时候都更有可能让多达十亿人在 GitHub 上共同构建软件。是的,这是为 AI 时代创造的创作者网络,适合所有人。这是我们的目标,我们全力实现它。感谢你的观看和参与。今天和明天,我们还有许多内容和公告,请享受第十届 GitHub Universe。我们很快再见。