Project Icon

llm-comparator

交互式可视化工具对比分析大语言模型性能

LLM Comparator是一个开源的交互式可视化工具,用于分析和比较大语言模型的评估结果。用户可上传自定义JSON文件或使用示例数据,通过多种可视化方式展示不同模型在各类任务中的表现差异。工具配套Python库可生成兼容JSON文件,支持自动模型评估和原理聚类。研究人员和开发者可借助此工具深入洞察不同模型的优劣,为大语言模型研究提供直观分析支持。

LLM 比较器

LLM比较器是一个交互式可视化工具,附带有Python库,用于分析并列的LLM评估结果。

它旨在帮助人们定性地分析两个模型的响应在示例和切片层面上的差异。用户可以交互式地发现见解,例如"模型A在电子邮件改写任务上的响应比模型B更好,因为模型A倾向于更频繁地生成项目符号列表。"

LLM比较器界面的屏幕截图

使用LLM比较器

你可以在https://pair-code.github.io/llm-comparator/尝试LLM比较器。

你可以选择我们提供的示例文件之一,也可以上传自己的JSON文件(例如最小示例文件),该文件遵循我们下面描述的格式。

比较Gemma 1.1和1.0的示例演示

我们提供了一个示例文件,用于比较Gemma 1.1和1.0之间的模型响应,这些响应来自Chatbot Arena Conversations dataset。你可以点击下面的链接尝试使用它: https://pair-code.github.io/llm-comparator/?results_path=https://pair-code.github.io/llm-comparator/data/example_arena.json

该工具帮助你分析Gemma 1.1何时和为什么比1.0更好或更差,以及两个模型的响应有何不同。

  • 何时: 得分分布按提示类别划分的指标面板显示,根据LLM评估方法(LLM-as-a-judge),模型A(Gemma 1.1)的响应质量被认为比模型B(Gemma 1.0)更好(蓝色区域比橙色区域大;胜率>50%),这在大多数提示类别(如人文、数学)中都成立。
  • 为什么: 解释概括面板深入探讨了这些得分差异的原因。在本例中,LLM评判者主要关注细节程度。它也考虑了简洁性、参与度、结构等因素。
  • 如何: 自定义函数面板可让你发现有趣的具体差异。例如,Gemma 1.1(模型A)在结构方面更好,因为它更频繁地使用项目符号列表。此外,Gemma 1.1更加简洁,而Gemma 1.0的响应中以"Sure"开头的更多。

用于创建JSON文件的Python库

这个项目在PyPI上提供了llm-comparator包,用于创建用于LLM比较器可视化的JSON文件。该包可以创建包括并行LLM评估和理由聚类在内的整个JSON文件,只需提供一组要运行的输入提示和要运行它们的模型。如果用户已经有提示和现有的一组模型输出,它也可以执行只有理由聚类步骤。你可以简单地运行一个notebook来创建一个JSON文件,并在basic_demo.ipynb查看结果。有关更多详细信息,请参见Python库README

在Colab上运行Python库的快速演示

JSON数据格式

LLM比较器工具接受一个JSON文件并可视化其内容。该文件必须遵循下面描述的模式。

最小示例

我们假设用户有一组要测试的输入提示。对于每个提示,他们需要准备两个LLM(即模型A、模型B)的响应,以及从并行评估(如LLM-as-a-judgeAutoSxS)获得的数字分数。正分数表示A的响应比B更好;负分数表示B更好;零表示平局。我们假设分数在1.5到-1.5之间。

数据文件应按如下格式: 所有下面显示的字段都是必需的。

{ "metadata": [ "source_path": "您记录的任何字符串(如运行id)", "custom_fields_schema": [] ], "models": [ {"name": "您的第一个模型的简称"}, {"name": "您的第二个模型的简称"} ], "examples": [ { "input_text": "这是一个提示。", "tags": ["数学"], # 用于分类提示的关键词列表 "output_text_a": "第一个模型(A)对该提示的响应", "output_text_b": "另一个模型(B)对该提示的响应", "score": -1.25, # 来自评判LLM的分数 "individual_rater_scores": [], "custom_fields": {} }, { "input_text": "这是下一个提示。", ... } ] }

附加数据

您可以选择提供其他信息,在LLM比较器中进行分析。

自定义字段

如果您有关于每个提示的其他信息,它可以显示为表格中的列,并且聚合信息会在界面右侧的图表中可视化。它支持各种数据类型,例如:

  • number: 数字数据,可视化为直方图(例如,提示的字数,由外部API计算的安全分数)。
  • category: 字符串形式的分类数据,可视化为柱状图(例如,提示的数据来源名称)。
  • text: 用于长文本(在可滚动的容器中呈现)。
  • string: 通用字符串(可用于ID键)。
  • image_path: 用于图像URL。
  • image_byte: 以base64编码的JPEG原始图像字节串。

该工具还支持从两个模型响应中获取值的情况。我们将这些称为per_model类型,包括:

  • per_model_boolean: 应用于每个响应的布尔值(例如, 是否包含项目符号列表)。
  • per_model_number: 每个响应的数值(例如, 字数)。
  • per_model_category: 应用于每个响应的分类字符串(例如, 文本的语气)。

这些信息可以格式化如下:

{
	"metadata": {
		"source_path": "...",
		"custom_fields_schema": [
			{"name": "prompt_word_count", "type": "number"},
			{"name": "word_overlap_rate_between_a_b", "type": "number"},
			{"name": "data_source", "type": "category"},
			{"name": "unique_id", "type": "string"},
			{"name": "is_over_max_token", "type": "per_model_boolean"},
			{"name": "TF-IDF_between_prompt_and_response", "type": "per_model_number"},
			{"name": "writing_style", "type": "per_model_category"},
		]
	},
	"models": [{...}, {...}],
	"examples": [
		{
			"input_text": "Which city should I visit in South Korea?",
			"tags": ["Travel"],
			"output_text_a": "You can visit Seoul, the capital of South Korea.",
			"output_text_b": "You can visit Seoul, Busan, and Jeju.",
			"score": 0.5,
			"individual_rater_scores": [],
			"custom_fields": {
				"prompt_word_count": 8,
				"word_overlap_rate_between_a_b": 0.61,
				"data_source": "XYZ",
				"unique_id": "abc000", 
				"is_over_max_token": [true, false],
				"TF-IDF_between_prompt_and_response": [0.31, 0.15],
				"writing_style": ["Verbose", "Neutral"]
			}
		},
		{
            "input_text": "How to draw bar charts using Python?",
            ...
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

稿定AI

稿定设计 是一个多功能的在线设计和创意平台,提供广泛的设计工具和资源,以满足不同用户的需求。从专业的图形设计师到普通用户,无论是进行图片处理、智能抠图、H5页面制作还是视频剪辑,稿定设计都能提供简单、高效的解决方案。该平台以其用户友好的界面和强大的功能集合,帮助用户轻松实现创意设计。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号