Python代码自动转成C++代码
推薦:
兩個實用Python小工具(tqdm glob)
Matplotlib-幾行代碼,便可以生成繪圖,直方圖,功率譜,條形圖,錯誤圖,散點圖等,附有代碼
??????如何培養(yǎng)AI科研人員的科研思維
1. 如何實現(xiàn)
該項目是 GitHub 開源項目,使用非常簡單,下載后安裝依賴,運行對應的Python腳本即可。
python3?python2cppconverter.py以下面的?Python?代碼為例
def?add_something(x,?y):print("casually?adding?some?stuff?together")z?=?x?+?yreturn?zif?__name__?==?"__main__":print('Okay,?lets?go')print(add_something(5,?2))轉換成?C++?代碼如下:
//?C++?Code?generated?from?Python?Code:? #include?<iostream> using?namespace?std;int?add_something(int?x,?int?y)?{cout?<<?"casually?adding?some?stuff?together"?<<?endl;int?z?=?x?+?y;return?z; }int?main()?{cout?<<?"Okay,?lets?go"?<<?endl;cout?<<?add_something(5,?2)?<<?endl;return?0; }python2cppconverter.py實際上是調用OpenAI的API來完成代碼轉換。核心代碼如下:
openai.Completion.create(engine='code-davinci-002',?prompt=input_prompt,?temperature=temperature,max_tokens=num_tokens,?stream=STREAM,?stop='===================\n',top_p=1.0,?frequency_penalty=0.0,?presence_penalty=0.0)本質上就是一個函數(shù)調用,其中engine參數(shù)是代碼轉換模型。
介紹code-davinci-002之前,先來了解下GPT-3模型。
GPT-3是OpenAI在 2020年 5 月發(fā)布的一個模型,這個模型包含1750億的參數(shù),比GPT-2多了兩個數(shù)量級,比GPT-2有了極大的改進。
GPT-3?在許多?NLP?數(shù)據(jù)集上實現(xiàn)了強大的性能,包括翻譯、問答和完形填空任務,以及一些需要即時推理或領域適應的任務,例如解讀單詞或執(zhí)行算術運算。
code-davinci-002模型是GPT-3的后代,它的訓練數(shù)據(jù)包含自然語言和來自?GitHub?的數(shù)十億行公共代碼。因此,它可以理解和生成代碼,精通十多種編程語言,最擅長Python。
所以,code-davinci-002模型不止能實現(xiàn)編程語言之間相互轉換,還可以與自然語言互轉、找代碼中的BUG、根據(jù)代碼編寫文檔等。
比如下面的例子就是為代碼功能生成文字性描述
代碼轉自然語言
是不是以后就不用愁寫注釋了?
再看看下面這個例子,可以為Python代碼生成docstring
docstring
其他例子大家可以看OpenAI官網(wǎng)。
2. 一個壞消息
上面說得很美好,然而現(xiàn)實很殘酷。
我自從下載了這個項目,從開始運行就一步一個坑。
上面用到的OpenAI?API,并不對國內開放,國內的朋友申請使用時會看到下面的提示
國內無法使用
上來就被卡脖子了!
當然,國內有團隊提供了解決方案,花 18 元可以買一個現(xiàn)成的國外賬號,有效期將近 3 個月,賬號內自帶 18 美元。所以,OpenAI的模型是收費的,一點不清真。
當你買了賬號,獲取了API key,把它配置到項目中,運行項目,準備見證時刻的奇跡時,會發(fā)現(xiàn)如下報錯:
No?such?model:?code-davinci-002這是因為code-davinci-002模型處于私有測試中,需要提交申請,通過后才能調用。
最后,我不建議大家運行code-davinci-002模型,對國內朋友來說,成本太高了。如果想看效果,可以到OpenAI官網(wǎng)看看文檔、在線運行一些example即可。
雖然項目沒有成功運行起來,但這并不妨礙我們學習技術,這波強行不虧。
原文鏈接:Python代碼自動轉成其他編程語言代碼
生態(tài)環(huán)境 大氣 遙感 水文 統(tǒng)計語言 機器學習等多領域視頻教程匯總https://mp.weixin.qq.com/s?__biz=MzUzMTczMDMwMw==&mid=2247498609&idx=3&sn=ecf44f38a67ebe471358b406b11c5b76&chksm=fabca161cdcb287791011cdef1cbf6f7c45fe5142ae32af7443e048091c476fe348ff17440d5&scene=21#wechat_redirect
總結
以上是生活随笔為你收集整理的Python代码自动转成C++代码的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Action重定向总结
- 下一篇: C++的虚函数表