写点什么

Xcode 16 带来使用自定义模型的预测代码补全功能

  • 2024-07-09
    北京
  • 本文字数:943 字

    阅读完需:约 3 分钟

大小:448.50K时长:02:33
Xcode 16 带来使用自定义模型的预测代码补全功能

在 2024 年的全球开发者大会 (WWDC) 上,Xcode 和 Swift Playground 的资深经理 Ken Orr 展示了 Xcode 16 新版本的核心特性,其中包括预测性代码补全以及众多的错误修复和性能优化。

 

苹果公司在本次大会上的一个核心主题是将生成式人工智能技术整合进他们的操作系统和开发工具中。Xcode 在这方面也展现了新的飞跃,特别是其新的基于大预言模型的代码补全功能。Orr 详细阐述了苹果如何专门为 Swift 语言及其 SDK 开发和训练了一个定制的模型。

 

[预测性代码补全]功能通过利用您项目的符号来定制化建议,并能在您的 Mac 上独立运行。您的代码将保持私有,它能迅速地提供结果,并且在您离线的情况下也能正常工作。

 

Orr 展示了 Xcode 如何仅通过输入 struct 的首字母,就能推荐变量名和类型。这种智能化的行为也适用于函数定义,Xcode 能够在特定情况下提出实现方案,例如 Orr 所演示的,当函数用于对集合进行排序时。

 

如你所期待,预测性代码补全可以根据用人类语言表达的注释来生成函数。例如,如果你输入注释 Return videos for a given director,如 Orr 在演示中所做,Xcode 将建议函数签名 func videosForDirector(_ director: String) -> [Videos],以及一个可行的集合过滤实现。

 

Xcode 预测性代码补全的另一亮点是其能够自动填充你从对象上可用的方法列表中选择的函数的所有参数。这意味着你得到的不仅是常规的占位符,而是一开始就能编译的代码,希望这些代码含有有意义的值,以便你可以立即尝试,Orr 表示。

 

这项更新并不算是革命性的,它与我们对目前市面上已有的大预言模型支持的 IDE 所期待的功能相近。不过,苹果现在将这种功能整合到其标准开发环境中,提供给所有开发者,并且与其平台、语言和工具紧密结合,这一点确实值得关注。

 

另外,值得注意的是,Xcode 的预测性代码补全模型体积小于 2GB,需要配备苹果硅片和至少 16GB 的统一内存才能运行。

 

Xcode 16 还包括了许多其他新特性和错误修复,这些更新涉及用户界面、Clang 编译器、资产目录、构建系统、C++ 标准合规性等多个不同的领域。请确保查阅官方发布说明,获取全部的详细信息。

 

Xcode 16 目前处于测试版,需要在安装了 macOS Sonoma 14.5 或更新版本的 Mac 上运行。


原文链接:

https://www.infoq.com/news/2024/06/xcode-16-predictive-code-complet/

2024-07-09 13:315118

评论 1 条评论

发布
用户头像
Xcode太大了,每次想安装又犹豫了
2024-07-10 10:32 · 广东
回复
没有更多了
发现更多内容

go-zero docker-compose 搭建课件服务(七):prometheus+grafana服务监控

六月的

Docker-compose go-zero

react源码中的fiber架构

flyzz177

React

go channel原理及使用场景

六月的

Go channel

golang的内存管理

六月的

golang 内存管理

Java中的接口详解

共饮一杯无

Java 接口 10月月更

etcd实现分布式锁

六月的

分布式锁 etcd

go-zero docker-compose 搭建课件服务(三):编写courseware api服务

六月的

Docker-compose go-zero

go-zero docker-compose 搭建课件服务(六):完善jwt鉴权和返回结构

六月的

Docker-compose go-zero

golang中的几种并发模式

六月的

golang 并发模式

Linux下IIC驱动编写,介绍IIC子系统框架的使用

DS小龙哥

10月月更

数据驱动型企业如何借助「新一代智能协作」提升研发效能?

LigaAI

人工智能 数据驱动 亚马逊云科技 企业号十月PK榜

你知道Redis为什么要设计成单线程吗

芥末拌个饭吧

后端 redis 底层原理 10月月更

Lerna最佳实践(内含大量代码)

鲸品堂

代码 lerna

go-zero docker-compose 搭建课件服务(二):编写courseware rpc服务

六月的

Docker-compose go-zero

go-zero docker-compose 搭建课件服务(八):集成jaeger链路追踪

六月的

Docker-compose go-zero

golang单元测试一(简单函数测试)

六月的

golang 单元测试

掌握这个方法,让工作经验配得上工作时间!

博文视点Broadview

Redis是如何保证数据一致性的

芥末拌个饭吧

后端 redis 底层原理 10月月更

OKR之剑·理念篇03:OKR理念认同

vivo互联网技术

团队管理 OKR 目标管理

【LeetCode】水果成篮Java题解

Albert

算法 LeetCode 10月月更

实现etcd服务注册与发现

六月的

Docker-compose go-zero

goroutine&waitgroup下载文件

六月的

goroutine waitgroup

一种基于柔性事务的分布式事务解决方案设计探究

京东科技开发者

分布式事务 事务 分布式架构 事务回滚 分布式处理

谈谈spark性能调优的方法

芥末拌个饭吧

spark 后端 10月月更

go-zero docker-compose 搭建课件服务(五):完善user服务

六月的

Docker-compose go-zero

go-zero docker-compose 搭建课件服务(一):编写服务api和proto

六月的

Docker-compose go-zero

go-zero docker-compose搭建课件服务(四):生成Dockerfile

六月的

Docker-compose go-zero

go-zero docker-compose 搭建课件服务(九):http统一返回和集成日志服务

六月的

Docker-compose go-zero

深入浅出redis缓存应用

六月的

redis

react源码中的协调与调度

flyzz177

React

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错误消息

汪子熙

云原生 Cloud 云平台 SAP 10月月更

Xcode 16 带来使用自定义模型的预测代码补全功能_Android/iOS_Sergio De Simone_InfoQ精选文章