該項目實現了使用遺傳算法和機器學習技術優化AI提示的自動化系統。它旨在發展和改善任何LLM提示。此存儲庫中的示例集中在AI驅動的庫存篩查上。
在這裡閱讀更多有關它的信息。
使用此框架優化提示可能非常昂貴!對於任何費用,我不承擔任何責任。如果考慮成本,請使用Ollama等本地LLM進行優化。
要查看優化提示的結果,請查看Nexustrade.io。 Nexustrade是AI驅動的自動交易和投資平台,可讓用戶創建,測試,優化和部署算法交易策略。
使用庫存篩選器,您可以詢問地面圖目錄中的任何問題,包括:
關於技術或基本數據的任何問題,Nexustrade的AI股票篩選器都可以回答。立即免費嘗試!
在運行此項目之前,請確保已設置以下先決條件:
node.js :確保已安裝了node.js。您可以從nodejs.org下載它。
填充inputs.ts :創建和填充inputs.ts文件,並具有以下格式:
const inputs = [
{
text : "<Question to ask the model>" ,
foldername : "foldername_for_the_input_output" ,
} ,
] ;
export default inputs ;additionalSystemPrompts.ts :創建和填充additionalSystemPrompts.ts文件,具有以下格式: const additionalSystemPrompts = [
"System Prompt 1" ,
"System Prompt 2" ,
"System Prompt 3" ,
"System Prompt 4" ,
"System Prompt 5" ,
] ;
export default additionalSystemPrompts ;.env文件,並添加以下環境變量: ANTHROPIC_API_KEY=your_anthropic_api_key
OPENAI_API_KEY=your_openai_api_key
OLLAMA_SERVICE_URL=http://localhost:11434
GOOGLE_APPLICATION_CREDENTIALS_JSON=path_to_your_google_application_credentials_json
CLOUD_DB=your_cloud_db_connection_string
LOCAL_DB=your_local_db_connection_string
MODEL_NAME=your_model_name
Replace your_anthropic_api_key , your_openai_api_key , path_to_your_google_application_credentials_json , your_cloud_db_connection_string , your_local_db_connection_string , and your_model_name with your actual API keys, the path to your Google application credentials JSON file, your database connection strings, and the model name.您可以通過設置MODEL_NAME環境變量將模型更改為來自Ollama的開源模型,也可以將模型從Anthropic中更改。
對於本地數據庫,您可以使用以下內容填充它:
LOCAL_DB="mongodb://127.0.0.1:27017/promptoptimizer"
默認情況下,系統將使用process.env.LOCAL_DB中指定的本地數據庫。如果要使用雲數據庫,請確保填充process.env.CLOUD_DB並根據需要修改代碼。
要安裝必要的node.js依賴項,請在項目的根目錄中運行以下命令:
npm install要直接運行打字稿文件,您需要安裝ts-node 。您可以使用以下命令在全球安裝它:
npm install -g ts-node另外,您可以將其添加為項目的DEV依賴性:
npm install --save-dev ts-node要安裝必要的Python依賴項,請確保您已安裝Python,然後在項目的根目錄中運行以下命令:
pip install -r requirements.txt這將安裝以下Python軟件包:
matplotlibseabornpandas要在本地安裝MongoDB,請按照以下步驟:
下載MongoDB :轉到MongoDB下載中心,然後下載用於操作系統的MongoDB社區服務器。
安裝mongoDB :
.msi安裝程序並遵循安裝說明。brew tap mongodb/brew
brew install [email protected]mongod手動啟動它。brew services start mongodb/brew/mongodb-communitysudo systemctl start mongodmongo這應該打開MongoDB外殼,表明MongoDB已安裝並正確運行。
要將模型引導到所需的行為,您需要確切知道您希望該模型如何響應廣泛的輸入。為此,您將使用文件名和輸入更新文件input.ts 。然後,您將執行腳本populateGroundTruth.ts 。該腳本使您可以半自動化的方式創建地面真相。
使用一些方法(例如大語言模型),您需要能夠量化輸出與所需輸出的距離。您可以在存儲庫中使用基於LLM的“提示評估器”來執行此操作。 “提示評估者”採用模型的輸出和預期的輸出,並返回得分。
要使用Ollama作為OpenAI的替代方案,請按照以下步驟:
下載Ollama :訪問ollama.com/download並下載適合操作系統的適當版本。
下載模型:訪問ollama.com/library/llama3.1以下載您要使用的型號。
設置環境變量:確保在.env文件中設置以下環境變量:
OLLAMA_SERVICE_URL=http://localhost:11434
如果您有ANTHROPIC_API_KEY ,則可以使用人類來及時優化。
要運行打字稿腳本,您可以使用ts-node 。確保您如上所述安裝了ts-node ,然後運行以下命令:
ts-node main.ts另外,您可以將打字稿代碼編譯到JavaScript,然後使用node.js運行:
tscnode dist/main.js為了可視化幾代人的培訓和驗證適應性,您可以使用Python腳本graph.py 。該腳本生成圖形,因此您可以查看提示的性能如何隨著時間而變化。要運行腳本,請使用以下命令:
python graph.py通過遵循這些說明,您將能夠優化任何任意提示,量化其性能,並可視化其隨著時間的進步。