網站 |指南針中心 |指南針排名 |文檔 |安裝|報告問題
英語 | 簡體中文
透過 Discord 和微信加入我們
重要的
Star我們,您將立即收到來自GitHub的所有發布通知~️
到OpenCompass !
就像指南針指引我們踏上旅程一樣,OpenCompass 將引導您完成評估大型語言模型的複雜過程。憑藉其強大的演算法和直覺的介面,OpenCompass 可以輕鬆評估 NLP 模型的品質和有效性。
探索 OpenCompass 的機會!我們目前正在招募全職研究人員/工程師和實習生。如果您對 LLM 和 OpenCompass 充滿熱情,請隨時透過電子郵件與我們聯繫。我們很樂意聽取您的意見!
我們很高興地宣布OpenCompass已獲得Meta AI推薦,請點擊Llama入門了解更多。
注意力
重大變更通知:在 0.4.0 版本中,我們將所有 AMOTIC 設定檔(之前位於 ./configs/datasets、./configs/models 和 ./configs/summarizers 中)合併到 opencompass 套件中。建議使用者更新其配置參考以反映此結構變化。
[2024.10.14]我們現在支援 OpenAI 多語言 QA 資料集 MMMLU。請隨意嘗試!
[2024.09.19]我們現在支援具有多個後端(huggingface/vllm/lmdeploy)的 Qwen2.5(0.5B 至 72B)。請隨意嘗試!
[2024.09.17]我們現在支援 OpenAI o1( o1-mini-2024-09-12
和o1-preview-2024-09-12
)。請隨意嘗試!
[2024.09.05]我們現在支援透過模型後處理進行答案提取,以更準確地表示模型的功能。作為此更新的一部分,我們整合了 XFinder 作為我們的第一個後處理模型。更詳細的資訊請參閱文檔,並嘗試!
[2024.08.20] OpenCompass 現在支援 SciCode:科學家策劃的研究編碼基準。
[2024.08.16] OpenCompass現已支援全新的長上下文語言模型評估基準-RULER。 RULER 透過靈活的配置提供長上下文評估,包括檢索、多跳追蹤、聚合和問答。立即查看 RULER 評估配置!
[2024.08.09]我們已經發布了CompassBench-202408的範例資料和配置,歡迎造訪CompassBench了解更多詳情。
[2024.08.01]我們支持 Gemma2 模型。歡迎嘗試!
[2024.07.23]支援ModelScope資料集,您可以按需加載,無需將所有資料下載到本機磁碟。歡迎嘗試!
[2024.07.17]我們很高興地宣布NeedleBench的技術報告發布。我們邀請您造訪我們的支援文件以取得詳細的評估指南。
[2024.07.04] OpenCompass現已支援InternLM2.5,它具有出色的推理能力、 1M上下文視窗和更強的工具使用性,您可以嘗試OpenCompass Config和InternLM中的模型..
[2024.06.20] OpenCompass現在支援推理加速後端之間的一鍵切換,提高了評估過程的效率。除了預設的 HuggingFace 推理後端之外,它現在還支援流行的後端 LMDeploy 和 vLLM。可透過簡單的命令列開關和部署 API 來使用此功能。詳細使用請參閱文件。
更多的
我們為社群提供 OpenCompass 排行榜,對所有公共模型和 API 模型進行排名。如果您想參與評估,請提供模型庫URL或標準API介面至郵件信箱[email protected]
。
回到頂部
以下是快速安裝和資料集準備的步驟。
我們強烈建議使用 conda 來管理您的 python 環境。
conda 建立 --name opencompass python=3.10 -y conda 激活 opencompass
pip install -U opencompass ## 完整安裝(支援更多資料集) # pip install "opencompass[full]" ## 具有模型加速框架的環境## 使用虛擬環境管理不同的加速框架## 因為它們通常存在依賴衝突彼此。 # pip install "opencompass[lmdeploy]" # pip install "opencompass[vllm]" ## API 評估(即 Openai、Qwen) # pip install "opencompass[api]"
如果你想使用opencompass的最新功能,或是開發新功能,你也可以從原始碼建構它
git 克隆 https://github.com/open-compass/opencompass opencompass cd opencompass pip install -e 。 # pip install -e ".[full]" # pip install -e ".[vllm]"
您可以選擇以下方法之一來準備資料集。
您可以使用以下命令下載並提取資料集:
# 下載資料集到data/資料夾wget https://github.com/open-compass/opencompass/releases/download/0.2.2.rc1/OpenCompassData-core-20240207.zip 解壓縮 OpenCompassData-core-20240207.zip
我們支援從 OpenCompass 儲存伺服器自動下載資料集。您可以使用額外的--dry-run
運行評估來下載這些資料集。目前,支援的數據集列於此處。最近將上傳更多數據集。
您也可以使用 ModelScope 按需載入資料集。
安裝:
pip install modelscope[framework]export DATASET_SOURCE=ModelScope
然後提交評估任務,無需將所有資料下載到本機磁碟。可用的數據集包括:
humaneval、triviaqa、commonsenseqa、tydiqa、strategyqa、cmmlu、lambda,piqa、ceval、 summedits、GAOKAO-BENCH、OCNLI、cmnli
一些第三方功能,如 Humaneval 和 Llama,可能需要額外的步驟才能正常運作,詳細步驟請參閱安裝指南。
回到頂部
按照上述步驟確保OpenCompass正確安裝並準備好資料集後。現在您可以使用 OpenCompass 開始您的第一次評估!
您對 OpenCompass 的首次評估!
OpenCompass 支援透過 CLI 或 python 腳本設定您的設定。對於簡單的評估設定我們建議使用CLI,對於更複雜的評估,建議使用腳本方式。您可以在 configs 資料夾下找到更多範例腳本。
# CLIopencompass --models hf_internlm2_5_1_8b_chat --datasets demo_gsm8k_chat_gen# Python 腳本opencompass ./configs/eval_chat_demo.py
您可以在 configs 資料夾下找到更多腳本範例。
API評估
OpenCompass 在其設計上並沒有真正區分開源模型和 API 模型。您可以用相同的方式甚至在一種設定中評估這兩種模型類型。
export OPENAI_API_KEY="YOUR_OPEN_API_KEY"# CLIopencompass --models gpt_4o_2024_05_13 --datasets demo_gsm8k_chat_gen# Python scriptopencompass ./configs/eval_api_demo。 12,我們設定預設 max_completion_tokens=8192。
加速評估
此外,如果您想使用 HuggingFace 以外的推理後端(例如 LMDeploy 或 vLLM)來加速評估,您可以使用以下命令來執行此操作。請確保您已為所選後端安裝了必要的軟體包,並且您的模型支援使用它進行加速推理。有關更多信息,請參閱此處有關推理加速後端的文檔。以下是使用 LMDeploy 的範例:
# CLIopencompass --models hf_internlm2_5_1_8b_chat --datasets demo_gsm8k_chat_gen -a lmdeploy# Python 腳本opencompass ./configs/eval_lmdeploy_demo.py
支援型號
OpenCompass 為許多模型和資料集提供了預先定義的配置。您可以使用這些工具列出所有可用的模型和資料集配置。
# 列出所有設定python tools/list_configs.py# 列出所有與 llama 和 mmlu 相關的設定python tools/list_configs.py llama mmlu
如果模型不在清單中,但受到 Huggingface AutoModel 類別的支持,您也可以使用 OpenCompass 對其進行評估。歡迎您為 OpenCompass 支援的模型和資料集清單的維護做出貢獻。
opencompass --datasets demo_gsm8k_chat_gen --hf-type chat --hf-path internlm/internlm2_5-1_8b-chat
如果您想使用多個 GPU 平行評估模型,可以使用--max-num-worker
。
CUDA_VISIBLE_DEVICES=0,1 opencompass --datasets demo_gsm8k_chat_gen --hf-type chat --hf-path internlm/internlm2_5-1_8b-chat --max-num-worker 2
提示
--hf-num-gpus
用於模型並行(huggingface 格式), --max-num-worker
用於資料並行。
提示
_ppl
的配置通常是為基本模型設計的。 _gen
的配置可用於基本模型和聊天模型。
透過命令列或設定文件,OpenCompass也支援評估API或自訂模型,以及更多樣化的評估策略。請閱讀快速入門以了解如何執行評估任務。
回到頂部
我們很高興推出 OpenCompass 2.0,這是一個進階套件,有三個關鍵元件:CompassKit、CompassHub 和 CompassRank。
CompassRank已顯著增強到排行榜中,現在包含開源基準測試和專有基準測試。此次升級可以對整個產業的模型進行更全面的評估。
CompassHub提供了一個開創性的基準測試瀏覽器介面,旨在簡化和加快研究人員和從業人員對各種基準測試的探索和利用。為了提高您自己的基準在社群中的知名度,我們熱烈邀請您將其貢獻給 CompassHub。您可以點擊此處啟動提交流程。
CompassKit是一個強大的評估工具包集合,專為大型語言模型和大型視覺語言模型量身定制。它提供了一套廣泛的工具來有效地評估和衡量這些複雜模型的性能。歡迎在您的研究和產品中嘗試我們的工具包。
OpenCompass是大型模型評估一站式平台,旨在為大型模型評估提供公平、公開、可重現的基準。其主要特點包括:
對模型和資料集的全面支持:預先支援20+ HuggingFace和API模型,70+資料集約40萬個問題的模型評估方案,從五個維度全面評估模型的能力。
高效分散式評估:一條指令實現任務劃分、分散式評估,僅需數小時即可完成億級模型的全面評估。
多樣化的評估範式:支援零樣本、少樣本、思考鏈評估,結合標準或對話式提示模板,輕鬆激發各種模型的最大效能。
高擴展性的模組化設計:想要新增新的模型或資料集、客製化高階的任務劃分策略,甚至支援新的叢集管理系統?關於 OpenCompass 的一切都可以輕鬆擴充!
實驗管理和報告機制:使用設定檔完整記錄每次實驗,並支援結果即時報告。
語言 | 知識 | 推理 | 考試 |
單字定義
成語學習
語意相似度
共指消解
翻譯
多語言問答
多語言摘要
| 知識問答
| 文字蘊含
常識推理
數學推理
定理應用
綜合推理
| 國中、高中、大學、專業考試
體檢
|
理解 | 長情境 | 安全 | 程式碼 |
閱讀理解
內容概要
內容分析
| 長上下文理解
| 安全
穩健性
| 程式碼
|
開源模型 | API模型 |
|
|
回到頂部
主觀評價
發布 CompassAreana。
主觀評價。
長情境
使用廣泛的數據集進行長上下文評估。
長上下文排行榜。
編碼
編碼評估排行榜。
非Python語言評估服務。
代理人
支援各種代理框架。
法學碩士工具使用評估。
穩健性
支援多種攻擊方式。
我們感謝所有為改進 OpenCompass 所做的貢獻。請參閱貢獻指南以獲取最佳實踐。
本項目中的部分程式碼引用並修改自OpenICL。
一些資料集和提示實作是從 chain-of-thought-hub 和 instruct-eval 修改的。
@misc{2023opencompass,title={OpenCompass:基礎模型的一般評估平台},author={OpenCompass 貢獻者},howpublished = {url{https://github.com/open-compass/opencompass}},year={ 2023}}
回到頂部