SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2406.11370 · EMNLP · 2024

Fairer Preferences Elicit Improved Human-Aligned Large Language Model Judgments

Ivan Vulić, Xingchen Wan, Nigel Collier, Han Zhou, Anna Korhonen, Yinhong Liu

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 29 functions out of this paper's own repositories and ran 20 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
cambridgeltl/zepo — 17 of 23
copy not recorded — 2 of 2
cambridgeltl/pairs — 1 of 4
FunctionStatusWhere it lives
BeamItem Ran cambridgeltl/pairs/pairs/pairs_ranking.py
code served (permissive licence) · get_code("de96e87fcdc09240")
CompareResultObject Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("fa3627b39b2fc64c")
OpenAIChatModel Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("e08a10d84561235c")
Timer Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("39083ac397faebe6")
calculate_uncertainty Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("ca99032ac77b29e6")
compute_pairwise_preference_matrix Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("6788ac0f668741a9")
get_cot_compare_prompt_template Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("e832e11e0d101a37")
get_cot_eval_prompt_template Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("72e4f7f276e2410b")
get_likelihood_coefficient Ran this paper's copy was not recorded; identical code first harvested from cambridgeltl/pairs
pointer only · get_code("14e3151e6acdfedb")
get_pairwise_prompt_template Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("4ed979529f4db748")
is_integer_string Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("4419dd4c768a4bb5")
list_to_pairwise_non_diagonal Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("4a77046e8d79d3e6")
load_TopicalChat Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("c3b4a5412489fb24")
load_gsm8k Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("99dff92abeb97011")
load_json Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("4bf2c02de1d92773")
load_jsonl Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("472d563b979e2b49")
load_newsroom Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("1841f2ca10ba4b50")
load_summEval Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("b5816ff43e6dc12a")
moving_average Ran this paper's copy was not recorded; identical code first harvested from cambridgeltl/pairs
pointer only · get_code("9edbea252c4a2b7e")
pairwise_non_diagonal_to_list Ran cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("5c7d207f402ec83c")
Llama2ModelLocal Not yet run cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("3b641c847f128e7f")
Llama3ModelLocal Not yet run cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("b9664c08870bc614")
MistralModelLocal Not yet run cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("7b238544c212100b")
PairsBeam Not yet run cambridgeltl/pairs/pairs/pairs_ranking.py
code served (permissive licence) · get_code("a0af76fa6f8f0944")
get_instruction Not yet run cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("902f7af3019415e0")
is_better_than_prob Not yet run cambridgeltl/pairs/pairs/pairs_ranking.py
code served (permissive licence) · get_code("63ce88ca435a0f62")
merge_with_confidence_beam Not yet run cambridgeltl/pairs/pairs/pairs_ranking.py
code served (permissive licence) · get_code("92280df256c9d8b0")
pairwise_compare Not yet run cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("9a7434c691505bde")
zepo Not yet run cambridgeltl/zepo/zepo.py
code served (permissive licence) · get_code("421bae01e07ebb79")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Large language models (LLMs) have shown promising abilities as cost-effective and reference-free evaluators for assessing language generation quality. In particular, pairwise LLM evaluators, which compare two generated texts and determine the preferred one, have been employed in a wide range of applications. However, LLMs exhibit preference biases and worrying sensitivity to prompt designs. In this work, we first reveal that the predictive preference of LLMs can be highly brittle and skewed, even with semantically equivalent instructions. We find that fairer predictive preferences from LLMs consistently lead to judgments that are better aligned with humans. Motivated by this phenomenon, we propose an automatic Zero-shot Evaluation-oriented Prompt Optimization framework, ZEPO, which aims to produce fairer preference decisions and improve the alignment of LLM evaluators with human judgments. To this end, we propose a zeroshot learning objective based on the preference decision fairness. ZEPO demonstrates substantial performance improvements over stateof-the-art LLM evaluators, without requiring labeled data, on representative meta-evaluation benchmarks. Our findings underscore the critical correlation between preference fairness and human alignment, positioning ZEPO as an efficient prompt optimizer for bridging the gap between LLM evaluators and human judgments. * Now at Google. Code is available at https://github. com/cambridgeltl/zepo.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2406.11370")
get_code_for_paper("2406.11370")
have("2406.11370")

Connect an agent — have() is free.