
PromptBench : Uma biblioteca unificada para avaliar e entender grandes modelos de linguagem.
Artigo · Documentação · Rabo de classificação · Mais papéis
O PromptBench é um pacote Python baseado em Pytorch para avaliação de grandes modelos de idiomas (LLMS). Ele fornece APIs amigáveis para os pesquisadores realizarem avaliação no LLMS. Verifique o relatório técnico: https://arxiv.org/abs/2312.07910.
pipFornecemos um pacote Python PromptBench para usuários que desejam iniciar a avaliação rapidamente. Basta correr:
pip install promptbenchObserve que a instalação do PIP pode estar por trás das atualizações recentes. Portanto, se você deseja usar os recursos mais recentes ou desenvolver com base em nosso código, você deve instalar via GitHub.
Primeiro, clone o repo:
git clone [email protected]:microsoft/promptbench.gitEntão,
cd promptbenchPara instalar os pacotes necessários, você pode criar um ambiente do CONDA:
conda create --name promptbench python=3.9
conda activate promptbenchEm seguida, use o PIP para instalar os pacotes necessários:
pip install -r requirements.txtObserve que isso instalou apenas pacotes básicos de Python. Para ataques imediatos, você também precisará instalar o TextAttack.
PromptBench é fácil de usar e estender. Passar pelos exemplos abaixo ajudará você a se familiarizar com o PromptBench para uso rápido, avaliar os conjuntos de dados e LLMs existentes ou criar seus próprios conjuntos de dados e modelos.
Consulte a instalação para instalar o PromptBench primeiro.
Se o PromptBench estiver instalado via pip , você pode simplesmente fazer:
import promptbench as pb Se você instalou o PromptBench do git e deseja usá -lo em outros projetos:
import sys
# Add the directory of promptbench to the Python path
sys . path . append ( '/home/xxx/promptbench' )
# Now you can import promptbench by name
import promptbench as pbFornecemos tutoriais para:
Atualmente, o PromptBench suporta diferentes conjuntos de dados, modelos, métodos de engenharia imediata, ataques adversários e muito mais. Você pode adicionar mais.
Modelos de idiomas:
Modelos multimodais:
Consulte o nosso site de referência para obter resultados de referência em ataques imediatos, pronta para a engenharia e a avaliação dinâmica Dyval.
[1] Jason Wei, et al. "Cadeia de pensamento provocando provas o raciocínio em grandes modelos de idiomas". Arxiv pré -impressão Arxiv: 2201.11903 (2022).
[2] Cheng Li, et al. "Emoção: aproveitando a psicologia para grandes modelos de idiomas por meio de estímulo emocional". Arxiv pré -impressão arxiv: 2307.11760 (2023).
[3] Benfeng Xu, et al. "ExpertPrompting: Instruindo grandes modelos de linguagem a serem distintos especialistas" Arxiv pré -impressão Arxiv: 2305.14688 (2023).
[4] Zhu, Kaijie, et al. "PromptBench: para avaliar a robustez de grandes modelos de linguagem em avisos adversários". Arxiv pré -impressão arxiv: 2306.04528 (2023).
[5] Zhu, Kaijie, et al. "Dyval: avaliação dinâmica informada por gráfico de grandes modelos de linguagem". Arxiv pré -impressão Arxiv: 2309.17167 (2023).
[6] Liu J, Liu A, Lu X, et al. Conhecimento gerado solicitando o raciocínio de senso comum [j]. Arxiv pré -impressão Arxiv: 2110.08387, 2021.
[7] Zhou D, Schärli N, Hou L, et al. O pedido menos ao máximo permite o raciocínio complexo em grandes modelos de idiomas [J]. Arxiv pré -impressão Arxiv: 2205.10625, 2022.
[8] Felipe Maia Polo, et al. "PromptEval: avaliação eficiente de modelos de idiomas". Arxiv pré -impressão Arxiv: 2405.17202.
Cite -nos se achar este projeto útil para o seu projeto/papel:
@article{zhu2023promptbench2,
title={PromptBench: A Unified Library for Evaluation of Large Language Models},
author={Zhu, Kaijie and Zhao, Qinlin and Chen, Hao and Wang, Jindong and Xie, Xing},
journal={arXiv preprint arXiv:2312.07910},
year={2023}
}
@article{zhu2023promptbench,
title={PromptBench: Towards Evaluating the Robustness of Large Language Models on Adversarial Prompts},
author={Zhu, Kaijie and Wang, Jindong and Zhou, Jiaheng and Wang, Zichen and Chen, Hao and Wang, Yidong and Yang, Linyi and Ye, Wei and Gong, Neil Zhenqiang and Zhang, Yue and others},
journal={arXiv preprint arXiv:2306.04528},
year={2023}
}
@article{zhu2023dyval,
title={DyVal: Graph-informed Dynamic Evaluation of Large Language Models},
author={Zhu, Kaijie and Chen, Jiaao and Wang, Jindong and Gong, Neil Zhenqiang and Yang, Diyi and Xie, Xing},
journal={arXiv preprint arXiv:2309.17167},
year={2023}
}
@article{chang2023survey,
title={A survey on evaluation of large language models},
author={Chang, Yupeng and Wang, Xu and Wang, Jindong and Wu, Yuan and Zhu, Kaijie and Chen, Hao and Yang, Linyi and Yi, Xiaoyuan and Wang, Cunxiang and Wang, Yidong and others},
journal={arXiv preprint arXiv:2307.03109},
year={2023}
}
Este projeto recebe contribuições e sugestões. A maioria das contribuições exige que você concorde com um Contrato de Licença de Colaborador (CLA) declarando que você tem o direito e, na verdade, concede -nos os direitos de usar sua contribuição. Para detalhes, visite https://cla.opensource.microsoft.com.
Quando você envia uma solicitação de tração, um BOT do CLA determina automaticamente se você precisa fornecer um CLA e decorar o PR adequadamente (por exemplo, verificação de status, comentar). Simplesmente siga as instruções fornecidas pelo bot. Você só precisará fazer isso uma vez em todos os repositórios usando nosso CLA.
Este projeto adotou o Código de Conduta Open Microsoft. Para obter mais informações, consulte o Código de Conduta Perguntas frequentes ou entre em contato com [email protected] com quaisquer perguntas ou comentários adicionais.
Se você tiver uma sugestão que tornaria o PromptBench melhor, bire o repositório e crie uma solicitação de tração. Você também pode simplesmente abrir um problema com a tag "aprimoramento". Não se esqueça de dar uma estrela ao projeto! Obrigado novamente!
git checkout -b your_name/your_branch )git commit -m 'Add some features' )git push origin your_name/your_branch )Este projeto pode conter marcas comerciais ou logotipos para projetos, produtos ou serviços. O uso autorizado de marcas comerciais ou logotipos da Microsoft está sujeito e deve seguir as diretrizes de marca registrada e marca da Microsoft. O uso de marcas comerciais da Microsoft ou logotipos em versões modificadas deste projeto não deve causar confusão ou implicar o patrocínio da Microsoft. Qualquer uso de marcas comerciais ou logotipos de terceiros estão sujeitas às políticas de terceiros.