castorini-serve

Orchestrate local Anserini retrieval with optional Castorini services via HTTP.

2|2|Updated Mar 17, 2026
One-click install
npx skills add https://github.com/castorini/castorini-skills --skill castorini-serve
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: castorini-serve
Source: https://github.com/castorini/castorini-skills/tree/main/skills/castorini-serve
Command: npx skills add https://github.com/castorini/castorini-skills --skill castorini-serve

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Orchestrate a local HTTP stack that serves Anserini retrieval together with optional downstream Castorini services (rank_llm, ragnarok, nuggetizer, and umbrela) to enable cohesive, tested, and reproducible search-and-answer workflows in a single local environment.

Core Features & Use Cases

  • Local, port-mapped orchestration of retrieval and downstream services with a clear default stack layout.
  • Flexible service selection to compose retrieval-only, retrieval+rerank, generation, nugget creation, and passage judging pipelines.
  • Reference materials and curated curl/jq pipelines to guide real-world usage and quick demonstrations.

Quick Start

Start the local stack by launching the Anserini RestServer and then selectively enable the downstream services you need.

Frequently Asked Questions about castorini-serve

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I orchestrate local retrieval with Anserini and downstream reranking services?

You orchestrate a local HTTP stack by launching the Anserini RestServer and selectively enabling downstream Castorini services like rank_llm in a configurable, port-mapped layout. This supports cohesive retrieval, reranking, and generation workflows for local development and testing.

What is the best way to combine retrieval, generation, and passage judging workflows locally?

The best way to combine these workflows locally is using a flexible HTTP stack that maps ports to Anserini retrieval and optional Castorini services. You can compose retrieval-only, retrieval+rerank, nugget creation, and passage judging pipelines selectively.

Do I need an Anserini fatjar to run the Castorini local HTTP stack?

Yes, an Anserini fatjar is required to serve the core retrieval functionality in the local HTTP stack. You must also provide optional models if you enable downstream services like rank_llm, ragnarok, and umbrela for reranking and judging.

Can I test search-and-answer pipelines end-to-end using curl and jq?

Yes, you can test search-and-answer pipelines end-to-end using curl and jq pipelines. The stack provides reference materials and curated pipelines to guide real-world usage and quick demonstrations for local development and end-to-end testing.

What downstream Castorini services can I compose in the local HTTP stack?

You can compose retrieval-only, retrieval+rerank, generation, nugget creation, and passage judging pipelines in the local HTTP stack. Supported downstream Castorini services include rank_llm, ragnarok, nuggetizer, and umbrela for flexible service selection.

When should I not use a port-mapped HTTP stack for local search orchestration?

You should avoid a port-mapped HTTP stack if your local environment lacks the resources to run an Anserini fatjar and optional models simultaneously, or if your demos do not require combining retrieval with downstream reranking, generation, and judging services.