V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  geelaw  ›  全部回复第 15 页 / 共 178 页
回复总数  3544
1 ... 11  12  13  14  15  16  17  18  19  20 ... 178  
2023-11-08 01:07:06 +08:00
回复了 Betsy 创建的主题 C++ 求教个简单的 C++ 语法问题
因为标准规定 std::uint8_t 在 cstdint 中定义。请注意直接用 uint8_t 也是错误的,能编译通过只是因为运气好。

之前在 #include <iostream> 之后看起来可以用,大概是因为:

1. 具体实现里的 iostream 间接包含了 cstdint ;且
2. 具体实现里的 cstdint 也在全局命名空间里定义了 uint8_t 。

这两件事不是必然成立,所以编译失败不稀奇。
抽象层级错误的原因,点关闭按钮是图形用户界面的概念(更具体来说是 user32 ),结束进程是进程( kernel32 )的概念,进程不一定创建窗口,自然不可能期待操作进程的代码能够处理用户界面。

正确的方法,根据 .NET 里的 Process.CloseMainWindow:

1. 获得目标窗口的句柄
2. 判断目标窗口是否是禁用状态( GetWindowLong ),如果是,则不可关闭
3. 否则,用 PostMessage (不等待回复)或者 SendMessage (等待回复)发送 WM_CLOSE 到目标窗口

但我个人的意见是不需要第二步,因为它不能保证第三步操作的时候窗口依然处于非禁用状态。另外第三步,如果目标窗口是对话框则无效,此时正确的操作是 WM_COMMAND ;第三步也可以考虑 WM_SYSCOMMAND 和 SC_CLOSE 。

最后,如果目标程序提供 COM (例如 Office 系列),则应该优先采用 COM 操作。

P.S. 如果有人搜索“禁用窗口”并看到了这条回复,有必要提示改变窗口禁用/启用状态不可以用 SetWindowLong ,而是要用 EnableWindow 。
2023-11-05 10:04:22 +08:00
回复了 Jiceburger 创建的主题 问与答 邮件里的 tracking pixel
我的建议是发现 tracking pixel 之后警告对方或者不回复就行了。
2023-10-30 20:36:28 +08:00
回复了 hijoker 创建的主题 程序员 这篇文章是不是想说 tidb?
答案是否定的,TLDB 是文章作者的作品 https://github.com/donnie4w/tldb
2023-10-26 21:26:21 +08:00
回复了 ignor 创建的主题 Python Python 如何在非主线程里实现一个弹窗式对话框?
最简单的方法是在最开始开一个新的线程运行原来主线程的代码。

我不了解 tkinter 和 flask ,如果你告诉我两个都需要在主线程运行,那就必须重新编程。(但我不能理解为什么一个库要令主线程是特殊的。)
@geelaw #1 另外 笑 是尖音字,即 siiào 是一种(非普通话)正确读音
所谓“女国音”,据说最早发现于北京女中学生,就是尖音现象,会把 jqx 发成 zcs ,例如 siiào sǐ rén le (笑死人了),其中 zcs 后面接 ii 表示 zcs 和 i 相拼,而不是 zi ci si 整体认读音节。

尖音现象和区分尖团的区别在于前者不区分尖团音,而是随机把团音发成尖音。

例如把“清华”“箭”读成 Ciīnghuá、ziiàn 可以说是区分尖团,但是把“剑”读成 ziiàn 则是尖音现象,因为“剑”的发音只有 jiàn 。
2023-10-20 03:04:46 +08:00
回复了 LitterGopher 创建的主题 问与答 还款和转帐的区别是什么?
>难道还款会有限偿还信用卡提前消费的金额?

所有来自客户本人的钱进入信用卡都是还款,效果是减少本期的剩余最低还款额(按时减到 0 则不收取滞纳金)、剩余免息还款额(按时减到 0 则不收取利息,这个数最开始通常是本期账单的总欠款)。

@LitterGopher #2 信用卡还款一般是先抵消本期账单,也就是“上个月”消费产生的欠款。具体顺序可参考你的信用卡账户合约。

还款还到银行欠你钱的状态,额度可能增加也可能不增加,取决于银行的政策。
2023-10-15 14:21:25 +08:00
回复了 Tiaa 创建的主题 数学 证明题!要过程(有人会吗)
@Tiaa #5 但你依然没有解释 K 和 k 有什么关系。数学符号的大小写不可以互换,意思不同。另外 logkN 的含义也不明确,有人理解为 log_k N ,有人理解为 log kN ,后一种情况你也没有说 log 的底数(数学文本中会默认是自然对数)——虽然底数对这个结论没有影响,但是既然你在练习定义,最好把每一步都做得比较明确。

作为作业题,你可以先从你会的开始,比如背诵一遍 o 的定义,然后你就会发现要做这个证明,只需要实现它的定义。试试看?
2023-10-15 12:24:49 +08:00
回复了 Tiaa 创建的主题 数学 证明题!要过程(有人会吗)
@zmxnv123 #1 ChatGPT 做证明题经常生成胡言乱语,可以作为很好纠错练习生成器。

@vituralfuture #2 o 和 O 是两个概念。

最后回楼主:K 和 k 什么关系啊?另外作业题请自己做。
2023-10-15 00:43:09 +08:00
回复了 xeathen 创建的主题 iOS 今天遇到了一个 iOS 重大安全 bug:锁屏密码失效
@jacksonj297 #15 我知道,仔细阅读一下 #10 的话会发现我设想的是“Apple 有得赔”,不是客户,如果真的出现大规模事故银行不可能自己当冤大头。当然从 @xeathen #13 看感觉情况还好。

@txydhr #16 法规和合约只说盗刷 $50/$0 责任,没有规定 Apple Pay 免除这款。
2023-10-14 15:43:05 +08:00
回复了 xeathen 创建的主题 iOS 今天遇到了一个 iOS 重大安全 bug:锁屏密码失效
太离谱了!我比较感兴趣 Apple Pay 是否会受到这个 bug 的影响而自动授权(要是有的话那 Apple 可有得赔了)。

题外话:我上次遇到锁定类 bug 是 Windows 10 Mobile 决定在屏幕点亮之后(而不是屏幕熄灭之时)锁定手机,而那个系统性能太差,容易出现点亮屏幕后锁屏程序启动要很久,以至于可以不用解锁而有意义地操作手机。
@dnfQzjPBXtWmML #38 不是很确定你的数据来自什么环境,同款和类似的对话我这边是几秒钟。我比较好奇你认为每个数值分别应该是多少。

此外,你似乎没有理解我的意思,我是说 OpenAI 的 API 到底是类似第一种还是第二种实现(只要一次累积的 tokens 数量没有太大),最终网页上显示的效果没有区别。

考虑 2000 tokens 且每 token 有 4 个字符的情况,若每次传输到目前为止的总文本,最终会传送至少 7.6 MB ;若每次只传输增量,这一数值可以降低到 7.8 KB 。我只能说希望现在的软件工程师不要把性能进步都吃掉,恢复一点上个世纪的人的美好品质。
@dnfQzjPBXtWmML #30 这很奇怪吗?如果服务器快速产生事件,延迟很小但带宽也很小,那么客户端每次网络 IO 只能看到一部份事件;如果服务器慢速产生事件,延迟很大且带宽很大,那么客户端第一次网络 IO 很可能会看到累积的好多事件。每次 IO 之后操作了 DOM ,并且下次进入 IO 等待的时候浏览器会渲染,因此会看到动画效果。
@dnfQzjPBXtWmML #14 Good point. 我看了一下,并且调试了一下,如果在等待数据回传的时候下断点,等一会儿再让程序继续,则动画会直接跳到最终状态。因此我之前说“4 增加动画”是错误的,此外我查了文档

https://github.com/openai/openai-cookbook/blob/main/examples/How_to_stream_completions.ipynb

说明使用 stream 的时候每个 event 只传送一个 token ,但继续了解 Streams API

https://developer.mozilla.org/en-US/docs/Web/API/Streams_API

之后我意识到 event 的边界是 API-supplier-defined ,即应用层概念。于是我们可以问:

> OpenAI 的 API 实现里,是每次得到新的 token 就立刻追加一个 event ,还是数个 tokens 一起组成数个 events 并发送?

也就是代码是类似

while (HasNextToken())
{
Respond(GetNextToken());
}

还是类似

while (HasNextToken())
{
for (int i = 0; i <10 && HasNextToken(); ++i)
{
tokens[i] = GetNextToken();
}
Respond(tokens);
}

第一种情况,我认为 API 是在一个 token 一个 token 地返回数据,虽然传输层可以打包;第二种情况,我认为 API 一次传输了数个 tokens ,虽然传输层可以分成多个 packets 发送。

但或许这个问题并不重要,token 生成、网络传输的延迟、客户端异步读取收到的数据,这些结合在一起自动导致了客户端动画。

另外我对 message.content.parts[0] 每次都是到目前为止完整的文本而不是只发送变化的文本感到震惊,毕竟这会导致通信复杂度上升到 Theta(n^2)。
@airyland #7 我理解 OP 所问的是为什么网页上回答是几个词几个词往外蹦。

1. 模型是一个 token 一个 token 输出的
2. 用户在网页看到的是几个词几个词输出的
3. 网页调用的 API 是一个词一个词返回数据到客户端的
4. 网页调用 API 后增加动画让回答一个词一个词显示

1 和 2 都成立,但 1 不是 2 的原因,4 才是 2 的原因,并且 3 不成立。这样说清楚了吗?

关于 3 不成立,可以参考 https://stackoverflow.com/questions/75826303/is-there-any-way-to-stream-response-word-by-word-of-chatgpt-api-directly-in-reac 这个 StackOverflow 问题的存在就说明 OpenAI 的 API 并不是一个词一个词传送的。
@noe132 #2
@airyland #3
@jimages #4
诸位似乎有点小看电脑的运行速度或者小看上下文切换和网络传输的延迟了。模型确实是一个一个预测的,但用户界面上几个字/词几个字/词显示回答纯粹是表演,API 里即使用 stream=True 也是一大段儿一大段儿收到回复的,否则反复多轮传输很不划算。
2023-10-13 00:57:20 +08:00
回复了 jeesk 创建的主题 程序员 最近几年的文件安全问题越发严重。
@geelaw #3 更正一下,Apple 扫描的是儿童性虐待(色情)内容,是我之前忘记 CSAM 的 S = sexual 了。
1 ... 11  12  13  14  15  16  17  18  19  20 ... 178  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5611 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 58ms · UTC 07:28 · PVG 15:28 · LAX 23:28 · JFK 02:28
Developed with CodeLauncher
♥ Do have faith in what you're doing.