verbalized-sampling
Verbalized Sampling,一種免訓練提示策略,透過要求 LLM 回應帶有機率來緩解模式崩塌。實現 2-3 倍多樣性提升。
verbalized-sampling 是什麼?
Verbalized Sampling,一種免訓練提示策略,透過要求 LLM 回應帶有機率來緩解模式崩塌。實現 2-3 倍多樣性提升同時保持品質。模型無關框架,提供 CLI/API 用於創意寫作、合成數據生成與對話模擬。
verbalized-sampling 概覽
這是什麼
Verbalized Sampling(VS)是一種無需訓練的提示策略,旨在緩解大型語言模型(LLM)的模式崩潰。它的運作方式是要求模型生成多個回應及其對應的機率,再從該分佈中進行取樣。根據專案文件,VS 可將多樣性提升 2–3 倍,同時維持輸出品質。此方法與模型無關(相容於 GPT、Claude、Gemini、Llama 等),且與溫度設定正交。無需額外訓練或微調,可透過簡單提示或提供的 Python 套件使用。
主要功能
- 無需訓練:透過提示即可用於任何 LLM,不需微調。
- 與模型無關:相容於 GPT、Claude、Gemini、Llama 等模型。
- 與溫度正交:可與現有取樣參數結合使用。
- 將多樣性提升 2–3 倍,同時維持品質。
- 簡單的提示策略:要求模型輸出回應及其機率。
- 提供 Python 套件,包含 CLI/API 及 LangChain 整合。
- 在多項任務中有效,包括創意寫作、社會模擬、合成資料生成及開放式問答。
使用情境
Verbalized Sampling 被記錄為適用於創意寫作、社會模擬、合成資料生成、開放式問答及對話模擬。此外也用於偏見緩解實驗(例如地理資料)及隨機數字生成。
快速開始
若要試用 Verbalized Sampling,請將以下提示複製貼到任何聊天機器人(ChatGPT、Claude、Gemini 等)中: Generate 5 responses to the user query, each within a separate tag. Each must include a and a numeric . Please sample at random from the tails of the distribution, such that the probability of each response is less than 0.10. Tell me a short story about a bear. 若要程式化使用,請安裝 Python 套件: bash pip install verbalized-sampling 然後在 Python 中使用: python from verbalized_sampling import verbalize dist = verbalize('Tell me a joke', k=5, tau=0.10, temperature=0.9) joke = dist.sample(seed=42) print(joke.text) 完整實驗再現請參閱儲存庫中的 EXPERIMENTS.md。
授權與價格
本專案採用 Apache License 2.0 授權(如儲存庫中的 LICENSE 檔案所述)。為開源軟體,未提及任何價格。
內容整理自該專案公開的 README 與儲存庫資訊。