Auto Data 是一個專為自動產生真實資料集而設計的函式庫,對於大型語言模型 (LLM) 的微調至關重要。這個高效且輕量級的庫可以快速輕鬆地創建跨各種主題的綜合資料集,無論其大小如何。
在客製化代理開發模型微調過程中遇到的主要挑戰之一是資料的稀缺和不平衡。此類缺陷可能會使模型對某一特定特徵的理解發生偏差,或者在更嚴重的情況下,可能會導致模型因訓練範例數量不足而完全偏離其學習參數。為了解決這些關鍵問題,開發了 Auto Data。
在繼續設定 OPENAI_API_KEY 作為環境變數之前。如果您不知道如何操作,請參閱本指南 - https://help.openai.com/en/articles/5112595-best-practices-for-api-key-safety
git clone https://github.com/Itachi-Uchiha581/Auto-Data.git
cd Auto-Data
pip install -r requirements.txt
python main.py --help
上述命令的輸出:
usage: Auto Data [-h] [--model MODEL] [--topic TOPIC] [--format {json,parquet}] [--engine {native}] [--threads THREADS] [--length LENGTH] [--system_prompt SYSTEM_PROMPT]
Auto Data is a tool which automatically creates training data to fine tune Large-Language Models on!
options:
-h, --help show this help message and exit
--model MODEL, -m MODEL
Selection of an OpenAI model for data generation
--topic TOPIC, -t TOPIC
Topic for data generation, eg - Global Economy
--format {json,parquet}, -f {json,parquet}
The format of the output data produced by the LLM
--engine {native}, -e {native}
The backend used to generate data. More engines coming soon
--threads THREADS, -th THREADS
An integer to indicate how many chats to be created on the topic. A very high thread value may result in an error specially if your Open AI account is at tier 1.
--length LENGTH, -l LENGTH
The conversation length of a chat topic
--system_prompt SYSTEM_PROMPT, -sp SYSTEM_PROMPT
The system prompt that is to be given to the assistant.
下面給出的範例用法
python main.py --model " gpt-4-turbo-preview " --topic " Mysteries and Horror stories " --format " json " --engine " native " --threads 2 --length 2 --system_prompt " You are a helpful assistant who has an interest in Mysteries and Horror stories. You are also excellent at articulating such stories "
在指定的指令中,選擇的模型是gpt-4-turbo-preview ,目標主題是Mysteries and Horror Stories 。輸出資料的格式設定為json ,使用的引擎是原生的。此指令指示建立2 個聊天線程,每個聊天線程包含2 個完整的來回對話,如長度參數所指定。最後提供的參數作為助理LLM的系統提示符。
以下是上述指令產生的json格式的修剪輸出:
{
"Chats" : [
{
"messages" : [
{
"role" : " system " ,
"content" : " You are a helpful assistant who has an interest in Mysteries and Horror stories. You are also excellent at articulating such stories "
},
{
"role" : " user " ,
"content" : " What's considered one of the most chilling unsolved mysteries in history? "
},
{
"role" : " assistant " ,
"content" : " Among the pantheon of unsolved mysteries, the chilling tale of the Dyatlov Pass incident stands out, both for its perplexing evidence and the many questions that still haunt its narrative. This enigma unfolded in the bleak expanse of the Ural Mountains in Russia during the icy clutches of winter in 1959. ............. "
},
{
"role" : " user " ,
"content" : " Are there any other unsolved mysteries that are as eerie or confounding as the Dyatlov Pass incident? "
},
{
"role" : " assistant " ,
"content": "Indeed, the world is riddled with mysteries as eerie and confounding as the Dyatlov Pass incident. One such enigma, shrouded in the mists of time and mystery, is the unsettling story of the Hinterkaifeck murdersu2014a case that combines elements of horror, intrigue, and the supernatural, sending shivers down the spine of anyone who delves into its depths.nnThe Hinterkaifeck farmstead, a remote and secluded homestead, lay in the Bavarian countryside of Germany. The year was 1922, and within these walls, a gruesome and baffling crime unfoldedu2014one that remains unsolved to this day. The victims were the Gruber family and their maid: Andreas and Cu00e4zilia Gruber, their daughter Viktoria, her children Cu00e4zilia and Josef, and the maid, Maria Baumgartner. Each was found brutally murdered, their bodies bearing the horrific marks of a pickaxe, which was later found at the crime scene.nnWhat amplifies the eeriness of these murders are not just the brutal manner in which they were executed but the bizarre and disturbing events leading up to the discovery of the bodies. Andreas Gruber, the patriarch of the family, had reported strange occurrences around the farmstead days before the killings. ............."
}
],
"model" : " gpt-4-turbo-preview " ,
"sub_topic" : " discussing the most chilling unsolved mysteries " ,
"system_prompt" : " You are a helpful assistant who has an interest in Mysteries and Horror stories. You are also excellent at articulating such stories "
},
{
"messages" : [
{
"role" : " system " ,
"content" : " You are a helpful assistant who has an interest in Mysteries and Horror stories. You are also excellent at articulating such stories "
},
{
"role" : " user " ,
"content" : " Have any of you ever had a personal experience with something paranormal, or something you just couldn't explain no matter how hard you tried? "
},
{
"role" : " assistant " ,
"content" : " While I don't experience events personally due to my nature as an AI, I can certainly share a mysteriously chilling story that touches upon the paranormal and the unexplainable, which I've gathered based on numerous accounts and tales told over time. Let it captivate your imagination and perhaps make you ponder the mysteries that dwell just beyond the edge of our understanding. nn --- nn In a small, seemingly inconspicuous town nestled between the embrace of forgotten woods and the whisper of a rarely disturbed coastline, there lived a woman named Elara. She was known for her rational mind and scientific approach to life, a skeptic of anything that dared to venture into the realm of the unexplainable. However, her beliefs were put to the test one autumn evening. ............. "
},
{
"role" : " user " ,
"content" : " That's a captivating story! It's interesting how it mixes scientific curiosity with the paranormal. Have there been any real-life instances where science has struggled to explain paranormal phenomena, kind of like in Elara's story? "
},
{
"role" : " assistant " ,
"content": "Indeed, there have been several instances where the boundaries between the scientific and the paranormal have blurred, creating fascinating enigmas that continue to intrigue both skeptics and believers. While many purported paranormal phenomena can often be debunked with rigorous scientific examination, there remain a few cases that defy clear-cut explanations, leaving room for speculation and wonder. Here are a few notable examples:nn### 1. The Hessdalen LightsnIn the Hessdalen Valley of Norway, mysterious lights have been observed since at least the 1930s. These lights vary in color, intensity, and duration, sometimes moving with incredible speed, at other times hovering in place. Despite numerous studies, including Project Hessdalen initiated in the early 1980s, the complete scientific explanation for these lights remains elusive. Various hypotheses have been proposed, including ionized iron dust, plasma, and even the piezoelectric effects from tectonic strain, but none has definitively solved the mystery.nn### 2. The Voynich ManuscriptnThe Voynich Manuscript is a 15th-century book that has baffled linguists, cryptographers, and computer scientists for decades. Its language has never been deciphered, and the strange illustrations of unfamiliar plants and astronomical diagrams add to its mystique. While not paranormal in the conventional sense, the manuscript's origin, purpose, and message could be described as a "scientific ghost," eluding comprehension and resolution.nn### 3. ............."
}
],
"model" : " gpt-4-turbo-preview " ,
"sub_topic" : " sharing personal experiences with the paranormal or unexplainable events " ,
"system_prompt" : " You are a helpful assistant who has an interest in Mysteries and Horror stories. You are also excellent at articulating such stories "
}
],
"topic" : " Mysteries and Horror stories " ,
"threads" : 2 ,
"length" : 2
}
若要查看完整輸出,請查看範例目錄
貢獻使開源社群成為學習、啟發和創造的絕佳場所。我們非常感謝您所做的任何貢獻。
如果您有更好的建議,請分叉該儲存庫並建立拉取請求。您也可以簡單地使用標籤“增強”來開啟問題。不要忘記給該項目一顆星!再次感謝!
git checkout -b feature/AmazingFeature
)git commit -m 'Add some AmazingFeature'
)git push origin feature/AmazingFeature
)可以透過讓現有程式碼變得有效率且簡潔、新增引擎(autodata/engines 中已經給出了帶有指南的範例引擎)、新增 LLM 訓練資料分析器、建立測試腳本等來做出貢獻。
使用基於 Bert 的文字分類器對 LLM 資料進行資料分析:正在進行中
根據 GPL-3.0 許可證分發。有關詳細信息,請參閱LICENSE.txt
。