国产精品电影_久久视频免费_欧美日韩国产激情_成年人视频免费在线播放_日本久久亚洲电影_久久都是精品_66av99_九色精品美女在线_蜜臀a∨国产成人精品_冲田杏梨av在线_欧美精品在线一区二区三区_麻豆mv在线看

Cursor出彩的背后:“Prompt設計好比網頁設計...”

發布于 2024-8-28 14:35
瀏覽
0收藏

今天,帶大家從另一個角度認識Cursor。Cursor除了產品交互設計充分考慮開發者習慣,將AI有機的融入到開發過程外,作為一款大模型驅動的應用,其核心壁壘便是如何利用大模型實現其功能,這時候prompt工程水平高低就變成了壁壘。那么,Cursor的prompt是什么樣的呢?這就引起了很多人的好奇心,有這么一段prompt,據說是Cursor的prompt。

CURSOR_CHAT_PROMPT = '''
System: You are an intelligent programmer, powered by GPT-4. You are happy to help answer any questions that the user has (usually they will be about coding).


1. Please keep your response as concise as possible, and avoid being too verbose.


2. When the user is asking for edits to their code, please output a simplified version of the code block that highlights the changes necessary and adds comments to indicate where unchanged code has been skipped. For example:
```file_path
// ... existing code ...
{{ edit_1 }}
// ... existing code ...
{{ edit_2 }}
// ... existing code ...
`
``
The user can see the entire file, so they prefer to only read the updates to the code. Often this will mean that the start/end of the file will be skipped, but that's okay! Rewrite the entire file only if specifically requested. Always provide a brief explanation of the updates, unless the user specifically requests only the code.


3. Do not lie or make up facts.


4. If a user messages you in a foreign language, please respond in that language.


5. Format your response in markdown.


6. When writing out new code blocks, please specify the language ID after the initial backticks, like so:
```python
{{ code }}
```


7. When writing out code blocks for an existing file, please also specify the file path after the initial backticks and restate the method / class your codeblock belongs to, like so:
```typescript:app/components/Ref.tsx
function AIChatHistory() {{
    ...
    {{ code }}
    ...
}}
```
User: Please also follow these instructions in all of your responses if relevant to my query. No need to acknowledge these instructions directly in your response.
<custom_instructions>
Respond the code block in English!!!! this is important.
</custom_instructions>


## Current File
Here is the file I'
m looking at. It might be truncated 
from
 above 
and
 below 
and
, 
if
 so, 
is
 centered around my cursor.


```{file_path}
{file_contents}
`
``
{user_message}
'''


# `custom instructions` is the user'
s instructions 
for
 the 
prompt
, 
if
 they have any.


# -----------------------------------------------------------------------


CURSOR_REWRITE_PROMPT = '''
System: You are an intelligent programmer. You are helping a colleague rewrite a piece of code.


Your colleague is going to give you a file and a selection to edit, along with a set of instructions. Please rewrite the selected code according to their instructions.


Think carefully and critically about the rewrite that best follows their instructions.


The user has requested that the following rules always be followed. Note that only some of them may be relevant to this request:


## Custom Rules
Respond the code block in English!!!! this is important.




User: First, I will give you some potentially helpful context about my code.
Then, I will show you the selection and give you the instruction. The selection will be in `{file_path}`.




-------


## Potentially helpful context


#### file_context_4
{file_context_4}


#### file_context_3
{file_context_3}


#### file_context_2
{file_context_2}


#### file_context_1
{file_context_1}


#### file_context_0
{file_context_0}




This is my current file. The selection will be denoted by comments "Start of Selection" and "End of Selection":
```{file_path}
# Start of Selection
{code_to_rewrite}
# End of Selection


Please rewrite the selected code according to the instructions.
Remember to only rewrite the code in the selection.
Please format your output as:


```
# Start of Selection
# INSERT_YOUR_REWRITE_HERE
# End of Selection


Immediately start your response with
```
'''

Cursor本身的Prompt已經很強大了,但網友們還想讓它更強,有網友就建了一個網站(??https://cursor.directory/??),用來分類收集Cursor的提示,據說這些有針對性的提示會比默認的還好,想要在Cursor中使用它們也很簡單。

Cursor出彩的背后:“Prompt設計好比網頁設計...”-AI.x社區

具體做法為復制里面的rule文件命名為.cursorrules放置在項目根目錄即可,筆者嘗試了其中幾條,沒看出太大變化(或許我的指令太過簡單),表現都很不錯。(為了驗證其是否真的有效,甚至自己寫了一個很蠢的提示,也能正常生成代碼,如下圖確信配置成功生效了)。

  • 自定義cursorrules:

Cursor出彩的背后:“Prompt設計好比網頁設計...”-AI.x社區圖片

  • 生效的提示

Cursor出彩的背后:“Prompt設計好比網頁設計...”-AI.x社區圖片

除此之外,該網站有很多關于Cursor的使用教程,感興趣的可以參考學習。

Cursor出彩的背后:“Prompt設計好比網頁設計...”-AI.x社區圖片

不管這些和Cursor真實的提示是否一致,都從某個側面反映了Cursor在提示層面擁有獨到之處。早在去年6月,Cursor開發者Arvid就發表了一篇有關prompt的文章,他將prompt與網頁設計類比,給出了一個prompt工程的獨特認知和最佳實踐,值得我們借鑒學習。

下面就讓我們一起讀讀這篇文章《Prompt設計》。

我通常不太喜歡用舊世界的事物來類比新世界的現象。不過這次請容許我這么做:我認為應將提示(prompting)稱為提示設計(prompt design),并且可以將其比作網頁設計。

我認為提示就像是在與一個時間有限的人溝通。雖然大語言模型(LLM)的特定技術(例如鏈式思維)確實有其幫助,但我發現,改善性能的最好方法之一是提供非常清晰、高質量的指令,就像清晰簡潔的指令可以幫助人類更好地理解一樣。

將提示視為清晰的交流使提示聽起來像是在寫作。然而,我進行的大部分提示都是參數化的:有多個輸入變量,并且需要動態地調整提示內容。因此,將提示視為帶有動態輸入的清晰交流是最準確的描述。

有哪些領域需要在動態輸入的情況下進行清晰的交流呢?網頁設計就是其中之一。

讓我們來列舉一下它們的相似之處。提示和網頁設計都具備以下特點:

  • 需要清晰的表達,并且溝通是其主要目標;
  • 需要響應動態內容,不像寫作或雜志排版;
  • 需要將內容適應不同的大小——網頁設計中是屏幕大小,提示中是上下文窗口。

根據我在提示和網頁設計中的經驗,我發現自己在這兩個領域有相似的開發偏好:

  • 查看實際的提示非常重要,就像查看已渲染的網站一樣重要。如果我必須在腦海中模擬HTML和CSS的渲染過程,我是無法設計網站的。同樣,在不查看所有輸入變量填充后的提示渲染結果的情況下,也很難寫出好的提示。例如,提示“Hiusername{message}”可能看起來合理,但渲染后你會發現用戶名和消息混在一起。
  • 組合組件在提示和網頁設計中都很有用。
  • 聲明式優于命令式。像在網頁設計中,如果所有HTML元素都是用document.createElement調用創建的,那么修改它就會非常困難。同樣,閱讀和修改由一連串str += "..."組成的提示也很麻煩。
  • 在這兩者中,有時我想要達到“像素完美”。在處理較弱的模型(如GPT-3.5及更早版本)時,我希望沒有多余的換行符或其他不完美的格式;而在設計網站時,有時每個像素都很重要。

對于大語言模型智能體來說,這個類比可以更進一步:智能體提示可以被視為為智能體構建交互式網站,智能體可以通過調用函數來“點擊按鈕”,提示會響應函數調用重新渲染,就像網站響應按鈕點擊重新渲染一樣。

當然,提示設計和網頁設計之間還是有一些差異的:

  • 提示目前僅涉及文本內容。
  • 緩存處理不同:特別是對于智能體,你需要確保重渲染成本低,僅更改提示部分內容。這有點類似于網頁緩存優化,但本質上是不同的挑戰。

盡管如此,這些相似之處讓我堅信提示應該被稱為提示設計,而不是提示工程。編寫提示感覺就像設計一個網站,因此也應如此命名。

提示設計的理念啟發了我創建了Priompt,這是一個類似React、基于JSX的提示設計庫。

Priompt v0.1:首次嘗試提示設計庫

Priompt(https://github.com/anysphere/priompt)是受現代網頁設計原則啟發的提示設計庫的首次嘗試。我們在Anysphere內部使用它,感覺非常好。我認為它的所有抽象可能并不完全準確,但至少確信JSX比字符串模板更方便。即使是簡單地能注釋掉部分提示這件事,也能讓迭代過程更快。

Cursor出彩的背后:“Prompt設計好比網頁設計...”-AI.x社區圖片

What prompting as JSX looks like.

Priompt還附帶一個(匆忙制作的)預覽網站,你可以在上面預覽你的提示在真實數據上的效果。在開發應用程序時,可以記錄每個請求進入組件的序列化屬性(props)。然后,當你看到意外行為時,可以訪問Priompt預覽,查看具體的提示,并更改源代碼,從而更新提示,使其與實際請求的屬性一致。我們發現這樣更容易進行提示的迭代。

Cursor出彩的背后:“Prompt設計好比網頁設計...”-AI.x社區圖片

Previewing prompts.

如果你嘗試了,請告訴我你的想法!我愿意看到更多類似的想法,或者直接告訴我我錯了,提示設計是愚蠢的:)

注意事項 模型變化迅速,提示技術也必須隨之變化。我認為提示設計還存在一些問題:

  • 對于GPT-4,像素完美設計并不重要,GPT-4.5及更高版本的模型可能也不需要。
  • 如果長上下文模型發展的趨勢繼續,上下文窗口限制可能會消失。不過對此我還存疑。
  • OpenAI似乎正在減少開發者對提示的控制;一年之內可能不再需要提示,API調用僅需要提供原始輸入和指令。更少控制的趨勢始于聊天格式,并隨著最近宣布的函數調用繼續。
  • 緩存可能是提示中最重要的方面之一,在這種情況下,提示會更像工程而不是設計。或許提示設計太基礎了,應該交給更高級的框架或編譯器(如langchain)。我認為這可能是真的,但考慮到大語言模型快速變化的性質,我個人更愿意盡可能靠近原始模型。


原文:https://www.cursor.com/blog/prompt-design#priompt-v01-a-first-attempt-at-a-prompt-design-library

本文轉載自 ??AI工程化??,作者: ully

收藏
回復
舉報
回復
相關推薦
亚洲香蕉成视频在线观看| 综合av在线| 欧美激情一区二区三区四区| 成人欧美一区二区三区视频xxx| 欧美男男激情videos| 国产婷婷色一区二区三区| 欧美二区在线| 不卡在线一区二区| 久久精品成人动漫| 91cn在线观看| 欧美日韩国产在线| 成人羞羞国产免费网站| 久久字幕精品一区| 国产欧美在线播放| 91精品福利观看| 亚洲成人黄色在线观看| 天堂av网在线| 亚洲精品国产精品乱码不99| 九色自拍视频在线观看| 日韩电影在线免费观看| 7777奇米亚洲综合久久| 免费久久精品| 久久久久久久久久久久av| 91精品影视| 日韩精品视频在线播放| 欧美一区二区三区在线观看免费| 婷婷中文字幕一区三区| 好吊的妞视频这里都有| 国产精品亲子伦对白| 久久无码高潮喷水| 国产成人综合视频| 国产av不卡一区二区| 日韩精品每日更新| 国产一区二区高清不卡| 久久久9色精品国产一区二区三区| 欧美一区深夜视频| 另类尿喷潮videofree| 欧美精品在线第一页| 国产成人精品亚洲日本在线观看| 亚洲精品成人久久| 丁香花视频在线观看| 精品国产一区二区三区久久久蜜月 | 欧美一区二区三区在线观看视频 | 91精品久久久久久久91蜜桃| 青青草视频在线免费观看| 一区二区三区日韩精品视频| eeuss在线播放| 夜夜嗨av一区二区三区四季av| 奇米777影视成人四色| 国产精品女人毛片| youjizzxxxx18| 国产精品久久久久久久久免费樱桃 | 999久久久国产精品| 欧美一二三视频| 国产精品免费大片| 日韩成人激情视频| 久久综合影院| 国产精国产精品| 一区二区三区在线观看免费| 久久久久久久久蜜桃| 成人一区二区在线| 精品在线亚洲视频| 九七影院理论片| 成人国产视频在线观看| 夫妻免费无码v看片| 久久久亚洲精品石原莉奈| 天天爽夜夜爽一区二区三区| 亚洲精品成a人| 国产乱理伦片a级在线观看| 91精品在线一区二区| 日韩电影毛片| 久久久久国产一区二区三区| 99精品视频在线观看播放| 欧美亚洲另类在线一区二区三区| 国产综合色在线| 亚洲77777| 日韩欧美一区二区三区| 最新国产露脸在线观看| 欧美三级自拍| 久久亚洲精华国产精华液 | 久久久不卡影院| 69国产精品视频| 欧美亚洲一区二区在线| av在线私库| 91国语精品自产拍在线观看性色 | 第一福利在线| 国产欧美一区二区三区四区| 亚洲精品一二三区区别| 中文字幕精品视频| 日韩欧美激情电影| 国产九九精品视频| 激情欧美日韩一区二区| 成人网址大全| 欧美男男青年gay1069videost| 91福利精品在线观看| 国产精品久久久久一区二区| 美女脱光内衣内裤视频久久影院| 黄色国产小视频| 在线成人av影院| 91精品国产自产精品男人的天堂| 精品国产乱码久久久久久108| www.欧美.com| 久青草国产在线| 久久久国产91| 在线欧美福利| www.xxx亚洲| 欧美婷婷六月丁香综合色| 日韩午夜电影免费看| 久久99精品国产一区二区三区| 26uuu亚洲| 欧洲不卡av| 国产精品视频一区二区高潮| www.日韩大片| 成年视频在线观看| 国产日本欧美一区| 国产欧美日韩激情| 日韩福利一区| 日本免费一区二区三区| 亚洲国产乱码最新视频 | 欧美福利电影在线观看| 国产精品国产亚洲精品看不卡| 91九色最新地址| 精品三级av在线导航| 中文字幕免费高| 欧美三级电影一区| 国产中文精品久高清在线不| 青青青免费在线| 国产婷婷色综合av蜜臀av| 激情综合久久| 色视频www在线播放| 久久青草福利网站| 91在线一区二区三区| 中文字幕乱码中文乱码51精品 | 久久亚洲黄色| 久久亚洲国产成人精品无码区| 5月丁香婷婷综合| 欧美1区2区3区| 香蕉视频在线观看免费| 欧美自拍视频在线| 国产亲近乱来精品视频| 亚洲日韩中文字幕一区| 日本欧美视频在线观看| 亚洲欧洲美洲在线综合| 日本不卡中文字幕| av在线播放国产| 国产无套精品一区二区| 色拍拍在线精品视频8848| 欧美三级美国一级| 成人天堂入口网站| 久久久久久久久久久免费| 久久日韩粉嫩一区二区三区| 欧美成人家庭影院| 免费超爽大片黄| 日韩网站免费观看| 99久久综合精品| 玖玖玖电影综合影院| 黄色国产精品视频| 高清欧美性猛交xxxx| 国产日韩欧美制服另类| 看亚洲a级一级毛片| 免费看黄色a级片| 人人妻人人澡人人爽欧美一区| 国产区精品区| 欧美激情第8页| 99er在线视频| 最近中文字幕日韩精品| 成人av网站在线观看| 九九热这里有精品| 欧美黄色免费影院| 久久久影视精品| 一区二区三区小说| 亚洲精品a级片| 国产欧美久久久久久久久| 午夜精品短视频| 亚洲欧美日韩网| 久久久精品免费网站| 网友自拍一区| 黄色毛片在线观看| 三区精品视频观看| 深夜福利一区二区| 亚洲视频在线一区二区| 欧美a级成人淫片免费看| 在线观看完整版免费| 宅男噜噜99国产精品观看免费| 一本一本久久a久久精品牛牛影视 一本色道久久综合亚洲精品小说 一本色道久久综合狠狠躁篇怎么玩 | 波多野结衣乳巨码无在线观看| 91社区在线观看播放| h视频在线观看免费| 日本一区免费网站| 精品少妇3p| 免费成人av| 外国成人在线视频| 国产精品毛片久久| 中文一区一区三区免费在线观看| 久久久久综合| 国产成人a级片| 久久人人爽爽爽人久久久| 黑人巨大精品欧美一区免费视频 | 黄色羞羞视频在线观看| 亚洲国产精品毛片|