2025-04-21 22:45:28
注意,本文不是翻译,只是针对自己觉得有用的一些地方的记录和总结;对于我自己觉得已经比较清楚的概念,就完全没有记录。其中最后的「最佳实践 Best Practice」部分个人感觉比较有用,强烈建议结合原版 PDF 的一些示例 demo 进行对比查看。
简单介绍:
「Prompt Engineering」是 Google 推出的提示词工程白皮书,一共 60 多页,原始版本可以在 https://www.kaggle.com/whitepaper-prompt-engineering 上获取到,或者直接 下载链接 (googledrive)。
主要三个可配置项:
作用的先后顺序: Top-K -> Top-P -> Temperature
假设我们有以下设置:
当模型预测下一个词时,可能给出了这样的概率分布:
应用步骤:
几种极端情况的 LLM 实现考虑:
Use Case | Temperature | Top-P | Top-K | Description |
---|---|---|---|---|
通用场景 General Purpose | 0.2 | 0.95 | 30 | Relatively coherent results with some creativity |
高创造力场景 High Creativity | 0.9 | 0.99 | 40 | Especially creative results |
比较精确的场景 (比如coding) Low Creativity |
0.1 | 0.9 | 20 | Less creative results |
Single Correct Answer | 0 | - | - | For tasks with only one correct answer (e.g., math problems) |
系统提示(System Prompting)、上下文提示(Contextual Prompting)和角色提示(Role Prompting)都是用于指导大型语言模型(LLMs)生成文本的技术,但它们关注的重点不同。尽管这些提示类型之间存在相当大的重叠(例如,一个提示可能同时为系统分配角色并提供上下文),但每种提示的主要目的略有不同。
以下是三种提示类型的核心区别和作用:
提示类型 | 主要目的与功能 | 特点与作用 |
---|---|---|
System Prompt | 定义模型的基本能力和总体目的。 | 设定语言模型的“大局观”,例如翻译语言、分类评论等,指导模型的整体行为。 |
Contextual Prompt | 提供与当前对话或任务相关的具体细节或背景信息,指导模型生成针对性的回应。 | 高度特定于当前任务或输入,具有动态性,帮助模型理解细微差别并调整回应。 |
Role Prompt | 为模型分配特定的角色或身份,帮助模型生成与该角色一致的回应。 | 塑造模型的输出风格和语气,增加具体性和个性,使回应符合角色的知识和行为。 |
1 |
|
1 |
|
1 |
|
在为AI模型创建提示时,提供示例非常有帮助。示例可以帮助模型理解您的需求,尤其是在希望模型输出特定结构或模式时特别有用。
Step-back prompting 是一种通过提示 LLM 先考虑与具体任务相关的一般性问题,然后将该问题的答案输入到后续的具体任务提示中来提升性能的技术。这种“step back”方法使 LLM 在尝试解决具体问题之前激活相关的背景知识和推理过程。通过考虑更广泛和基本的原则,LLM 能够生成更准确和有洞察力的回应。
Step-back prompting 鼓励 LLM 批判性思考并以新的和创造性的方式应用知识,通过利用 LLM 参数中的更多知识来改变执行任务的最终提示,而这些知识在直接提示 LLM 时可能不会被激活。它还可以通过关注一般原则而非具体细节来帮助减轻 LLM 回应中的偏见。
传统 prompt:
1 |
|
step-back prompt:
1 |
|
1 |
|
编写提示(prompt)可能是一项复杂的任务。为了解决这个问题,可以采用Automatic Prompt Engineering (APE)方法。这种方法不仅减少了人工输入的需求,还能提升模型在各种任务中的表现。你可以让模型生成更多提示,对它们进行评估,可能的话修改好的提示,然后重复这个过程。
case:
1 |
|
这节没什么特别出彩的,就是列举了几个 coding 的用法,不过可以参考一下 Gemini 在 coding 时是如何推荐配置 topk, topp 和 temperature 的
Temperature:0.1
Token Limit:1024
Top-K:N/A
Top-P:1
writing code
1 |
|
1 |
|
1 |
|
1 |
|
这个很有价值,一些很容易想到和验证的概念,但是 Google 帮你总结出来了
最重要的原则是在提示中提供示例(one shot/few shot)。这是高效的方法,因为它能作为强大的教学工具。这些示例展示了期望的输出或类似的响应,让模型从中学习并相应地调整其生成内容,提高准确性、风格和语调。
提示应该简洁、清晰,易于你和模型理解。如果对你来说已经令人困惑,对模型来说也可能令人困惑。尽量不要使用复杂的语言,不要提供不必要的信息。
示例改进:
1 |
|
尝试使用描述动作的动词,例如: Act, Analyze, Categorize, Classify, Contrast, Compare, Create, Describe, Define, Evaluate, Extract, Find, Generate, Identify, List, Measure, Organize, Parse, Pick, Predict, Provide, Rank, Recommend, Return, Retrieve, Rewrite, Select, Show, Sort, Summarize, Translate, Write.
要明确期望的输出内容。简洁的指令可能不足以引导LLM或过于笼统。在提示中提供具体细节(通过系统或上下文提示)可以帮助模型专注于相关内容,提高整体准确性。
推荐做法:
1 |
|
不推荐的做法:
1 |
|
研究表明,在提示中专注于积极指令比过度依赖约束更有效。这与人类偏好积极指令而非列出不应做的事项的方式一致。
指令直接传达期望的结果,而约束可能让模型猜测什么是允许的。指令在定义的边界内提供灵活性并鼓励创造力,而约束可能限制模型的潜力。此外,约束列表可能相互冲突。
约束在某些情况下仍然有价值,例如防止模型生成有害或有偏见的内容,或当需要严格的输出格式或风格时。
如果可能,使用积极指令:不要告诉模型不要做什么,而是告诉它应该做什么。这可以避免混淆并提高输出的准确性。
示例:
1 |
|
要控制生成的LLM响应的长度,你可以在配置中设置最大token限制,或在提示中明确要求特定长度。例如:
1 |
|
在提示中使用变量,可以针对不同输入而改变。例如,提供关于城市的事实的提示。与其在提示中硬编码城市名称,不如使用变量。变量可以通过避免重复自己来节省时间和精力。如果需要在多个提示中使用相同的信息,可以将其存储在变量中,然后在每个提示中引用该变量。在将提示集成到自己的应用程序中时,这非常有意义。
示例:
1 |
|
不同的模型、模型配置、提示格式、词汇选择和提交方式可能产生不同的结果。因此,实验提示属性如风格、词汇选择和提示类型(零样本、少样本、系统提示)很重要。
例如,对于一个目标是 “生成关于革命性视频游戏机Sega Dreamcast的文本” 的 Prompt,其可以表述为问题、陈述或指令,产生不同的输出:
一般来说,few-shot (少样本)示例的顺序不太重要。然而,在进行分类任务时,确保在few-shot示例中混合可能的响应类别。这是因为否则你可能会过度拟合到示例的特定顺序。通过混合可能的响应类别,你可以确保模型正在学习识别每个类别的关键特征,而不是简单地记住示例的顺序。这将导致在未见数据上更强健和可泛化的性能。
一个好的经验法则是从6个few-shot 示例开始,并从那里开始测试准确性。
跟踪模型架构变化、添加的数据和功能很重要。尝试更新的模型版本,并调整提示以更好地利用新的模型特性。
例如,对于非创造性任务,如提取、选择、解析、排序、排名或分类数据,尝试让输出以结构化格式如JSON或XML返回。
从提取数据的提示中返回JSON对象有一些好处。在真实应用中,我不需要手动创建JSON格式,可以直接以排序顺序返回数据(处理日期时间对象时非常方便),但最重要的是,通过提示要求JSON格式,它迫使模型创建结构并限制产生幻觉。
使用JSON输出的好处总结:
对于CoT Prompt,将答案放在推理之后是必需的,因为推理的生成会改变模型在预测最终答案时获得的tokens。
使用CoT和自我一致性时,你需要能够从提示中提取最终答案,与推理分开。
对于CoT Prompt,将temperature设置为0。
思维链提示基于贪婪解码,根据语言模型分配的最高概率预测序列中的下一个词。一般来说,使用推理来得出最终答案时,可能只有一个正确答案。因此,temperature始终应设置为0。
前面已经提到过,但我们再次强调:详细记录你的提示尝试,这样你可以随时了解哪些方法行之有效,哪些不行。
提示输出可能在不同模型、不同采样设置,甚至同一模型的不同版本之间有所不同。此外,即使对同一模型的相同提示,输出句子格式和词汇选择也可能存在细微差异。(例如,如前所述,如果两个tokens具有相同的预测概率,则可能随机打破平局。这可能影响后续预测的tokens。)
建议创建一个Google表格,使用模板记录:
还建议跟踪提示的版本(迭代),记录结果是否OK/NOT OK/SOMETIMES OK,以及反馈。如果有幸使用Vertex AI Studio,保存提示(使用与文档中相同的名称和版本),并在表格中跟踪保存的提示超链接。这样,你只需一次点击就可以重新运行提示。
在使用检索增强生成系统时,还应捕获影响插入到提示中的内容的RAG系统的特定方面,包括查询、块设置、块输出和其他信息。
一旦你觉得提示接近完美,将其带入项目代码库。在代码库中,将提示保存在与代码分开的文件中,这样更容易维护。最后,理想情况下,你的提示是一个可操作系统的一部分,作为提示工程师,你应该依靠自动化测试和评估程序来了解你的提示如何针对任务泛化。
提示工程是一个迭代过程。制作并测试不同的提示,分析并记录结果。根据模型的表现改进你的提示。继续实验直到达到期望的输出。当更改模型或模型配置时,回去继续实验先前使用的提示。
2025-03-02 17:08:43
最近在看 vllm 的代码,cpu offloading 这部分它的实现还是比较简单的,这里简单记录一下。
由于大模型的参数量实在很大,所以如果想在单机上运行一般都需要跑量化蒸馏后的模型,但是有时又不想牺牲模型质量,于是CPU/SSD 卸载成为一种折衷方案,通过增加推理时间来降低内存需求。
vllm 也实现了一个简单的 cpu offload 的机制,可以通过 --cpu-offload-gb
启用。
这里发现他的实现还是比较简单的,主要就是通过这个 PR ,添加了一个 func 叫 maybe_offload_to_gpu
:
1 |
|
这个函数只有一个地方调用了:
1 |
|
cpu offload 的整个流程可以概括为:
cpu_offload_gb
读取为 _CPU_OFFLOAD_MAX_BYTES
。_CPU_OFFLOAD_BYTES += p.data.numel() * p.data.element_size()
, 即参数数量 x 字节大小) 到 _CPU_OFFLOAD_BYTES
,直到超过用户配置的可 offload 大小。forward
函数,新的 forward 函数和原来的区别就是:在每次 forward 的时候,将 CPU 上的参数复制到 GPU 上,计算完后再释放
1 |
|
这里的 forward 替换设计挺有意思:
(original_forward = module.forward
):保存模块原始的前向传播函数到变量 original_forward
,为后续恢复原始实现做准备。
(在 forward
函数内的 module.forward = original_forward
):在自定义的 forward
函数内部首行,当函数被调用时,立即将模块的前向传播方法恢复为原始方法。这一步确保 functional_call
能够使用原始的前向传播逻辑,避免递归调用。
(在 forward
函数内末尾的 module.forward = forward
):前向传播完成后,再次将模块的前向传播方法设置回自定义的 forward
函数,确保下次调用时仍能触发这个包含参数加载逻辑的自定义函数。
(函数末尾的 module.forward = forward
):为了确保每次都能 hook 到 cpu -> gpu 这部分的逻辑 (参考原 PR 的解释:https://github.com/vllm-project/vllm/pull/6496/files#r1682069375)
这里的核心是使用 functional_call
配合临时的 device_state
,实现参数从 CPU 到 GPU 的动态加载。初看可能会疑惑为什么没有将参数从 GPU 释放回 CPU 的逻辑,其实这是因为 device_state
是个局部变量,函数执行完毕后其引用的 GPU 张量会自动被 Python 的垃圾回收机制释放。而原始参数依然保存在 CPU 内存中,从而实现了内存优化的目的。
同时还有一个小知识点:
nn.Module
, .cuda()
, .cpu()
和 .to(device)
方法都是就地操作,因此可以直接 model.cuda()
torch.Tensor
, nn.Parameter
这些,.to(device)
, .cpu()
, .gpu()
方法本质都是创建一个新的 Tensor,原始 Tensor 不变,因此也必须使用 a = b.cuda()
2025-01-30 18:31:18
在试用了一众 “稍后读” 和 “剪藏” 软件后, 仍然找不到满意的软件。
总结了一下针对当前的「网页剪藏」软件,现在自己不满意的几个点:
1 - 快照使用「服务器采集」: cubox, pocket 等
这种方式的缺点就在于,很多内容平台,特别是国内的平台,都需要登录才能访问完整内容。
那么这样的采集方式受限就很大,服务器端采集无法携带用户的认证信息,因此往往只能获取到部分内容或者直接无法访问。
2 - 自带的「网页解析」或者「解析为 Markdown」: obsidian / upnote 等笔记软件的 clipper
网页结构和样式的多样性使得通用解析器很难完美处理所有情况,特别是对于代码块、表格、数学公式等特殊格式,解析质量往往不尽如人意。
3 - 仅能保存 URL 的「稍后读」: raindrop 等
内容的持久性在互联网上并不能得到保证,特别是:
对于一些时刻可能下架的敏感内容,或者经常变动的网站,url 可能过一阵子就看不了了。
于是我搭建了一个联动 SingleFile, dropbox, notion, 和 telegram bot 的 workflow 来满足我的需求。
之所以说是工作流 Workflow,实际上就是将一大堆 API 串起来。
整体实现起来不难,把所有 API 写好,作为一个 notepad 喂给 cursor,基本上 10 分钟就完成了,然后接下来用了几个小时来完善整个流程。
以下是 Demo (youtube):
PS:demo 实际展示了 Telegram 的提示过程 + 服务端日志,实际上对于我而言只需要按一下「
cmd + shift + s
」 快捷键之后,剩下的一切都是服务端处理了。PPS:演示的时候 DeepSeek 又卡了,还好加了一个备用的 API。。
简单来说这个工作流如下:
总体来说个人还是挺满意的,最近搞了不少自动化,这个算是折腾比较久的和比较好玩的,于是写出来分享下。
2025-01-29 19:26:37
这几天有个需求,就是将一些中英文对话录音文件转文本,然后进行一些分析。所以就调研了一下录音转文本的方案。顺便总结一下 MacOS 上的录音/录屏方案。
STT 全称 Speech-to-Text,即语音转文本。一般有两种常见的需求:一种是将实时语音转文本的识别(流式处理),一种是将录音文件转文本。本文主要记录后者的一些方案。
目前最常见的模型是 OpenAI 的 Whisper 模型。
使用起来也非常简单,只需要两步:
1 |
|
目前一些其他的「自建」方案基本都是基于 OpenAI 的 whisper 模型: HuggingFace 的 Whisper 模型
这种自部署的优势就是安全,缺点是需要消耗本地算力,如果算力不足会比较慢,其次感觉 Whipser 对于纯英语识别来说比较好,但是对于中英文混杂的环境,效果还是比较差的。
用几家大厂的 API 方案, 比如:
目前价格是每分钟 $0.006:https://openai.com/api/pricing/
其实这个价格也不算便宜了,转一个 1 小时左右的文本就要 3 RMB 左右。
这个更贵,目前价格是每分钟 $0.016:https://cloud.google.com/speech-to-text/pricing
更多的一些厂商:
服务提供商 | 服务名称 | 收费标准 | 参考链接 |
---|---|---|---|
微软 Azure | Azure 语音服务 | 按秒计费,包含标准和自定义语音转文本,以及按字符计费的文本转语音服务 | 价格详情 |
百度智能云 | 语音识别服务 | 支持预付费包和后付费阶梯计价,根据语言模型类型定价 | 价目详情 |
阿里云 | 智能语音服务 | 一句话识别按次计费,录音文件按时长计费,语音合成按字符计费 | 费用说明 |
腾讯云 | 语音识别 | 实时识别和文件识别按日使用量计费 | 计费概述 |
华为云 | 语音交互 | 按调用时长收费,支持按量付费和套餐包 | 服务价格 |
Sonix | 转录服务 | 按小时收费或月度订阅制 | 价格详情 |
总之,API的方案确实很方便,但是价格其实都并不便宜。
于是最后我还是将眼光瞄向了国内的一些在线平台。
主要试用了科大讯飞的讯飞听见,阿里的通义听悟和字节的飞书妙记。
用起来体验如下:
Link: https://tingwu.aliyun.com/
阿里通义听悟在中英混合文本识别方面表现最为出色,且提供充足的免费额度(赠送500小时, 除此之外每天签到都可以领取 10 小时)
然后功能方面做的也很好,包括内容摘要,发言人识别,文本替换,AI改写等比较好用的功能。
Link: https://www.feishu.cn/product/minutes
飞书妙记也还不错,每月提供300分钟免费额度,勉强也还够用。
但是如果额度一旦用完,价格就有点贵了,只能付费升级到「飞书 Plus」来用不限时。
另外界面做的也挺朴素的,功能不像阿里的那么丰富,但是比较简练,作为常用的会议记录的用途也足够了。
每月仅提供20分钟免费额度,识别效果也相对一般,充值也很贵,39.8RMB/月。
性价比较低。
作为录制会议或者演讲等用途,经常有一个需求就是想同时录制 麦克风 + 系统声音.
这里介绍一下我现在用的两种能获得录音音频的方式:
录屏的话 MacOS 的 Screeshot(截屏)可以直接做到:
cmd + shift + 5
打开录屏,在选项中选择「麦克风」即可。.mov
视频文件。QuickTime Player
打开视频文件,在「文件」菜单中选择「导出为音频文件」,即可获得一个 .m4a
音频文件。有时候我们不被允许录制屏幕,这时候只能通过单独录音的方式,而 MacOS 自带的 “QuickTime” 录音只能单独录制麦克风声音,这时候就需要用到其他手段。
一种方案是利用 BlackHole,BlackHole 作为一个虚拟音频设备,可以将 macOS 系统的音频输出捕获并重新路由,使其既能被录制软件录下又能通过扬声器播放出来。具体操作可以看:知乎:macOS使用BlackHole录制系统声音的同时输出声音
另一种就是通过安装其他应用的方式,一般用的最多的是 obs,但是 obs 太大了,搞起来比较复杂和麻烦。
于是我找到了一个使用起来还不错的很轻量的开源软件「QuickRecorder」:https://github.com/lihaoyun6/QuickRecorder
使用这个软件录制出来会生成一个 .qma
文件
qma 这种文件包格式可以容纳 2个音频文件,以及一个属性文件。
使用 QuickRecorder 内置的 QMA 播放器打开 .qma
可以同步播放系统声音和麦克风声音,并且可以独立调节音量(调节之后,音量属性会被记录在文件信息里,下次打开这个文件还是这套音量配置)。如果不需要分享的话,直接用 qma 格式保存在硬盘上就行了。如果需要发给别人,qma 播放器自带导出功能,可以将两个音频文件按照用户设定的音量比例混缩成一个普通的单轨音频文件 .mp3 / .m4a
。ref
2024-12-25 09:29:41
年末逛各大论坛和博客的时候看到了不少老哥们的年度订阅总结,于是也打算闲着没事记录一下今年订阅了并且打算长期订阅的一些服务/APP。
我今年从上半年开始就用了一个非常优秀的订阅管理工具 Wallos 来记录自己每个月的开销:
相比去年乱七八糟的 VPS 和各种有用没用的 APP 订阅,今年整体的开销算是精简了不少。
目前一年的费用算下来才 3800+,去年记得光是一年的 VPS 和科学上网订阅就不止这么多了。
目前我的订阅分类一共包含如下几块:
下面单独分享一下对一些服务的感受:
自从上次绿云服务器被黑,建站已经懒得折腾了,目前用的就是阿里云的轻量服务器,之前用了一个 3500 代金券券所以算下来 8 年的 VPS 才不到 500 块,算是薅了一下阿里的羊毛。
下载和热备份一直用的 HostHatch 的瑞典大盘鸡,稳定性不错,1C1G1T 一年才 20刀。
在下决心订阅 Claude Pro 之前,一直用的是 API 和合租面板的方式。
不过最近 OpenAI 的审查越来越严,模型时不时就降智,最关键的问题是还不知道它什么时候就降智了,最后就决定直接订阅 Claude Pro 了。
可能我是 Claude 刚出就注册了,加上 IP 一直很稳定,一个号从一而终用了一年多都没被封,还算幸运。
Claude 的质量是没话说的,Project 功能很给力,美中不足的是不能联网,目前需要联网查询的时候一般我就用 GPT 或者 Perplexity 的免费版代替了。
滴答清单一直是我心目中的 TOP 1 APP,目前已经持续用了 5 年多了。
作为一个 TBD 软件,各方面都很完美,我认为已经做到了极致。
微信读书一直在用 30 天挑战的方式 5 元续费一个月,还是很划算的,我认为是微信系列目前最良心的应用。
影视部分之前开过 MAX 和 Netflix,后面 NF 又是同户又是低价区封号的搞得很麻烦,就取消了,目前订阅了一个公费服 MisakaF,然后自己用 Google Drive + Emby 搭建了一个。
Spotify 明年不打算订阅了,应该就一直用 youtube music 了,感觉目前 ytm 的推荐做的已经很不错了。
这个用的就是几个 top ✈️ 之一,一个月 20 多,配合 relay
策略用的自己的落地,感觉比各种转发、优化线路要稳定的多。
说实话自从从 mjj 圈退坑之后,反而在线路方面一直没出过问题,而在自己之前折腾的时候,时间金钱精力花了一堆不说,线路还天天出故障,不是商家跑路就是机器被打,要么就是线路故障、运营商 QOS。现在看来这些时间花的真的毫无必要,不知道为什么那时候一直乐在其中。
两个 top 域名,一个 net 域名,平均下来一个月 15 元左右。
一个 29 元的每个月 300 G流量的电信卡(还支持结转,基本每个月从来用不完)。
一个 8 元的联通保号套餐。
闲鱼的 KFC 年卡,一个月只要 5 块,主要用来吃 6 折早餐,很划算。
京东 PLUS 会员,一年 60 吧。
其他乱七八糟的今年都没开。
总的来说对自己目前的预算控制还是比较满意的,算是已经精简到最小化了。
明年会继续控制其他方面的支出,但是对 AI 工具这方面一直保持一个开放探索的态度,一个月花 20 刀左右大幅提升生产力,个人觉得还是非常可以接受的。
PS: 目前总结的这些只是订阅制的 APP,一次性开销的 APP 和服务等也买了很多,但是由于没有记录管理所以也懒得去翻了。
2024-12-24 15:05:11
2024 总体来说是很闲的一年,也是一个看书和电影电视剧比较多的一年,因此记录以下今年看过的一些好东西。
评价和评分全是主观色彩,并且仅仅代表当时时刻短暂的心情和观点,写这篇博客的内容也仅仅是回顾一下内容,以及自己当时的想法和感受,纯属一乐。
这一年基本没读过纸质书,基本所有的书籍阅读都来自「微信读书」,在微信读书上截止到 12 月 24 日一共读了 260 多小时,远超前几年的总和。
决定以自己在 neodb 的评分排出一个 TOP10:
作者:文德琳·范·德拉安南
译:陈常歌
之前很早的时候因为一些原因没有把电影看完,也记不清是为什么了。
重新一口气看完了整本书,觉得这不像是一个青春爱情故事,更像是一个讲述家庭和亲子关系的故事,看完觉得完全符合 9 分的高分评价。
我也开始在想,有些类型的作品真的书能比电影呈现出太多太多的细节。
王小波
没想到王小波也这么会写别离:
“我回想起来,她绝对温存,绝对可爱,生机勃勃,全无畏惧而且自信。我从她身上感到一种永存的精神,超过平庸生活里的一切。”
“我看了这些话发出一声长嚎,双手乱抓了一阵。我感到脑后一阵冰凉。我坐了很久,天黑下来,又亮起来。我机械地去吃饭,又机械地去干活,机械地回家来。我很孤独,真正的哀痛被我封闭起来了,我什么也不想。直到有一天下午大许推开我们的屋门,把夕阳和他长长的身影投进来。”
"我跪倒下来,用痉挛的手指抓住盒子,抚摸盒子。我在哭吗?没有声也没有泪,只有无穷的惨痛从粗重的喘气里呼出来,无穷无尽。“
一本值得反复观看的书,真的以很实用的阐述方式,为一成不变的日常人生提供了很多不同的观察角度。
之前也单独为这本书写了一个博客:日常的缝隙 —— 「观察的艺术」阅读笔记
申赋渔
整本书在描述形形色色的人,不过前半本在描写身边的人,后半本在描述历史上的人,全篇行文透露出一种安静且悲凉的色彩,仿佛在看一部长长的纪录片。
沃尔特·艾萨克森
很长的一本传记,前前后后读了有两个多月才读完。
艾萨克森的传记写的真的很有水平。
有很多比较高深的概念他都可以用很简单易懂的方式阐述出来,包括在「乔布斯传」中呈现出来的一样。
三浦紫苑
非常燃的一本书,还好是 HE 。
文笔非常细腻,尤其是翻译十分到位,有不少句子翻译的特别传神。
唯一美中不足的就是书中的数据提升实在是有点假,不过也可以理解是为提高文学性牺牲了一点真实性了。
三毛
“哭, 笑, 爱, 憎, 梦里梦外, 颠颠倒倒”
露露·米勒
这本书是前几周听完孟岩的播客后去看的,一开始以为就是一本赞颂人类用坚韧意志对抗混乱的鸡汤书。
读到一半发现不是这样的,这本书在探讨一个非常宏大的概念。
关于宇宙,世界,生命。
关于变化和不变。
「每个人眼中都有一个世界,那个世界就存在于这个世界之中。」
伊坂幸太郎
非常多的 callback,铺垫很到位,喜欢这种欲言又止的结尾。
塔拉·韦斯特弗
远离那些喜怒无常并充满暴戾的控制欲的人。虽然没有经历过这些事情,但看完这本书算是能理解为什么有很多人接受着变态的家庭暴力却丝毫不反抗。
作者最后的决定非常的完美,那些持续发生的事情也印证了这个决断的正确性。
“从他们以及其他家人那里,我听说了山上正在上演的戏剧——受伤、暴力和来回变换的忠诚。但现在这些对我来说都成了遥远的传闻,他人的馈赠。我不知道分离是否是永久的,不知道是否有一天我将找到一条回家的路,但这种分离给我带来了平静。”
但是翻译总感觉有点怪,例如“我已觉察出我们是如何被别人给予我们的传统所塑造,而这个传统我们有意或无意地忽视了。我开始明白,我们为一种话语发声,这种话语的唯一目的是丧失人性和残酷地对待他人——因为培养这种话语更容易,因为保有权力总是让人感觉在前进。” 文中很多地方出现了这样不明所以的句子,理解起来颇为费劲。
“母亲没有找到马,普洁也来不及长大”。
在影片的最后一分钟前我还觉得会是一个不太完美的 happy ending,普洁会如愿完成学业,成为一个翻译,或至少是一个文化人,结果刀来的如此之快。
比起普洁的意外,母亲的死我觉得更加令人感到惋惜,绝望甚至愤怒,严重骨折+内出血的情况下居然能拖半个月最后还被医院拒之门外,这得忍受多么窒息的痛苦,不仅对母亲本人还是家人而言。
整体影片的拍摄手法异常的简单,就是一个人举着一个像素很低,没有防抖的相机,拍出任何一个人都可以拍出的画面,但就这种真实更把这超出三界之外的意境表达的淋漓尽致。
复杂的人性,质朴的黑暗。
非常文艺的一部片子,虽然主线剧情比较薄弱,但是镜头,旁白和一些场景设计都非常给力, 金句频出。
这部电影的英文叫作「The Great Buddha」,Buddha 还是 Puta,即是有背景的人表面和内心的善与恶。
「我想现在虽然是太空时代,人类早就可以坐太空船去月球,但永远无法探索别人内心的宇宙。」
也许是剧版想要表达的东西太多太深邃,我其实更喜欢电影精炼简洁的内核。
整个节奏和「大佛普拉斯」非常相似,特别喜欢这种叙事节奏,同时表达的内核也完全不输大佛普拉斯。
如果没看过「飞驰人生」我会给他3分, 另外的一分来自于情怀分, 过年就应该看这种情怀爽片。
第一次看这种桌面电影,真的很过瘾啊,相当有趣的拍摄手法,同时情节也相对来说很有张力。
演技爆棚,say hello to my little friend!!
整个片子的节奏说不出来的舒服,冰天雪地,旷野寂静。
故事也比较喜欢,自由永远是相对的。
很喜欢那句「你逃的比我还远」。
由于提前看到了热评说是有反转的剧,所以强忍着前大半集的不适看玩的,电影的前 2/3 都是十分的"粗制滥造",感觉角色完全没交代清楚,然后剧情也十分混乱。
最后的10分钟剧情强行把这部剧从不及格扳回到中高分,假如前半部分认真看了,即使没看懂(像我就完全分不清青年和老年的主角,片中的印度人长得实在太像了),最后也能理清楚是怎么一回事。
但是只能说前半部分可以加强的点太多了,即使是一部靠反转升华的剧,前面也可以交代的更清楚一些,又也许导演的意图就是让观众「前半部分云里雾里呢」。
想象力太丰富了,没有直接的恐怖元素但是令人看到脊背发凉。
三集每一集单拿出来都是近乎满分的存在。有点当时看爱死机的感觉了,不过黑镜更偏现实主义一些,并且更长的篇幅也带来了更多的深度情节,特别喜欢。
本季第二集真的让人产生一种生理性的不适,但是也足以证明了它构思的成功,估计我这种不适还要持续好几天。。
第一集和第三集就感觉立意没有第一季那几集刚看的时候那种新奇感了,比如第一集关于未来科技和赛博爱人的讨论不如S01E03的 grain 带来的那种震撼,而第三集的 waldo 又不如 S01E01 的 pig fucker 和 S01E02 的男主沉沦的全过程那么讽刺。
当然,只是个人的一些比较(由于两季几乎就是一起看完的,所以每一集印象都很深刻),总体来说第二季还是非常优秀。
第三季变成了 6 集,但整体感觉总体的质量和前两季还是有些差距,不过还是有几集特别喜欢的。
付航真的太强了,每一次发挥都如此出色。而且是在已经完美的表演上不断拔高。
其他演员也很出色,听了一百多小时刘仁铖的不开玩笑的播客,第一次见到真人。还很喜欢于祥宇和黑灯。
总之是一个比预期高出不少的节目。
用了一下午+一晚上看完了整个第二季,今年目前为止最佳的剧,如果说第一季是纯粹的离经叛道和义无反顾的走向悲剧,那么第二季则多了许多温情和精神拉扯;
英国佬的黑色幽默确实就是一种变态美学,如果生活变得不受控制,除了说「Oh fuck I’m going to die」还能做什么呢。
另外,和第一季同样优秀的BGM。
PS:由于看了一下打分,无耻之徒实在占比太多,每一季都太优秀了,于是把自己评分最高的 4 季整在一起。
评价就是:「三百六十五条线,条条线炸」。
心目中目前的 top1 美剧。
一直很讨厌看韩剧和日剧,因为总感觉演员和剧本过于刻意且造作,这部剧可以说是追完用时最长的一部剧了,前前后后大概看了4个多月吧,不过20集不到而已,最后还是给了8分的高分。
剧本非常细腻,但其中还是有不少我不得不跳过的扭捏且无法理解的剧本,但是每当我想要弃坑的时候总会出现一些打动我的情节,总体来说可以算是我第一部认认真真看完的日韩剧。
电子榨菜类型的剧,这部剧前半部分和后半部分不太一样。
前半部分完全是看逗比和小演员们卖萌,而后半部分尤其是第五季开始,剧中的冲突开始多了起来,从家庭喜剧变成了家庭剧,但是整体同样优秀,每个人的人物形象都变得更加立体了。
大制作,除了人物还是方块已经没什么mc的影子了。
太短了,原来就拍到执剑就完了,还以为会把第三部拍完呢。
很不错的一部纪实类电影, 最后的 15 min 增加了些许悲凉, 小人物要想和大公司掰手腕真的太难了, 同时这两位主角让我想到了乔布斯和沃兹, 是不是每个成功(做出成功产品)的黑客身边都有一位懂技术的商业高手?
PS: 影片中的所有事件都在简单搜了搜, 在维基百科上查到了原型, 记录在: https://telegra.ph/2024-02-13-The-Billion-Dollar-Code-02-13
如果整部剧结束在第六集伊莎开枪的那一刻, 那么10分我愿意给11分。
但是最后三集我只能说是一坨, 不知道编剧在想什么。
阳春白雪