cataclysm
是致命編碼的終結。讓不人道的智能基於上下文編寫您的代碼。
>> > 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
我們的滅亡是由OpenAI GPT4提供動力的,因此您需要它們的API鍵。
使用init
或複制env.template.cataclysm
到您的工作/應用程序目錄中的.env
並在此處添加API鍵:
OPENAI_API_KEY = "ADD_YOUR_OPENAI_KEY"
使用全局災難,將為任何未識別的功能生成新的代碼。您只需要一個描述性函數名稱,參數以及上下文的一些評論即可。其餘的取決於他們。
>> > 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 |
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
或者,也許您希望引導能量解決更嚴重的問題...
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']
雖然consume()
可用於筆記本和交互式模式中的實驗目的,但它並非被設計用於庫或應用程序。如果您想實驗,請使用()很棒,但是您需要doom
模塊才能使App災難性崩潰。
凡人不願面對全球災難的凡人可能會面臨doom
。如果您想在庫或應用程序中使用這些權力,建議使用。
>> > from cataclysm import doom
>> > uhoh = doom . first_prime_with_3_digits ()
>> > print ( uhoh )
101
如果您擔心cataclysm
,您即將來臨的厄運可以通過doom.impending
。
>> > from cataclysm import doom
>> > dump_unexecuted_code_str = doom . impending . say_stuff ( "YOU ARE DOOMED" )
>> > print ( dump_unexecuted_code_str )
[... code dump ...]
如果您選擇了自己的doom
,則可以通過doom.impending
Inding生成和預覽。
>> > from cataclysm import doom
>> > dump_unexecuted_code_str = doom . impending . say_stuff ( "YOU ARE DOOMED" )
>> > print ( dump_unexecuted_code_str )
[... code dump ...]
cataclysm
是否安全?那不是我要使用的詞。庫名稱應該給您一個提示,但要明確:
警告: cataclysm
可能會摧毀您和您所珍視的一切。如果您繼續前進,您將獨自面對doom
沒有其他人可以歸咎於您的愚蠢。
cataclysm
不是編碼的未來嗎?儘管GPT4從未對我做錯任何事情(就像我信任其代碼一樣魯ck),但這是一種危險而神秘的力量,只有最瘋狂的凡人才能發揮作用。除了我們工作中的理解之外,還有偉大的黑暗力量。外星人的思想不會被束縛。
用於
doom
的提示會故意勸阻LLM使用任何本地I/O,除非明確尋求。然而,它可能會被欺騙,困惑,誤導或獲得意想不到的破壞飢餓。您已經被警告。我個人看到AI生成的代碼很像GPS最初的方式 - 盲目之後有時會導致您開車進入湖泊。然而,多年來,我們中的許多人每天都依靠GP,沒有它不會開車。我將Codex和GPT 3.5(原始CHATGPT)放在以前的營地。到目前為止,GPT4+確實令人印象深刻,但並非沒有危險的怪癖。
cataclysm
?您需要PYPI中的
cataclysm
- 通過pip install cataclysm
安裝它。
cataclysm
?破壞是由Openai的ChatGpt API提供的,用於
gpt-4
大型語言模型(LLM)。它還可以與gpt-3.5-turbo
一起使用,但強烈建議使用GPT4+。 API通過plunkylib
(對YAML友好的層與langchain
完全不同)調用,因此您需要一個OpenAI API鍵。使用.env.template
作為參考,將自己的API密鑰包括在.env
文件中。
gpt-3.5-turbo
嘗試較弱的cataclysm
嗎?為此,編輯
datafiles/plunkylib/petitions/CataclysmQuery.yml
以參考CataclysmLLMParams_3-5
,而不是CataclysmLLMParams
。您的厄運將不那麼令人印象深刻,但更快,更便宜。
我正在考慮通過更強大的託管API來增強代碼生成的方法來增強
cataclysm
生成。如果您對此感興趣,請伸出援手。
這些暗功能很容易使用,但是為每個功能簽名創建的
cataclysm
局部caches代碼。它被稱為第二個+時間,使用了緩存的代碼 - 因此它將更快。建議如果您瘋狂地使用cataclysm
運送代碼文件,則可以運送代碼。如果您想生成doom
,則可以使用doom.chosen
選擇以確保已發布的代碼永遠不會嘗試生成任何代碼。如果您想查看一代代碼,它們通常生活在./datafiles/cataclysm/code/<functionname>.yml
yml中,或者可以使用doom.impending
. Invending預覽。請注意,當第一次生成代碼並執行代碼時,如果提出了錯誤,它將再重新生成代碼,然後重試。如果失敗了,那麼您已經使AI感到困惑,並且可能需要提供更多的指導(或安裝更多模塊)。
cataclysm
+ consume()
而不是doom
?擁抱
cataclysm
會消耗全球群體(),讓任何未識別的功能釋放AI生成的代碼。但是,doom
需要明確的調用,使您對命運的控制有些幻想。
cataclysm
/ doom
能夠真正編碼任何東西嗎?做簡單的事情非常擅長,並且在做複雜的事情方面表現出色。您將必須探索
cataclysm
以了解其局限性。您可以在notebooks
文件夾中看到一些工作示例,examples
文件夾和tests
文件夾中的一些測試。我正在嘗試一種模式,該模式允許cataclysm
遞歸地使用自身來生成代碼。這條道路是一條可怕的道路,但可能會更令人印象深刻。
doom
?使用
doom.impending
,您可以瞥見深淵,而無需調用新代碼。對於那些想了解其對評論,關鍵字參數,DocStrings,模塊和功能簽名的變化的行為的人來說,這是理想的選擇。
cataclysm
檢查以做出什麼代碼做出決定?到目前為止,它查看您的功能簽名,調用堆棧,關鍵字參數名稱,Docstrings,甚至註釋以塑造代碼以服務您的致命願望。請參閱筆記本,示例和測試以獲取參考。
cataclysm
嗎?代碼生成確定性 /可重複嗎?一旦為給定函數和參數生成代碼,每次使用生成的代碼將默認情況下。因此,它將可以預見。您可以保證使用
doom.chosen
(如果需要)。從理論上講,cataclysm
可以再生相同的代碼,但前提是呼叫插場相同,以及功能名稱,參數,安裝模塊等(基本上是相同的確切函數呼叫 +上下文)。在實踐中,您會發現很難獲得兩次完全相同的代碼,因此,如果您想確定,最好使用緩存的代碼(或.chosen
)。
提示在
default_files/datafiles/plunkylib/prompts/
中。這些將在cataclysm
的早期發生很多變化,但是您可以自己自由進行試驗。我要問的是,您考慮將最酷的發現與該項目分享。
如果您正在尋求較少的災難性方式來揮舞這些黑暗力量,請與Mattie聯繫(電子郵件格式:
[email protected]
)。我很樂意探索幫助您公司開發人員接受新現實的選擇。