From 146a059fe3746c88281a87908708feb1184de453 Mon Sep 17 00:00:00 2001 From: "Jierui (Jerry) Zuo" <126899194+zuojr@users.noreply.github.com> Date: Tue, 12 May 2026 20:49:52 +0800 Subject: [PATCH] fix: Use ClustrMaps CDN embed pattern --- _bibliography/papers.bib | 88 +++++++++++++++++++++++----------- _config.yml | 13 +++++ _includes/visitor_map.liquid | 48 +++++++++++++++++++ _layouts/about.liquid | 3 ++ _layouts/bib.liquid | 3 ++ _pages/about.md | 2 +- _pages/publications.md | 8 +++- _plugins/hide-custom-bibtex.rb | 9 ++-- _sass/_components.scss | 55 +++++++++++++++++++++ _sass/_publications.scss | 9 ++++ 10 files changed, 204 insertions(+), 34 deletions(-) create mode 100644 _includes/visitor_map.liquid diff --git a/_bibliography/papers.bib b/_bibliography/papers.bib index d66d6c89..6de5073d 100644 --- a/_bibliography/papers.bib +++ b/_bibliography/papers.bib @@ -1,41 +1,73 @@ --- --- -@article{zuo2025pareto, - title = {On Pareto Optimality for Parametric Choice Bandits}, - author = {Zuo, Jierui and Qin, Hanzhang}, - year = {2025}, - journal = {arXiv preprint}, - eprint = {2501.19277}, - archiveprefix = {arXiv}, - primaryclass = {cs.LG}, - url = {https://arxiv.org/abs/2501.19277}, - selected = {true}, - bibtex_show = {true} +@misc{agents2026last, + title = {Agents Last Exam}, + author = {Zuo, Jierui and others}, + year = {2026}, + note = {Under review at NeurIPS 2026}, + research_category = {ai_agents_human_ai_decision_systems}, + selected = {true} +} + +@article{zhang2026ddorm, + title = {DDO-RM: Distribution-Level Policy Improvement after Reward Learning}, + author = {Zhang, Tiantian and Zuo, Jierui and Chen, Michael and Wang, Wenping}, + year = {2026}, + journal = {arXiv preprint}, + eprint = {2604.11119}, + arxiv = {2604.11119}, + archiveprefix = {arXiv}, + primaryclass = {stat.ML}, + url = {https://arxiv.org/abs/2604.11119}, + doi = {10.48550/arXiv.2604.11119}, + pdf = {https://arxiv.org/pdf/2604.11119}, + code = {https://github.com/zuojr/ddorm-llm-preference-benchmark}, + research_category = {ai_agents_human_ai_decision_systems}, + selected = {true} +} + +@misc{zuo2026delegate, + title = {Learning to Delegate with Costly Audit}, + author = {Zuo, Jierui and Wang, Yingfei}, + year = {2026}, + note = {Under review at NeurIPS 2026}, + research_category = {ai_agents_human_ai_decision_systems}, + selected = {true}, + bibtex_show = {true} } @misc{zuo2026learning, - title = {Generator-Augmented Best-Arm Identification}, - author = {Zuo, Jierui and Qin, Hanzhang and Zhu, Ruihao}, - year = {2026}, - note = {Working paper}, - bibtex_show = {true} + title = {Generator-Augmented Best-Arm Identification}, + author = {Zuo, Jierui and Qin, Hanzhang and Zhu, Ruihao}, + year = {2026}, + note = {Working paper}, + research_category = {online_learning_experimentation_platform_design}, + bibtex_show = {true} } @misc{zuo2026scheduling, - title = {Experimental Design for Online Scheduling}, - author = {Zuo, Jierui and Zhao, Jinglong and Zhou, Zijie}, - year = {2026}, - note = {Working paper}, - bibtex_show = {true} + title = {Experimental Design for Online Scheduling}, + author = {Zuo, Jierui and Zhao, Jinglong and Zhou, Zijie}, + year = {2026}, + note = {Working paper}, + research_category = {online_learning_experimentation_platform_design}, + bibtex_show = {true} } -@misc{zuo2026delegate, - title = {Learning to Delegate with Costly Audit}, - author = {Zuo, Jierui and Wang, Yingfei}, - year = {2026}, - note = {Working paper}, - bibtex_show = {true} +@article{zuo2025pareto, + title = {On Pareto Optimality for Parametric Choice Bandits}, + author = {Zuo, Jierui and Qin, Hanzhang}, + year = {2025}, + journal = {arXiv preprint}, + eprint = {2501.19277}, + archiveprefix = {arXiv}, + primaryclass = {cs.LG}, + url = {https://arxiv.org/abs/2501.19277}, + arxiv = {2501.19277}, + pdf = {https://arxiv.org/pdf/2501.19277}, + research_category = {online_learning_experimentation_platform_design}, + selected = {true}, + bibtex_show = {true} } - diff --git a/_config.yml b/_config.yml index 97e2a213..eccb64a3 100644 --- a/_config.yml +++ b/_config.yml @@ -79,6 +79,16 @@ cronitor_analytics: # cronitor RUM analytics site ID (format: XXXXXXXXX) pirsch_analytics: # your Pirsch analytics site ID (length 32 characters) openpanel_analytics: # your Openpanel analytics client ID (format: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX) +# Visitor map widget. Uses the ClustrMaps CDN embed pattern that works on +# static/GitHub Pages sites: `cl`, `w`, `t`, then `d`. +visitor_map: + enabled: true + provider: clustrmaps + clustrmaps_id: Ml1a9S8Mi1zsosnWVfkcW_owdoMdIsMr9cdcWgLWlx4 + dot_color: ffffff + width: 300 + title_style: tt + google_site_verification: # your google-site-verification ID (Google Search Console) bing_site_verification: # out your bing-site-verification ID (Bing Webmaster) @@ -308,6 +318,9 @@ scholar: details_layout: bibtex.html details_link: Details + filtered_bibtex_keywords: + - research_category + query: "@*" # ---------------------------------------------------------------------------- # diff --git a/_includes/visitor_map.liquid b/_includes/visitor_map.liquid new file mode 100644 index 00000000..6f594284 --- /dev/null +++ b/_includes/visitor_map.liquid @@ -0,0 +1,48 @@ +{% assign visitor_map = site.visitor_map %} +{% if page.visitor_map %} + {% assign visitor_map = page.visitor_map %} +{% endif %} + +{% if visitor_map and visitor_map.enabled %} + {% assign provider = visitor_map.provider | default: 'clustrmaps' %} + {% assign clustrmaps_id = visitor_map.clustrmaps_id | strip %} + {% assign dot_color = visitor_map.dot_color | default: 'ff3b30' | remove: '#' %} + {% assign map_width = visitor_map.width | default: 300 %} + {% assign map_title = visitor_map.title_style | default: 'tt' %} + {% assign map_width_string = map_width | append: '' %} + {% assign map_widget_style = '' %} + {% unless map_width_string == 'a' %} + {% assign map_widget_style = map_width_string | prepend: 'max-width: ' | append: 'px;' %} + {% endunless %} + +
+
+

visitor map

+

+ Approximate visitor locations and aggregate counts over time. Markers appear after the live tracker starts receiving visits. +

+ +
+ {% if provider == 'clustrmaps' and clustrmaps_id != blank %} + + {% else %} +
+ +

Add the ClustrMaps widget token in visitor_map.clustrmaps_id to activate the live visitor map.

+ Create map widget +
+ {% endif %} +
+
+
+{% endif %} diff --git a/_layouts/about.liquid b/_layouts/about.liquid index c58bf8ab..d40069ee 100644 --- a/_layouts/about.liquid +++ b/_layouts/about.liquid @@ -64,6 +64,9 @@ layout: default {% include selected_papers.liquid %} {% endif %} + + {% include visitor_map.liquid %} + {% if page.social %}
diff --git a/_layouts/bib.liquid b/_layouts/bib.liquid index 08b1a458..9a127987 100644 --- a/_layouts/bib.liquid +++ b/_layouts/bib.liquid @@ -206,6 +206,9 @@ {% if entry.hal %} HAL {% endif %} + {% if entry.url and entry.arxiv == blank and entry.pdf == blank and entry.html == blank %} + Paper + {% endif %} {% if entry.bibtex_show %} Bib {% endif %} diff --git a/_pages/about.md b/_pages/about.md index 9dd6f4c6..49ec43e1 100644 --- a/_pages/about.md +++ b/_pages/about.md @@ -12,7 +12,7 @@ profile:

April 5th, 2026 at Mutianyu section of the Great Wall, Beijing

-selected_papers: true +selected_papers: false social: true announcements: diff --git a/_pages/publications.md b/_pages/publications.md index 48027f80..054726f0 100644 --- a/_pages/publications.md +++ b/_pages/publications.md @@ -15,6 +15,12 @@ nav_order: 2

-{% bibliography %} +

AI Agents & Human–AI Decision Systems

+ +{% bibliography --group_by none --query @*[research_category=ai_agents_human_ai_decision_systems]* %} + +

Online Learning, Experimentation & Platform Design

+ +{% bibliography --group_by none --query @*[research_category=online_learning_experimentation_platform_design]* %}
diff --git a/_plugins/hide-custom-bibtex.rb b/_plugins/hide-custom-bibtex.rb index 4d517f7e..a88550e7 100644 --- a/_plugins/hide-custom-bibtex.rb +++ b/_plugins/hide-custom-bibtex.rb @@ -1,11 +1,12 @@ module Jekyll module HideCustomBibtex def hideCustomBibtex(input) - keywords = @context.registers[:site].config['filtered_bibtex_keywords'] + config = @context.registers[:site].config + keywords = config['filtered_bibtex_keywords'] || config.dig('scholar', 'filtered_bibtex_keywords') || [] - keywords.each do |keyword| - input = input.gsub(/^.*\b#{keyword}\b *= *\{.*$\n/, '') - end + keywords.each do |keyword| + input = input.gsub(/^.*\b#{keyword}\b *= *\{.*$\n/, '') + end # Clean superscripts in author lists input = input.gsub(/^.*\bauthor\b *= *\{.*$\n/) { |line| line.gsub(/[*†‡§¶‖&^]/, '') } diff --git a/_sass/_components.scss b/_sass/_components.scss index f052483b..30565cdb 100644 --- a/_sass/_components.scss +++ b/_sass/_components.scss @@ -259,3 +259,58 @@ ul.task-list input[type="checkbox"] { .d2h-diff-table { position: relative; } + +// Visitor map + +.visitor-map { + border: 1px solid var(--global-divider-color); + + .card-body { + text-align: center; + } + + .visitor-map-heading { + margin-bottom: 0.25rem; + font-weight: 600; + color: var(--global-text-color); + } + + .visitor-map-description { + margin-bottom: 1rem; + font-size: 0.85rem; + color: var(--global-text-color-light); + } + + .visitor-map-widget { + display: block; + width: 100%; + margin-right: auto; + margin-left: auto; + overflow: hidden; + } + + .visitor-map-placeholder { + display: flex; + min-height: 180px; + width: 100%; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 0.75rem; + border: 1px dashed var(--global-divider-color); + border-radius: 0.5rem; + padding: 1.25rem; + background-color: var(--global-bg-color); + + i { + font-size: 2rem; + color: var(--global-theme-color); + } + + p { + max-width: 28rem; + margin: 0; + font-size: 0.85rem; + } + } +} diff --git a/_sass/_publications.scss b/_sass/_publications.scss index 201b59b0..be8816c1 100644 --- a/_sass/_publications.scss +++ b/_sass/_publications.scss @@ -186,3 +186,12 @@ .citation-number { color: var(--global-theme-color); } + +.publication-category { + margin-top: 2rem; + margin-bottom: 1rem; + padding-bottom: 0.35rem; + border-bottom: 1px solid var(--global-divider-color); + font-size: 1.25rem; + font-weight: 500; +}