宝玉
1个月前
x-宝玉
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
a=(x,y,o=mag(k=x/4-12.5,e=y/9)/9)=>point((q=x+99+cos(9/k)+o*k*(cos(e*9)/3+cos(y/9)/.7)*sin(o*4-t))*.7*sin(c=o*e/30-t/8)+200,200+y/9*cos(c*4-t/2)-q/2*cos(c)) t=0,draw=$=>{t||createCanvas(w=400,w);background(6).stroke(w,46);for(t+=PI/60,i=3e4;i--;)a(i%100,i/150)} 把上面的代码作为提示词发给 Claude,就可以重现视频中的动画
宝玉
1个月前
实例演示我是如何和 AI 结对编程的 比如我要做一个功能模块,我自己有个大概的思路,然后我将需求抽象精简,包含在一个上下文中,只是一个大方向,不涉及太多细节。(参考图1) 1. 让 AI 根据需求出设计方案 同样的需求我用 3 个不同的会话生成 3 次(参考图2、图3),这样可以生成不同的结果对比,看看差异,如果觉得结果都有问题,那么就调整提示词,继续生成几次,直到和 AI 的思路比较一致了。 这一步尽量不要设计太多技术细节,最好让 AI 出方案,除非你很有把握,因为有时候 AI 能提出更好的方案,就算它提不出更好的,和你想的差不多也是对你的一种肯定。 这就好比你是个经理,让下面三个资深员工就同一个需求分别出方案,然后选一个最好的,如果需求没描述清楚就完善需求。同理如果你一开始就把细节定了,那么给员工的发挥余地就小了,所以最好让员工自己提方案,说不定会有更好的方案。 2. 设计方案确定后,填充细节生成代码 方案定下来后,就可以把方案的细节都补充上,避免 AI 在生成代码时遗漏,然后交给 AI 去生成(参考图4)。生成后简单 Review 下就知道是不是遵循了设计。 如果没有遵循设计,就完善提示词,让 AI 重新生成,指导遵循了设计 如果有 Bug,先尝试在回复中纠正,如果1-3次纠正还不能修复,重新调整提示词或者提示词都不用调整,直接重头生成,或者去试试其他更好的模型。 这同样也相当于你扮演经理的角色,定好设计后让员工去写代码,如果他们没搞明白设计就重新说明,如果写的有 Bug 就告诉他们 Bug 在哪让他们修复,如果修复几次都修不好,就开除换人重写。 总结下就是像一个开发经理一样,去跟 AI 员工描述需求,让手下几个 AI 员工去设计,AI 员工设计完挑选确认方案,方案确认后继续让 AI 员工帮你生成代码,代码不好就修改提示词重新生成。
宝玉
1个月前
问:低耦合设计怎么写prompt,能给我们一个小例子吗? 答: 举个例子,我在写一个字幕编辑器的App,设计的时候,播放器是一个独立的模块,字幕编辑部分也是一个独立的模块,比如说我现在要给字幕编辑模块增加一个当前播放位置的字幕高亮并自动滚动的功能,我就只需要把字幕编辑器相关的代码发过去。 所以我在写 Prompt 的时候,就只要把字幕编辑这个模块和这个功能相关的代码都选上(参考图1,用的是一个叫 RepoPrompt 的 App),然后和提示词一起发给过去。即使我这个功能需要用到播放器中当前播放的时间,但是我并不需要把播放器的代码发过去,只要让 AI 知道有这么个播放器的状态我可以直接调用即可。
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
宝玉
1个月前
再举一个 o1 编程能力的例子,我有一个播放器的React Hook,用到了 Jotai 做状态管理记录播放器状态,现在我需要增加一个功能,在a-b之间(rangePlay)播放视频的功能,然后交给 AI 帮我实现。基本都能实现,但差别在于: 1. Claude/GPT-4o/Gemini 都是用setTimeout来控制到b点了结束视频播放,满足要求,但是如果拖放或者加速播放就会有问题,这就是普通程序员的水平 2. o1 会基于现有Jotai状态定义增加一个rangeEnd的状态,侦听播放器的timeupdate,然后时间到了rangeEnd的时候会停止,这样不管你是拖放还是快放还是慢放,都是到时间了自动停止 我觉得 o1 做的好的地方不是能想到用 timeupdate 侦听,因为这应该是通用解决方案,Claude 多试几次或者我明确要求也能是这结果,而是在于 o1 能分析我的代码,知道我用了 Jotai 做状态管理,所以基于 Jotai 的状态管理增加了新的状态,而不是去用一个内部的 React State。
宝玉
1个月前
o1 之前我是把 AI 当实习生的,因为它的智力和经验绝大部分时候是不如我的,所以我就需要给明确的指令,让它按照我的指令去一步步完成。但是到了 o1 的时候,智力是有明显提升的,有时候能给出比我更好的方案。 所以我现在会把 o1 当成一个结对编程的伙伴,有时候只是提供上下文和我需要做的事情,并不自己提供方案,让它提供方案,看有没有比我自己想的更好的方案,或者给予它的方案提出后续改进的要求。 (注意:多用新会话生成而不仅仅是基于前面的会话追问,因为它新生成的内容会受前面会话内容的影响,而新会话更容易产生新鲜的内容) 比如我在设计一个对字幕内容检索的搜索方案,我会把期望的结果和数据都发给它,让它设计方案(图1),然后生成几次。第一次它的检索方案(图2)是按空格拆分,没有考虑到中文字符串是没有空格的情况;第二次它的方案(图3 )就比较靠谱了,先把所有内容拼接在一起,并记录原始位置,然后检索,再根据位置去找到原始的字词。 AI 已经从实习生成长为结对伙伴了,有时候能提出比我们自己更好的方案,能从它身上学习到知识。
宝玉
1个月前
宝玉
2个月前
来自微博网友 i陆三金 的分享: 今天线下听了李继刚讲提示工程的演讲,他对概念有着非常精准的把握,听的很过瘾。 现场对这张图印象深刻,他根据沟通中的乔哈里视窗,把做提示词的技巧对应了进去。 - 当一个事情,你知道,AI 也知道,这个很好理解,你就简单说,提示词要精简。 - 一个事情,你知道,AI 不知道,例如企业内部信息,一些 AI 在公域上搞不到的信息,你告诉它这个事的结构、形式,通过 few-shot 把模式喂给它,它会 get。 - 你不知道,AI 知道,这个也容易理解,AI 知道很多你不知道的事情,你提问就行了。 - 你不知道,AI 也不知道,大概就像科研,超出了普通人的范畴。 李继刚说,一般来说,我们遇到的大多数都在右侧这两个,左侧平常会少一点。我的理解是右侧两个是效率型,左侧是探索型,比例上确实是82这样。 另外一点也很同意的是,随着模型能力的提升,X轴会逐渐下移。他并没有直接说我们也要让自己的Y轴左移,但我想除此之外大家似乎也没得选。 来源:
宝玉
7个月前
李彦宏:开源模型是智商税,闭源模型更强大,推理成本更低 7月5日,2024世界人工智能大会(WAIC 2024)期间,百度创始人、董事长兼首席执行官李彦宏接受采访时表示,开源其实是一种智商税。“当你理性地去想,大模型能够带来什么价值,以什么样的成本带来价值的时候,就会发现,你永远应该选择闭源模型。今天无论是ChatGPT、还是文心一言等闭源模型,一定比开源模型更强大,推理成本更低。”