独书先生 Menu

All items for 9 月, 2026

适配 iPhone Duo,不应该从判断设备型号开始

我做了一个包含 12 个可运行示例的 SwiftUI 自适应布局项目

适配 iPhone Duo,不应该从判断设备型号开始

做 iOS 布局时,我们很容易写出这样的逻辑:

如果是手机,显示单栏;如果是平板,显示双栏;如果屏幕足够宽,再换成另一套布局。

这种做法在设备形态比较固定时似乎能够工作。但随着横竖屏切换、分屏多任务、动态字体、多窗口,以及 iPhone Duo 带来的不同姿态出现,“设备型号”越来越不能准确描述应用当前拥有的空间。

同一台设备上的同一个应用,可能占据整个屏幕,也可能只得到一个狭窄窗口。它可能处于展开状态,也可能出现需要避让的分隔区域。即使外部屏幕尺寸没有变化,安全区域和可用空间也可能已经不同。

因此,真正应该驱动布局的,不是“用户正在使用哪台设备”,而是:

系统和父容器此刻给了这个界面多少可用空间?

这也是我创建 DuoKit 的原因。

GitHub:https://github.com/openHacking/DuoKit
duokit-demo

DuoKit 是什么?

DuoKit 是一个开源的 SwiftUI 示例项目,集中展示自适应布局、导航、安全区域、折叠区域避让、多任务和多场景设计。

它目前包含 12 个可以直接运行的示例。

但需要特别说明:DuoKit 不是一个 UI 框架。

它不会提供一组需要集成到业务里的自定义组件,也不希望开发者依赖某套私有抽象。它更像一本可以运行的 SwiftUI 手册:打开一个示例,修改窗口宽度或交互状态,就能直接观察布局如何变化。

每个示例都围绕一个具体问题组织:

  • 要解决的问题是什么
  • 推荐采用什么方式
  • 涉及哪些 SwiftUI API
  • 常见错误是什么
  • 应该测试哪些边界情况
  • 对应的源码和官方资料在哪里

我希望它解决的不是“复制一段代码”,而是“理解这段代码为什么这样写”。

12 个示例,覆盖自适应界面的完整路径

DuoKit 的示例从基础布局开始,逐步进入 iPhone Duo、多任务和真实应用场景。

1. Adaptive Layout:响应可用空间

第一个示例组合使用:

  • horizontalSizeClass
  • GeometryReader
  • ViewThatFits
  • AnyLayout

它展示同一个界面如何随着容器宽度变化,在紧凑布局和展开布局之间自然切换。

这里最重要的不是某个具体断点,而是区分两个问题:

尺寸类别适合决定界面的整体层级,容器几何信息则适合处理局部排布。

如果只是通过 UIScreen.main.bounds 获取屏幕宽度,或者根据设备型号选择布局,就无法准确描述应用当前所在的窗口。

2. NavigationSplitView:只维护一套导航状态

列表与详情是最常见的自适应界面之一。

紧凑空间下,它通常表现为逐级进入的导航;空间足够时,则可以同时显示侧边栏和详情。

常见做法是分别为手机和平板维护两套导航结构。但这样很容易产生重复状态:用户在一种布局中选中了内容,切换布局后,另一套界面却不知道当前选中了什么。

DuoKit 使用 NavigationSplitView 和统一的 selection,让系统负责导航结构的展开与收起,应用只维护一份业务状态。

3. Adaptive Grid:让宽度决定列数

网格布局不应该写成:

“手机两列,平板四列。”

更稳妥的方式是定义内容能够接受的最小宽度,然后让 LazyVGrid 根据容器空间计算列数。

这样,无论应用运行在全屏、分屏还是不同方向下,网格都能连续变化,而不是只在几个预设设备之间跳转。

4. Safe Area:不要假设边距一定对称

安全区域经常被当成一个统一的边距处理。但在不同设备形态和姿态下,leading、trailing、top 和 bottom 可能完全不同。

DuoKit 会实时展示各个方向的安全区域数值,用来说明一个很容易被忽略的问题:

不能读取左侧边距,再乘以二,推断整个可用宽度。

每一侧的安全区域都应该被独立读取和处理。

5. Fold Avoidance:只移动真正受影响的内容

如果一个关键按钮刚好跨越折叠或分隔区域,继续把它放在几何中心并不合理。

但这也不意味着整个界面都需要重新布局。

更合适的方式是判断哪些自定义控件与保留区域相交,然后只把受影响的控件移动到最近的可用区域。

DuoKit 的 Fold Avoidance 示例使用一个明确标注的模拟折叠区域,对比按钮避让前后的表现。

6. Reserved Regions:理解分隔与遮挡

保留区域并不只有一种。

有些区域代表显示空间之间的分隔,例如折叠位置;另一些区域则可能代表摄像头等造成的遮挡。

DuoKit 将 division 和 occlusion 两类区域分别可视化,帮助开发者理解:屏幕矩形存在,不代表其中每个位置都适合放置交互控件。

7—9. 把导航和展示交给系统

接下来的三个示例分别展示:

  • Adaptive Toolbar
  • Adaptive TabView
  • Sheets & Popovers

它们背后的原则是一致的:优先使用系统提供的语义化容器。

例如,通过 ToolbarItem 的 placement 描述一个操作的作用,而不是用固定坐标绘制自己的工具栏;使用标准 TabView 描述导航目的地,而不是维护一套固定位置的自定义标签栏。

系统知道当前窗口和设备状态,也更有机会在环境变化时正确调整这些控件。

10. Split View Multitasking:设备没变,窗口已经变了

在分屏多任务环境中,应用拿到的可能只是显示区域的一部分。

因此,“这是一台大屏设备”并不代表应用当前有足够空间显示大屏布局。

DuoKit 使用同一个 Dashboard,在窄、中、宽三种空间中连续变化。开发者可以拖动宽度,直接观察信息层级和组件排列如何调整。

这比只在两个固定模拟器上分别截图,更容易暴露中间尺寸的问题。

11. Multiple Displays & Scenes:失败也是界面状态

多场景设计不能假设第二个场景一定能够创建。

系统可能不支持当前操作,场景激活也可能失败。因此,应用除了处理成功状态,还需要明确展示能力是否可用,并正确处理错误和回退。

DuoKit 使用一个演示者与观众视图的状态机,展示场景创建、内容同步和失败处理。

12. DuoNotes:把前面的原则放进一个完整应用

单独的 API 示例很容易理解,但真实应用的问题通常出现在多个能力组合之后。

因此,最后一个示例是一个可以创建、选择、编辑和删除内容的笔记应用 DuoNotes。

它组合使用了:

  • NavigationSplitView
  • Binding
  • toolbar
  • sheet
  • 安全区域处理
  • 无障碍支持

DuoNotes 不会为紧凑布局和展开布局分别维护两份笔记数据。无论导航如何变化,笔记列表和当前选择都只有一个事实来源。

这也是自适应应用中非常重要的一条原则:

布局可以变化,业务状态不应该因为布局变化而被复制。

DuoKit 坚持的四个设计原则

把这些示例放在一起后,可以归纳出四条共同原则。

第一,根据可用空间布局,不根据设备型号布局

设备型号只是一个间接信号,而且经常不准确。

真正与布局有关的是当前窗口、父容器、安全区域和场景状态。

第二,优先使用系统容器

NavigationSplitView、TabView、toolbar 和系统 presentation API,通常比固定坐标和自定义外壳更能适应环境变化。

自定义界面应该集中在真正需要自定义的内容上。

第三,只调整受到影响的部分

出现折叠区域或遮挡区域时,不要立刻重建整个页面。先判断哪些内容真的发生相交,再移动相关控件。

局部调整通常比全局特判更稳定。

第四,把连续变化纳入测试

不要只测试“最窄”和“最宽”两个端点。

拖动窗口宽度时,中间状态可能出现文字截断、按钮重叠、网格跳动和导航丢失。还需要同时测试:

  • 横屏与竖屏
  • 分屏窗口
  • 深色模式
  • 辅助功能字体
  • 不同安全区域
  • 场景创建失败
  • 不同设备姿态

自适应布局不是几个静态尺寸,而是一段连续变化的区间。

关于模拟功能的边界

DuoKit 当前使用 Xcode 26.6 构建,部署目标为 iOS 26.0。

其中 Fold Avoidance、Reserved Regions 和 Multiple Displays & Scenes 涉及的部分原生能力需要 iOS 27.1 SDK。为了让开发者现在也能理解相关概念,项目提供了明确标注的模拟环境。

这些模拟区域只是教学工具,不代表真实硬件尺寸,也不应该被当成 iPhone Duo 的几何数据。

采用 Xcode 27.1 后,应当在示例边界处将模拟数据替换为系统原生 API,并在真实的设备姿态环境中重新验证。

我认为这种限制必须直接写出来。教学示例可以模拟一个概念,但不能把模拟结果包装成硬件事实。

如何运行

DuoKit 没有第三方依赖,不需要账号,也不需要私有配置。

运行步骤如下:

  1. 安装 Xcode 26.6 或更高版本
  2. 克隆项目仓库
  3. 打开 DuoKit.xcodeproj
  4. 选择 DuoKit Scheme
  5. 选择 iPhone 或 iPad 模拟器并运行

项目采用 MIT License,所有示例都可以自由阅读、修改和使用。

写在最后

DuoKit 表面上是在介绍如何为 iPhone Duo 设计界面,但它真正讨论的是一个更长期的问题:

当设备和窗口不再只有几种固定形态时,我们应该怎样组织 SwiftUI 应用?

答案不是继续增加设备判断,也不是为每一种形态维护一套界面。

更可靠的方向是读取系统提供的环境,根据当前获得的空间组织内容,把导航和展示交给标准容器,并保证业务状态独立于布局存在。

如果你正在开发 SwiftUI 应用,欢迎试用 DuoKit,也欢迎提交新的示例、边界情况或改进建议。

项目地址:

https://github.com/openHacking/DuoKit

iPhone Duo 应用适配指南:苹果折叠屏来了,iOS 开发者需要注意什么?

苹果正式带来了 iPhone Duo。 作为苹果第一款折叠形态的 iPhone,它带来的变化其实不只是“iPhone 多了一个新的屏幕尺寸”。

苹果正式带来了 iPhone Duo。

作为苹果第一款折叠形态的 iPhone,它带来的变化其实不只是“iPhone 多了一个新的屏幕尺寸”。

对于开发者来说,更重要的变化是:

以后一个 iPhone App,可能需要在完全不同的可用空间之间连续切换。

设备合起来时,用户使用外屏;展开以后,App 获得更大的内部显示空间;设备还可能处于部分折叠状态,甚至和另一个 App 一起运行在 Split View 中。

所以最近我也专门看了一下 Apple 官方刚刚发布的 iPhone Duo Human Interface Guidelines 和相关开发资料。

如果你手里已经有一个 iOS App,下面这些地方尤其值得检查。


一、先说一个好消息:大部分 App 不需要重新做

看到折叠屏,第一反应可能是:

我是不是得给 iPhone Duo 单独开发一套 UI?

实际上并不是。

Apple 在官方设计指南里专门强调了一点:

iPhone Duo 虽然是一种新的设备形态,但开发者仍然是在为 iPhone 设计 App。

如果你的 App 本身使用的是标准系统组件,并且 UI 已经能够随着可用空间变化,那么很多适配工作系统本身就能够完成。

比如常见的:

  • NavigationStack
  • NavigationSplitView
  • List
  • ScrollView
  • TabView
  • Toolbar

这些系统组件本身就具备比较强的自适应能力。

反而真正容易出现问题的,往往是以前为了某个固定 iPhone 尺寸“写死”的 UI。

所以与其说 iPhone Duo 带来了一套新的开发规则,不如说它开始真正检验一个 App 的布局是不是足够 Adaptive。


二、不要再简单根据“横屏 / 竖屏”决定 UI

这是我觉得现有 App 最值得检查的一点。

过去开发 iPhone App 时,我们很容易形成一种思维:

竖屏显示一种布局,横屏显示另一种布局。

但到了 iPhone Duo,这种判断方式就没有以前那么可靠了。

因为开发者真正应该关心的,不是:

手机现在到底是横着还是竖着?

而是:

我的 App 现在到底有多少可用空间?

Apple 推荐开发者更多通过 Size Class 和实际可用空间决定界面。

例如 SwiftUI 中可以读取:

@Environment(\.horizontalSizeClass)
private var horizontalSizeClass

然后根据 Compact / Regular 等环境变化调整布局。

这个思维上的变化非常重要。

以后不要先问:

“现在是不是横屏?”

而应该先问:

“现在的空间够不够显示第二栏?”


三、外屏和内屏,不应该只是简单地把 App 放大

如果只是把原来的 iPhone UI 等比例拉大,其实有点浪费 iPhone Duo。

Apple 官方用 Mail 举了一个很容易理解的例子。

设备合起来的时候,可以只显示:

邮件列表
   ↓
邮件详情

但是设备展开以后,有了更多横向空间,就可以变成:

┌──────────────┬─────────────────────┐
│              │                     │
│   邮件列表    │      邮件详情        │
│              │                     │
└──────────────┴─────────────────────┘

用户不需要来回跳转。

同样的思路其实适用于非常多 App:

笔记列表     | 笔记内容

文件列表     | 文件预览

聊天列表     | 聊天内容

文章列表     | 阅读页面

商品列表     | 商品详情

AI 对话列表  | 当前对话

这可能也是 iPhone Duo 给开发者带来的第一个真正有意思的产品机会:

过去在普通 iPhone 上因为屏幕太小无法实现的双栏、多栏交互,现在终于可以自然地出现在手机上。


四、NavigationSplitView 会变得更加重要

如果你的 App 天然存在“列表 + 详情”这样的信息层级,那么现在很值得重新看看 NavigationSplitView。

在较小空间下,它可以收缩成单栏导航。

空间足够时,又可以自然展开成多栏。

这恰好符合 iPhone Duo 的使用方式:

外屏

┌─────────────┐
│             │
│    List     │
│             │
└─────────────┘

展开:

┌─────────────┬─────────────────┐
│             │                 │
│    List     │     Detail      │
│             │                 │
└─────────────┴─────────────────┘

相比自己监听屏幕尺寸,然后手动切换两套 View,这种方式通常也更符合 Apple 的适配思路。


五、Safe Area 这次真的不能忽略了

过去做普通 iPhone App,有些布局即使 Safe Area 处理得不够严谨,可能也不太容易暴露问题。

到了 iPhone Duo,这件事情会明显重要很多。

原因是设备上出现了更多会影响内容布局的区域。

Apple 在新的设计指南中专门介绍了 Reserved Regions。

其中包括:

外屏前置摄像头区域

这个区域始终存在,并且可能和 Dynamic Island 等系统 UI 产生关系。

内屏摄像头区域

内屏摄像头在特定状态下会影响可用空间。

Folding Region

当设备处于部分折叠状态时,中间的折叠区域会影响内容能够正常显示和交互的位置。

因此有一个以前很容易写出来的假设,现在尤其需要小心:

左侧 Safe Area = 右侧 Safe Area

在 iPhone Duo 上,布局很可能天然就是不对称的。

如果 App 中存在大量通过固定坐标计算出来的按钮、浮层或者自定义导航栏,就尤其值得检查。


六、不要把重要操作放在折叠区域

折叠屏还有一个普通 iPhone 不存在的问题:

物理折叠本身会影响交互。

设备处于部分展开状态时,内屏中间会形成 Folding Region。

如果一个非常重要的按钮、拖拽区域或者交互元素刚好位于这里,体验就会非常奇怪。

好消息是,如果使用系统提供的标准组件,很多情况下系统会自动避让这些区域。

例如菜单、Sheet、Alert、Split View 等系统 UI 都会根据可用区域进行调整。

真正需要开发者重点检查的,还是高度自定义的 UI。

特别是那些:

position(x:y:)

固定 Frame

GeometryReader + 手动坐标

自定义浮动按钮

自定义 Toolbar

这类布局尤其值得在 Duo 上重新测试。


七、工具栏可能不再出现在你熟悉的位置

这也是 iPhone Duo 一个很有意思的变化。

因为 Duo 外屏的比例和传统 iPhone 不一样,在部分使用状态下,系统会把原本位于顶部或底部的:

  • Toolbar
  • Tab Bar
  • Navigation Controls

移动到屏幕侧边。

这么做的目的,是把宝贵的纵向空间更多地留给内容。

对于使用标准系统组件的 App 来说,这通常不需要开发者自己重新实现。

但如果你的 App 自己画了一整套 Navigation Bar、Tab Bar 或 Toolbar,那么最好重点检查一下 Duo 上的表现。

这也是为什么 Apple 一直鼓励开发者尽可能使用标准系统组件。

因为设备形态发生变化的时候,系统组件往往可以自动获得新的平台行为。


八、不要为折叠屏写四五套 UI

看到折叠屏以后,还有一个很容易出现的误区:

if closed {
    ClosedLayout()
}

if halfFolded {
    HalfFoldLayout()
}

if opened {
    OpenLayout()
}

if landscape {
    LandscapeLayout()
}

这样写下去,后面的维护成本会非常高。

Apple 的思路其实恰恰相反:

不要针对每一种设备姿态重新设计 App。

应该让现有布局根据可用空间自然扩展和收缩。

小空间的时候显示核心内容。

空间变大以后,可以增加第二级信息。

再大的空间,可以进一步利用多栏布局。

也就是说:

Device State 不应该决定整个 App 长什么样,可用空间才应该决定内容如何排列。

这也是 Responsive Web Design 已经用了很多年的思想,现在它在 iPhone App 上变得越来越重要了。


九、折叠和展开时,不要让用户“重新开始”

还有一个容易忽略的问题:

状态连续性。

假设用户正在阅读一篇文章。

他把 iPhone Duo 从外屏状态展开。

这时候最糟糕的体验就是:

页面重新加载,滚动位置消失,当前选择丢失,甚至重新回到首页。

正确的体验应该是:

设备变了,App 没变。

只是原来的内容获得了更多空间。

比如原来:

文章详情

展开以后:

文章目录 | 文章详情

用户依然停留在刚才阅读的位置。

所以开发者测试 Duo 时,不应该只测试几个静态截图。

更应该测试:

使用 App → 展开 → 折叠 → 半折叠 → 再展开

整个过程中,用户正在做的事情有没有被打断。


十、视频、游戏和沉浸式 App 要特别检查比例

对于普通信息类 App,更大的内屏通常意味着更多内容。

但视频和游戏不一定。

尤其是固定比例的视频内容,在新的屏幕比例下很可能产生更多留白。

这时候开发者就需要决定:

是保持完整画面?

还是允许裁切填满?

还是把多出来的空间拿来放播放控制、标题、评论或者其他信息?

游戏也是一样。

Apple 建议游戏在不同设备姿态变化时尽量填满可用空间,并保持文字和操作控件尺寸稳定。

换句话说:

不要简单把原来的画面套进一个更大的黑色矩形里。


十一、旧 App 会不会直接不能用了?

这可能是很多独立开发者最关心的问题。

答案没有那么可怕。

iPhone Duo 并不是要求所有 App 在设备上市当天全部重新开发。

原有 App 仍然可以运行。

真正的问题更多是:

“能运行”和“适配得好”是两回事。

一个没有针对新形态优化的 App,可能依然能够打开、浏览、操作。

但是展开设备以后,它可能只是把原来的手机界面放在一块更大的屏幕里。

而另外一个认真做过 Adaptive Layout 的 App,则可能立即变成:

Sidebar | Content | Inspector

两者的体验差距会非常明显。


十二、如果你已经有一个 iOS App,可以先检查这 10 项

我自己整理了一份比较简单的 Checklist:

① 有没有大量固定 Width / Height?

② 有没有根据 Portrait / Landscape 决定整个 UI?

③ 有没有正确使用 Size Class?

④ Safe Area 有没有被正确处理?

⑤ 有没有假定左右 Safe Area 一定对称?

⑥ Navigation、Toolbar、Tab Bar 是否尽量使用系统组件?

⑦ 自定义 UI 会不会落在 Folding Region?

⑧ App 展开以后,是否可以利用更大的空间增加信息层级?

⑨ List + Detail 类页面是否适合 NavigationSplitView?

⑩ 折叠、展开过程中,用户当前的操作状态能不能保持?

如果这十个问题基本都没有问题,我觉得很多 App 的 Duo 适配工作量其实没有想象中那么大。


最后

看完 Apple 这次的设计指南以后,我最大的感受反而不是:

“又要适配一个新的 iPhone 了。”

而是:

iPhone 的 App 设计边界变大了。

过去很多适合 iPad、Mac 的交互,因为普通 iPhone 的空间太小,很难真正搬到手机上。

但 Duo 展开以后,List + Detail、多栏布局、编辑器 + Preview、Chat + Context、文件列表 + 内容

GPT6 发布

北京时间 9 月 4 日,OpenAI 发布了 GPT-6 Astra。这次官方花了不少篇幅介绍它怎么操作电脑、使用浏览器,以及完成复杂的办公任务。

北京时间 9 月 4 日,OpenAI 发布了 GPT-6 Astra。这次官方花了不少篇幅介绍它怎么操作电脑、使用浏览器,以及完成复杂的办公任务。官方发布介绍

平时我们整理资料、处理表格、按公司模板做 PPT,做这些事本身不难,但是做起来很琐碎。AI 帮你把内容写好,还得在几个软件之间来回切换,复制、调整格式,再检查一遍。

如果 GPT-6 能把后面这些活也接过去,基本上就能用在日常工作里了。

Computer Use

这次我最关注的 Computer Use,也就是让 AI 操作电脑。

OpenAI 展示的场景包括填写表单、更新客户信息、整理日历。在 OSWorld 2.0 测试中,Astra 的得分是 72.6%,上一代 Sol 是 65.7%;耗时模拟显示,每项任务的时间从约 75 分钟降到了约 40 分钟。测试说明

这里的 40 分钟是测试中的模拟耗时,不能直接套到自己的任务上。不过,能把时间降下来,确实值得关注。

假如一件事我自己十分钟就能做完,交给 AI 要等一个小时,中间还得盯着它、提醒它,那用起来也挺别扭。最后可能还是自己上手了。

我希望的体验是把要求讲清楚以后,它能一直接着往下做,碰到需要我拿主意的地方再问我,交付结果最好不需呀从头返工,直接能用。如果能做到这样,那就很有用了。

PPT

OpenAI 这次提到,Astra 更擅长遵循已有模板,制作文档、表格和演示文稿。官方办公能力介绍

我觉得“遵循已有模板”这个细节挺好。

每个公司通常有自己的 PPT 模板,字体、颜色、页面结构都有要求。AI 自己设计一套,就算挺漂亮,你也得把内容再整理一遍。本来AI生成PPT省下的时间,可能又花在调格式上了。

所以,比起让它自由发挥,很多时候我们希望给一份PPT模板,然后替换内容就行,然后只要打开看看数据对不对,排版怎么样,能不能直接上会议分享。实际用一次,大概就知道它帮上了多少忙。

另外,如果想更好制作PPT,还可以尝试社区优秀的skill,比如 PPTKit Presentation Skill
开源地址:GitHub pptkit-presentation

保存

用 ChatGPT 写文章、讨论方案,还有个很具体的需求:保存对话。

一篇文章来回改了十几轮,最后留下的当然是定稿。但前面为什么删掉一段、某个说法为什么换了,有时过后还想回头找。

只复制最后一版,这些讨论就没一起留下来。

如果你也有这个需求,可以看看 ExportGPT。它是一个支持导出 ChatGPT 对话记录的浏览器扩展,可以导出为 Word、PDF、Markdown 等格式,也可以只选需要的部分。

比如,文章讨论过程存成 Markdown,方便以后整理;需要继续编辑的内容,就导出 Word。

它主要解决把聊天里的内容存成文件。经常在 ChatGPT 里写东西、做研究的话,这样留档,以后查起来会方便一些。

价格

GPT-6 Astra 的 API 标准价格是每百万 Token 输入 10 美元、输出 50 美元。这是 API 的计费方式,和 ChatGPT 订阅费是分开的;超长输入等情况还有另外的价格规则。官方模型与价格说明

不过,Token 单价还不能说明全部问题。OpenAI 在开发文档里提到,Astra 在部分评估中用了更少的输出 Token,因此虽然单价更高,估算的单次任务费用仍可能低于此前模型。官方开发说明

用起来也有类似的账要算。

一个便宜模型,出错以后反复重做,费用照样会累积。贵一点的模型,如果少改几轮就能完成,也可能是值得的。

具体到自己的工作,还是得跑一遍。花了多少钱、等了多久、最后自己又改了多少,这几项综合评估喜爱才能判断哪个划算。

对于简单的问答任务没必要每次都选最贵的。复杂任务、列计划的时候可以考虑用 Astra 试试,看看它能省下多少时间和修改的工夫。

修正

AI 给出错误的文字答案,也可能造成严重后果。等它能操作电脑,错误还可能直接落到文件、邮件和账号里。

OpenAI 的安全说明称,Astra 是其首个达到网络安全能力 Critical 等级的模型,也加强了对工具使用过程的监控。官方安全说明

对日常使用来说它到底会不会做超出要求的事呢?

比如,我让它整理文件,它动手删除之前,会不会先让我确认?出了问题,我能不能查到它具体做过什么?

这些地方处理好了,才能把重要工作交给它。不然每一步都得检查,省下的操作时间又搭进去了。这个大家自己可以逐步测试下,目前我个人使用GPT的经验来看,GPT对安全性这块做的还不错。

AGI

至于 GPT-6 算不算 AGI,我暂时不想下结论。

发布材料里的演示很丝滑,假如换成自己的文件和要求之后能不能同样顺利,还得自己多试下才知道。

等用上以后,我会先找一件平时经常做、又有点烦的工作。因为我知道我对结果有预期,也知道自己大概要花多久,这样能有个对比。

用了 4 个多月,聊聊我现在一直在用的猫猫论坛

前段时间有朋友问我,现在平时用 Codex、Google 这些服务,用的是什么节点。

前段时间有朋友问我,现在平时用 Codex、Google 这些服务,用的是什么节点。

我现在主要用的是 猫猫论坛。

猫猫论坛不是我主动找的,是在快连不再面向中国大陆运营之后,朋友推荐给我的。当时那段时间比较混乱,身边用的一些机场陆续出现无法使用、停止运营或者稳定性越来越差的情况,当时也是很难找到一款稳定的梯子。

先是朋友先试用了一段时间,觉得稳定性还不错之后,我才开始跟着试用。

到现在差不多已经用了 4 个多月,后面没啥大问题应该也不会换。

大陆直接访问

猫猫论坛的网站在中国大陆网络环境下可以直接登录,不需要先挂梯子就能进入官网。

用过不少机场的朋友应该会明白它的重要性。

有些机场本身的官网就已经被墙了,于是会出现一个很尴尬的情况:

你需要梯子才能打开机场官网,但是你的梯子偏偏又坏了。

尤其是节点突然不能用了,想登录后台看看公告、续费或者重新导入订阅的时候,如果官网本身也打不开,就比较麻烦。

所以我后来选这类服务的时候,会比较看重官网在大陆是否可以直接访问。

猫猫论坛这一点对我来说算是一个很明显的加分项,至少出现问题的时候,我能直接打开后台处理。

稳定性

我平时使用场景其实比较固定。

因为自己经常写代码,所以 Codex 用得比较多,另外就是 Google 搜索、查资料、访问一些国外网站,以及日常开发过程中需要使用的一些海外服务。

这四个多月用下来,整体体验比我之前预期的稳定。

当然也不是说完全不会出现速度波动。

偶尔也会碰到某一个 IP 或者节点突然变慢的情况,这时候我一般手动切换一下 IP 或节点,很快就恢复了。

但至少在我自己的使用过程中,基本没有遇到长时间完全断开的情况。

Codex、Google 这些我每天都会用的服务,目前基本没有受到什么影响,正常情况下访问速度也比较丝滑。

套餐

套餐方面,我自己没有买特别大的流量。目前使用的是每月 180G 流量的套餐。

我的主要使用场景就是日常编码,用 Codex、Google,浏览网页、查资料,偶尔下载一些文件。

基本不长时间看高清视频,所以 180G 对我来说够用了,每个月基本不用特别关注剩余流量。

价格方面我个人觉得也比较实在,不属于那种为了追求便宜买的廉价机场,但以我目前的稳定性体验来说,我觉得价格和体验是比较匹配的。

另外充值也比较方便,可以用支付宝。

总结

总结一下,我继续用猫猫论坛主要就三个原因:

第一,中国大陆可以直接打开网站,节点出问题的时候不至于连后台都进不去。

第二,稳定性好。这四个多月虽然偶尔遇到节点变慢,需要自己切一下 IP,但基本没有出现过长时间无法使用的情况。

第三,套餐性价比高。我这种以开发、Codex、Google 和网页浏览为主的人,每月 180G 基本够用,价格也比较容易接受。

当然,机场这种服务会受到线路、地区、运营商以及时间段等很多因素影响,所以我的体验只能代表我自己的网络环境。

我也不会说哪个机场能够保证永远稳定。

只是从我自己实际用了四个多月的情况来看,猫猫论坛算是这段时间里让我比较省心的一个,所以才想单独写篇文章分享一下。

如果你也经常需要使用 Codex、Google 或者访问海外网站,又比较在意大陆能不能直接打开后台,可以自己了解一下。

猫猫论坛注册链接:

https://portal.jssjnet.com/#/register?code=Scaq0JeG