Name | paradoxism JSON |
Version |
0.0.3
JSON |
| download |
home_page | None |
Summary | Prompt like a Human, Perform like a Machine |
upload_time | 2024-12-15 01:30:27 |
maintainer | None |
docs_url | None |
author | Allan Yiin |
requires_python | >=3.10 |
license | MIT |
keywords |
chatgpt
gpt4
llm
prompt
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
<img src='images/PARADOXISM_LOGO.png' height=360 width=360/>
## Prompt like a Human, Perform like a Machine
在當前的生成式 AI 開發環境中,如何有效管理**大型語言模型(LLM)**的工作流成為開發者面臨的一大挑戰。LLM 的工作流往往涉及複雜的邏輯流程、控制結構,以及低可控的輸出難以符合嚴格的輸出格式要求。傳統上,這些流程需要以繁瑣的代碼來實現,導致開發過程變得冗長且難以維護。
**Paradoxism** 的誕生正是為了解決這一難題。通過引入創新的雙重模式,Paradoxism 將工作流的流程控制以代碼形式呈現,而具體執行細節則使用類似人類語言的Prompt 撰寫,而這種混合模式將其無縫轉換為可執行、高效率、輸出格式確定的真實python代碼的。這樣的設計不僅簡化了開發者的工作負擔,還提升了開發效率與結果的可預測性。
## 核心理念
* **雙重性**: **Paradoxism** 融合了人類語言的表達自由與程式語言的邏輯嚴謹,完美地兼具了創意與執行的雙重性。你可以使用自然語言編寫偽代碼,而系統將它轉化為準確的可執行代碼。
* **跨越邊界**: 不再需要在思考模式與編程邏輯之間來回切換,**Paradoxism** 幫助你跨越人類語言與機器語言的邊界,將兩者自然融合。
* **簡潔與效率**: **Paradoxism** 強調易用性和高效性,你只需像自然語言一樣撰寫偽代碼,程式語言的實現部分將自動生成,提升開發效率。
## 功能特點
* **代碼中融入自然語言**: 透過裝飾器、docstring、以及prompt函數來維護自然語言的邏輯。
* **強制型別檢查確保可控**: 透過docstring或是type hinting的設定來執行強制型別檢查與輸出抽取,以確保輸出格式可控。
* **高效能的併行以及局部重執行**: 無論是初學者還是資深開發者,**Paradoxism** 都能提供靈活的解決方案,適應不同項目的需求。
## 使用範例
只需要在函數上方加入@agent即可設定語言模型,system prompt,而在docstring還可以設定固定的static instruction。在函數上的type hinting會轉為強制型別檢查。而其中的prompt則是根據
```
# paradoxism
@agent('gpt-4o',system_prompt='你是一個有10年以上口譯經驗且曾經旅居海外的英語翻譯師')
def en_translator(sentence:str)->str:
"""
你懂得根據輸入內容的原意與語境,在最大程度保留原本文字的風格與言外之意的情況下,翻譯成兼具信達雅的英文版本
"""
result=prompt(f'請將以下內容翻譯成英文,直接輸出,無須解釋:\n\n"""{sentence}"""')
return result
```
執行@agent的函數:
```
print(en_translator('紅豆生南國,春來發幾枝。願君多採擷,此物最相思'))
-----------------------------------------------------------------------
"""紅豆生南國,春來發幾枝。願君多採擷,此物最相思"""
agent en_translator executed in 3.0094 seconds
Red beans grow in the southern land, how many sprout in springtime's hand. I wish you to gather more, for this is what most evokes longing.
```
## 安裝與教程
## 專案願景
**Paradoxism** 旨在革新編程的思維方式,讓開發者不再受限於傳統的語法結構,並能輕鬆將想法轉換為實際代碼。我們的願景是創造一個既自由又嚴謹的編程環境,讓創意得以快速落地,同時保持高效的執行。
Raw data
{
"_id": null,
"home_page": null,
"name": "paradoxism",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "chatgpt, gpt4, llm, prompt",
"author": "Allan Yiin",
"author_email": "allanyiin.ai@gmail.com",
"download_url": "https://test.pypi.org/project/paradoxism",
"platform": null,
"description": "<img src='images/PARADOXISM_LOGO.png' height=360 width=360/>\r\n\r\n## Prompt like a Human, Perform like a Machine\r\n\r\n\u5728\u7576\u524d\u7684\u751f\u6210\u5f0f AI \u958b\u767c\u74b0\u5883\u4e2d\uff0c\u5982\u4f55\u6709\u6548\u7ba1\u7406**\u5927\u578b\u8a9e\u8a00\u6a21\u578b\uff08LLM\uff09**\u7684\u5de5\u4f5c\u6d41\u6210\u70ba\u958b\u767c\u8005\u9762\u81e8\u7684\u4e00\u5927\u6311\u6230\u3002LLM \u7684\u5de5\u4f5c\u6d41\u5f80\u5f80\u6d89\u53ca\u8907\u96dc\u7684\u908f\u8f2f\u6d41\u7a0b\u3001\u63a7\u5236\u7d50\u69cb\uff0c\u4ee5\u53ca\u4f4e\u53ef\u63a7\u7684\u8f38\u51fa\u96e3\u4ee5\u7b26\u5408\u56b4\u683c\u7684\u8f38\u51fa\u683c\u5f0f\u8981\u6c42\u3002\u50b3\u7d71\u4e0a\uff0c\u9019\u4e9b\u6d41\u7a0b\u9700\u8981\u4ee5\u7e41\u7463\u7684\u4ee3\u78bc\u4f86\u5be6\u73fe\uff0c\u5c0e\u81f4\u958b\u767c\u904e\u7a0b\u8b8a\u5f97\u5197\u9577\u4e14\u96e3\u4ee5\u7dad\u8b77\u3002\r\n\r\n**Paradoxism** \u7684\u8a95\u751f\u6b63\u662f\u70ba\u4e86\u89e3\u6c7a\u9019\u4e00\u96e3\u984c\u3002\u901a\u904e\u5f15\u5165\u5275\u65b0\u7684\u96d9\u91cd\u6a21\u5f0f\uff0cParadoxism \u5c07\u5de5\u4f5c\u6d41\u7684\u6d41\u7a0b\u63a7\u5236\u4ee5\u4ee3\u78bc\u5f62\u5f0f\u5448\u73fe\uff0c\u800c\u5177\u9ad4\u57f7\u884c\u7d30\u7bc0\u5247\u4f7f\u7528\u985e\u4f3c\u4eba\u985e\u8a9e\u8a00\u7684Prompt \u64b0\u5beb\uff0c\u800c\u9019\u7a2e\u6df7\u5408\u6a21\u5f0f\u5c07\u5176\u7121\u7e2b\u8f49\u63db\u70ba\u53ef\u57f7\u884c\u3001\u9ad8\u6548\u7387\u3001\u8f38\u51fa\u683c\u5f0f\u78ba\u5b9a\u7684\u771f\u5be6python\u4ee3\u78bc\u7684\u3002\u9019\u6a23\u7684\u8a2d\u8a08\u4e0d\u50c5\u7c21\u5316\u4e86\u958b\u767c\u8005\u7684\u5de5\u4f5c\u8ca0\u64d4\uff0c\u9084\u63d0\u5347\u4e86\u958b\u767c\u6548\u7387\u8207\u7d50\u679c\u7684\u53ef\u9810\u6e2c\u6027\u3002\r\n\r\n## \u6838\u5fc3\u7406\u5ff5\r\n\r\n* **\u96d9\u91cd\u6027**: **Paradoxism** \u878d\u5408\u4e86\u4eba\u985e\u8a9e\u8a00\u7684\u8868\u9054\u81ea\u7531\u8207\u7a0b\u5f0f\u8a9e\u8a00\u7684\u908f\u8f2f\u56b4\u8b39\uff0c\u5b8c\u7f8e\u5730\u517c\u5177\u4e86\u5275\u610f\u8207\u57f7\u884c\u7684\u96d9\u91cd\u6027\u3002\u4f60\u53ef\u4ee5\u4f7f\u7528\u81ea\u7136\u8a9e\u8a00\u7de8\u5beb\u507d\u4ee3\u78bc\uff0c\u800c\u7cfb\u7d71\u5c07\u5b83\u8f49\u5316\u70ba\u6e96\u78ba\u7684\u53ef\u57f7\u884c\u4ee3\u78bc\u3002\r\n* **\u8de8\u8d8a\u908a\u754c**: \u4e0d\u518d\u9700\u8981\u5728\u601d\u8003\u6a21\u5f0f\u8207\u7de8\u7a0b\u908f\u8f2f\u4e4b\u9593\u4f86\u56de\u5207\u63db\uff0c**Paradoxism** \u5e6b\u52a9\u4f60\u8de8\u8d8a\u4eba\u985e\u8a9e\u8a00\u8207\u6a5f\u5668\u8a9e\u8a00\u7684\u908a\u754c\uff0c\u5c07\u5169\u8005\u81ea\u7136\u878d\u5408\u3002\r\n* **\u7c21\u6f54\u8207\u6548\u7387**: **Paradoxism** \u5f37\u8abf\u6613\u7528\u6027\u548c\u9ad8\u6548\u6027\uff0c\u4f60\u53ea\u9700\u50cf\u81ea\u7136\u8a9e\u8a00\u4e00\u6a23\u64b0\u5beb\u507d\u4ee3\u78bc\uff0c\u7a0b\u5f0f\u8a9e\u8a00\u7684\u5be6\u73fe\u90e8\u5206\u5c07\u81ea\u52d5\u751f\u6210\uff0c\u63d0\u5347\u958b\u767c\u6548\u7387\u3002\r\n\r\n## \u529f\u80fd\u7279\u9ede\r\n\r\n* **\u4ee3\u78bc\u4e2d\u878d\u5165\u81ea\u7136\u8a9e\u8a00**: \u900f\u904e\u88dd\u98fe\u5668\u3001docstring\u3001\u4ee5\u53caprompt\u51fd\u6578\u4f86\u7dad\u8b77\u81ea\u7136\u8a9e\u8a00\u7684\u908f\u8f2f\u3002\r\n* **\u5f37\u5236\u578b\u5225\u6aa2\u67e5\u78ba\u4fdd\u53ef\u63a7**: \u900f\u904edocstring\u6216\u662ftype hinting\u7684\u8a2d\u5b9a\u4f86\u57f7\u884c\u5f37\u5236\u578b\u5225\u6aa2\u67e5\u8207\u8f38\u51fa\u62bd\u53d6\uff0c\u4ee5\u78ba\u4fdd\u8f38\u51fa\u683c\u5f0f\u53ef\u63a7\u3002\r\n* **\u9ad8\u6548\u80fd\u7684\u4f75\u884c\u4ee5\u53ca\u5c40\u90e8\u91cd\u57f7\u884c**: \u7121\u8ad6\u662f\u521d\u5b78\u8005\u9084\u662f\u8cc7\u6df1\u958b\u767c\u8005\uff0c**Paradoxism** \u90fd\u80fd\u63d0\u4f9b\u9748\u6d3b\u7684\u89e3\u6c7a\u65b9\u6848\uff0c\u9069\u61c9\u4e0d\u540c\u9805\u76ee\u7684\u9700\u6c42\u3002\r\n\r\n## \u4f7f\u7528\u7bc4\u4f8b\r\n\r\n\u53ea\u9700\u8981\u5728\u51fd\u6578\u4e0a\u65b9\u52a0\u5165@agent\u5373\u53ef\u8a2d\u5b9a\u8a9e\u8a00\u6a21\u578b\uff0csystem prompt\uff0c\u800c\u5728docstring\u9084\u53ef\u4ee5\u8a2d\u5b9a\u56fa\u5b9a\u7684static instruction\u3002\u5728\u51fd\u6578\u4e0a\u7684type hinting\u6703\u8f49\u70ba\u5f37\u5236\u578b\u5225\u6aa2\u67e5\u3002\u800c\u5176\u4e2d\u7684prompt\u5247\u662f\u6839\u64da\r\n\r\n```\r\n# paradoxism\r\n@agent('gpt-4o',system_prompt='\u4f60\u662f\u4e00\u500b\u670910\u5e74\u4ee5\u4e0a\u53e3\u8b6f\u7d93\u9a57\u4e14\u66fe\u7d93\u65c5\u5c45\u6d77\u5916\u7684\u82f1\u8a9e\u7ffb\u8b6f\u5e2b')\r\ndef en_translator(sentence:str)->str:\r\n \"\"\"\r\n \u4f60\u61c2\u5f97\u6839\u64da\u8f38\u5165\u5167\u5bb9\u7684\u539f\u610f\u8207\u8a9e\u5883\uff0c\u5728\u6700\u5927\u7a0b\u5ea6\u4fdd\u7559\u539f\u672c\u6587\u5b57\u7684\u98a8\u683c\u8207\u8a00\u5916\u4e4b\u610f\u7684\u60c5\u6cc1\u4e0b\uff0c\u7ffb\u8b6f\u6210\u517c\u5177\u4fe1\u9054\u96c5\u7684\u82f1\u6587\u7248\u672c\r\n \"\"\"\r\n result=prompt(f'\u8acb\u5c07\u4ee5\u4e0b\u5167\u5bb9\u7ffb\u8b6f\u6210\u82f1\u6587\uff0c\u76f4\u63a5\u8f38\u51fa\uff0c\u7121\u9808\u89e3\u91cb:\\n\\n\"\"\"{sentence}\"\"\"')\r\n return result\r\n```\r\n\r\n\u57f7\u884c@agent\u7684\u51fd\u6578\uff1a\r\n\r\n```\r\nprint(en_translator('\u7d05\u8c46\u751f\u5357\u570b\uff0c\u6625\u4f86\u767c\u5e7e\u679d\u3002\u9858\u541b\u591a\u63a1\u64f7\uff0c\u6b64\u7269\u6700\u76f8\u601d')) \r\n-----------------------------------------------------------------------\r\n\r\n\"\"\"\u7d05\u8c46\u751f\u5357\u570b\uff0c\u6625\u4f86\u767c\u5e7e\u679d\u3002\u9858\u541b\u591a\u63a1\u64f7\uff0c\u6b64\u7269\u6700\u76f8\u601d\"\"\"\r\nagent en_translator executed in 3.0094 seconds\r\nRed beans grow in the southern land, how many sprout in springtime's hand. I wish you to gather more, for this is what most evokes longing.\r\n```\r\n\r\n## \u5b89\u88dd\u8207\u6559\u7a0b\r\n\r\n\r\n\r\n## \u5c08\u6848\u9858\u666f\r\n\r\n**Paradoxism** \u65e8\u5728\u9769\u65b0\u7de8\u7a0b\u7684\u601d\u7dad\u65b9\u5f0f\uff0c\u8b93\u958b\u767c\u8005\u4e0d\u518d\u53d7\u9650\u65bc\u50b3\u7d71\u7684\u8a9e\u6cd5\u7d50\u69cb\uff0c\u4e26\u80fd\u8f15\u9b06\u5c07\u60f3\u6cd5\u8f49\u63db\u70ba\u5be6\u969b\u4ee3\u78bc\u3002\u6211\u5011\u7684\u9858\u666f\u662f\u5275\u9020\u4e00\u500b\u65e2\u81ea\u7531\u53c8\u56b4\u8b39\u7684\u7de8\u7a0b\u74b0\u5883\uff0c\u8b93\u5275\u610f\u5f97\u4ee5\u5feb\u901f\u843d\u5730\uff0c\u540c\u6642\u4fdd\u6301\u9ad8\u6548\u7684\u57f7\u884c\u3002\r\n\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Prompt like a Human, Perform like a Machine",
"version": "0.0.3",
"project_urls": {
"Download": "https://test.pypi.org/project/paradoxism"
},
"split_keywords": [
"chatgpt",
" gpt4",
" llm",
" prompt"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5ff67e3438004e57564743227c789132b96cbd31645fd3614608a0b1e1cffcb8",
"md5": "1dcb5c8d31b0a185f4c580ec2da76ca3",
"sha256": "cf7259c4881bed51f956277cb343d17e0b3c651c2be9e870b31b14c82a9dff67"
},
"downloads": -1,
"filename": "paradoxism-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "1dcb5c8d31b0a185f4c580ec2da76ca3",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 100731,
"upload_time": "2024-12-15T01:30:27",
"upload_time_iso_8601": "2024-12-15T01:30:27.865343Z",
"url": "https://files.pythonhosted.org/packages/5f/f6/7e3438004e57564743227c789132b96cbd31645fd3614608a0b1e1cffcb8/paradoxism-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-15 01:30:27",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "paradoxism"
}