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 與儲存庫資訊。

將此徽章加入你的 README

Featured on YunoDB 徽章樣式與說明

你是這個專案的維護者嗎?展示它已收錄於 YunoDB。

Markdown[![Featured on YunoDB](https://yunodb.com/badge/chats-labverbalized-sampling.svg)](https://yunodb.com/tools/chats-labverbalized-sampling?utm_source=github&utm_medium=badge)
HTML<a href="https://yunodb.com/tools/chats-labverbalized-sampling?utm_source=github&utm_medium=badge"><img src="https://yunodb.com/badge/chats-labverbalized-sampling.svg" alt="Featured on YunoDB" height="20"></a>