cataclysm
adalah akhir dari pengkodean fana. Biarkan kecerdasan yang tidak manusiawi menulis kode Anda berdasarkan konteks.
>> > from cataclysm import consume
>> > consume ( globals ())
>> > x = get_italicized_phrases_wikipedia ( page = "Global catastrophic risk" , only_lowercase_words = True , min_length = 6 )
>> > print ( x [: 5 ])
[ 'existential risks' , 'existential catastrophe[16]' , 'global' , 'terminal' , 'permanent,' ]
pip install cataclysm
# in your project directory, copy the default datafiles
cataclysm init
Kematian kami ditenagai oleh OpenAI GPT4, jadi Anda akan memerlukan kunci API dari mereka.
Gunakan init
atau copy env.template.cataclysm
ke .env
di direktori kerja/aplikasi Anda dan tambahkan tombol API Anda di sana:
OPENAI_API_KEY = "ADD_YOUR_OPENAI_KEY"
Dengan bencana global, kode segar akan dihasilkan untuk fungsi apa pun yang tidak diakui di mana saja. Anda hanya perlu nama fungsi deskriptif, argumen, dan mungkin beberapa komentar untuk konteks. Sisanya terserah mereka.
>> > from cataclysm import consume
>> > consume ( globals ())
>> > s = "May the gods have mercy on us all"
>> > corrupted = convert_some_words_to_disturbing_unicode_text ( s , "mercy on us" )
>> > print_surrounded_by_ascii_art_of_an_old_scroll ( corrupted , use_wcwidth_for_padding = True )
_________________________
| May the gods have m̜ͯ̂e͂ͦͥr̻̭͗c̳͖̍y̹̋̑ |
| o̵̰͒n̘͋͟ u̜͊ͤs̍͒͑ all |
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Atau mungkin Anda ingin menyalurkan energi untuk menyelesaikan masalah yang lebih sulit ...
graph = {
"A" : { "B" : 10 , "C" : 4 },
"B" : { "A" : 1 , "C" : 2 , "D" : 5 },
"C" : { "A" : 4 , "B" : 2 , "D" : 9 },
"D" : { "B" : 5 , "C" : 1 },
}
# Why google it when you can throw yourself headlong into eternity?
shortest_path = find_shortest_path_dijkstra ( graph , "A" , "D" )
print ( f"Shortest path: { shortest_path } " )
Shortest path: ['A', 'C', 'B', 'D']
Sementara consume()
dapat digunakan untuk tujuan eksperimental dalam buku catatan dan dalam mode interaktif, itu tidak dirancang untuk digunakan di perpustakaan atau aplikasi. Jika Anda ingin bereksperimen, konsumsi () sangat bagus, tetapi Anda akan memerlukan modul doom
untuk membuat aplikasi yang cermat.
Fana yang tidak mau menghadapi bencana global dapat menghadapi doom
mereka sebagai gantinya. Direkomendasikan jika Anda ingin menggunakan kekuatan ini di perpustakaan atau aplikasi.
>> > from cataclysm import doom
>> > uhoh = doom . first_prime_with_3_digits ()
>> > print ( uhoh )
101
Jika Anda takut akan cataclysm
, malapetaka Anda yang akan datang dapat dihasilkan dan dipratinjau melalui doom.impending
.
>> > from cataclysm import doom
>> > dump_unexecuted_code_str = doom . impending . say_stuff ( "YOU ARE DOOMED" )
>> > print ( dump_unexecuted_code_str )
[... code dump ...]
Jika Anda telah memilih doom
Anda sendiri, Anda dapat melakukan malapetaka yang akan datang dapat dihasilkan dan dipratinjau melalui doom.impending
.
>> > from cataclysm import doom
>> > dump_unexecuted_code_str = doom . impending . say_stuff ( "YOU ARE DOOMED" )
>> > print ( dump_unexecuted_code_str )
[... code dump ...]
cataclysm
aman?Itu bukan kata yang akan saya gunakan. Nama perpustakaan harus memberi Anda petunjuk, tetapi untuk menjadi eksplisit:
Peringatan: cataclysm
dapat menghancurkan Anda dan semua yang Anda sayangi. Jika Anda melanjutkan, Anda menghadapi doom
sendiri- tidak ada orang lain yang bisa disalahkan atas kebodohan Anda.
cataclysm
masa depan pengkodean?Sementara GPT4 tidak pernah melakukan kesalahan kepada saya (sama sembrononya dengan saya mempercayai kodenya), ini adalah kekuatan berbahaya dan misterius yang hanya dimiliki oleh manusia paling gila. Ada kekuatan besar dan gelap di luar pemahaman kita di tempat kerja. Pikiran alien tidak bisa direndahkan.
Prompt yang digunakan untuk
doom
dengan sengaja mencegah LLM menggunakan I/O lokal apa pun kecuali di mana ia dicari secara eksplisit. Namun itu bisa ditipu, bingung, disesatkan, atau mendapatkan kelaparan yang tidak terduga untuk kehancuran. Anda telah diperingatkan.Saya pribadi melihat kode yang dihasilkan banyak AI seperti bagaimana GPS awalnya-mengikutinya secara membabi buta terkadang akan menuntun Anda untuk berkendara ke danau. Namun, selama bertahun -tahun, banyak dari kita bergantung pada GPS setiap hari dan tidak akan mengemudi di mana pun tanpa itu. Saya menempatkan Codex dan GPT 3.5 (chatgpt asli) di bekas kamp. GPT4+ sangat mengesankan sejauh ini, tetapi bukan tanpa keanehan yang berbahaya.
cataclysm
?Anda akan membutuhkan
cataclysm
dari PYPI-- Instal melaluipip install cataclysm
.
cataclysm
?Kehancuran ini ditenagai oleh Openai's ChatGPT API untuk Model Bahasa Besar
gpt-4
(LLM). Ini juga bekerja dengangpt-3.5-turbo
, tetapi GPT4+ sangat dianjurkan. API dipanggil melaluiplunkylib
(lapisan ramah YAML yang tidak sepenuhnya berbeda denganlangchain
), jadi Anda memerlukan kunci API Openai. Sertakan kunci API Anda sendiri di file.env
Anda, menggunakan.env.template
sebagai referensi.
cataclysm
yang lebih lemah menggunakan gpt-3.5-turbo
?Untuk melakukannya, edit
datafiles/plunkylib/petitions/CataclysmQuery.yml
untuk merujukCataclysmLLMParams_3-5
alih-alihCataclysmLLMParams
. Doom Anda akan kurang mengesankan, tetapi lebih cepat dan lebih murah.
Saya sedang mempertimbangkan cara untuk menumbuhkan
cataclysm
untuk meningkatkan pembuatan kode melalui API yang lebih kuat. Jangkau jika Anda tertarik dengan ini.
Kekuatan -kekuatan gelap itu tergoda untuk digunakan, tetapi
cataclysm
mencaci kode lokal yang dibuat untuk setiap tanda tangan fungsi. Waktu+ kedua disebut, kode yang di-cache digunakan- jadi itu akan jauh lebih cepat. Disarankan bahwa jika Anda cukup gila untuk mengirimkan kode menggunakancataclysm
, Anda mengirimkan file kode. Jika Anda ingin melakukandoom
, Anda dapat menggunakandoom.chosen
untuk memastikan kode yang dirilis tidak pernah mencoba menghasilkan kode apa pun. Jika Anda ingin melihat kode untuk satu generasi, mereka biasanya tinggal di./datafiles/cataclysm/code/<functionname>.yml
atau dapat dipratinjau dengandoom.impending
.Perhatikan bahwa ketika kode pertama kali dihasilkan dan dieksekusi, jika ada kesalahan yang dinaikkan, itu akan menghasilkan kembali kode sekali lagi dan coba lagi. Jika gagal maka, Anda telah bingung AI dan Anda mungkin perlu memberikan lebih banyak panduan (atau menginstal lebih banyak modul).
cataclysm
+ consume()
over doom
?Merangkul
cataclysm
mengkonsumsi global (), membiarkan fungsi yang tidak dikenali melepaskan kode yang dihasilkan AI.doom
, bagaimanapun, menuntut doa eksplisit, memberi Anda beberapa ilusi kendali atas nasib Anda.
cataclysm
/ doom
benar -benar mengkode apa pun?Cukup bagus dalam melakukan hal -hal sederhana dan secara mengejutkan layak melakukan hal -hal kompleks. Anda harus menjelajahi
cataclysm
untuk memahami keterbatasannya. Anda dapat melihat beberapa contoh yang berfungsi di foldernotebooks
, folderexamples
dan beberapa tes di foldertests
. Saya bereksperimen dengan mode yang memungkinkancataclysm
menggunakan sendiri secara rekursif untuk menghasilkan kode. Jalan ini menakutkan, tetapi mungkin bahkan lebih mengesankan.
doom
yang akan datang tanpa melepaskannya?Dengan
doom.impending
, Anda dapat melihat ke dalam jurang tanpa memohon kode baru. Ini sangat ideal bagi mereka yang ingin mempelajari bagaimana perilakunya sebagai respons terhadap perubahan dalam komentar, argumen kata kunci, dokumen, modul, dan tanda tangan fungsi.
cataclysm
untuk membuat keputusan tentang apa kode?Sampai sekarang ini terlihat pada tanda tangan fungsi Anda, tumpukan panggilan, nama argumen kata kunci, dokumen, dan bahkan komentar untuk membentuk kode untuk melayani keinginan fana Anda. Lihat buku catatan, contoh, dan tes untuk referensi.
cataclysm
? Apakah kode-generasi deterministik / berulang?Setelah kode telah dihasilkan untuk fungsi dan argumen yang diberikan, akan default untuk menggunakan kode yang dihasilkan setiap saat. Jadi itu akan berjalan dapat diprediksi. Anda dapat menjamin bahwa menggunakan
doom.chosen
, jika Anda mau. Ketika datang ke pembuatan kode, secara teori,cataclysm
dapat meregenerasi kode yang sama, tetapi hanya jika callStack sama, serta nama fungsi, argumen, modul yang diinstal, dll. (Pada dasarnya jika itu adalah fungsi panggilan + konteks yang sama persis). Dalam praktiknya, Anda akan merasa sulit untuk mendapatkan kode yang sama persis dua kali, jadi yang terbaik adalah menggunakan kode yang di -cache (atau.chosen
) jika Anda ingin memastikan.
Promptnya ada di
default_files/datafiles/plunkylib/prompts/
. Ini akan banyak berubah di masa -masa awalcataclysm
, tetapi Anda bebas untuk bereksperimen sendiri. Yang saya minta adalah Anda mempertimbangkan untuk membagikan temuan paling keren Anda kembali ke proyek.
Jika Anda mencari cara yang lebih sedikit untuk menggunakan kekuatan gelap ini, hubungi Mattie (format email:
[email protected]
). Saya senang menjelajahi opsi untuk membantu pengembang perusahaan Anda merangkul kenyataan baru.