Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
4bcf967
Add grobid_custom_hybrid profile with SciELO-preprints reference segm…
de-code Jul 1, 2026
3c1f56d
Add grobid_custom_hybrid profile with SciELO-preprints reference segm…
de-code Jul 1, 2026
e63b775
Automatically resolve benchmark profile from profile: PR labels
de-code Jul 1, 2026
d4fe2e7
Temporarily use private GCS bucket for reference-segmenter model
de-code Jul 2, 2026
77926d4
Moved Authenticate to GCP up to fail earlier
de-code Jul 2, 2026
0f22a72
Switch GCS model bucket access to a service account key
de-code Jul 2, 2026
e76a885
Use custom citation model for grobid_custom_hybrid profile
de-code Jul 2, 2026
0798184
Use trained wapiti model for reference segmenter
de-code Jul 3, 2026
2ee72f4
Add explicit extends for sequence_model_profiles
de-code Jul 3, 2026
04d460d
Use re-trained reference-segmenter model trained on grobid only
de-code Aug 5, 2026
28aeaa2
Also configure retrained citation model
de-code Aug 5, 2026
ff9fcdf
Fixed path
de-code Aug 5, 2026
4e6bb18
Merge branch 'main' into add-reference-segmenter-scielo-preprints-pro…
de-code Aug 17, 2026
fd55ef9
Configure reference segmenter wapiti model trained on both GROBID and…
de-code Aug 17, 2026
ba4120a
Configure citation wapiti model trained on both GROBID and Sciety Pre…
de-code Aug 17, 2026
4b9f77c
Fixed path (again)
de-code Aug 17, 2026
58a894d
Merge branch 'main' into add-reference-segmenter-scielo-preprints-pro…
de-code Aug 17, 2026
cb2624d
Log the resolved benchmark profile
de-code Aug 17, 2026
7ea1c2d
Tolerate the absent pull request in the profile label lookup
de-code Aug 17, 2026
2916cec
Report the circular extends chain in the order it was followed
de-code Aug 17, 2026
890a888
Merge branch 'main' into add-reference-segmenter-scielo-preprints-pro…
de-code Aug 17, 2026
a73111b
Drop the shipped-config assertion about grobid_custom_hybrid
de-code Aug 17, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,16 @@ jobs:
steps:
- uses: actions/checkout@v5

- name: Write GCS model reader key (temporary access to private model bucket)
id: gcp_auth
env:
GCS_MODEL_READER_SA_KEY_B64: ${{ secrets.GCS_MODEL_READER_SA_KEY_B64 }}
run: |
KEY_PATH="${RUNNER_TEMP}/gcs-model-reader-key.json"
printf '%s' "$GCS_MODEL_READER_SA_KEY_B64" | base64 -d > "$KEY_PATH"
chmod 600 "$KEY_PATH"
echo "key_path=$KEY_PATH" >> "$GITHUB_OUTPUT"

- name: Resolve benchmark profile
env:
PR_LABELS_JSON: ${{ toJson(github.event.pull_request.labels.*.name) }}
Expand Down Expand Up @@ -171,6 +181,8 @@ jobs:
fi
docker run -d --name sciencebeam-parser -p 8080:8070 \
-e SCIENCEBEAM_PARSER__PRELOAD_ON_STARTUP=true \
-v "${{ steps.gcp_auth.outputs.key_path }}:/creds/gcp-key.json:ro" \
-e GOOGLE_APPLICATION_CREDENTIALS=/creds/gcp-key.json \
"${PROFILE_ENV[@]}" ${{ steps.image_tag.outputs.value }}

- name: Wait for parser
Expand Down
12 changes: 12 additions & 0 deletions sciencebeam_parser/resources/default_config/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -181,6 +181,18 @@ sequence_model_profiles:
engine: 'wapiti'
grobid_custom_hybrid:
extends: grobid_crf_0_9_0
citation:
# path: 'gs://sciencebeam-v2-models/wapiti/citation/models/2026-08-04_wapiti_grobid_090_grobid_only/citation/'
path: 'gs://sciencebeam-v2-models/wapiti/citation/models/2026-08-05_wapiti_grobid_090_scielo_preprints_ore/citation/'
engine: 'wapiti'
reference_segmenter:
# TODO: switch back once the release is public
# path: 'https://github.com/eLifePathways/sciencebeam-models/releases/download/dev/2026-07-01-delft-grobid-reference-segmenter-CustomBidLSTM_CRF-grobid_090-scielo_preprints-v1.tar.gz'
# path: 'gs://sciencebeam-v2-models/delft/reference-segmenter/models/2026-07-01_CustomBidLSTM_CRF_grobid_090_scielo_preprints_ore/reference-segmenter/'
# path: 'gs://sciencebeam-v2-models/wapiti/reference-segmenter/models/2026-07-01_wapiti_grobid_090_scielo_preprints_ore/reference-segmenter'
path: 'gs://sciencebeam-v2-models/wapiti/reference-segmenter/models/2026-08-04_wapiti_grobid_090_grobid_only/reference-segmenter/'
# path: 'gs://sciencebeam-v2-models/wapiti/reference-segmenter/models/2026-08-05_wapiti_grobid_090_scielo_preprints_ore/reference-segmenter/'
engine: 'wapiti'

profiles:
biorxiv_elife:
Expand Down
10 changes: 0 additions & 10 deletions tests/config/config_test.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
_deep_merge,
_resolve_sequence_model_profile
)
from sciencebeam_parser.resources.default_config import DEFAULT_CONFIG_FILE


MINIMAL_PROFILE_CONFIG = {
Expand Down Expand Up @@ -293,12 +292,3 @@ def test_should_override_bool_value_with_env_var(
config = AppConfig.load_yaml(str(config_path))
config = config.apply_environment_variables()
assert config.props['key1'] is False


class TestDefaultConfigProfiles:
def _resolve_models(self, profile_name: str) -> dict:
config = AppConfig.load_yaml(DEFAULT_CONFIG_FILE)
return config.resolve_profile(profile_name)['models']

def test_grobid_custom_hybrid_inherits_every_grobid_crf_model(self):
assert self._resolve_models('grobid_custom_hybrid') == self._resolve_models('grobid_crf')
Loading