整合GPT-4的Github Copilot X還在小範圍內測中,而整合GPT-4的Cursor已公開發行。 Cursor是一個整合GPT-4的IDE,可以用自然語言寫程式碼,讓寫程式碼和聊天一樣簡單。
GPT-4和GPT-3.5在處理和編寫程式碼的能力上差異還是很大的。官網的一份測試報告。
前兩個是GPT-4,一個採用文字輸入,一個採用圖像輸入;第三個是GPT3.5,可以看出GPT-4的程式碼能力相較於GPT-3.5有較大能力的提升。
整合GPT-4的Github Copilot X還在小範圍內測中,而整合GPT-4的Cursor已公開發行。 Cursor是一個整合GPT-4的IDE,可以用自然語言寫程式碼,讓寫程式碼和聊天一樣簡單。
整合GPT-4的Cursor,快捷鍵:windows電腦ctrl k,mac電腦comand k 喚起需求輸入框,來用自然語言編寫程式碼;ctrl l,comand l 喚起聊天窗口,讓編寫程式碼和聊天一樣簡單。
首先,按 ctrl k。寫下一段需求:寫一個python程序,要求實作圖片轉字畫並寫入文件,要用到pillow 函式庫的使用,araparse函式庫
##cursor在一個空白的檔案中,產生了一段完整的python程式碼。 # Welcome to Cursor
# 1. Try generating with command K on a new line. Ask for a pytorch script of a feedforward neural network
# 2. Then, select the outputted code and hit chat. Ask if there's a bug. Ask how to improve.
# 3. Try selecting some code and hitting edit. Aadd bot to edit. residual layers.
# 4. To try out cursor on your own projects, go to the file menu (top left) and open a folder.
from PIL import Image
import argparse
#4im # 命令列輸入參數處理
parser = argparse.ArgumentParser()
parser.add_argument('file') # 輸入檔案
parser.add_argument('-o', '--output' ) # 輸出檔
parser.add_argument('--width', type = int, default = 80) # 輸出字元畫寬
parser.add_argument('--height', type = int, default = 80 ) # 輸出字元高
# 取得參數
args = parser.parse_args()
IMG = args.file
WIDTH = args.width
HEIGHT = args 。 ()_ -=[]{};':",./?\|`~ ")
# 將256灰階對應到70個字元上
def get_char( r, g, b, alpha = 256):
if alpha == 0:
return ' '
length = len(ascii_char)
gray = int(0.2126 * r 0.7152 * g 0.0722 * b)
unit = (256.0 1)/length
unit = (256.0 1)/length
return ascii_char[int(gray/unit)]
if __name__ == '__main__':
#im = Image. open(IMG)
im = im.resize((WIDTH, HEIGHT), Image.NEAREST)
txt = ""
for i in range(HEIGHT):
for j in range(WIDTH):
txt = get_char(*im.getpixel((j, i)))
txt = 'n'
print(txt)
# 字元畫輸出到檔案if OUTPUT:
with open(OUTPUT, 'w') as f:
f.write(txt)else:
with open("output .txt", 'w') as f:f.write(txt)
看看自動產生的程式碼能否直接運作。
用於轉換的圖片選用下面這張:
(venv) PS C:UsershanweiPycharmProjectspythonProject> python .main.py -h
usage : main.py [-h] [-o OUTPUT] [--width WIDTH] [--height HEIGHT] file
positional arguments:
file
#options:
-h, --helpshow this help message and exit
-o OUTPUT, --output OUTPUT--width WIDTH--height HEIGHT
(venv) PS C:UsershanweiPycharmProjectspythonProject> python .UsershanweiPycharmProjectspythonProject> python .main> .py .golang.png執行程式後,轉換的效果如下:#下面來讀讀程式碼:##gray = int(0.2126 * r 0.7152 * g 0.0722 * b)
###這段程式碼好奇怪,問Cursor是啥意思。按下 ctrl l,喚起聊天窗口,輸入:這段程式碼是啥意思#############Cursor給了解釋,原來是透過r,g,b的值加權計算出灰階值,然後透過灰階值計算出字元。也給了參考連結 https://en.wikipedia.org/wiki/Grayscale#Converting_color_to_grayscale
##按下ctrl l,喚起聊天窗口,讓AI解釋下整段程式碼,輸入:用中文解釋下整段程式碼 #可見AI解釋的非常準確和詳盡。 上面程式碼的功能是將圖片轉換成黑白的帶有灰階的ASCII字元畫,下面來改造一下,讓它能夠產生彩色的字元畫。 按下ctrl k 喚醒需求文字框,輸入:請將這段程式碼由產生黑白的字元改成產生彩色的字元 看到動畫:AI會逐行掃描每一行程式碼,在需要改動的地方標註出來,然後在下面給出改動的程式碼。並保留原來的程式碼,方便比較。 AI只改動了2行的程式碼(實際上只改動了一行,第二處AI估計大腦短路了,完全等價的改動),實現了由產生黑白的字元改成產生彩色的字元。下面測試一下:(venv) PS C:UsershanweiPycharmProjectspythonProject> python .main2.py .golang.png產生的結果如下,發現文字檔案開啟後,多了很多顏色的資訊
直接打開文字檔案查看,是無法看出原來的圖像了,需要在終端機查看顏色效果: 可見,原來圖片的藍色訊息,且兩種不同深淺的藍色都顯示出來了。 Perfect!以上是整合GPT-4的Cursor讓編寫程式碼和聊天一樣簡單,用自然語言編寫程式碼的新時代已來的詳細內容。更多資訊請關注PHP中文網其他相關文章!