Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
14 changes: 7 additions & 7 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
# Trigger the workflow every time you push to the `main` branch
# Using a different branch name? Replace `main` with your branch’s name
push:
branches: [ main ]
branches: [main]
# Allows you to run this workflow manually from the Actions tab on GitHub.
workflow_dispatch:

Expand All @@ -23,12 +23,12 @@ jobs:
- name: Install, build, and upload your site
uses: withastro/action@v5
# with:
# path: . # The root location of your Astro project inside the repository. (optional)
# node-version: 24 # The specific version of Node that should be used to build your site. Defaults to 22. (optional)
# package-manager: pnpm@latest # The Node package manager that should be used to install dependencies and build your site. Automatically detected based on your lockfile. (optional)
# build-cmd: pnpm run build # The command to run to build your site. Runs the package build script/task by default. (optional)
# path: . # The root location of your Astro project inside the repository. (optional)
# node-version: 24 # The specific version of Node that should be used to build your site. Defaults to 22. (optional)
# package-manager: pnpm@latest # The Node package manager that should be used to install dependencies and build your site. Automatically detected based on your lockfile. (optional)
# build-cmd: pnpm run build # The command to run to build your site. Runs the package build script/task by default. (optional)
# env:
# PUBLIC_POKEAPI: 'https://pokeapi.co/api/v2' # Use single quotation marks for the variable value. (optional)
# PUBLIC_POKEAPI: 'https://pokeapi.co/api/v2' # Use single quotation marks for the variable value. (optional)

deploy:
needs: build
Expand All @@ -39,4 +39,4 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
uses: actions/deploy-pages@v4
26 changes: 13 additions & 13 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -150,20 +150,20 @@ All commands are run from the root of the project, from a terminal:

> **_Note!_** For `Docker` commands we must have it [installed](https://docs.docker.com/engine/install/) in your machine.

| Command | Action |
| :----------------------------------- | :------------------------------------------------------------------------------------------------------------------------------- |
| `pnpm install` | Installs dependencies |
| `pnpm run dev` | Starts local dev server at `localhost:4321` |
| `pnpm run build` | Build your production site to `./dist/` |
| `pnpm run preview` | Preview your build locally, before deploying |
| `pnpm run format:check` | Check code format with Prettier |
| `pnpm run format` | Format codes with Prettier |
| `pnpm run sync` | Generates TypeScript types for all Astro modules. [Learn more](https://docs.astro.build/en/reference/cli-reference/#astro-sync). |
| `pnpm run lint` | Lint with ESLint |
| `docker compose up -d` | Run AstroPaper on docker, You can access with the same hostname and port informed on `dev` command. |
| Command | Action |
| :------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------- |
| `pnpm install` | Installs dependencies |
| `pnpm run dev` | Starts local dev server at `localhost:4321` |
| `pnpm run build` | Build your production site to `./dist/` |
| `pnpm run preview` | Preview your build locally, before deploying |
| `pnpm run format:check` | Check code format with Prettier |
| `pnpm run format` | Format codes with Prettier |
| `pnpm run sync` | Generates TypeScript types for all Astro modules. [Learn more](https://docs.astro.build/en/reference/cli-reference/#astro-sync). |
| `pnpm run lint` | Lint with ESLint |
| `docker compose up -d` | Run AstroPaper on docker, You can access with the same hostname and port informed on `dev` command. |
| `docker compose run app pnpm install` | You can run any command above into the docker container. |
| `docker build -t astropaper .` | Build Docker image for AstroPaper. |
| `docker run -p 4321:80 astropaper` | Run AstroPaper on Docker. The website will be accessible at `http://localhost:4321`. |
| `docker build -t astropaper .` | Build Docker image for AstroPaper. |
| `docker run -p 4321:80 astropaper` | Run AstroPaper on Docker. The website will be accessible at `http://localhost:4321`. |

> **_Warning!_** Windows PowerShell users may need to install the [concurrently package](https://www.npmjs.com/package/concurrently) if they want to [run diagnostics](https://docs.astro.build/en/reference/cli-reference/#astro-check) during development (`astro check --watch & astro dev`). For more info, see [this issue](https://github.com/satnaing/astro-paper/issues/113).

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -44,4 +44,4 @@
"typescript": "^5.9.3",
"typescript-eslint": "^8.51.0"
}
}
}
11 changes: 8 additions & 3 deletions src/components/Header.astro
Original file line number Diff line number Diff line change
Expand Up @@ -76,13 +76,18 @@ const isActive = (path: string) => {
Posts
</a>
</li>
{/* <li class="col-span-2">
{
/* <li class="col-span-2">
<a href="/tags" class:list={{ "active-nav": isActive("/tags") }}>
Tags
</a>
</li> */}
</li> */
}
<li class="col-span-2">
<a href="/publications" class:list={{ "active-nav": isActive("/publications") }}>
<a
href="/publications"
class:list={{ "active-nav": isActive("/publications") }}
>
Publications
</a>
</li>
Expand Down
6 changes: 3 additions & 3 deletions src/data/blog/publications/aic-ctu-at-averimatec.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: "AIC CTU@AVerImaTeC: dual-retriever RAG for image-text fact checking"
title: "🥉 AIC CTU@AVerImaTeC: dual-retriever RAG for image-text fact checking"
pubDatetime: 2026-02-15T00:00:00Z
description: "arXiv preprint arXiv:2602.15190"
tags: ["publications", "fact-checking", "rag"]
Expand All @@ -24,7 +24,7 @@ citations: "N/A"

## Abstract

_TODO: Add abstract or summary._
This paper introduces a dual-retriever RAG system for multimodal fact-checking, combining textual and image-aware evidence retrieval before verdict generation. The architecture is built to reduce hallucinations by forcing stronger evidence alignment across modalities.

## Resources

Expand All @@ -35,4 +35,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
A highlight of this project was a bronze-medal finish in AVeriTeC 2. Beyond leaderboard performance, we are proud that the system remained interpretable: retrieval traces made it easier to analyze failures and iterate quickly.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: "AIC CTU@FEVER 8: On-premise fact checking through long context RAG"
title: "🥇 AIC CTU@FEVER 8: On-premise fact checking through long context RAG"
pubDatetime: 2025-09-01T00:00:00Z
description: "Proceedings of the Eighth Fact Extraction and VERification Workshop (FEVER)"
tags: ["publications", "fact-checking", "rag"]
Expand All @@ -23,7 +23,7 @@ citations: 2

## Abstract

_TODO: Add abstract or summary._
Our FEVER 8 system explores on-premise fact-checking with long-context retrieval-augmented generation. We focus on practical deployment constraints, retrieval quality over long documents, and evidence-aware generation that keeps outputs grounded in retrieved passages.

## Resources

Expand All @@ -34,4 +34,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
This submission reflects our preference for reproducible, controllable pipelines: instead of relying on closed hosted systems, we showed that competitive fact-checking can be done in an on-prem setup with careful long-context retrieval design.
6 changes: 3 additions & 3 deletions src/data/blog/publications/aic-ctu-system-at-averitec.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
---
title: "AIC CTU system at AVeriTeC: Re-framing automated fact-checking as a simple RAG task"
title: "🥉 AIC CTU system at AVeriTeC: Re-framing automated fact-checking as a simple RAG task"
pubDatetime: 2024-06-15T00:00:00Z
description: "Proceedings of the Seventh Fact Extraction and VERification Workshop (FEVER)"
tags: ["publications", "fact-checking", "rag"]
Expand All @@ -24,7 +24,7 @@ citations: 10

## Abstract

_TODO: Add abstract or summary._
We recast automated fact-checking as a retrieval-augmented generation task: retrieve relevant evidence, then generate a verdict and justification directly from that evidence. The paper details a lightweight but effective pipeline and discusses where simplification helps versus where specialized modules are still needed.

## Resources

Expand All @@ -35,4 +35,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
This was an important baseline paper for our team. It proved that a strong, well-tuned RAG approach can be surprisingly competitive, and it directly informed the system ideas we later pushed further in subsequent shared tasks.
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ citations: 11

## Abstract

_TODO: Add abstract or summary._
This work studies how to evaluate information extraction outputs beyond simple exact matching. We discuss practical quality dimensions (correctness, completeness, consistency, and usefulness), compare metric choices, and show where automatic scores diverge from human judgment for real extraction tasks.

## Resources

Expand All @@ -40,4 +40,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
I like this paper as a "methodology anchor" for later projects: before optimizing extraction models, we first make evaluation explicit and reliable. That framing helped us design cleaner experiments in downstream fact-checking and claim verification pipelines.
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ citations: 2

## Abstract

_TODO: Add abstract or summary._
The work examines claim extraction as a dedicated subtask for fact-checking, introducing data, modeling strategies, and automatic metrics tailored to claim quality. It analyzes the trade-off between extracting many candidate claims and extracting claims that are specific, verifiable, and useful downstream.

## Resources

Expand All @@ -36,4 +36,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
In practice, this paper helped us treat claim extraction as a first-class modeling problem rather than a preprocessing detail. Better claim quality noticeably improved retrieval focus and final verification reliability in later pipelines.
4 changes: 2 additions & 2 deletions src/data/blog/publications/csfever-and-ctkfacts.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ citations: 19

## Abstract

_TODO: Add abstract or summary._
CsFEVER and CTKFacts introduce Czech-language resources for automated fact verification. The paper describes how claims and evidence were collected, annotated, and validated, and it highlights the challenges of balancing label quality, evidence grounding, and linguistic diversity in a lower-resource setting.

## Resources

Expand All @@ -37,4 +37,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
This dataset work was foundational for our later shared-task systems: it gave us Czech-centric data practices, annotation lessons, and realistic expectations about retrieval and evidence quality when moving from English benchmarks to multilingual fact-checking.
4 changes: 2 additions & 2 deletions src/data/blog/publications/pipeline-and-dataset-generation.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ citations: 9

## Abstract

_TODO: Add abstract or summary._
The paper presents an end-to-end pipeline for building automated fact-checking datasets in almost any language, covering claim harvesting, normalization, evidence linking, and verification labeling. It emphasizes scalable data creation while preserving enough quality control to support robust model training and evaluation.

## Resources

Expand All @@ -36,4 +36,4 @@ _TODO: Add abstract or summary._

## Notes

_TODO: Add notes, experiments, or follow-up material._
For us, this was a key "from prototype to production" step: we moved from one-off dataset creation to a repeatable multilingual workflow that can be adapted to new domains and languages with manageable effort.
2 changes: 1 addition & 1 deletion src/pages/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ const recentPosts = sortedPosts.filter(({ data }) => !data.featured);
</a>

<p class="mt-2">
PhD candidate at
PhD candidate at
<LinkButton
class="underline decoration-dashed underline-offset-4 hover:text-accent"
href="https://aic.fel.cvut.cz/"
Expand Down
5 changes: 4 additions & 1 deletion src/pages/posts/[...page].astro
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ const { page } = Astro.props;
<Main pageTitle="Posts" pageDesc="All the articles I've posted.">
<p class="mb-6">
Publications are included here as a category:
<a href="/tags/publications/" class="underline decoration-dashed underline-offset-4 hover:text-accent">
<a
href="/tags/publications/"
class="underline decoration-dashed underline-offset-4 hover:text-accent"
>
publications
</a>.
</p>
Expand Down
32 changes: 19 additions & 13 deletions src/pages/publications/index.astro
Original file line number Diff line number Diff line change
Expand Up @@ -23,31 +23,37 @@ const publications = getSortedPosts(posts).filter(
<Header />
<Breadcrumb />
<main id="main-content" class="app-layout">
<section id="publications" class="app-prose mb-28 max-w-app prose-img:border-0">
<section
id="publications"
class="app-prose mb-28 max-w-app prose-img:border-0"
>
<h1 class="text-2xl tracking-wider sm:text-3xl">Publications</h1>
<p>
Full list also on <a href={scholarUrl}>Google Scholar</a> and <a href={orcidUrl}>ORCID</a>.
Full list also on <a href={scholarUrl}>Google Scholar</a> and <a
href={orcidUrl}>ORCID</a
>.
</p>

<div class="not-prose mt-8 grid gap-4">
{
publications.map(publication => (
<article class="rounded-lg border border-border p-5 transition hover:border-accent/60">
<h2 class="text-lg font-semibold text-accent">
<a href={getPath(publication.id, publication.filePath)} class="hover:underline">
<a
href={getPath(publication.id, publication.filePath)}
class="hover:underline"
>
{publication.data.title}
</a>
</h2>
{
publication.data.authors && (
<p class="mt-2 text-sm opacity-90">{publication.data.authors.join(", ")}</p>
)
}
{
publication.data.venue && (
<p class="mt-1 text-sm opacity-80">{publication.data.venue}</p>
)
}
{publication.data.authors && (
<p class="mt-2 text-sm opacity-90">
{publication.data.authors.join(", ")}
</p>
)}
{publication.data.venue && (
<p class="mt-1 text-sm opacity-80">{publication.data.venue}</p>
)}
<p class="mt-3 text-sm opacity-75">
{publication.data.pubDatetime.getUTCFullYear()} | Citations:{" "}
{publication.data.citations ?? "N/A"}
Expand Down