Skip to content
This repository was archived by the owner on Sep 14, 2026. It is now read-only.

Repository files navigation

Legacy prototype — no longer maintained.

Development has moved to antenna-paper-extraction. This repository is retained for historical reference. The documentation below describes this earlier prototype; refer to the successor repository for current development and implementation status.

AntennaAuto MVP

This repository is a local MVP pipeline for single-paper ingestion, deterministic parsing, bundle generation, indexing, and field-oriented retrieval over antenna papers.

Current Retrieval Default

The default retrieval baseline is now:

  • chunking_mode="paragraph"
  • chunk_overlap_pct=0.15
  • paragraph_min_chars=120
  • paragraph_max_chars=800
  • embedding_backend="sentence_transformer"
  • embedding_model_name="sentence-transformers/all-MiniLM-L6-v2"
  • fusion_strategy="weighted"
  • weighted_alpha=0.7
  • weighted_beta=0.3
  • rrf_k=60

This baseline was chosen because paragraph-first chunking produced cleaner evidence units than fixed chunking, weighted fusion surfaced more extraction-ready results than RRF on the benchmark set, and the sentence-transformer backend improved retrieval quality for explicit evidence such as Rogers RT5880 and numeric spans such as the 51Ω to 55Ω input-impedance range.

Default Usage

Build a parsed and indexed run with the project defaults:

uv run python -m mvp.cli --input data/raw/paper_001/article.pdf --index

Run the default benchmark configuration and write the concise confirmation report:

uv run python -m mvp.benchmark --input data/raw/paper_001/article.pdf --write-default-confirmation

Retrieval Experiments

Legacy and experimental modes are still available through config flags and named benchmark presets.

Examples:

uv run python -m mvp.cli --input data/raw/paper_001/article.pdf --index --chunking-mode fixed --embedding-backend hash
uv run python -m mvp.cli --input data/raw/paper_001/article.pdf --index --fusion-strategy rrf
uv run python -m mvp.benchmark --input data/raw/paper_001/article.pdf --config-name baseline_current
uv run python -m mvp.benchmark --input data/raw/paper_001/article.pdf --config-name paragraph_real_embedding_rrf

Supported retrieval toggles:

  • --chunking-mode fixed|paragraph
  • --chunk-overlap-pct
  • --paragraph-min-chars
  • --paragraph-max-chars
  • --embedding-backend hash|sentence_transformer
  • --embedding-model-name
  • --fusion-strategy weighted|rrf
  • --weighted-alpha
  • --weighted-beta
  • --rrf-k

Migration Note

The default dense backend is now sentence_transformer instead of hash. Existing runs indexed with the older hash default are still readable, but they should be re-indexed if you want the new default behavior, updated diagnostics, and directly comparable benchmark outputs.

Extraction Agent MVP

The repository now includes a first extraction agent that works from an existing prepared run_dir.

It uses the current retrieval layer, calls an LLM to produce antenna_architecture_spec_mvp_v2, validates the result with Pydantic, and writes:

  • runs/<run_id>/outputs/antenna_architecture_spec_mvp_v2.json
  • runs/<run_id>/outputs/extraction_run_report.json

Manual run command:

uv run python -m mvp.extract --run-dir runs/<run_id> --model gpt-4o

The extractor loads .env from the project root and requires:

  • NEW_OPENAI_API_KEY preferred, otherwise OPENAI_API_KEY
  • OPENAI_API_KEY
  • OPENAI_BASE_URL
  • OPENAI_CHANNEL_ID

More detail is in docs/extraction_agent_mvp.md.

About

An automated antenna design project. Uses LLMs to extract antenna architecture and metrics to implement it in CST.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages